Tableau

宇宙一分かりやすいTableauでのwaterfall chartの描き方

こんにちは。
分析官の望月です。

皆さんはwaterfall chartをご存じでしょうか?
waterfall chartは初期値からの数値の増減を表したグラフであり、
増減の累積や内訳を理解するにのに役立ちます。

本記事ではTableauでのwaterfall chartの描き方を宇宙一わかりやすく(たぶん)ご説明します。

使用するデータ

今回は簡単な在庫管理を例に挙げて説明していきます。
1つの工場兼倉庫がありそこから各店舗に向けて商品を出荷します。
店舗側は過剰に受領した商品を工場に返品することもあります。
使用するデータは以下の通りです。

年月 制作数 出荷数 返品数 在庫数
2021/1/1 5000 4091 77 986
2021/2/1 0 412 190 764
2021/3/1 0 303 407 868
2021/4/1 0 149 397 1116
2021/5/1 0 275 244 1085
2021/6/1 0 150 221 1156
2021/7/1 0 102 101 1155
2021/8/1 0 347 77 885
2021/9/1 0 328 96 653
2021/10/1 1500 314 89 1928
2021/11/1 0 276 75 1727
2021/12/1 0 268 89 1548

2021年1月に5000個商品を制作し、その内4091個を出荷したが77個が返ってきたため在庫数は

制作数 – 出荷数 + 返品数 = 5000 – 4091 + 77 = 986,

2021年2月は制作数は0で412個を出荷したが190個が返ってきたため在庫数は

前月の在庫数 + 制作数 – 出荷数 + 返品数 = 986 + 0 – 412 + 190 = 764

となっています。

このように”初月の在庫数”は[制作数], [出荷数], [返品数]から算出でき、
“初月以降のある月の在庫数”は[前月の在庫数], [制作数], [出荷数], [返品数]から算出できることから、[在庫数]は[制作数], [出荷数], [返品数]の累計で算出できることが分かります。

Tableauで描いてみる

それでは実際にTableauで在庫のwaterfall chartを作成していきます。

0. 下準備:データを横もち→縦もちに変換

[制作数], [出荷数], [返品数], [在庫数]を選択し”ピボット”を選択します。
今回はピボットのフィールド名を”item”、フィールド値を”value”という列名にしておきます。

1. フィルター設定

先に述べた通り[在庫数]は[制作数], [出荷数], [返品数]を用いて算出できるため、
フィルター欄に[item]を入れて”制作数”, “出荷数”, “返品数”のみに絞ります。

2. グラフ横軸の設定

列に[年月]と[item]を入れます。(両方とも不連続)
また、この段階でitemの並び順を”制作数”→”出荷数”→”返品数”としておきます。

3. グラフ縦軸の設定

試しに行に[value]を入れてみると以下のようなグラフが描写されます。
在庫数を算出するにあたり、制作と返品は在庫を増やす要因、出荷は在庫を減らす要因となるためそれを反映させた計算式[value_for_waterfall]を新たに作成します。

こちらも試しに行に入れてみると以下のようなグラフが描写されます。
この[value_for_waterfall]の累計が各時点での在庫数となるため、
[value_for_waterfall]から”簡易表計算”→”累計”を選択することで各時点での在庫数が可視化されます。
waterfall chart作成まであと一息です。
デフォルトでは棒グラフが表示されますが、これをガントチャートに変更します。
ここで最重要ポイント!
ガントチャートの場合、サイズに任意の数値を入れるとその分の値がプラスされて棒が描写されます。
今回はマークのサイズに-[value_for_waterfall]を入れます。
これでwaterfall chartの完成です。

さいごに

いかがでしたでしょうか?
そこまで手間がかからずにwaterfall chartが描けたかと思います。
皆さんもぜひ試してみてください!

Waterfall Chart
mochizuki
データサイエンティスト。筋トレ、温泉、時々スキー。