Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.
Check it out now!Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers. Get Fabric certified for FREE! Learn more
场景:
有时候我们可能会遇到这样的需求:不仅要汇总和分析数据的趋势,还要知道某一点的值是否超出正常范围。一般来说,我们会选择“分区图”视觉对象来做。但当最小值不为零时,分区图呈现的效果不符合我们的要求。而且Power BI中目前不支持将值的范围添加到折线上。另外我还尝试了“堆积面积图”视觉对象,并且对参数进行了一些修改,虽然可以得到类似的效果,但仍然不完美。经过一番研究,我发现当结合R和Power BI时,可以达到更好的效果。我的测试过程如下。
示例数据:
期望结果:
方法一:在Power BI Desktop中使用堆积面积图视觉对象
1.创建一个堆积面积图视觉对象并且对字段进行排序
2.在“设置对象格式”-> “行”中修改颜色
将“Min”字段的颜色设置为白色
将“Max”字段和“Value”字段设置成相同的颜色
很明显,“Max”列的边界无法删除。
方法二:使用R的Polygon()函数
准备工作:
1.下载R:我们可以从 链接 下载安装免费版的R(最新版本:R-4.4.2 for Windows(83 megabytes, 64 bit))
2.在R中安装所需的软件包
启动R应用程序
复制以下代码安装软件包,然后选择一个最近的CRAN镜像
install.packages("reshape2")
3.在Power BI Desktop中启用R脚本visual。关于更多细节,请参阅这篇文档:
使用 R 创建 Power BI 视觉对象 - Power BI | Microsoft Learn
4.请检查官方文档中提到的限制
操作:
1.将示例数据导入Power BI Desktop
2.创建一个R脚本Visual
将所有要用到的列全部拖入R脚本Visual的“值”中
我们可以看到使用polygon()函数获得的结果。
#重新导入数据并将第一列的值设置为行变量
a<-read.table("你的文件路径",sep=",",header=T)
xx<-c(min(a$Date):max(a$Date),max(a$Date):min(a$Date)) #创建一个向量
yy<-c(a$Min,rev(a$Max)) #创建另一个向量
plot(a$Date,a$Value,type = "o",col ="blue",ylim=c(0,50),xlab="Year",ylab="Value") #创建折线图
polygon(x = xx, # 多边形的 X 坐标
y = yy, # 多边形的 y 坐标
col = rgb(255,0,0,50,maxColorValue=255), # 多边形颜色
border = "NA") # 多边形边界的颜色
总结:
从两张图片中我们可以明显看出,R在增加范围区域方面有一定的优势。它不仅可以绘制指定范围,还可以生成带有百分比的置信区间范围。
希望Power BI能尽快引入相应功能,让用户可以更加方便地进行数据分析。
作者:Yuna
审核:Ula Huang, Kerry Wang
翻自:Xinyi Xu
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.