文档大纲

Power BI如何图形化分组对比数据

    例:在Power BI中有一个度量值[净实销],对应有[分组]值,为"蓝队"和"红队",如何生成时间序列的柱状图,每个时间点有两条柱,一条对应"蓝队"的[净实销],一条对应''红队"的[净实销]?

    操作步骤

    • 在报表画布里插入 簇状柱形图(Clustered column chart)。
    • 拖入字段:
      • X 轴:时间字段(例如 [日期] 或 [年月])
      • Y 轴:度量值 [净实销]
      • 图例 (Legend):字段 [分组]
    • 这样在每个时间点,会自动分成两根柱:一根对应"蓝队",另一根对应"红队"。

    我想蓝队的柱子是蓝色,红队则是红色,更直观,在格式 → 数据颜色 里手动指定:

    • 蓝队 → 蓝色
    • 红队 → 红色

    如果要对比趋势,还可以直接改用 折线图,横轴同样放时间,图例放 [分组]。

      如果我想同时对比两组数据,用柱状图展示[净实销],折线图展示[净实销同比增长],还要对比"蓝队"、"红队",又应该怎么做呢?

      使用组合图,在图例中再拖入分组,就不行了。

      一个简单的方法,是为蓝队和红队分别建度量值:

      • 净实销_蓝队 = CALCULATE([净实销], '表'[分组] = "蓝队")
      • 净实销_红队 = CALCULATE([净实销], '表'[分组] = "红队")
      • 净实销同比增长_蓝队 = CALCULATE([净实销同比增长], '表'[分组] = "蓝队")
      • 净实销同比增长_红队 = CALCULATE([净实销同比增长], '表'[分组] = "红队")

      然后在 组合图 里:

      • 柱状图值 → 净实销_蓝队、净实销_红队
      • 折线图值 → 净实销同比增长_蓝队、净实销同比增长_红队

      👉 这样每个时间点会有两根柱(蓝/红),同时有两条折线(蓝/红)。

      但是新建度量值,在度量值本来就比较多的大表中,不是一个好习惯。有没有其他解决方式?

      让我们试试图的叠放,这将是一个更好的解决方式:

      • 按本文第一部分的方法,做一个簇状柱状图(按分组对比净实销)。
      • 再做一个折线图(按分组对比净实销同比增长)。有几个注意点:数据放在辅助Y轴;取消X轴的值显示(避免时间序列重叠显示);背景透明度设置为100%;去除"图例"显示;把希望在鼠标悬停时显示的数值,都加入折线图的"工具提示"中。
      • 叠放在一起,记得在"选择"中,将折线图放在柱状图的上面一层。调整折线图的大小,和柱状图对齐。

      👉这样,虽然是两个视觉对象,但看起来就像一个组合图了。完工大吉!

      阅读量: 280