使用切片器 Power BI 突出显示

Ray*_*eld 1 highlight filter powerbi

我有一个具有不同视觉效果的仪表板。数据由保险公司的不同值组成。我希望我的切片器/过滤器不过滤所有数据,而只突出显示所选公司。

例如,在我的切片器中,我选择了保险 ABN。我希望所有其他值仍然可见,并在视觉效果中突出显示 ABN 的值,而不是仅在我的视觉效果中向我显示 ABN 的值。

有谁知道如何做到这一点?

And*_*lov 5

您可以使用条件格式来实现这一点。假设我们将更改背景颜色以“突出显示”一行(或准确地说是单元格)。

首先,我们需要一个切片器,它不会过滤我们的数据。我们可以通过复制源表、删除不必要的列并确保源表和副本之间没有关系来做到这一点。因此,如果我们有一个名为 的源表Table,如下所示:

在此处输入图片说明

右键单击它并选择Duplicate

在此处输入图片说明

然后右键单击要保留的列的标题并选择Remove Other Columns仅获取公司名称列表(您也可以删除重复项,但这不是必需的)。然后在模型中删除两个表之间的关系:

在此处输入图片说明

现在,您可以从数据源放置一个显示公司名称和销售额的表,并从重复表中放置一个公司名称切片器。此时在切片器中选择值不应影响表格。

现在您需要捕获切片器的值并在度量中使用它,这将确定是否应突出显示当前行。您可以为此使用SELECTEDVALUE,但请注意,只有在切片器中选择了一个值时,它才会为您提供一个值。如果你想支持突出显示不止一家公司,它会变得有点复杂。

在源表中创建一个新度量,如下所示:

Measure = IF(HASONEVALUE('Table (2)'[Company name]);
    IF(SELECTEDVALUE('Table (2)'[Company name]) = MAX('Table'[Company name]); 1; 0);
    IF(ISFILTERED('Table (2)'[Company name]) && COUNTROWS(FILTER('Table (2)'; 'Table (2)'[Company name] = MAX('Table'[Company name]))); 1; 0))
Run Code Online (Sandbox Code Playgroud)

如果切片器中只选择了一个值(请参阅HASONEVALUE),那么我们的度量将返回 1(突出显示)或 0(不),并将其与当前行进行比较。

否则(即切片器中没有选择,或者选择了 2 个或更多公司),那么我们将查看过滤后的公司列表 ( Table (2)) - 如果它包含当前行,则为 1(突出显示),否则为 0(不't)。但是我们也会处理切片器中没有选择值的情况。在这种情况下,列表将包含所有公司,即所有行都将突出显示。来了ISFILTERED。最后,如果列表被过滤并且当前行存在于过滤列表中,则为 1(突出显示),否则为 0(不)。

现在,您需要使用此度量来更改列的背景 - 右键单击​​表中的每一列并选择Conditional formatting-> Background color

在此处输入图片说明

然后按规则格式化,其中 Measure >= 1 像这样:

在此处输入图片说明

现在,当切片器中没有选择时,表中没有突出显示的行:

在此处输入图片说明

如果您选择一家公司,它会突出显示:

在此处输入图片说明

如果选择了多个公司,它也适用:

在此处输入图片说明