LoginSignup
1
0

tableauでのレーダーチャートの作成方法

Last updated at Posted at 2024-01-18

レーダーチャートですが、Tableauでもつくることができるらしいです。ので、今回はTableauでレーダーチャートにトライしてみようと思います。

:arrow_forward:参考文献
https://qiita.com/MYS_moyashi/items/3564dd8d24832e2afaed
http://blog.livedoor.jp/tab_hiro/archives/16297700.html

:black_medium_square:多角形を用いた作成方法

・レーダーチャートで表したい指標は5つ、値の最大値は5、最小値は0であることを想定します。
・各項目においてxyの2次元上に座標点を取得する計算式を書く
 xはcosθ、yはsinθで表す(サイン、コサインで座標を表す)
 x = 指標の値 * cosθ    y = 指標の値 * sinθ
image.png

最初のKPI1 ⇛ π/2(cosπ/2 = 0 sinπ/2 = 1となります)
次のKPI2 ⇛ π/2 - 2π/5
次のKPI3 ⇛ π/2 - 4π/5
次のKPI4 ⇛ π/2 - 6π/5
次のKPI5 ⇛ π/2 - 8π/5
次のKPI1' ⇛ π/2 - 10π/5
のように続きます。

①データを用意(下記画像を参照、今回はカタールワールドカップで活躍した堂安選手のFIFAでの能力値を使用したいと思います。)
・エクセルでレーダーチャートで表したいデータ(選手名:堂安律)と
 レーダーチャートのグラフ(Avg、Avg-1,Avg-2,Avg+1,Avg+2)を用意します。

・レーダーチャートのグラフ(Avg、Avg-1,Avg-2,Avg+1,Avg+2)は「真」
 レーダーチャートで表したいデータ(選手名:堂安律)は「偽」となるようなカラムも用意
 ※グラフの太さを変更する際に使用します。
image.png
image.png

②データが用意できたら、レーダーチャートを作成するのに必要なメジャーを作成します。
・index
INDEX()

・能力詳細_Counts_adj
今回は能力詳細の名前が6個(ペース'も含めて)あるので、-1する。
{FIXED:COUNTD([能力詳細])} - 1

・Radians:cos,sin でつかう角度
PI()/2 - 2PI()/avg([能力詳細_Counts_adj])([index]-1)

・X座標
sum([能力値])*COS([Radians])

・Y座標
sum([能力値])*SIN([Radians])

・能力値 for Label:KPIの値を表示するためのラベル
 //KPIの値を表示するためのラベルです。外枠であるAVG+2の場合はnullにします。
if
ATTR([Name]) = "AVG+2" then null
elseif LAST() != 0 then sum([能力値])
end

③Tableauで下記の図のように設定するとレーダーチャートが表示される。
 線の太さや色は「Line」と「Product」で調整します。
image.png
③-1
列のX座標を右クリックし、次を使用して計算:能力詳細
行のY座標も同様に行う。
image.png

③-2
列のX座標を右クリックし、軸の編集から、範囲を固定に変更。
開始値と終了値を設定する。今回はレーダーチャートの範囲がMAX100なので、-100~100とする。
Y座標も同じように変更する。
image.png

③-3
マーク内のラベル「能力値 for Label」を選択し、次を使用して計算:能力詳細を選択
image.png

③-4
マーク内のパス「能力詳細」を選択肢、並び替えから、
最初と最後の項目が同じになるように手動で並び替える。
image.png

③-5
ペース'のラベルが重複して表示されてしまっているので、グラフ上のペース'の上で
右クリックし、マークラベル>表示しないを選択する。
image.png

マークラベルを必要な個所のみ表示して完成です!
image.png

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0