根据切片器的选定值创建具有动态值的列

Create a column with dynamic values based on selected value of slicer

Power BI 爱好者

我是 Power BI 新手。 我对以下详细信息有疑问:

我有一个 table 叫 dw_xyz:

ID Shape Color Value
1 Circle Blue 10
2 Triangle Red 23
3 Rectangle Blue 20
4 Triangle Blue 12

然后我创建了一个包含两个值的切片器:'Shape' 和 'Color'(代表 table dw_xyz 的两列 headers)

我想根据切片器的选定值创建一个动态枢轴 table。当所选值为 'Shape' 时,主元 table 将按列 'Shape' 汇总数据。否则,当所选值为 'Color' 时,主元 table 将按列 'Color' 汇总数据。所以我所做的是:

*不确定,建议使用 'new column' 或 'new measure'。这个也请指教

我输入了 DAX 如下:

dynamicColumn=SWITCH(SELECTEDVALUE(slicer_reference),"Shape",[Shape],"Color",[Color])

当我在切片器上进行选择时,dynamicColumn 的值保持不变(没有预期的变化)。

所以,我试图找到另一种方法。我通过 DAX 创建了另外一个 table(在 dw_xyz 之外),如下所示:

VAR X=Summarize by Shape
VAR Y=Summarize by Color
RETURN
UNION(X,Y)

并且我将新 table 指向 table 源,而不是 dw_xyz。它按预期工作。然而, 我不确定,我尝试的是最佳实践。非常感谢您的任何建议。

一种方法是创建一个包含 2 列的 table(切片器:“shape/color”,值:任意),然后使用值作为 table/chart 的类别,然后根据您在切片器中选择的类型显示正确总数的度量。

这个视频中有一个很好的例子:https://www.youtube.com/watch?v=fktQmk0a9OI

根据您的数据 size/complexity 和您想要实现的目标,我更喜欢的一件事是使用 show/hide 类别 I 的视觉按钮而不是切片器想要。因此,在此示例中,您将有一个形状和一个颜色按钮,通过单击其中一个按钮,可以使相应的视觉效果可见,而另一个则隐藏。