PowerBI中用DAX实现切片器筛选Tariff Points±10%大学的方法
实现方法
要完成这个需求,核心是通过DAX构建动态筛选逻辑,同时避免切片器直接过滤原表数据,具体步骤如下:
1. 创建独立的大学切片器表
直接使用原表的University字段做切片器会自动过滤掉其他大学,因此需要先创建一个仅包含大学名称的独立表,用于切片器交互:
大学切片器表 = DISTINCT('大学排行榜'[University])
创建完成后,确保这个表和原表大学排行榜之间不建立任何筛选关系。
2. 编写DAX度量值判断区间匹配
创建两个度量值,分别用于获取选中大学的关税分数,以及判断当前大学是否在±10%区间内:
度量值1:获取选中大学的关税分数
选中大学的关税分数 = VAR 选中大学 = SELECTEDVALUE('大学切片器表'[University]) RETURN CALCULATE(MAX('大学排行榜'[Tariff Points]), '大学排行榜'[University] = 选中大学)
度量值2:判断是否在区间内
是否在区间内 = VAR 基准分数 = [选中大学的关税分数] VAR 当前分数 = MAX('大学排行榜'[Tariff Points]) VAR 下限 = 基准分数 * 0.9 VAR 上限 = 基准分数 * 1.1 RETURN // 未选择大学时显示所有,选择后只显示区间内的院校 IF(ISBLANK(基准分数), 1, IF(当前分数 >= 下限 && 当前分数 <= 上限, 1, 0))
3. 配置视觉对象
- 切片器:选择
大学切片器表中的University字段作为切片器选项。 - 表格:使用原表
大学排行榜的University和Tariff Points字段。 - 视觉筛选器:在表格的视觉级别筛选器中,添加
是否在区间内度量值,并设置其值等于1。
完成配置后,在切片器中选择某所大学时,表格会自动展示所有关税分数在该大学分数±10%范围内的院校。
内容的提问来源于stack exchange,提问作者haydenwhitehouse
相关产品推荐
相关产品推荐

