如何改进 Power BI Report 中的月份切片器

此内容由人工智能翻译,尚未经过人工编辑审核。图像和图表保持其原始语言。 

要点

  • 本文将介绍一些简单技巧,讲解如何格式化“新按钮切片器”。 我们将一步步介绍如何在使用自定义 SVG、Custom visual 或代码的情况下,做出更好用的切片器。
  • 这些技巧利用条件格式,让按钮对用户更有帮助。 这是一个简单版本;如有需要,你也可以加入数据标签或图标。
  • 从该 repository 下载示例文件。 示例文件包含一个 Power BI Project (PBIP),其中的 Report 采用新的 Power BI Enhanced Report (PBIR) 格式。 此外,如果你使用 Tabular Editor,可以用这个 C# Script 自动将该 Visual 添加到你的 Report 中(需要 PBIR 格式)。 稍后,我们也会在这些博客中提供示例文件,包括 PBIX。

本摘要由作者撰写,并非由 AI 生成。

<!--more-->

如何改进月份切片器

很多 Report 都会包含一个月份切片器,让用户可以按一个或多个月份筛选数据。 由于切片器对 Report 的上下文非常重要,通常会以类似按钮的 Tile 形式呈现,并在 Report 页面上以单行或单列显示。 不过,默认切片器太暗,而且可用的格式选项非常有限。 借助新的按钮切片器并做少量格式调整,你可以得到更好的效果:

A screenshot of a computer

AI-generated content may be incorrect.

在本文中,我们将一步步演示如何在不使用 Custom visual、也不依赖难以维护的复杂变通方案的情况下,为你的 Power BI Report 制作一个简单却精致的按钮切片器。

Power BI 中的切片器替代方案

在 Power BI Report 中过度使用切片器非常常见。 很多 Report 的顶部区域可能被切片器完全填满,占用了宝贵版面——这些空间更适合用来放卡片、KPI,或者干脆留白以提升可读性。 在添加按月切片器之前,你也应该考虑一些替代方案:

A screenshot of a computer

AI-generated content may be incorrect.

这些替代方案包括:

  • 下拉切片器,更节省空间,相比 Tile 往往能带来更干净的设计。 截至 2025 年十月,下拉切片器只能用 Slicer Visual 来做;这很实用,但格式化选项非常有限。
  • 列表切片器, 其工作方式与按钮切片器类似。 你也可以让列表或按钮支持滚动,以获得更紧凑的外观(不过不如下拉那样紧凑)。
  • 筛选器窗格中的筛选器。 这更简单,但可自定义的空间更少。 不过,如果你的 Report 有多个页面,使用 Report 级筛选器更容易;相比之下,同步那些带有定制格式的切片器会很麻烦。
  • 在某个 Visual 上进行交叉筛选。 作为主要筛选方式它不太可靠,但很适合先从按年“全局概览”开始,再让用户放大查看某一个具体月份。 要让这种方式真正有效,需要对用户做好 Report 的培训和上手引导。
  • 完全不使用筛选器, 这可能意味着你使用页面级筛选器、隐藏切片器,或用 DAX 计算来将 Report 固定为只显示某一个月份(例如当月)。 通常不建议这样做,因为它会削弱用户的自主性;你把一个本该由他们做出的关键决策拿走了。

不过在这个场景下,切片器可能更合适,因为:

  • 它在手机或桌面应用的其他界面中很常见,用户比较熟悉。
  • 它可能是 Report 页面上最常用的交互之一。 按钮切片器既美观又信息清晰,同时所需点击次数最少。
  • 它会出现在 Report 截图、订阅和导出中,能清楚说明当前是哪个月份。

我们先继续采用月份切片器;但要记住,替代方案可能存在,并且在你的具体情况下也许更合适。

设计目标与意图

切片器的目的当然是筛选到某一个月份(显然)。 但这个设计还能提供额外信息,帮助用户决定选哪个月份。 我们的目标不是“让切片器看起来更漂亮”,而是让选择更省事:

  • 带条件格式的强调条会提示哪些月份达标或未达标。
  • 标签会显示每个月的销量。
  • 卡片格式会弱化未来月份(没有销售数据)的存在感,但不会把它们完全隐藏。

这些格式会为月份选择提供一些视觉线索。 如果没有这些格式,用户只能靠隐含的猜测,或从其他地方获得的明确信息来选择月份。 你可以通过对比下面的差异来看到改进效果:

A screenshot of a calendar

AI-generated content may be incorrect.

下一节将说明如何构建这个切片器。 你可以根据需要在任何步骤中省略或调整格式。

在 Power BI Desktop 中按步骤设置切片器格式

要制作这个切片器,请按以下步骤操作:

步骤 1。 在 Report 页面添加一个新的 按钮筛选器 Visual。 如果没有这种 Visual 类型,就需要在 选项和设置 > 预览功能 中启用相应的预览功能。

A screenshot of a computer

AI-generated content may be incorrect.

步骤 2。 从你的模型中添加“月份名称”字段。 为了更易读,你可能会想用月份名称的缩写版本(例如用 Jan 代替 January)。 要按月份编号对月份名称排序,你必须在 Power BI Desktop 或 Tabular Editor 中使用 排序依据… 属性,让 月份名称 列按 月份编号 列排序。 确保 月份编号 列为整数。

