首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Power BI可视化技巧:柱形图动态显示预算实际

之前碰到多次星友提出类似这样的问题:展示预算和实际数据时,如果是已经发生的月份就显示实际数据,未发生的月份显示预算数据,并用不同的颜色区分,这应该怎么做呢?

接着前面关于预算分析文章的介绍,如果直接把实际和预算数据放到簇状柱形图中,效果是这样的:

现在打算实现的效果是,已经发生完整业务的月份就只显示实际数,未发生业务的月份只显示预算数。

比如在这个案例中,完整的业务月份是到9月份,如何让1-9月显示实际数据,而第四季度的三个月显示预算数据呢?并且用不同的颜色表示预算和实际数据。

可以构建两个度量值来实现:

收入 实际=

IF( MAX( '日期表'[日期] )

收入 预算=

IF( MAX( '日期表'[日期] ) > [最新业务日期] , [收入 预算分配] )

这两个度量值都是利用当前上下文的最大日期与[最新业务日期]比较,[收入 实际]度量值的判断逻辑是,如果是已发生业务的完整月份,显示实际数,否则返回空值;而度量值[收入 预算]的逻辑正好相反。

对于不完整的业务月份,在这个柱形图中,上下文是月份,MAX返回当月的最后一天,只要 [最新业务日期]不是最后一天,当月就不完整,只有[收入 预算]会返回预算数据。

利用这两个度量值生成堆积柱形图,就是目标效果:

当10月业务发生完以后,该柱形图会自动将10月份的数据变更为实际数据,并用橙色显示。

更进一步的,还可以创建一个月份参数,将上下文的月份直接与参数比较,来动态显示任意一个月份分割的实际和预算数据。

关于如何建参数不再介绍,如果不熟悉你可以参考这篇文章来了解:创建PowerBI「参数」轻松搞定动态分析,这里直接用建好的参数来修改上述度量值:

收入 实际 =

IF(MONTH(MAX('日期表'[日期]))

收入 预算=

IF( MONTH(MAX('日期表'[日期]))>[月份 值],[收入 预算分配])

然后利用参数切片器就可以进行动态切换:

甚至可以用个播放器来自动循环展现实际和预算数据的变化:

当然这里这样做并没有太大意义,主要想要表达的是,这种技巧并不只是适用于预算分析,当你有类似的动态展现需求时,都可以参考这种思路来实现。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20201016A067BI00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券