zoukankan      html  css  js  c++  java
  • 数据可视化之powerBI技巧(十二)学会这几个度量值,轻松获取前N名

    数据中的明细项一般都有很多,可是我们关注的往往只是前几名,所以在报表中只展示关注的部分,就十分常用。

    有了上篇(这几个示例,帮你深入理解RANKX排名)关于排名的铺垫,仅显示前N名就简单多了。

    依然以上篇文章数据中的数据为例,按销售额的高低来显示前几名的产品,使用最常用的排名方式,

    排名 = RANKX(ALL('产品'),[销售额])

    有了这个排名,如果只想显示前5名,就可以这样写度量值,

     

    销售额 前5名=
    CALCULATE(
    [销售额],
    FILTER(VALUES('产品'),[排名]<=5)
    )

     

    在矩阵中展示一下,

     

    如果想关注前十名,将上述度量值中的5改成10即可,不过关注的数量总是会变化的,不能每次都重新写个度量值,其实也可以利用参数动态显示前N名。

    关于如何使用参数,以前的文章中已经介绍过:创建PowerBI「参数」轻松搞定动态分析

    直接创建一个参数,比如从1到20,

     

    然后在画布上会自动出现一个切片器,重新写一个度量值,把排名的值替换为刚建立的参数,

     

    销售额 前N名 =
    CALCULATE(
    [销售额],
    FILTER(
    VALUES('产品'),
    [排名]<=SELECTEDVALUE('参数'[参数])
    )
    )

    这样就可以随心所欲的查看前N名了,

     

     

    为了突出显示销售冠军是哪个产品,还可以单独写个度量值把这个产品名称找出来,

    销量第一的产品 =
    CALCULATE(
    FIRSTNONBLANK('产品'[产品名称],1),
    FILTER('产品',[排名]=1)
    )

     

    用卡片图展示出来,

     

     

    同理,可以把1改成2、3,就是销售额额的第二名和第三名。

    所有的这些排名都是可以随其他维度的筛选动态变化的,比如不同时间段的排名情况,

     

    总结

     

    想动态展示前N名的名称和金额,可以用矩阵或者条形图等来展示,其中度量值参考这个写法:

     

    销售额 前N名 =
    CALCULATE([销售额],
    FILTER(VALUES('产品'),
    [排名]<=SELECTEDVALUE('参数'[参数])))

     

    如果只想找出排名第几的是谁,一般使用卡片图来展示,其中度量值参考如下写法:

     

    销量第N的产品 =
    CALCULATE(
    FIRSTNONBLANK('产品'[产品名称],1),
    FILTER('产品',[排名]=N))

    下次遇到类似情况是不是就知道怎么做啦:)

  • 相关阅读:
    shell关闭指定进程
    linux tricks 之数据对齐。
    linux tricks 之VA系列函数.
    linux tricks 之 typeof用法.
    linux下notify机制(仅用于内核模块之间的通信)
    怎么判定一个mac地址是multicast还是unicast.
    linux tricks 之 ALIGN解析.
    fid解释
    c语言中宏定义#和 ##的作用:
    rebtree学习
  • 原文地址:https://www.cnblogs.com/qiu-hua/p/12803582.html
Copyright © 2011-2022 走看看