Power BI DAX+SVG自制啞鈴圖

啞鈴圖,顧名思義,像啞鈴一樣的圖表,常用來突出兩個數(shù)據(jù)之間的差異。Power BI圖表市場有相應(yīng)的第三方圖表。

其實,我們可以使用一個度量值自己制作啞鈴圖,并且調(diào)整設(shè)計更為靈活。例如如下啞鈴圖反映了今年和去年的差異:青色圓點表示今年數(shù)據(jù),橘色表示去年數(shù)據(jù),同比上升橫線為黑色,下降為淺色。

甚至還可以將啞鈴圖和條形圖結(jié)合:在啞鈴的基礎(chǔ)上增加半透明色的條形表示今年業(yè)績排名。

那么如何制作呢?我們分析一下啞鈴圖的結(jié)構(gòu):
有一個Y軸顯示店鋪名稱,一條豎線區(qū)分Y軸和圖表區(qū)域,一條橫線表示兩個值的差異,兩個數(shù)據(jù)標(biāo)簽,兩個圓點。

也就是說,需要定義Y軸店鋪名稱、豎線、橫線、數(shù)據(jù)標(biāo)簽和圓點的位置,并匹配相應(yīng)的條件格式。通過DAX修改SVG編碼可以實現(xiàn)這一目標(biāo)。完整度量值如下,可替換數(shù)據(jù)后直接復(fù)用:
至于條形和啞鈴組合圖,只需要在以上度量值基礎(chǔ)上,增加一條橫線,這條橫線以Y軸文字結(jié)束為起點,以今年數(shù)據(jù)為終點,并且橫線夠?qū)?,以致于看上去像一個條形。
條形需要設(shè)置的透明一些,否則會覆蓋啞鈴,無法正常顯示,此處需要調(diào)整stroke-opacity參數(shù)。度量值格式需設(shè)置為圖像URL,圖像的顯示可以使用Image by CloudScope。