当前位置: 首页 > ds >正文

Power BI 实操案例,将度量值转化为切片器(动态切换分析指标)

Power BI 实操案例,将度量值转化为切片器(动态切换分析指标)

想要在Power BI中让度量值也能像维度一样灵活筛选?没问题,这里就为你揭秘如何将度量值转化为切片器(动态切换分析指标)的实用方法!

一、了解基础:首先,要知道Power BI原生不支持直接将度量值作为切片器。但别担心,我们可以借助DAX(数据分析表达式)和视觉交互的创意来实现。

假设我们想要可视化图表呈现下图效果:

首先需要明确是要用什么作为坐标轴,以及要用将哪些度量值作为切片器使用,这里我们将年份作为坐标轴,并12个度量值作为切片器使用(设定为12个度量值已建立好),有了这个思路,我们就可以开始下一步建模了;

二、创建辅助表:主页选项卡点击输入数据,自定义表名称度量值切片器,第一列输入序号,第二列输入度量值名称,形成下图所示辅助表:

三、编写DAX公式:

1、建立笛卡尔积交叉,建模选项卡点击新建表,输入公式:

度量值笛卡尔积 = CROSSJOIN(VALUES('年度'[年度]),VALUES('度量值切片器'[度量值]))

函数详解:CROSSJOIN 函数用于将两个表进行笛卡尔积(Cartesian product)的交叉连接。

然而,当你看到 CROSSJOIN(VALUES('年度'[年度]), VALUES('度量值切片器'[度量值])) 这样的表达式时,

实际上这里并不是在连接两个完整的表,而是在对两个列中的唯一值进行交叉连接。

最终呈现:

2、将度量值切片器与度量值建立关联,新建度量值
指标数据 = SWITCH(TRUE(),SELECTEDVALUE('度量值切片器'[度量值])="净资产收益率",[净资产收益率],SELECTEDVALUE('度量值切片器'[度量值])="销售净利率",[销售净利率],SELECTEDVALUE('度量值切片器'[度量值])="销售毛利率",[销售毛利率],SELECTEDVALUE('度量值切片器'[度量值])="存货周转率",[存货周转率],SELECTEDVALUE('度量值切片器'[度量值])="应收账款周转率",[应收账款周转率],SELECTEDVALUE('度量值切片器'[度量值])="总资产周转率",[总资产周转率],SELECTEDVALUE('度量值切片器'[度量值])="净利润增长率",[净利润增长率],SELECTEDVALUE('度量值切片器'[度量值])="净资产增长率",[净资产增长率],SELECTEDVALUE('度量值切片器'[度量值])="营业收入增长率",[营业收入增长率],SELECTEDVALUE('度量值切片器'[度量值])="利息保障倍数",[利息保障倍数],SELECTEDVALUE('度量值切片器'[度量值])="流动比率",[流动比率],SELECTEDVALUE('度量值切片器'[度量值])="资产负债率",[资产负债率],BLANK())

函数详解:SELECTEDVALUE函数通常用于度量值中,以获取外部筛选器或当前上下文中的唯一值。

它在数据分析和报表制作中非常有用,特别是当需要基于特定条件动态切换数据展示时,以SELECTEDVALUE('度量值切片器'[度量值])="净资产收益率",[净资产收益率]为例,

含义为当度量值切片器度量值字段等于净资产收益率时,返回[净资产收益率]计算结果。

四、插入切片器:将新建的辅助表作为数据源(红框位置),插入到报告中作为切片器。

根据需要调整切片器的样式、格式和交互性,确保它既能满足你的分析需求,又能提升报告的美观度和用户体验,现在,你就可以像使用传统维度切片器一样,使用基于度量值的切片器来筛选数据了!

五、建立可视化:可视化视觉对象中选择簇状条形图,将年份作为Y轴,X轴拖入指标数据度量值,按照分析需求拖入图例,示例中将公司字段作为图例使用。

到这步我们就可以完成动态的分析指标切换了;

六、知识拓展—制作动态标题:动态标题的制作同样离不开SELECTEDVALUE函数,首先我们新建一个度量值

动态标题 = SELECTEDVALUE('度量值切片器'[度量值])&“分析”

然后选中可视化对象设置可视化对象格式,常规选项卡标题设置,点击文本输入框后

图片

标志,格式样式选择字段值,应将此基于哪个字段选择度量值”动态标题”,如图完成动态标题设置;

恭喜你!现在你已经掌握了将度量值转化为切片器的技巧。在Power BI中,这样的创新应用能让你的数据分析更加灵活、深入和高效。

快来试试吧,让你的Power BI报告更加出彩,成为数据洞察的佼佼者!

http://www.xdnf.cn/news/5885.html

相关文章:

  • 在Text-to-SQL任务中应用过程奖励模型
  • 【Python】Python常用数据类型详解
  • cursor 如何在项目内自动创建规则
  • uniapp-商城-54-后台 新增商品(页面布局)
  • Linux异步通知机制详解
  • TongWeb7.0常用-D参数说明
  • python标准库--sys - 系统相关功能在算法比赛的应用
  • 无人机信号线被电磁干扰导致停机
  • mplayer使用详解
  • JDK 安装与配置
  • 实数完备性定理互证2
  • 【蓝桥杯嵌入式】【模块】一、系统初始化
  • okhttp3.Interceptor简介-笔记
  • 【PXIE301-211】基于PXIE总线的16路并行LVDS数据采集、1路光纤数据收发处理平台
  • [Java][Leetcode simple] 189. 轮转数组
  • 前端-高德地图选点带搜索功能
  • hashicorp raft源码分析(一、项目介绍与Leder选举实现)
  • 猫咪如厕检测与分类识别系统系列~进阶【三】网页端算法启动架构及数据库实现
  • YOLOv5推理代码解析
  • 医院陪护服务革新:透明化监护与即时救济机制构建
  • 如何优雅的使用CMake中的FindPkgConfig模块
  • 验证回文串1
  • Linux sysvinit 系统启动
  • 【三】 空域滤波的基础与空域中的低通滤波器(2)【830数字图像处理】
  • 解构赋值
  • RuoYi 中使用 PageUtils.startPage() 实现分页查询的完整解析
  • 数字ic后端设计从入门到精通4(含fusion compiler, tcl教学)CMOS VLSI Design
  • Baumer工业相机堡盟工业相机的工业视觉是否可以在室外可以做视觉检测项目
  • 【系统架构师】2025论文《基于架构的软件设计方法》【最新】
  • telnetlib源码深入解析