Tablau desktopでサンキーチャートを作成する方法について
はじめに
はじめまして。じろーと申します。
DATA Saber Boot Campを機に、Tablauを使い始めた初学者ですが、
Boot Campの中で発見したことや学んだことを書き記していきたいと思い、この記事を書いております。
初回は、Tabalu desktopでサンキーチャート(sankey diagram)を作成する方法について、誰でもできるやり方で紹介したいと思います。
サンキーチャートとは?
まず、サンキーチャートって何ぞやという話ですが、下記の通りです。
上記のようなグラフをサンキーチャートと呼んでいます。
サンキーチャートを作成する方法
Tablauでのサンキーチャート作成方法については、2023/5/16 現在2パターンあります。
1つは、Tablau Public上で作成する方法。
もう1つは、Tablau desktopで作成する方法です。
1つ目の、Tablau Publicで作成する方法については、「マーク」に『サンキー図』という機能があるため、そちらを利用すれば作成できます。
ただし、(私が所属している企業がそうなのですが)個人情報を扱っていたり、厳格なセキュリティが敷かれている企業の場合、Tablau desktop上で社内データが扱えない場合があるため、業務に使えないというデメリットがあります。
2つ目の方法のTablau desktopで作成する方法であれば、Tablauを導入していれば、作成可能な方法なので、この場で説明したいと思います。
Tablau desktopでのサンキーチャート作成方法について
サンキーチャートを作成する流れは、大きく以下の通りです。
Step1 データの準備
Step2 計算フィールド作成
Step3 各要素を配置
Step4 始点と終点の構成比を作成
Step5 ダッシュボード化
上記5stepについてこれから解説していきます。
Step1 データの準備
まず、始点と終点の要素(ディメンション)と構成比の要素(メジャー)が含まれる分析元データをTablauに取り込んでください。
次に、サンキーチャート特有のS字カーブを描かせるために使用するcsvファイルを取り込み、分析元データと紐づけてください。
取り込む際に、それぞれ「結合計算の作成」で「1」を入力し、内部結合します。(これにより、分析元データ1行毎にcsvファイルのすべての行(97行)が結合されることになります。データ量100倍になるので注意)
Step2 計算フィールドを準備する
多くの計算フィールドを作成するので、分かりやすくするためにも、
2つのフォルダに分けて作成します。(太字以外はすべてコピペでokです)
①「basic」フォルダ
Dim1: 始点となるディメンション
Dim2: 終点となるディメンション
Chosen Measure: 構成比を図るメジャーの合計
Sankey Arm Size: [Chosen Measure]/TOTAL([Chosen Measure])
~メジャーの構成比を表す計算フィールド
Curve Function: 1/(1+EXP(1)^-[T])
~シグモイド関数(S字カーブを描いてくれるありがたい関数)※上記に加え、「Path」と「T」もbasicフォルダに移動させておくと良い
②「Position」フォルダ
Position 1 MAX: RUNNING_SUM([Sankey Arm Size])
Position 1 MIN: [Position 1 MAX] - [Sankey Arm Size]
Position 2 MAX: RUNNING_SUM([Sankey Arm Size])
Position 2 MIN: [Position 2 MAX] - [Sankey Arm Size]
Curve 1-2 MAX: [Position 1 MAX] + ([Position 2 MAX] - [Position 1 MAX]) * MIN([Curve Function])
Curve 1-2 MIN: [Position 1 MIN] + ([Position 2 MIN] - [Position 1 MIN]) * MIN([Curve Function])
Curve Polygon 1-2: CASE MIN([Min/Max]) WHEN 'Min' THEN [Curve 1-2 MIN] ELSE [Curve 1-2 MAX] END
Step3 各要素を配置
「T」を最小値で列に配置。
「Dim1」を色に配置。
「Dim2」を詳細に配置。
マークを多角形に変更。
「path」をパスに入れ、ディメンションに変換。
「Curve Polygon 1-2」を行に配置。
「Curve Polygon 1-2」 の表計算を編集。
Step4 始点と終点の構成比を作成
始点と終点の構成比をそれぞれ作成する。
並び替えをうまく活用し、Step3で作成したものと並び順を揃える。
Step5 ダッシュボード化
Step3とStep4で作成したシートをダッシュボードでまとめる。
おわりに
以上が、Tablau desktopでのサンキーチャート作成方法となります。
計算フィールドを準備する部分で、難しい関数や計算式が出てきますが、
誰でもできるようになることを目指していたので、コピペすれば、作成できるようになっています。
この記事を作成するにあたり、Arakawaさんのこちらの記事を参考にさせていただきました。
別の記事で、計算式などの詳細を解説いただいておりますので、興味のある方は読んでみてください。
それでは。