Tableauで目標と実績を管理するようなビューをBar in Barグラフで作成してみましょう
今回はTableauで目標と実績を管理するようなビューをBar in Barグラフで作りたいと思います。
目標と実績をビジュアライズする際にひっかかるポイントがいくつかあります。データの持ち方でアプローチが変わりますし、他にもデータの持ち方によってはデータブレンディングを使うことも可能です。
まずは課題となるデータをご紹介します。2004年~2007年の売上と目標が書かれており、カテゴリごとに目標の売上と実績を比較しています。このファイルについて、目標を達成できているかどうかがひと目でわかるようなビューを作成したいと思います。
さすがに上のデータの持ち方はあまりよろしくないので、Tableauで扱いやすいように少し変えてみましょう(ピボットとデータインタープリターを使えば縦持ちにすることは可能ですが今回は省略します)。データの持たせ方として今回は2タイプ考えてみたいと思います。
- 完全に縦持ちにする(項目は、年度、区分、カテゴリ、金額)
- 目標と実績を横持ちにする(項目は、年度、カテゴリ、目標金額、実績金額)
完全に縦持ちにしてしまうとひと手間かかりますが、同じものを作ることが可能です。ただし、初心者はひっかかりやすいかと思います。
まずは縦持ちでやってみる
まずは、実績と目標を「区分」という項目にして縦持ちのデータにしてみました。
このデータを使ってBar in Barグラフを作ってみました。
スタンダードなBar in Barグラフの作り方で作成しています。
- 「年度」「金額」を列に入れ、「カテゴリ」を行に入れて棒グラフを作成する
- スタックマークをオフにする
- 「区分」をマークカードの色に入れる
- 「区分」をマークカードのサイズに入れる
- サイズ、色を調整(前後関係も調整)
ここまでは問題ないのですが、ここから目標を達成したものだけ実績の色を変える、というのができません。
もちろんBar in Barグラフなので見たらわかりますが、ぱっと見でわかりやすく、というのが達成できた気がしないかと思います。
実績と目標を横持ちで
次に、実績と目標を横持ちにしてみます。
Bar in Barグラフを作ってみました。スタンダードなやり方(スタックマークをオフ)ではできないため、2軸で表現しています。さらに、計算フィールドを用いて目標を達成できたかどうかを色で表現しています。
- 「カテゴリ」「目標金額」「実績金額」を列に入れ、「年度」を行に入れて棒グラフを作成する
- 「実績金額」を右クリックし、「2軸」を選択
- 横軸を右クリックし、「軸の同期」を選択
- 「実績金額」のマークカードにてサイズを調整(細くします)
- 「目標金額」のマークカードにて色を調整(グレーにしています)
- 計算フィールドで「目標達成」という項目を作成
- 「目標達成」を「実績金額」のマークカードの色に入れる
手順5の計算フィールドの作成方法
計算フィールドで実績が目標を越えたらTrueとなるようなフラグを計算するフィールドを作成し、これを利用して実績の棒グラフの色を変えています(目標を越えたらオレンジ色になるように色を調整しています)。
このように作ればひと目で目標達成したかどうかわかると思います。
もう一度縦持ちに戻って
横持ちのデータにて、2軸でBar in Barグラフを表現していますが、同じやり方で縦持ちのデータではできないのか?やってみましょう。
作り方は、横持ちの際の2軸でのやり方に準じますが、事前に計算フィールドで、実績、目標というフィールドを作成するのがポイントです。
「目標」フィールド:IF文を用い、「区分」が目標だったら金額を出力する
「実績」フィールド:IF文を用い、「区分」が実績だったら金額を出力する
「
この2つの項目で、2軸グラフを作成します。
また、「目標達成」フィールドは、計算フィールドで作成した「目標」「実績」から作成します。
改めて作成方法をまとめました。
- 計算フィールドで「実績」「目標」という項目を作成する
- 「カテゴリ」「目標」「実績」を列に入れ、「年度」を行に入れて棒グラフを作成する
- 「実績」を右クリックし、「2軸」を選択
- 横軸を右クリックし、「軸の同期」を選択
- 「実績」のマークカードにてサイズを調整(細くします)
- 「目標」のマークカードにて色を調整(グレーにしています)
- 計算フィールドで「目標達成」という項目を作成
- 「目標達成」を「実績」のマークカードの色に入れる
結論として、事前に計算フィールドを使って「金額」を「目標」「実績」に分解しておけば、横持ちと同じようにVizの作成が可能です。
まとめ
結果としては、縦持ちでも横持ちで同じものができました。
ただし、縦持ちの場合は、計算フィールドを作成しデータを横持ち風にしてからVizを作った、ということで、ひと手間かかっています。ただ、データソースをいじるよりは簡単にできますので、やりやすい方法で良いかと思います。
ただ、縦持ちの場合はスタンダードなBar in Barグラフで表現しようとするとハマってしまうので要注意です。
ところで:
ここでは触れていませんが、今回は目標も実績も集計済みでした。実績が集計されておらず、目標を別ファイルで管理しているというケースの方が現実的なケースかと思います。次回はそのケースについてデータブレンディングを用いた解説を行いたいと思います。
サンプルデータ
サンプルデータソース:実績と目標を比較サンプルデータ
サンプルワークブック:実績と目標を比較サンプルワークブック
※Tableau 2018.2にて検証しています
※2018/11/16 20:36に一部手順を加えております(サンプルワークブックも差し替えております)