基于另一个切片器选择的 Power BI 切片器的初始值
Initial value of Power BI slicer based on another slicer choice
我想在较高类别切片器值发生变化时设置较低类别切片器的初始值。假设我们有这个数据:
+----------------+----------------+-------+
| 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/
为了方便起见,这里有一个开始 table 代码:
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"
我认为目前默认切片器无法做到这一点,因为无法以编程方式设置切片器选择,但 this related idea 是目前 "under review" 的一个流行请求。
您可以使用书签伪装它,但您需要使用设置其他切片器状态的书签图标有效地构建一个 'Parent' 切片器
这是它的样子:
应该隐藏顶部的 'Parent' 切片器。
如果我点击 Fruit 下的 i 图标会发生以下情况:
...如果我单击另一个书签会发生以下情况:
您实际上可以放弃图标并使用 'Fruit' 和 'Vegetable' 文本。这是它的样子:
未选择:
点击了水果
点击了蔬菜
...尽管在现实中您可能需要 space 将假切片器项目分开得更远,因为底部的标题栏可能会导致顶部的交互性出现问题,即使您可以看到它。这是编辑模式下的图片,所以你知道我的意思:
此外,我发现 'Pin Visual' 提示很烦人,而且(还)没有办法关闭它:
你可以变得更漂亮,并有某种视觉效果,以某种方式突出显示假切片器中的哪个项目被选中。但不利的一面是,这种方法不允许您处理切片器项目的动态列表……您必须提前设置每一个。
我想在较高类别切片器值发生变化时设置较低类别切片器的初始值。假设我们有这个数据:
+----------------+----------------+-------+
| 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/
为了方便起见,这里有一个开始 table 代码:
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"
我认为目前默认切片器无法做到这一点,因为无法以编程方式设置切片器选择,但 this related idea 是目前 "under review" 的一个流行请求。
您可以使用书签伪装它,但您需要使用设置其他切片器状态的书签图标有效地构建一个 'Parent' 切片器
这是它的样子:
应该隐藏顶部的 'Parent' 切片器。
如果我点击 Fruit 下的 i 图标会发生以下情况:
...如果我单击另一个书签会发生以下情况:
您实际上可以放弃图标并使用 'Fruit' 和 'Vegetable' 文本。这是它的样子:
未选择:
点击了水果
点击了蔬菜
...尽管在现实中您可能需要 space 将假切片器项目分开得更远,因为底部的标题栏可能会导致顶部的交互性出现问题,即使您可以看到它。这是编辑模式下的图片,所以你知道我的意思:
此外,我发现 'Pin Visual' 提示很烦人,而且(还)没有办法关闭它:
你可以变得更漂亮,并有某种视觉效果,以某种方式突出显示假切片器中的哪个项目被选中。但不利的一面是,这种方法不允许您处理切片器项目的动态列表……您必须提前设置每一个。