【Azure Power BI】在Power BI中获取十进制随机数后,转换十六进制作为颜色值示例

问题描述

在使用Power BI Desktop做报表,用到了其中一个图标组件 (Card Browser),可以做出比较漂亮的图片和带颜色的卡片效果:

但是,在自己的数据源中,并没有颜色值。所以颜色值为0-255的十进制转换为00-FF的十六进制数据,想到了生成随机数,然后转换为颜色值。

数据源格式示例:

Title	Count	Index
Excel	1	1
Handyman	1	2
Photoshop	1	3
Racquetball	1	4
主机游戏	1	5
乐器	1	6 
... 
...

没有颜色值时的效果:

 

需要使用到的Power BI 默认函数:

 

实现步骤

第一步:添加一个新字段 CardColor

 ==>> 在Table 数据区域 点击 右键 , 选择 Edit Query, 最后点击 Custom Column。

 

 

第二步:使用 Number.RandomBetween 生成随机数,并组合Number.ToText ,转换为十六进制

"#" & Number.ToText(Number.Round(Number.RandomBetween(1000001,9999999),0),"X")
  • “#“ 颜色值字符
  • & 在Power BI Query 中用来连接前后字符串
  • Number.Round : 为了去掉 随机数中默认产生的两位小数

效果如下:

 

第三步:把颜色值加入Card Browser中,查看修改后的效果

示例文件下载地址:https://files.cnblogs.com/files/lulight/Hobby.zip?t=1712840780&download=true

 

参考资料:

添加索引列:https://learn.microsoft.com/zh-cn/power-query/add-index-column

Number.RandomBetween:https://learn.microsoft.com/zh-cn/powerquery-m/number-randombetween

Number.Round: https://learn.microsoft.com/zh-cn/powerquery-m/number-round 

Number.ToText :https://learn.microsoft.com/zh-cn/powerquery-m/number-totext

[END]

 

posted @ 2024-04-11 21:07  路边两盏灯  阅读(26)  评论(0编辑  收藏  举报