在 Power BI 中创建矩阵可视化效果

适用范围: Power BI Desktop Power BI 服务

矩阵视觉对象类似于表。 表支持两个维度,且数据是平面结构;也就是说,表显示但不聚合重复值。 使用矩阵,可以更轻松地跨多个维度有目的地显示数据,因为它支持梯级布局。 矩阵自动聚合数据,可用于向下钻取内容。

可以在 Power BI 报表中创建矩阵视觉对象,并能将矩阵内的元素与相应报表页上的其他视觉对象一起交叉突出显示。 例如,可以选择行、列和各个单元格,并交叉突出显示。 此外,还可以将选择的单个单元格和多个单元格复制并粘贴到其他应用程序。

Screenshot that shows a matrix and a donut chart. Several matrix rows are selected, and the corresponding sections of the donut are highlighted.

许多相关功能与矩阵相关,我们将在本文的下面各部分中逐一介绍。

注意

与 Power BI 同事共享报表时,你和这位同事都应具有独立的 Power BI Pro 许可证,并且应将报表保存在 Premium 容量中。

了解 Power BI 计算总计的方式

了解如何使用矩阵视觉对象前,请务必先了解 Power BI 是如何在表和矩阵中计算总计和小计值的。 对于总计和小计行,Power BI 是对所有基础数据行评估度量值,这不仅仅是简单地将可见或已显示行中的值相加。 这意味着最终总计行的值与预计的值存在差异。

请查看以下矩阵视觉对象。

Screenshot of matrix visuals. The total in the third matrix is taken over underlying data in another matrix, not visible values in the third matrix.

在此示例中,最右边的矩阵视觉对象中的各行显示了每个销售人员/日期组合对应的“金额”。 但是,由于显示的一个销售人员对应多个日期,这些数字可以出现不止一次。 因此,基础数据的准确总计并不等于可见值的简单相加。 当要求和的值位于一对多关系的“一”这一侧时,这种不匹配是一种常见模式

查看总计和小计时,请注意这些值都是以基础数据为依据。 它们并不仅仅以可见值为依据。

展开和折叠行标题

可以通过两种方法展开行标题。 第一种是通过右键单击菜单。 你可以选择展开所选的特定行标题、整个级别或所有内容,直到层次结构的最高级别。 还可以使用类似选项折叠行标题。

Screenshot of a matrix visual. The shortcut menu of a row header is visible, with various expansions options available.

还可以通过“行标题”卡下的“格式”窗格,将 +/- 按钮添加到行标题。 默认情况下,图标将与行标题格式设置匹配,但你可以根据需要单独自定义图标的颜色和大小。

打开图标后,它们的工作方式类似于 Excel 中的数据透视表图标。

Screenshot of a matrix visual. A plus sign icon is visible next to each row header.

矩阵的展开状态将与报表一起保存。 矩阵可以固定到展开或折叠的仪表板。 选择该仪表板磁贴并打开报表时,仍可以在报表中更改展开状态。

Screenshot of a matrix visual. Some Sales Stage rows are expanded, with Opportunity Size rows visible beneath them.

注意

如果要在 Analysis Services 多维模型之上生成报表,并且该模型使用“默认成员”功能,则展开/折叠具有一些特殊注意事项。 有关详细信息,请参阅在 Power BI 中使用多维模型

结合使用向下钻取操作和矩阵视觉对象

借助矩阵视觉对象,可以执行之前无法实现的各种有趣的向下钻取活动。 这些活动包括使用行、列列向下钻取,甚至向下钻取到单独分区和单元格中。 让我们来看看每种向下钻取活动的工作原理。

向下钻取行标题

在“可视化效果”窗格中,如果向“字段”井的“行”部分添加多个字段,可以为矩阵视觉对象的行启用向下钻取操作 。 这类似于创建层次结构,以便于你可以向下钻取(然后备份)层次结构,并分析每个级别的数据。

在下图中,“行”部分包含“销售阶段”和“商机规模”,形成了可以向下钻取的行分组(或层次结构),以查看详细信息。

Screenshot of the Visualizations and Fields panes. The Rows section of Visualizations has Sale Stage and Opportunity Size fields and is called out.

