在PowerBI中创建联动切片器_PowerBI

进行数据分析时,每个分析维度并不总是独立的,比如省份是一个维度,城市也是一个维度,而这两个维度之间是有逻辑关系的,那么在进行切片分析时,我们希望能达到动态联动的效果。

 

在PowerBI中,只要维度表的数据有关系并建立了层次结构的,其实是可以自动实现联动的效果的,比如有个“省市表”如下,

 

在PowerBI中创建联动切片器_PowerBI_02

 

分别利用[省份]和[城市]生成两个切片器,效果如下,

 

在PowerBI中创建联动切片器_PowerBI_03

 

 

两个切片器是不是联动起来了呢?

 

如果维度表还有更细分的层次,三个切片器也是可以联动的,比如上面的表再加上一个辖区的维度,

 

在PowerBI中创建联动切片器_PowerBI_04

 

同样可以联动起来,

 

在PowerBI中创建联动切片器_PowerBI_05

 

 

上面的表中各个字段之间是有逻辑关系的,如果没有关系的字段,是否可以实现联动的效果呢?

 

假如还有个产品表,

 

在PowerBI中创建联动切片器_PowerBI_06

 

我们想要的效果是,当筛选地址时,其他切片器出现省市的选项,而筛选产品时,出现产品类别和产品名称的选项。首先我们需要构建一个层级表,把省市表和产品表整合到一起,使用DAX新建表,

 

分析指标 =

VAR table1 =

    SELECTCOLUMNS(

        ADDCOLUMNS('省市',"一级指标","地点"),

        "一级指标",[一级指标],

        "二级指标",[省份],

        "三级指标",[城市])

VAR table2 =

    SELECTCOLUMNS(

        ADDCOLUMNS('产品',"一级指标","产品"),

        "一级指标",[一级指标],

        "二级指标",[产品类别],

        "三级指标",[产品名称])

RETURN UNION(table1,table2)

 

这样一个新的分析指标表就建好了,

 

在PowerBI中创建联动切片器_PowerBI_07

 

效果如下,

 

在PowerBI中创建联动切片器_PowerBI_08

 

同样也实现了动态联动的效果。

 


 

关于上面的联动切片器,还有两个小细节可以优化一下。

 

1,不同的维度显示在一个切片器中,会显得不协调,比如,

 

在PowerBI中创建联动切片器_PowerBI_09

 

为了避免出现这种情况,可以设置一级指标的切片器强制单选,这也是PowerBI的最新功能,

 

在PowerBI中创建联动切片器_PowerBI_10

 

这样二级和三级指标就不会出现混乱的情况,

 

在PowerBI中创建联动切片器_PowerBI_11

 

2,下级指标的切片器选择后,导致上级指标切片器选项消失,

 

在PowerBI中创建联动切片器_PowerBI_12

 

 

解决的办法是通过编辑交互(PowerBI技巧:编辑交互),设置为上级指标的切片器筛选下级,而下级指标的切片器对上级不起作用,这样无论下级怎么选择都不影响上级指标切片器的选项了。

 

在PowerBI中创建联动切片器_PowerBI_13

 

 

通过以上的示例可以看出,字段本身是否存在逻辑上的关系并不影响生成一组联动的切片器,关键是构建一个有层次关系的维度表,这在进行动态分析时十分有用,并且把几个维度整合在一起,可以减少切片器的数量,节省报表空间。

 

/推荐阅读/

01 连接表的几种DAX代码,一次全掌握!

02 利用这个控件,轻松制作带播放轴的条形图

03 用PowerBI进行帕累托分析有多简单?