前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >销售排行榜这么做:Power BI绝对值和占比组合图

销售排行榜这么做:Power BI绝对值和占比组合图

作者头像
wujunmin
发布2022-05-19 08:43:44
1.4K0
发布2022-05-19 08:43:44
举报
文章被收录于专栏:wujunmin

偶然间在网上看到一个研发费用图表,同时显示了各大公司的研发花费以及研发费用占营收的比例。个人认为这个图表非常实用,可以广泛应用于零售业各环节。比如,店铺销售排行榜和对公司的整体业绩贡献,产品销售排行榜和毛利贡献……

以下是Power BI的模拟效果。为了节约画布空间,对原图进行了少许优化:将占比直接显示在圆形气泡上。

可以应用到商品管理领域:

这个图表可以使用DAX一个度量值生成。在写度量值之前,我们需要庖丁解牛般分解该图表的元素。

该图表的主体部分从左往右分为6大块:公司Logo、条形、绝对值数据标签、直线、气泡、占比数据标签。

公司Logo可以在度量值中使用image标签,条形使用rect标签,直线使用line标签,数据标签使用text标签,气泡使用circle标签。

完整度量值如下,将该度量值放入视觉对象HTML Conten正常显示,将度量值中的[value]和[value%]替换为你的模型指标,可以复用。

代码语言:javascript
复制
绝对值占比组合图 = 
//logo20像素宽,条形100像素宽,直线长度150像素,上下间距18像素,圆圈最大半径6像素
VAR ItemCount =
    DISTINCTCOUNT ( 'Table'[公司] )
VAR MaxValue =
    MAXX ( VALUES ( 'Table'[公司] ), [Value] )
VAR MaxPercent =
    MAXX ( VALUES ( 'Table'[公司] ), [Value%] )
VAR BarTable =
    ADDCOLUMNS (
        SUMMARIZE (
'Table',
'Table'[公司],
'Table'[logo],
"Index", RANKX ( ALLSELECTED ( 'Table' ), [Value] )
        ),
"Image",//画logo
"<image xlink:href='" & [logo] & "' x='0' y='" & ( [Index] - 1 ) * 18 & "' width='19' height='12'/>",
"Rect",//画条形
"<rect x='20' y='" & ( [Index] - 1 ) * 18 & "' width='" & 100 * [Value] / MaxValue & "' height='12' fill='CornflowerBlue'/>",
"Text",//画绝对值数据标签
"<text x='" & 20 + 100 * [Value] / MaxValue - 1 & "' y='" & ( [Index] - 1 ) * 18 + 8 & "'  text-anchor='end' font-size='6' >"
                & ROUND ( [Value], 1 ) & "</text>",
"Line",//画连接横线
"<Line x1='20' y1='" & ( [Index] - 1 ) * 18 + 6 & "' x2='170' y2='" & ( [Index] - 1 ) * 18 + 6 & "' stroke='Grey' stroke-width='0.1'/>",
"Circle",//画气泡
"<Circle cx='170' cy='" & ( [Index] - 1 ) * 18 + 6 & "' r='"
                & SQRT ( 36 * [Value%] / MaxPercent ) & "' fill='CornflowerBlue' fill-opacity='0.95'/>",
"Label%",//画占比数据标签                           公众号:wujunmin
"<text x='170' y='" & ( [Index] - 1 ) * 18 + 7 & "'  text-anchor='middle' font-size='4' >"
                & ROUND ( [Value%] * 100, 0 ) & "%</text>"
    )
VAR Bar =
    CONCATENATEX (
        BarTable,
        [Line] & [Rect] & [Text] & [Image] & [Circle] & [Label%]
    )
VAR SVG = "<svg xmlns='http://www.w3.org/2000/svg' viewbox='0 0 176 " & 18 * ItemCount & "'>" & Bar & "</svg>"
RETURN
    SVG
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-04-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 wujunmin 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云 BI
腾讯云 BI(Business Intelligence,BI)提供从数据源接入、数据建模到数据可视化分析全流程的BI能力,帮助经营者快速获取决策数据依据。系统采用敏捷自助式设计,使用者仅需通过简单拖拽即可完成原本复杂的报表开发过程,并支持报表的分享、推送等企业协作场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档