如果视觉对象在“行”部分创建了分组,那么视觉对象本身会在其左上角显示“钻取”和“展开”图标。

Screenshot of a matrix visual. The drill and expand icons are called out.

选择这些按钮可以向下钻取(或备份)层次结构,类似于其他视觉对象中的钻取和扩展行为。 在此示例中,可以从“销售阶段”向下钻取到“商机规模”,如下图所示。图中已选择“向下钻取一个级别”图标(草耙图标)。

Screenshot of a matrix visual. All rows are expanded. The pitchfork icon appears dimmed and is called out.

除了使用这些图标,还可以选择任意行标题,然后从随即显示的菜单中进行选择来向下钻取。

Screenshot of a matrix visual. No rows are expanded. A row shortcut menu is visible, with the Expand item called out.

请注意,显示的菜单中有多个选项,分别用于执行不同的操作:

选择“向下钻取”展开的是相应行级别的矩阵,不包括其他所有行标题,只会展开选择的行标题。 在下图中,依次选择的是“建议”>“向下钻取”。 请注意,其他顶层行不会再出现在矩阵中。 这种钻取方法是一项十分有用的功能,当我们介绍“交叉突出显示”部分时,你会发现这项功能特别棒。

Screenshot of a matrix visual. The Proposal row header is expanded, with three Opportunity Size rows visible beneath it.

选择“向上钻取”图标,以返回到上一顶级视图。 然后,如果你依次选择“建议”>“显示下一个级别”,系统会按升序列出下一个级别的所有项(在此示例中,为“商机规模”字段),不含更高级别的层次结构分类。

Screenshot of a matrix visual. Opportunity Size rows are visible, but no Sales Stage rows are visible.

选择左上角的“向上钻取”图标,让矩阵显示所有顶级类别,然后依次选择“建议”>“展开到下一个级别”,以查看层次结构中“销售阶段”和“商机规模”这两个级别的所有值。

Screenshot of an expanded matrix visual with all Sales Stage and Opportunity Size rows visible.

也可以使用“展开”菜单项来进一步控制显示。 例如,选择“向上钻取”图标。 依次选择“建议”>“展开”>“选择”。 此时,Power BI 会显示每个“销售阶段”的总计行,并显示“建议”的所有“商机规模”选项。

Screenshot of a matrix visual. No Sales Stage rows are expanded except for the Proposal row, which has three Opportunity Size rows visible beneath it.

向下钻取列标题

与向下钻取行类似,还可以向下钻取列。 在下图中,“列”字段井中有两个字段,形成了类似于本文前面对行使用的层次结构。 “列”字段井中有“区域”和“细分”。 当你将第二个字段添加到“列”后,视觉对象上便会显示新的下拉菜单“钻取”,此菜单当前显示“行”。

Screenshot of a matrix visual and the Visualizations pane, with two fields in the Columns section. A drop-down list in the matrix is labeled Drill on.

若要向下钻取列,请从钻取和展开图标旁边的“钻取”菜单中选择“列”。 依次选择“东部“区域和“向下钻取”。

Screenshot of a matrix visual. The Drill on list and the East region are called out. In the East shortcut menu, Drill down is also called out.

在你选择“向下钻取”后,系统会显示“区域”>“东部”列层次结构的下一个级别(在此示例中,为“商机数”)。 其他区域处于隐藏状态。

Screenshot of a matrix visual. For each Sales Stage, Opportunity Count and Revenue data is visible only for the East region.

其余菜单项对列和行的工作方式都相同(请参阅上一部分“向下钻取行标题”)。 可以对列使用“显示下一个级别”和“展开到下一个级别”,就像对行使用它们一样。

注意

向下钻取和向上钻取图标适用于行,你可在选中列时向上钻取列。 必须使用右键单击菜单,才能向下钻取列。

使用矩阵视觉对象实现阶梯布局

矩阵视觉对象自动在层次结构中的每个父类别下缩进子类别,这就称为“梯级布局”。

在原始版本的矩阵视觉对象中,子类别显示在完全不同的列中,从而在视觉对象中占用了更多空间。 下图展示了旧版矩阵视觉对象中的表;请注意,子类别位于单独的列中。

