跳至主要内容

如何创建 Power BI 瀑布图:5 个简单步骤

学习如何创建 Power BI 瀑布图,包括如何自定义图表以提升观感。遵循最佳实践并避免常见错误。
· 8分钟 阅读

使用 AI 探索

瀑布图将数据可视化地分解为多个部分,帮助识别趋势与模式。它广泛用于金融、项目管理和绩效评估等领域。尤其在商业场景中,瀑布图能让管理层轻松定位推动组织利润或成本的关键因素,并直观看到这些因素的影响。

本文将向您展示如何在 Power BI 中创建并自定义瀑布图。Power BI 在这方面非常出色,因为它为瀑布图等可视化提供了零代码的创建方式,并支持高级自定义。您还将学习最佳实践以及需要避免的常见陷阱。

Power BI 中的瀑布图是什么?

让我们花一点时间更深入地了解瀑布图。

理解瀑布图

瀑布图(也称桥接图)以可视化方式展示某个指标在一系列增减变化影响下的结果。它显示变量从初始起点到最终阶段的变化过程,同时呈现正负值对起点的累积影响。

顾名思义,这种图表看起来像层层叠落的瀑布。正如下方示例所示,柱形并非都从 x 轴起始,而是彼此“悬浮”并逐级叠加,营造出瀑布效果。

瀑布图的关键组成部分

瀑布图包含以下组成部分:

  • 起点: 瀑布图的初始值,也是第一根柱。
  • 上升柱: 表示使初始值增加的因素。
  • 下降柱: 表示使初始值减少的因素。
  • 终点: 瀑布图的最终结果,体现上升柱与下降柱的累积效应,也是图表中的最后一根柱。
  • 中间步骤: 额外的柱,用于展示影响最终值的上升与下降因素的细分。
  • 配色编码: 用于区分上升柱与下降柱。通常绿色代表上升,红色代表下降。

设想某公司 CFO 需要向董事会解释公司净利润较上一年下降的原因。瀑布图可如下呈现:

组成部分因素数值
起点去年净利润$10 million
上升柱营收增长+$5 million
下降柱销售成本增加-$3 million
下降柱运营费用增加-$2 million
下降柱一次性法律和解-$4 million
下降柱税费增加-$1 million
终点今年净利润$5 million

Waterfall chart image illustrating the above example

瀑布图解释公司营收下降(单位:百万)。图片由作者提供

在 Power BI 中创建瀑布图

本节将使用 超市销售 数据集创建瀑布图,以分析哪些产品带来最多利润。继续之前,请确保您的电脑已安装 Power BI Desktop。

步骤 1:导入并准备数据

  • 将 supermarket_sales.csv 文件导入 Power BI。

    • 前往主菜单中的 File 选项卡。

    • 点击 Get Data。

    • 选择 Text/CSV 作为数据源。

GIF showing how to import a CSV into Power BI

将数据导入 Power BI。图片由作者提供

将弹出一个窗口,显示数据变量预览,并提供 Load 或 Transform 的选项。

  • 点击窗口中的 Transform Data 以打开 Power Query。

GIF showing how to load the supermarket sales data into Power Query window

打开 Power Query 窗口。图片由作者提供

在 Power Query 窗口中,您可以看到数据包含 17 列、1,000 行。Power Query 会在将数据加载到 Power BI 前进行清洗和转换。由于本次使用的数据已较为干净,无需额外清洗或转换。如需了解如何在 Power Query 中清洗数据,请参阅 Power BI 中使用 Power Query M 进行数据转换。

  • 在 Home 选项卡中点击 Close & Apply,以应用数据更改并关闭 Power Query 窗口。

Image showing how to close the Power Query window

关闭 Power Query 窗口。图片由作者提供

步骤 2:创建基础瀑布图

要创建瀑布图,首先需要创建一个可应用于任意可视化的 度量值(Measure)。Power BI 中的度量值通过 DAX 查询创建。在此场景中,我们将计算总利润(Total Profit)度量,并通过以下步骤用其创建瀑布图。

  • 在 Data 窗格中右键,选择 New Measure。在编辑器中粘贴以下 DAX 语法以创建 Total Profit 度量。此度量为所有产品 gross income 之和,即每笔销售产生的总利润。
