Tableauには、ディメンションを指定して集計する3種類の関数(FIXED、INCLUDE、EXCLUDE)が用意されています。
本ページではFIXEDを利用して線グラフの最大・最小値をマークする方法を紹介します。
経時変化を表示する線グラフでは、底を打った時期やその値、あるいは天井の時期や値がすぐに分かるとデータを理解しやすくなることがあります。FIXEDを用いれば最大・最小値を特出しして見せるグラフを簡単に作成できます。
実際にスーパーストアのデータを利用して、最大・最小値がマークされた線グラフを作成してみたいと思います。
【完成イメージ】
以下のようなVizを作成します。
2018年から2021年までの年間の売上を表す線グラフで、最大および最小の売上の年度にそれぞれ点がプロットされています。
こちらのVizはTableau Publicからダウンロードできます。
【作り方】
- データペインの「オーダー日」を列、「売上」を行にドラッグ&ドロップします。
- 年毎の売上の最大・最小値を求める計算式を考えます。
まず最初に年毎の売上の合計をLODで定義すると、{FIXED YEAR([オーダー日]): SUM([売上])}
となります。
次に年毎の売上合計の最大値を定義するとMAX({FIXED YEAR([オーダー日]): SUM([売上])})
になります。
実際に計算式を作成して、二重軸のグラフを作成してみます。
円のプロットを見ると、計算式は年度毎の売上を算出していることが分かります。
今回は全体を通じた年毎の売上合計の最大値を求めるようにしたいので、計算式を{FIXED : MAX({FIXED YEAR([オーダー日]): SUM([売上])})}
のように変更してみます。 - 計算式を作成して「FX_年毎の売上最大値」として保存ます。
作成した計算フィールドをグラフの右端にドラッグ&ドロップします。
グラフの右軸を右クリックしてリストから「軸の同期」を選択します。
マークの集計タブを開いてグラフのタイプを「円」にします。
以下のようになります。
年の売上最大値が計算されプロットされていることが分かります。 - 次は最大値のみにプロットされるように変更します。
各年の売上が最大値に等しければ値を返すように「FX_年毎の売上最大値」の計算式を変更します。
データペインの「FX_年毎の売上最大値」を行にドラッグ&ドロップして更新すると以下のようになります。 - 最小値も同様に表示されるようにします。
各年の売上が最大値と最小値に等しい時に値を返すように「FX_年毎の売上最大・最小値」を定義します。
データペインの「FX_年毎の売上最大・最小値」を「FX_年毎の売上最大値」の上にドラッグ&ドロップして更新すると以下のようになります。 - 最後に最大値と最小値で色を変更します。
以下のように、各年の売上が最大値の時にTRUEを返す計算式を定義します。
計算フィールドをマークの色にドラッグ&ドロップします。
完成です!
今度は複数の線グラフでもやってみます。
【完成イメージ】
以下のようなVizを作成します。
地域別に2018年から2021年までの年間の売上を表す線グラフで、各地域の最大および最小の売上の年度にそれぞれ点がプロットされています。
こちらのVizはTableau Publicからダウンロードできます。
【作り方】
- データペインの「オーダー日」を列、「地域」「売上」を行にドラッグ&ドロップします。
- 計算式を作成します。
最初の例題から、年毎の売上合計の最大値は{FIXED : MAX({FIXED YEAR([オーダー日]): SUM([売上])})}
で求められることが分かりました。
今回は地域毎に年毎の売上合計の最大値を計算したいので、計算式は{FIXED [地域]: MAX({FIXED [地域], YEAR([オーダー日]): SUM([売上])})}
になります。
最小値も同様に考えて、最大値と最小値に等しい時に値を返す計算式「FX_地域&年毎の売上最大・最小値」を定義します。
作成した計算フィールドをグラフの右端にドラッグ&ドロップします。
「軸の同期」を選択、グラフのタイプを「円」すると以下のようになります。 - 最後に最大値と最小値で色を変更します。
以下のように、各年の売上が最大値の時にTRUEを返す計算式を定義します。
計算フィールドをマークの色にドラッグ&ドロップして完成です!
本ページではFIXEDの応用例として線グラフの最大・最小値をマークする方法を紹介しました。