Screenshot of a matrix visual. Instead of being nested under each Sales Stage row, the Opportunity Size subcategory rows appear in a separate column.

下图展示了采用“阶梯布局”的矩阵视觉对象的实际效果。 请注意,类别“合格”的子类别(小、中和大)缩进一个字符,以提供更清晰、更简洁的视觉效果。

Screenshot of a matrix visual. The Qualify Sales Stage row has three Opportunity Size rows nested under it and is called out.

可以轻松调整“阶梯布局”设置。 选择矩阵视觉对象后,在“可视化效果”窗格的“格式”部分(画笔图标)中,展开“行标题”部分。 下面有两个选项:“阶梯布局”开关(用于启用或禁用阶梯布局)和“阶梯布局缩进”(用于指定缩进量,以像素为单位)。

Screenshot of the Format section of the Visualizations pane. Under Row headers, Stepped layout is turned on with the Stepped layout indentation at 10.

如果你禁用“梯级布局”,Power BI 会在另一列中显示子类别,而不是在父类别下缩进。

包含矩阵视觉对象的小计和总计

可以在矩阵视觉对象中,打开或关闭行和列的小计。 在下图中,可以看到行小计设置为“开”,并设置为显示在底部。

Screenshot of a matrix visual. Under each set of expanded Sales Stage rows, a subtotal row is visible, with the total for that Sales Stage value.

打开“行小计”并添加标签时,Power BI 还会添加总计值行,并为该行添加相同的标签。 若要格式化总计,请选择“行总计”的格式化选项。

Screenshot of the Row grand total section of the Format pane. Controls are visible for setting the font and color of values and labels.

如果要关闭小计和总计,请在“可视化效果”窗格的“格式”部分展开“行小计”卡片。 将行小计滑块滑动到“关”。 在你执行此操作后,系统就不会显示小计。

Screenshot of a matrix visual. All rows are expanded, and no totals are visible.

相同的操作过程适用于列小计。

添加条件图标

使用“条件图标”向表或矩阵添加视觉提示。

在“可视化效果”窗格的“格式”部分,展开“单元格元素”卡片。 将“图标”滑块滑动到“开”,然后选择定义图标。

Screenshot of the Cell elements card in the Visualizations pane, with the Icons slider on. A dialog has controls for icon formats and conditions.

调整矩阵的条件、图标和颜色,然后选择“确定”。 在这个例子中,我们使用红色标志表示低值,紫色圆圈表示高值,黄色三角形表示中间的所有值。

Screenshot of a matrix visual, with flags in cells with low values, triangles in cells with medium values, and circles in cells with high values.

使用矩阵视觉对象进行交叉突出显示

借助矩阵视觉对象,可以选择矩阵中的任意元素,作为交叉突出显示的依据。 如果你选择矩阵视觉对象中的列,Power BI 会突出显示相应列,就像报表页上的其他任何视觉对象一样。 此类型的交叉突出显示是其他视觉对象和数据点选择的常见功能,因此现在矩阵视觉对象提供了相同功能。

此外,还可以在按住 Ctrl 的同时单击鼠标进行交叉突出显示。 例如,在下图中,我们选择了矩阵视觉对象中的一组子类别。 请注意,视觉对象中未选择的项为灰显,报表页上的其他视觉对象也会反映矩阵视觉对象中选择的项。

Screenshot of a matrix, donut chart, and bar chart. Several matrix rows are selected. Corresponding sections of the donut and bars are highlighted.

复制 Power BI 中的值以供在其他应用程序中使用

