3.30 PowerBI报告可视化-Deneb:动态地显示当前日期时间

加入 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有很多现成的可视化模板,大家可以在其网站上搜索尝试使用。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容