基于其他切片器选择的Power BI切片器的初始值

时间:2018-08-13 12:40:50

标签: powerbi dax slicers

每当较高类别切片器的值更改时,我都想设置较低类别切片器的初始值。假设我们有以下数据:

+----------------+----------------+-------+
| upper category | lower category | units |
+----------------+----------------+-------+
| fruit          | apple          |     1 |
| fruit          | banana         |     1 |
| vegetable      | carrot         |     1 |
| vegetable      | potato         |     1 |
+----------------+----------------+-------+

我们将两个切片器视觉效果添加到报告中。看起来像这样: enter image description here

我想要的结果是:每当用户从上层类别选择fruit时,就会从下层类别切片器中选择apple。因此,我们最终得到以下结果: enter image description here

现在,我们在较高类别的切片器中单击vegetable,并自动选择carrot作为较低类别的切片器的初始过滤器值。因此,我们最终得到以下结果: enter image description here

摘要:

  1. 上部类别切片器显示所有项目,而与下部类别切片器的选择无关。
  2. 较低类别的切片器根据较高类别的切片器的选择仅显示适用的项目。
  3. 从上层切片器中选择项目后,始终选择下层切片器的一个初始初始值。

在谷歌搜索之后,我发现这是解决方案的有希望的线索: https://www.kasperonbi.com/embed-your-power-bi-report-with-predefined-filters/

我不必坚持使用切片机的视觉效果。可能还有别的东西。我要保持此功能。我可以想象,可以通过此处表示的概念使用R visual来实现:https://dataveld.com/2016/02/10/r-visuals-in-power-bi-beyond-plots/

为方便起见,这是一个起始表代码:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WSisqzSxR0lFKLCjISQXShkqxOgjRpMQ8IIQLl6Wmp5YkJoEVJicWFeWXYJUqyC9JLMmHSMUCAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type text) meta [Serialized.Text = true]) in type table [#"upper category" = _t, #"lower category" = _t, units = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"upper category", type text}, {"lower category", type text}, {"units", Int64.Type}})
in
    #"Changed Type"

2 个答案:

答案 0 :(得分:2)

由于无法通过编程方式设置切片器选择,因此我不认为默认切片器目前是可行的,但是this related idea是当前正在“审核中”的热门请求。

答案 1 :(得分:2)

您可以使用“书签”来伪造它,但是您需要使用设置其他切片器状态的书签图标有效地构建“父”切片器

这是它的外观:

enter image description here

应该隐藏顶部的“父”切片器。

如果我单击“水果”下的i图标,将会发生以下情况:

enter image description here

...如果我单击另一个书签,将会发生以下情况:

enter image description here

您实际上可以放弃图标,而使用“水果”和“蔬菜”文本。外观如下:

未选择任何内容

enter image description here

水果被点击

enter image description here

点击的蔬菜

enter image description here

...尽管实际上您可能需要将假的Slicer Items分开,因为底部的标题栏可能导致顶部的交互性问题,即使您看不到它也是如此。这是处于“编辑”模式的图片,所以您知道我的意思:

enter image description here

此外,我发现“ Pin Visual”提示令人讨厌,并且还没有一种方法可以关闭此提示:

enter image description here

您可能会变得更奇特,并具有某种视觉效果,从而以某种方式突出显示伪造切片器中的哪个项目。但不利的一面是,这种方法不允许您处理Slicer Items的动态列表...您必须预先设置每个列表。