Power BI复刻EasyShu仪表盘
EasyShu是国内著名的Excel图表插件,插件有几种仪表盘效果,本文分享下如何将仪表盘复刻到Power BI。从零设计一款仪表盘需要的时间可能以小时计,复刻我只用了不到10分钟。

选中数据,点击EasyShu-圆形图-仪表盘,这里我选择了渐变刻度样式,数据越小颜色越红,否则越绿。

选中图表,将图表另存为可缩放的向量图形,即SVG格式。

用inkscape打开下载好的图表,可以看到所有图形元素被组合成了群组,鼠标右键解除群组,以便快速定位元素,以及减少代码的长度。

解除完可以看到这个图表由SVG标签中的path和text构成,path用来显示图表图案,text用来显示刻度和数据标签。

图表中可能有一些隐藏元素,例如rect(矩形),可以看到rect对图形显示没有实际用处,可以直接删除。

图表有两个变动元素:数据标签和指针方向,通过选中元素可以知道元素对应的代码是哪段,后期需要将变动的地方和DAX结合。

调整完成后保存图片,记事本打开图片文件,双引号替换为单引号,将里面的SVG代码复制到一个空白的Power BI度量值,度量值前加上data:image/svg+xml;utf8,以便Power BI识别。
将代码中text对应的百分比值替换为你的百分比度量值,指针对应的path代码设置旋转规则,这是一个270度仪表盘,因此总角度270乘以百分比数值旋转,这里需要从Excel导出图表时将数据设置为0,否则旋转会出现异常。
transform='rotate("& 270 * 百分比度量值 & " 50 50)'
图表度量值设置完成后,标记为图像URL,放入表格矩阵或者新卡片图均可正常显示:

本文只演示了一种仪表盘,EasyShu还有其他样式,读者可以尝试。