Total Profit = sum(supermarket_sales[gross income])

Image showing how to create the Total Profit measure

创建 Total Profit 度量。图片由作者提供

  • 在 Visualizations 窗格中点击瀑布图图标。画布上会出现一个空图表。

Image showing the waterfall chart icon on the visualizations pane

可视化窗格中的瀑布图图标。图片由作者提供

  • 选中空图表,将 Total Profit 度量拖到瀑布图的 Y-axis 字段。

Image showing how to add the Total Profit to the Y-axis of the waterfall chart

将 Total Profit 度量添加到 Y 轴。图片由作者提供

  • 将 Month 变量拖到瀑布图的 Category 字段。

Image showing how to add the month category into the waterfall chart

将 Month 类别添加到瀑布图。图片由作者提供

瀑布图显示了 1 月至 3 月各月份对总体利润的贡献。您也可以使用相同方法可视化其他类别,如 Gender、Product line 等。

步骤 3:探索并自定义瀑布图

为解释各月之间的差异,您可以基于另一类别添加拆分。我们使用 Product line 类别来查看相邻两个月的利润差异。要添加拆分,请将 Product line 变量拖到瀑布图的 Breakdown 字段。

Image showing how to add the Product Line as breakdown into the waterfall chart

为瀑布图添加拆分。图片由作者提供

将 Product line 作为拆分项加入后,柱形将表示当前月与下一月之间的利润差值。若下一月利润高于当月,则以绿色表示上升;反之以红色表示下降。瀑布图会将 Product line 中的其他类别归为 Other。

Power BI 的一个很实用的特性是:当您将鼠标悬停在每根柱形上时,会显示相邻两个月利润的增减百分比信息。例如,您会注意到 1 月至 2 月期间,食品和饮料的利润增幅最大,为 2.2%;而家居与生活方式产品降幅最大,为 39.33%。

Image showing how to get numerical information from a waterfall chart by hovering over the columns

悬停瀑布图以查看数值信息。图片由作者提供

您可以通过设置每根柱形中的拆分数量来自定义瀑布图。

  1. 点击您的可视化。
  2. 在可视化窗格中,进入 Format your visual。
  3. 点击 Breakdowns,设置偏好的拆分数量。最大可设置值为拆分变量的类别数。

Image showing how to customize the breakdowns in a waterfall chat

自定义拆分数量。图片由作者提供

步骤 4:对瀑布图进行排序

您会注意到瀑布图默认按月份的时间顺序进行排序。您可以更改排序方式,以获取不同的数据视角。

在瀑布图上点击 More options,然后选择 Sort Descending。这会将 Month 类别改为逆时间顺序。

Image showing how to apply sort descending to a waterfall chart

应用降序排序。图片由作者提供

您可以将用于排序的轴从 Month 更改为 Total Profit,方法是在可视化上点击 More options,选择 Sort,再选择用于排序的变量或度量。

Image showing how to change the sorting variable

更改排序变量。图片由作者提供

当按 Total Profit 升序排序时,图表会从最低到最高显示各月份的柱形;若按降序,则从最高到最低显示。

步骤 5:添加高级自定义

Power BI 提供多种自定义选项,以更好地服务于您的叙事——从更改图表颜色到添加标签与筛选等。

更改柱体颜色

颜色既有助于区分瀑布图中的增减变化,也能提升视觉美感。按以下步骤更改柱体颜色:

  1. 点击您的可视化。
  2. 在 Visualizations 窗格中进入 Format your visual。
  3. 打开 Columns 下拉,查看自定义柱体的选项。
  4. 选择 Colors 下拉以自定义瀑布图柱体颜色。

Image showing how to add colors to a waterfall chart

为瀑布图添加颜色。图片由作者提供

添加数据标签

数据标签能让查看者直接了解每根柱的实际数值,尤其在图中存在高度相近的柱形时至关重要。

  1. 选中您的可视化,前往 Visualizations 窗格。
  2. 点击 Format your visual 选项卡。
  3. 打开 Data labels 开关。

瀑布图将显示各产品在相邻两个月之间的利润差值。

Image showing how to add data labels in a waterfall chart

