三角形面積圖(Triangle Area Chart)由Tableau Zen Master Luke Stank創(chuàng)造黍析。外形與漏斗圖非常相似陪腌,但表達的信息卻完全不同的诵,它通過梯形(或三角形)的面積反應(yīng)數(shù)量的大小。下圖中梯形的面積就是各州銷售額的占比未斑。
繪制三角形面積圖難度并不高,只要計算出梯形4個點的坐標位置币绩,使用多邊形將四個點按照順序連接到一起即可蜡秽。Luke使用的是5個點,由于首尾點的位置重合缆镣,所以在使用多邊形時候芽突,可以省略掉第5個點。這里的繪制邏輯請參考我以前寫過的《用Tableau畫漏斗圖的4種方法》董瞻。
我們使用中文超市數(shù)據(jù)寞蚌,但是由于每個地區(qū)需要4個點來完成,所以必須使用輔助數(shù)據(jù)源將數(shù)據(jù)擴充4倍。
新建計算字段
- 銷售額占比:SUM([銷售額])/WINDOW_SUM(SUM([銷售額]))
- 累計銷售額占比:RUNNING_SUM([銷售額占比])
- 寬度:
IF COUNTD([Path])> 1 // 這里僅雙軸添加標簽時使用
then 0
ELSEIF MAX([Path])=1
THEN SQRT(ZN(LOOKUP([累計銷售額占比],-1)))
ELSEIF MAX([Path])=2
THEN SQRT([累計銷售額占比])
ELSEIF MAX([Path])=3
THEN -SQRT([累計銷售額占比])
ELSE -SQRT(ZN(LOOKUP([累計銷售額占比],-1)))
END
- 高度:
IF COUNTD ([Path]) > 1 // 這里僅雙軸添加標簽時使用
THEN (SQRT(ZN(LOOKUP([累計銷售額占比], -1)))+ SQRT([累計銷售額占比]))/2
ELSEIF MAX([Path]) = 1 OR MAX([Path])=4
THEN ZN(LOOKUP(SQRT([累計銷售額占比]), -1))
ELSE SQRT([累計銷售額占比])
END
按照下圖挟秤,標記類型選擇“多邊形”壹哺,將“區(qū)域”字段拖到“顏色”欄,并使用銷售額排序煞聪,“Path”字段拖到“路徑”欄斗躏,將“寬度”和“高度”分別拖到行列功能區(qū),表計算依據(jù)選擇“區(qū)域”昔脯,就可以完成基本圖形的繪制啄糙。
由于多邊形無法添加標簽,所以需要復(fù)制出一個“寬度”字段云稚,標記類型改為“文本”隧饼,去掉“Path”字段,調(diào)整標簽文本就完成了標簽的添加静陈。
為了方便大家理解燕雁,下圖用交叉表列舉了計算過程中涉及的主要指標,這里表計算過程中“path”作為方向鲸拥,“區(qū)域”作為分區(qū)拐格。
由于三角形面積圖使用面積反應(yīng)銷售額占比,在視覺上并不容易區(qū)分出占比的大小和差異刑赶,所以適用的場景會受到一定限制捏浊。但是作為學習Tableau繪圖原理,特別是表計算原理是一個非常好的案例撞叨。
此篇文章已發(fā)布到我的公眾號: saodisir金踪,有興趣也可關(guān)注一下