Tableauの基本機能を使って動的ダッシュボードを作成する方法

はじめに

TechDiv 大橋です。
今回はTableauのパラメーターや計算式、フィルタ、階層などの基本的な機能で、 動的に変化するダッシュボードを作成してみます。

環境

windows10
TableauDesktop2019.1

使用するデータ

TableauDesktopにサンプルとして付随している「サンプル - スーパーストア」

作成するもの

製品売上/利益ランキング表 セレクター部分で選択した情報が表示されるようにします。

今回パラメータにて変更可能にする項目は以下の三つです。

  • 集計項目メイン:カテゴリ/顧客区分/都道府県/全て
  • 集計項目サブ:カテゴリ/顧客区分/都道府県
  • 集計対象:売上/利益

上部の表では集計項目/集計項目内ランキング順位/製品名/金額 を表示させ、
下部のグラフは金額が大きい順に製品名を降順で配置し、集計項目サブで色分けを行います。
今回は上部の表部分について、詳しく見ていきます。

表部分

パラメーターについて

パラメーターとそれによって動的に変化する計算式を用いることで、ダッシュボード上にてプルダウンを利用し、動的にランキングの数値や切り口を変更できるようにすることができます。同じような表を複数作らなくて良くなるため、スペースの有効活用(他の情報を載せるなど)が可能になります。

  • ディメンション右横の▼からパラメーターを作成します。

  • 計算式で簡単なif文を作成します

【計算式】集計金額
IF ( [param_集計対象] == "売上" ) THEN
  [売上]
ELSE
  [利益]
END

  • 同様に集計項目メイン・集計項目サブについても、計算式を作成します。

この計算式はディメンションとして認識されます。これを用いてビューを作成することで、パラメーターの値によって表示される内容が動的に変化します。

階層

集計項目メイン・サブの計算式を階層にしておくことで、表の[+]ボタンでドリルダウンが可能になります。

  • 集計項目メイン・サブを選択し、右クリック

  • →階層より、階層の作成を選択。名前を付けてOKをクリック

  • 階層が作成されると、集計項目メインの横に+マークが出現します。(または表のカラムにマウスオーバーで表示)

  • +マークをクリックすると、ドリルダウンされ集計項目サブのカラムが出現します。

より細かい情報を得たいなど、ニーズに合わせた表を動的に作成する際には階層化を用いてみてください!

おまけ:Rank関数について

rank関数にはいくつか種類がありますが、ここではRANK_UNIQUEを利用します。

【計算式】rank
RANK_UNIQUE ( SUM ( [集計金額] ) )

RANK_UNIQUE(expression, ['asc' | 'desc'])
パーティション内の現在の行の一意のランクを返します。同一の値に異なるランクが指定されます。昇順または降順を指定するには、オプションの 'asc' | 'desc' 因数を使用してください。既定では降順です。
この関数を使用すると、値のセット (6、9、9、14) は (4、2、3、1) とランク付けされます。
Null はランキング関数では無視されます。これらには番号が付けられておらず、百分位値のランク計算のレコード総数に含まれません。


引用 : 表計算関数 - Tableau

rank関数の計算式を普通にドラッグ&ドロップしても上手くランキング表にできません。ここでのポイントは二つです。

  • ラベルに追加したrankについて、不連続を選択します。

  • 「次を使用して計算」を「製品名」にしてランキングの切り替わる範囲を指定します。

これで"製品名"ごとに、指定した範囲のランキングが表示されます。範囲はフィルターで任意の値に設定して下さい。(現在は最大値が3になるよう設定しました。)

まとめ

このように、パラメーターと計算式を用いることで動的に変化するダッシュボードを作成することができました。表示させたいデータに対して一つずつビューを作るのではなく、パラメーターを用いて表示させることで、同じ表を作成する手間が減り、ビューの管理がしやすくなります。切り口を変えてデータを可視化する際は、ぜひこの方法を試してみてはいかがでしょうか。