前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何将 PowerBI 钻取转为平铺操作增强易用性

如何将 PowerBI 钻取转为平铺操作增强易用性

作者头像
BI佐罗
发布2021-11-04 14:31:56
4770
发布2021-11-04 14:31:56
举报
文章被收录于专栏:PowerBI战友联盟

钻取,是刚刚入门 BI 的小伙伴觉得 BI 很神奇的关键特征之一,但成为专家之后,你会发现,钻取需要用户有 BI 的概念,对于普通用户不够友好,对此,我们有两个解决方案,本文来描述第一个解决方案。

钻取的效果

鼠标右键可以不断向下钻取,如下所示:

从年到月份,从月份到日,形成了一个层级结构。

当用户点击鼠标右键的时候,问题在于:多出来了一种交互操作。

将钻取完全展开

先来看一个效果:

这里将原有的钻取结构,拆分成三套结构,如下:

  • 按年的趋势
  • 按月份的趋势
  • 按日的趋势

且满足:

  • 如果用户没有做任何选择,那么:
    • 默认显示最后一年的月份趋势;
    • 默认显示最后一个有数据月份的日趋势。
  • 如果用户选择了某年,但没有选择月份,那么:
    • 显示该年下面的月份趋势;
    • 默认显示该年下面最后一个有数据月份的日趋势。
  • 如果用户选择了某年,且同时又选择了某月,那么:
    • 显示该月下面的日趋势。

实现方法

根据以上描述,可以分析:

  • 需要度量值进行控制,来判断用户的选择;
  • 在合理的选择下,返回所需的结果。

度量值如下:

代码语言:javascript
复制
KPI.ByYearSelected = 
IF( 
    ISFILTERED('Calendar'[YearName] ) || ISFILTERED('Calendar'[YearNumber] ) , 
    [KPI] , 
    CALCULATE( 
        [KPI] , 
        'Calendar'[YearNumber] = MAXX( ALL( 'Calendar'[YearNumber] ) , [YearNumber] ) 
    ) 
)

用该度量值可以控制月份趋势图的显示,再构造度量值如下:

代码语言:javascript
复制
KPI.ByYearMonthSelected = 

VAR vYear  = SELECTEDVALUE( 
    'Calendar'[YearNumber] , 
    MAXX( ALL( 'Calendar'[YearNumber] ) , [YearNumber] ) 
)

VAR vMonth = SELECTEDVALUE( 
    'Calendar'[MonthNumber] , 
    CALCULATE( LASTNONBLANK( ALL('Calendar'[MonthNumber] ) , [KPI] ) ,
        'Calendar'[YearNumber] = vYear , ALL( 'Calendar' ) 
    ) 
)

RETURN
    CALCULATE( [KPI] ,'Calendar'[YearNumber] = vYear ,'Calendar'[MonthNumber] = vMonth )

用该度量值可以控制日趋势图的显示。

总结

PowerBI 的原生特性很多都存在优化空间,以及借助 DAX 驱动可视化有更好的表现。在这方面,我们已经用独到的方法解密了 DAX 配合业务应用的所有秘密。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-10-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PowerBI战友联盟 微信公众号,前往查看

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

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

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