A screenshot of a computer

AI-generated content may be incorrect.

步骤 3。 布局 下,将网格布局设置为 1 行 12 列。 调整 Visual 大小,使其适合可用空间。

A screenshot of a computer

AI-generated content may be incorrect.

步骤 4。 如果你有主题,请应用它,以设置容器或特定格式。 如果你不想应用主题,也可以按下列格式设置来匹配我们的示例。 你也可以按自己的想法调整并试试看。

  • 大小 & 样式 下,关闭背景、Visual 边框和阴影。
  • 关闭 标题
  • 标注值 下,将 已选择 按钮状态的 设为 加粗
  • 按钮 下,将 形状 设为 圆角矩形,圆角半径为 6px。 对所有按钮状态,将填充设为 #FFFFFF(白色)且透明度为 50%,并关闭边框。 启用强调条,并将其设为 4px。
  • 按钮 下,针对 已选择 按钮状态,关闭强调条。 对于 悬停 状态,将强调条增加到 6px。 对于 按下 状态,将强调条减小到 5px。 这样能为按钮提供一些简单的 Visual 反馈。 即使不使用条件格式,你也能从下面的起始状态看出差异。

步骤 5。 应用条件格式。

  • 按钮 下,针对所有按钮状态,用一个对比实际值与目标值的颜色来设置强调条格式。 理想情况下,这个颜色应由一个精简的 Report 度量值返回,该度量值会引用主题颜色,如“good”和“bad”。 确保该度量值能处理未来月份:对于未来月份,应返回浅灰色(例如 #DADADA)。 同样,尽量使用主题颜色,例如“midColor”。 想了解如何在 DAX 中使用主题颜色,以及为什么这能帮你省时省心,请 阅读这篇关于在 Report 内及跨 Report 重用 Visual 格式设置的文章
  • 按钮 下,针对 已选择 按钮状态,用同一个度量值为按钮填充设置格式。
  • 标注值, 下,针对所有按钮状态, 使用与强调条相同的度量值为字体颜色设置格式。 对于 已选择 按钮状态,你还需要再单独设置一次。 最终呈现的是一个带条件格式的按钮切片器,让用户一眼就能在视觉上看出哪些月份达标、哪些未达标。

注意

我们之所以使用度量值,而不是在用户界面里直接设置格式,是因为如果想更改颜色,可以在主题中统一调整。 同样,如果想调整格式逻辑,也可以在度量值中完成。 这些方法更高效,以后需要改动时能帮我们省下不少时间。 例如在这个示例中,我们在同一个 Visual 的四个不同位置复用了同一个度量值。 改动一个度量值要快得多,总比手动在 Power BI 那无数层菜单里点来点去改格式强,省心多了。 不过,如果你愿意,也可以不按这个来。另外要记住:条件格式会增加 Visual 的查询复杂度。 基本上,条件格式越多,Visual 就越慢。 只格式化你真正需要的部分;保持简单! 尤其是数据量较大时。

第 6 步。 可选:我们还可以添加“标注值标签”Callout Value Label。 它可以是实际值,也可以是百分比对比值。 遗憾的是,这个值的格式化选项比较有限,但我们至少可以确保它的取整和字号设置得当:既清晰可读,又不会造成过多认知负担。 这样就得到最终的 Visual。 注意:在此示例中,未来月份会显示为 (Blank)。如有需要,你可以在新的条件格式度量值中处理这种情况:

一张手机的屏幕截图

AI 生成的内容可能不正确。

第 7 步。 可选:你可以在 DAX 度量值中指定一个 SVG,用来提供一个小型 Visual 或自定义图标。 不过,对于月份切片器,我们不建议这么做。 在大多数情况下,这会让 Report 更难维护,也更难随着时间推移做调整。 相反,你可以考虑用自定义的 Report 页面工具提示,展示全年趋势。

一台电脑的屏幕截图

AI 生成的内容可能不正确。

Power BI Report 的按钮切片器小建议

把这个设计调整成你自己的用途时,可以注意下面几点:

  • 避免让 Visual 过于拥挤或复杂。 例如,标签可能会带来过高的认知负担;你也许只保留格式化效果就够了。
  • 避免对 Visual 过度格式化。 格式化过多也会让你的 Visual 更难阅读和理解。 保持简单,并使用更柔和的配色。 切片器也是同理。
  • 尽可能利用主题设置。 自定义格式实现很快,但后期修改非常麻烦。 更好的做法是:一次性做好,然后把它配置到 theme.json 文件中。 这样可以确保你今后所有按钮切片器风格一致,维护起来更方便。
  • 获取用户反馈。 你觉得好看的,未必是用户觉得有用的。 可以先展示几个选项,再让他们挑选自己最喜欢的。

结论

在 Report 中加入月份切片器是一种常见做法。 你并不必加入月份切片器;事实上,有些场景完全不用它反而更好。 如果确实需要,那么你可以考虑应用一些条件格式,让它对用户更有用、更方便。

Related articles