对照表或表格中可能具有你想在其他应用程序中使用的内容:Dynamics CRM、Excel 和其他 Power BI 报表。 通过在 Power BI 中右键单击,可以将单个单元格或多个单元格的集合复制到剪贴板。 然后,将单元格粘贴到其他应用程序中。

  • 若要复制单个单元格的值,选择并右键单击该单元格,然后选择“复制值”。 现可将此剪贴板上未格式化的单元格值粘贴到其他应用程序。

    Screenshot of a matrix visual. A cell shortcut menu is visible. Under Copy, the Copy Value option is called out.

  • 若要复制多个单元格,选择单元格范围或使用 CTRL 来选择一个或多个单元格。 “复制所选内容”可确保根据列的格式设置规则对度量值进行格式设置,这与未设置格式的“复制值”命令不同

    Screenshot of a matrix visual. Three selected rows are called out. In their shortcut menu, Copy selection is called out.

  • 复制包括列标题和行标题。

    Screenshot of Excel rows and columns. The cells contain the values that were copied from the matrix.

  • 若要创建仅包含选定单元格的视觉对象本身的副本,请使用 CTRL 选择并右键单击一个或多个单元格,然后选择“复制视觉对象”。

    Screenshot of a matrix with several cells selected. Their shortcut menu is visible, and Copy visual is called out.

  • 然后,如果使用 Ctrl+V 将数据粘贴到画布上,则会显示矩阵可视化效果的副本,但它仅包含复制的数据。

    Screenshot of two matrix visuals. The second matrix only contains values that are selected in the first matrix.

将矩阵值设置为自定义 URL

如果有包含网站 URL 的列或度量值,可以使用条件格式将这些 URL 作为活动链接应用到字段。 此选项位于“格式设置”窗格中的“单元格元素”卡片下

Screenshot of a matrix visual and the Format section of the Visualizations pane. Under Cell elements, the Web URL label and switch are called out.

打开“Web URL”,然后选择要用作列的 URL 的字段。 应用后,该字段(列)中的值将成为活动链接。 悬停以查看链接,并选择跳转到该页面。

有关详细信息,请参阅条件表格式设置

矩阵视觉对象的底纹和字体颜色

借助矩阵视觉对象,可以将条件格式(颜色、底纹和数据栏)应用于矩阵中的单元格背景,并将条件格式应用于文本和值本身。

若要应用条件格式,请选择矩阵视觉对象,并打开“格式”窗格。 展开“单元格元素”卡片,再将“背景色”、“字体颜色”或“数据栏”的滑块移至“开”。 打开其中一个选项,使其定义图标可用。 当你选择该图标时,可以自定义颜色格式的颜色和值。

Screenshot of a matrix visual and the Format section of the Visualizations pane. Under Cell elements, the Data bars switch and label are called out.

选择定义图标,以显示可用于进行调整的对话框。 此示例显示“数据栏”的对话框。

Screenshot of the Data bars dialog. Controls are available for configuring bar color, direction, axis, and minimum and maximum values.

不规则层次结构 (Ragged hierarchy)

不规则层次结构具有无数据的级别。 公司员工矩阵就是个很好的例子。 从 CEO 往下,公司会设置很多级别。 CEO 是层次结构中的最高级别,不向任何员工汇报。 公司的所有其他员工可能会向各部门经理汇报,经理向副总裁汇报,副总裁再向 CEO 汇报。 员工在层次结构中可能拥有一个、两个、五个或十个级别的数据,具体取决于他们在层次结构中的级别和部门组织方式。 对于任何指定员工,可能没有针对特定层次结构级别的数据。

Screenshot of a matrix visual. Values are missing from several cells.

目前无法隐藏空行或相同的父值和子值。 且无法控制哪些级别的层次结构可以扩展,哪些不能扩展。 不过,可以采取几个步骤让视觉外观更具吸引力。

  • 关闭渐变布局。 在“格式”窗格中,展开“行标题”卡片。 然后,打开卡片的“选项”部分,并将“渐变布局”切换设置为“关闭”。 层次结构级别的所有空白值现在显示在同一行中。

    Screenshot of the Format section of the Visualizations pane. Under Options in the Row headers section, Stepped layout is turned off and called out.

  • 关闭矩阵行和列的小计。 在“格式”窗格中,将“行小计”滑块和“列小计”滑块设置为“关闭”。

    Screenshot of the Format section of the Visualizations pane. Column subtotals and Row subtotals are turned off, and their cards are called out.

注意事项和疑难解答

  • 如果矩阵的单元格或标题中的文本数据包含换行符,则除非你在元素的相关格式设置窗格卡中启用“自动换行”选项,否则将会忽略这些字符。

  • 矩阵视觉对象最多显示 100 列。