跳到主要內容

[HowTo] 用Tableau來繪製雷達圖

雷達圖(Radar Chart)經常被使用在需要同時評估多重指標時,例如戰力圖、財務狀態綜合指標、品質管制分析、員工能力分析等等

Tableau最簡單要繪製雷達圖的方式是先將相關指標值轉換為(xy)座標標示,在Tableau利用polygon將指標依序連接起來,最後放上一個雷達圖的底圖。

(例如下圖)

接下來的內容將示範在不對資料加工下以最簡單的方法在Tableau上繪製五邊形雷達圖,以及需要的相關計算。


首先要先知道指標數量的不同會有不同的多邊形,所以需要先計算多邊形每一個轉角的內角角度。

舉例來說,五邊形的每一個內角角度為360∘/5 = 72,但我們需要讓五邊形的頂點位置在正中間上方,所以需要再加上 18的偏移

因此得到五個指標的相對應角度

指標1

72*1 +18∘=90

指標2

72*2 +18∘=162

指標3

72*3 +18∘=234

指標4

72*4 +18∘=306

指標5

72*5 +18∘=378


接下來要將指標值轉化為對應的(x,y)座標

以下圖為例XY座標位置的計算應該如下:
X=cosθ * 半徑
Y=sinθ * 半徑

但這邊θ是指弧度並不是角度,所以需要用到RADIANS()函數將角度值轉為弧度值
所以實際上的XY座標位置的計算應該如下:

指標1

x=cos (RADIAN(90)) *指標值

y=sin (RADIAN(90)) *指標值

指標2

x=cos (RADIAN(162)) *指標值

y=sin (RADIAN(162)) *指標值

指標3

x=cos (RADIAN(234)) *指標值

y=sin (RADIAN(234)) *指標值

指標4

x=cos (RADIAN(306)) *指標值

y=sin (RADIAN(306)) *指標值

指標5

x=cos (RADIAN(378)) *指標值

y=sin (RADIAN(378)) *指標值

以上基本的數學與三角函數都清楚後,我們可以開始進入Tableau了。

用以下的數據來示範,共有五個指標,指標分數從1-10

我會使用index()Tableau依據指標名稱給出指標的對應角(1 ~ 5),搭配前面的XY座標公式
因此創建兩個Calculated Field 如下:

(這邊如果你想指定哪個指標在哪個角落,可以另外寫Calculated Field指定取代index())

我也會在XY這兩個Calculated Field內預先選好index()表計算的compute using by評比項目

之後就可以開始將欄位放入畫布內;步驟如下

1.          Marks => 下拉選擇 Polygon

2.          評分項目 => Path

3.          姓名 => Color

4.          X => Columns

5.          Y => Rows

6.          調整顏色透明度 & 邊界

 完成以上步驟後,基本的雷達圖就可以出現(如下)


最後只要在Map => Background Images加上底圖,讓X座標與Y座標分別對應至前面創建的XY這兩個Calculated Field

XYLeft/RightBottom/Top需視你的指標值定義;以我範例的指標值為1-10之間,中心點是(0.0),所以範圍我會用 ( -10 ~ 10 )

圖片我則會選擇1:1的圖片,且五邊形中心點是在圖面正中間。

 放上底圖後如下,只需要再隱藏軸線,添加指標/數值就可以完成整個雷達圖。

 如果考慮到要同一個視圖內可以有不同的指標數量,可能有時是五個指標所以五邊形,有時是八個指標八邊形的話,就可以以前面的說明為基礎,配合上"添加多張背景圖像"就能達成。

留言

  1. 請問一下 COS(RADIANS((INDEX()*33+33)))* MIN([評分])
    中[評分]代表什麼意思呢

    回覆刪除
  2. 多邊形背景圖像可以去哪找?網路上的圖size都不合

    回覆刪除
    回覆
    1. 基本上是自己畫一個,excel 很方便😝

      刪除
  3. 回覆
    1. 謝謝指教, 哪個 blog 寫得好的推薦一下囉~

      刪除
  4. 寫得太差.評比項目是什麼你沒有寫.你的圖表中有五項但沒有評比項目.反而步驟動畫中有一項評比項目.這評比項目怎樣代表五個科目又沒有寫

    回覆刪除
    回覆
    1. 你有認真在看耶~ 步驟動圖也有仔細在看~
      但你大概沒有注意到,評分項目不就是欄位標題名稱而已~ ~

      刪除

張貼留言

歡迎留言討論指教~~

這個網誌中的熱門文章

[HowTo] 怎樣才能畫出環圈圖(甜甜圈)

首先呢,要有個圓餅圖(Pie Chart) 接下來,在Rows上以滑鼠左鍵雙擊輸入數字"0",輸入後Tableau會建立一個SUM(0)

[HowTo] 地址批次轉換為經緯度

兩個我知道可以批次轉換地址為經緯度的網站 Batch Geocoding 這網站是透過 Google Map API, 因為非商用 google 是有限制的。 實際再用時當一次轉換筆數過多時中間容易會有失敗的現象 , 筆數越多失敗率越高

[HowTo] 關於排序的幾種方式 - 參數控制

排序 (sorting) 在做數據分析時經常會被使用。 在 Tableau 的設計中,簡單的排序只要畫面上點選就可以做到。 但有時候,設計者希望能透過參數的選擇方式,讓閱讀者能夠點選或切換排序依據。 這時候就需要一些稍微進階的作法。 這篇會說明透過參數與計算字段方式來產生動態的排序。 (update at 2020/04/24) 範例一 :  顯示各年度次類別的銷售,並可選擇依據哪個年度排序,且選擇遞增或遞減排列 如何做呢 ? 建立兩個參數,一個是年度,另一個是昇降冪 建立計算字段 計算字段如下,主要是透過一個邏輯判斷僅保留下參數選定的年度的Sales,然後乘上參數(+1/-1)來改變排序方向 最後在 Sub-Category 的排序中選擇以剛剛的計算字段作為排序依據 完成後如下 : 範例二 : 主要維度需要可以選擇 ( 次分類、洲或者區域與產品分組 ) 顯示銷售、利潤與毛利率,並可依據其中一項度量作為排序依據且選擇遞增或遞減排列。 如何做呢 ? 分別建立主欄位、度量、昇降冪的參數 建立計算字段  A.  建立維度的選擇計算字段如下 建立排序用的計算字段B,透過邏輯判斷先選擇度量的參數, 然後乘上參數(+1/-1)來改變排序方向 最後在前面創建的主欄位選擇維度(A)的排序中選擇剛剛的計算字段B 完成後如下 :

[HowTo] 用甜甜圈來呈現目標達成率

如何用環狀圖(甜甜圈)來呈現如下圖的單一個目標達成率的數字呢? 其實方法就是,用兩個數字XDDDD 如果你的數據跟我的Sample一樣已經有目標值(Goal) & 實際值(Sales),就要先算出與目標值的差距數值 如果你的數據已經是達成率,那就做一個 1-[達成率] 的計算字段來代替 接下來一樣是先選擇做一個Pie Chart, 但這時候是將Measure Names放到Color,然後將Measure Values 放到Angle Measure Values 只保留SUM(Sales) & SUM(Gap to Goal)兩項 再來就可以透過前一篇提到的甜甜圈作法,用雙軸的方式產生出一個小圓覆蓋在Pie Chart上面 最後調整顏色 & 格式 &文字,然後需要的話可以將數值顯示在中間 那整個完成後的視圖如下: