每当较高类别切片器的值更改时,我都想设置较低类别切片器的初始值。假设我们有以下数据:
+----------------+----------------+-------+
| upper category | lower category | units |
+----------------+----------------+-------+
| fruit | apple | 1 |
| fruit | banana | 1 |
| vegetable | carrot | 1 |
| vegetable | potato | 1 |
+----------------+----------------+-------+
我想要的结果是:每当用户从上层类别选择fruit
时,就会从下层类别切片器中选择apple
。因此,我们最终得到以下结果:
现在,我们在较高类别的切片器中单击vegetable
,并自动选择carrot
作为较低类别的切片器的初始过滤器值。因此,我们最终得到以下结果:
摘要:
在谷歌搜索之后,我发现这是解决方案的有希望的线索: 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"
答案 0 :(得分:2)
由于无法通过编程方式设置切片器选择,因此我不认为默认切片器目前是可行的,但是this related idea是当前正在“审核中”的热门请求。
答案 1 :(得分:2)
您可以使用“书签”来伪造它,但是您需要使用设置其他切片器状态的书签图标有效地构建“父”切片器
这是它的外观:
应该隐藏顶部的“父”切片器。
如果我单击“水果”下的i图标,将会发生以下情况:
...如果我单击另一个书签,将会发生以下情况:
您实际上可以放弃图标,而使用“水果”和“蔬菜”文本。外观如下:
未选择任何内容
:水果被点击
点击的蔬菜
...尽管实际上您可能需要将假的Slicer Items分开,因为底部的标题栏可能导致顶部的交互性问题,即使您看不到它也是如此。这是处于“编辑”模式的图片,所以您知道我的意思:
此外,我发现“ Pin Visual”提示令人讨厌,并且还没有一种方法可以关闭此提示:
您可能会变得更奇特,并具有某种视觉效果,从而以某种方式突出显示伪造切片器中的哪个项目。但不利的一面是,这种方法不允许您处理Slicer Items的动态列表...您必须预先设置每个列表。