導入
売上と利益率のような、桁や規模が異なる指標についての情報を可視化したい場合、複数のシートに分けることは一般的な方法だと思います。
もし同一の軸上で可視化した場合、例えば下図のように、片方は変化が全く見えない状況に出会うかもしれません。

したがって別々のシートで作成する方が良いかというと、可視化の粒度によっては問題が生じます。
例えば下図のようにスクロールバーが必要になるような粒度が必要な場合、シート間でスクロールバーを同期することは難しいため、操作性の問題を抱えることになります。
また指標ごとにシートを作成する必要があるため、指標の数によっては運用性の問題を抱えるかもしれません。

このような問題を解決するため、規模が異なる指標を1シートにまとめる方法を考えてみましょう。
問題Workbook

(クリックしてTableau Publicに移動)
解答要件
- ダッシュボードサイズ: 1000 x 800 px
- シート数: 1
- サブカテゴリごとに、以下の指標についての、オーダー年月ごとの推移を可視化した線グラフを作成する。
- 合計利益
- 合計売上
- オーダー数(Order IDのユニーク数)
- 利益率(合計利益÷合計売上で算出する)
- 平均割引率
- それぞれの線グラフに傾向線を表示する。
- サブカテゴリは総利益の降順で並べる。
- 指標名で色付けする(任意の色でOKです)。
- Vizの見た目とツールヒントを極力一致させる。
Hint (クリックして展開)
- 異なる規模の数字を同一シート上で可視化する、つまり同一軸上で可視化するためには、それぞれの指標を同一のスケールに変換する必要があります。
- 様々な方法が考えられると思いますが、以下の正規化の考え方が役に立つかもしれません。
- 正規化(Normalization)/標準化(Standardization)とは?
- Feature scaling
- 他にも「Tableau 正規化」などで検索すると事例が見つかります。
データセット
Sample Super Store 2023.1を使用する。
データはこちらから
参考
- Synchronized Scrolling in Tableau
- 余談ですが、後半の「A Better Way!」以降の方法は面白かったです。ただし「A Couple of Flaws :(」項で説明されているように、この方法も制約を伴いますね。
- 更に余談ですが、スクロールバーの同期が必要になるのであれば、Dashboard Extensionsを探す/作る必要があると思います。
ご興味あれば以下をご覧ください。
提出について
- こちらから解答を提出ください。
- Tableau Publicへのパブリッシュ時には #TableauChallenge を付けて投稿ください。
- Xにハッシュタグ#TableauChallengeで回答を投稿ください。