为瀑布图添加数据标签。图片由作者提供

添加筛选器

如果您想查看某一特定类别的完整瀑布图,该如何操作?这就需要用到筛选。您可以筛选可视化,仅展示单一类别的信息。例如,可以按 Customer type 变量来筛选瀑布图。

  1. 选中您的可视化,前往 Filters 窗格。
  2. 将 Customer type 变量拖到 Add data fields here 字段中。
  3. 在 Customer type 列下,您将看到所有类别列表。选择任一类别即可查看该类别的瀑布图。

Image showing how to apply filtering to a waterfall chart

为瀑布图应用筛选。图片由作者提供


Power BI 瀑布图的最佳实践

参考以下细节优化,可将普通瀑布图打造成更精炼、更有洞见的可视化:

清晰与可读性提示

  • 动态、具情境的工具提示:不仅仅满足于默认数据标签。创建自定义工具提示,除显示原始数值外,还提供背景信息——如历史趋势、相关基准,甚至是简短注释。多层信息能在不拥挤主图的前提下揭示洞见。
  • 累积计算的精度:瀑布图建立在连续值之上,四舍五入可能引入误导性的视觉偏差。微调精度设置,并留意细小的取舍差异如何影响整体叙事。
  • 精细化的色彩饱和度:与其为每个类别硬性分配不同颜色,不如调节饱和度与亮度。用更饱和的颜色突出关键贡献者,用更柔和的色调表示轻微变化。此分层方式可让图表更直观,减少对标签的依赖。
  • 集成参考线或基准:嵌入淡化参考线(如行业均值、目标或历史中位数)可增加情境层次。这样为受众提供比较基线,将原始累积值转化为可行洞见。
  • 针对不同显示的自适应布局:考虑瀑布图在不同设备与屏幕尺寸上的呈现。对柱宽、字体大小与间距做些微调,往往事半功倍。

常见错误避免

同时,尽量避免以下常见错误。

  • 将瀑布图用于缺乏意义的类别: 例如,用瀑布图展示汽车的速度、重量、价格、油耗等属性。将这些彼此无关的指标相加或相减并不会产生有意义的结果,累积总和也难以解释。
  • 信息过载: 当使用拆分来解释瀑布图中柱间差异时,注意不要塞入过多信息。假设某变量有 10 个类别,您可以设置 5 个拆分,其中第 5 个类别可归纳显示未在图中单列的其他类别,避免画面拥挤,使图形更简洁。
  • 未正确排序数据: 对瀑布图进行排序能让受众更容易理解。以“月份”类别为例,应按时间顺序排序,而非按数值。但若类别并无明确时间顺序,则可按数值进行升序或降序排序。

结论

瀑布图之所以广受欢迎,是因为它能展示变量从基线到最终值的变化轨迹,同时体现各因素在一段时间内的贡献。也许没有其他图表能如此出色地完成这项任务,因此瀑布图在金融和项目管理中得到广泛应用。

通过本文,您已经学会如何使用 Power BI 构建并自定义自己的瀑布图,也了解了应遵循的最佳实践与需要避免的误区。浏览 DataLab 数据集,继续练习本文涉及的步骤。

您还可以学习以下课程,进一步掌握 Power BI:

查阅以下文章,深入了解本文涉及的一些概念。

Adejumo Ridwan Suleiman

作者

Adejumo Ridwan Suleiman

资深数据科学讲师兼生物统计学家,精通 Python、R 和机器学习。

Power BI 瀑布图常见问答

什么是瀑布图?

瀑布图(或桥接图)以可视化方式呈现某指标在特定维度上随增减变化而受到的影响。

瀑布图主要用于哪些领域?

瀑布图可用于任何领域的数据可视化,但主要应用于金融、项目管理和绩效评估。

如何创建基础瀑布图?

您可以使用诸如 Power BI 等 BI 工具创建瀑布图。

在 Power BI 中如何自定义瀑布图?

您可以通过添加拆分解释差异、更改柱体颜色、添加数据标签、应用筛选或按不同变量排序等方式自定义瀑布图。

创建瀑布图有哪些最佳实践?

使用零基线、用参考线连接柱体、对长标签使用横向图、为不同元素使用易于区分的颜色。

主题