加入 PowerBI自己学 知识星球 可以:下载源文件,边学边练;遇到问题,提问交流,有问必答。
做可视化大屏或者报告需要在屏幕上提示给用户当前的日期时间,使用PowerBI的度量值可以取出来当前的日期时间,但是视觉对象不支持自动刷新,页面刷新变化后,日期时间动一下就停在那里不动了。
解决方案
Deneb视觉对象可以实现这个需求。Deneb是使用Vega或Vega-Lite( JSON语法)来构建你自己的数据可视化,通过图层、编码、标度、轴、图例、提示、选择、条件、信号等元素创建任何你想要的图表,来实现复杂的可视化效果和交互逻辑,值得你在微软原生视觉对象无法满足需求时使用。
1 免费;
2 可以直接使用模板,不需要深度学习代码;
3 可调用PowerBI的字段及度量值,支持交叉筛选、工具提示,与PowerBI高度融合。
操作步骤
STEP 1 在获取更多视觉对象中,搜索Deneb,添加视觉对象。
STEP 2 在画布中添加Deneb视觉对象并拖入字段。Deneb必须先放入数据字段,才可以编辑,即便本例中的日期时间不需调用PowerBI的字段或度量值,仅使用Deneb自身的函数就能实现。然点击视觉对象右上角的三个点,选择编辑。
STEP 3 选择Vega,empty,点击Create。
STEP 4 将现成的代码复制粘贴到Specification中,清除Config中的代码,然后点击上方的播放按钮可以预览,点击带环绕箭头的播放按钮可以保存修改,然后点击左上角返回到报表。
{
"$schema": "https://vega.github.io/schema/vega/v5.json",
"description": "A text clock visualization showing the current time.",
"width": 60,
"height": 6,
"signals": [
{
"name": "currentDate",
"init": "now()",
"on": [{"events": {"type": "timer", "throttle": 1000}, "update": "now()"}]
}
],
"marks": [
{
"type": "text",
"encode": {
"enter": {
"x": {"value": 1},
"y": {"value": 1},
"fontSize": {"value": 12},
"fontWeight": {"value": "bold"},
"align": {"value": "center"},
"baseline": {"value": "middle"},
"fill":{"value":"black"}
},
"update": {"text": {
"signal": "timeFormat(currentDate, '%Y-%m-%d %H:%M:%S')"
}
}
}
}
]
}
STEP 5 如果需要对这个日期时间的格式和内容进行调整,不需要读懂所有代码,会修改参数即可。
"fontSize": {"value": 12} //字号
"fill":{"value":"black"} //颜色
"update": {"text": {"signal": "timeFormat(currentDate, '%Y-%m-%d %H:%M:%S')" //文本内容
通过调节这些参数,结果如下:
拓展
Deneb有很多现成的可视化模板,大家可以在其网站上搜索尝试使用。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。