使用Power BI API 向流数据集推送实时数据并在仪表板可视化
admin
2023-03-28 02:01:24
0

使用Power BI API 向流数据集推送实时数据并在仪表板可视化

使用Power BI 实现实时数据的可视化是大家比较关心的一个话题,在仪表盘上实现推送数据的展示,可以在诸如指挥大屏等场景下使用。


本视频实战内容如下:https://v.qq.com/x/page/y3030euh7do.html




先看下效果,下图中的曲线会自动刷新:

使用Power BI API 向流数据集推送实时数据并在仪表板可视化


步骤如下:

  1. 创建流数据集,选择API 方式

    其中Azure 流分析,截至到2019年12月,中国区Azure流分析暂时不支持将输出直接写入到Power BI 中。

    使用Power BI API 向流数据集推送实时数据并在仪表板可视化


  2. 填写数据集名称和值及值类型并打开历史数据分析:

    其中历史数据分析是用来暂存数据的,暂存的数据可以呈现一条曲线。


    使用Power BI API 向流数据集推送实时数据并在仪表板可视化

  3. 创建一个仪表盘并向仪表盘添加一个实时数据磁贴


    使用Power BI API 向流数据集推送实时数据并在仪表板可视化


4. 选择已经创建好的流数据集


使用Power BI API 向流数据集推送实时数据并在仪表板可视化

5. 在仪表板页面添加一个自定义的流数据磁贴

可视化效果选择折线图

“轴”选择时间

温度湿度添加为“值”

使用Power BI API 向流数据集推送实时数据并在仪表板可视化

6. 通过如下图示的信息调用Post请求即可将数据推送到数据集

使用Power BI API 向流数据集推送实时数据并在仪表板可视化


Postman发送的结果为200表示执行成功。

使用Power BI API 向流数据集推送实时数据并在仪表板可视化

7. 在数据集上创建报表,可以查阅使用POST请求推送到流数据集的结果

使用Power BI API 向流数据集推送实时数据并在仪表板可视化



8.调用示例代码如下:

using Newtonsoft.Json;using System;using System.IO;using System.Net;using System.Text;using System.Threading.Tasks;namespace pushdatatopowerbidataset{    class Program    {        private static int s_telemetryInterval = 1; // Seconds        private static string PowerBIPushDataUrl = "https://api.powerbi.cn/beta/729c6bf9-debe-4b7f-b56a-5fb0c70c9a80/datasets/fc445a3c-9a25-4298-8188-89112874e5c3/rows?key=seAORXugMKybekrdRAxfSWM5o1MS%2F9d4pcPF9zAgblivdNXz9pRivqyVwAS%2FXMoo8wA01vuAu%2B2hBHI8gdAWMg%3D%3D";       private static void Main(string[] args)        {            Console.WriteLine("Send realtime data to power bi dataset by api. Ctrl-C to exit.\n");            SendMessageToPbiDataSetAsync();            Console.ReadLine();        }        private static async void SendMessageToPbiDataSetAsync()        {             while (true)            {                // Initial telemetry values                double minTemperature = 20;                double minHumidity = 60;                Random rand = new Random();                double currentTemperature = minTemperature + rand.NextDouble() * 15;                double currentHumidity = minHumidity + rand.NextDouble() * 20;                // Create JSON message                var telemetryDataPoint = new                {                    temperature = currentTemperature,                    humidity = currentHumidity,                    time=DateTime.Now                };                var messageString = JsonConvert.SerializeObject(telemetryDataPoint);                PostUrlAsync(PowerBIPushDataUrl, messageString);                await Task.Delay(s_telemetryInterval * 1000);            }        }        public static string PostUrlAsync(string url, string postData)        {            string result = "";            HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);            req.Method = "POST";            req.Timeout = 8000;//设置请求超时时间,单位为毫秒            req.ContentType = "application/json";            byte[] data = Encoding.UTF8.GetBytes("["+ postData+"]");            req.ContentLength = data.Length;            using (Stream reqStream = req.GetRequestStream())            {                reqStream.Write(data, 0, data.Length);                reqStream.Close();            }            HttpWebResponse resp = (HttpWebResponse)req.GetResponse();            Stream stream = resp.GetResponseStream();            //获取响应内容             if(resp.StatusCode==HttpStatusCode.OK)            {                Console.WriteLine("OK"+"    "+postData);            }            return result;        }    } }

至此,可以在仪表板上看到实时刷新的可视化效果:

使用Power BI API 向流数据集推送实时数据并在仪表板可视化




使用Power BI API 向流数据集推送实时数据并在仪表板可视化



相关内容

热门资讯

特朗普下令不打了,美国的“余粮... 可以说戛然而止,快得让很多人都无法适应。前两周,每一天美国都要打击伊朗一通。就在7月24日白宫会议前...
穆杰塔巴最新表态:支持黎真主党 △伊朗最高领袖穆杰塔巴·哈梅内伊(资料图)当地时间7月26日晚,伊朗最高领袖穆杰塔巴·哈梅内伊对黎巴...
美军瘫痪一艘驶向伊朗的油轮,特... 美国总统特朗普虽下令暂停打击伊朗,但美军仍在执行对霍尔木兹海峡的封锁任务。针对美军瘫痪一艘驶向伊朗油...
“小牌大耍”的底气到底是哪里来... 澎湃首席评论员 李平这两天,“艺人李权哲乘高铁占座事件”在网上引发热议,该艺人参加的活动主办方曾发布...
越南籍船舶南海遇险沉没,中方已... 据凤凰卫视报道,一艘越南船舶7月24日夜间在越南庆和以东220海里附近遇险沉没,船上共62名越南籍人...
李权哲占座、蒙面、装死:娱乐圈... 你买了一张高铁一等座的票,找到自己的位置,18A。有人坐着。你拿出手机看了眼购票记录——没错,18A...
杭州景区咖啡店闯入1条幼蛇,仅... 夏天气温高、湿度大,蛇类活动进入高峰期,千万别被“小蛇无害”的刻板印象骗了!有些幼蛇看着迷你可爱,实...
AI开源公开信签署企业增至50... IT之家 7 月 26 日消息,英伟达、微软、IBM、Meta 等 25 家美国科技企业本周(7 月...
南阳快手短视频代运营企业的服务... 在短视频平台快速发展的背景下,企业通过快手等渠道进行内容运营已成为常见的市场动作。对于希望借助短视频...
普通人该如何跟上科技发展的步伐 这个被称作科技的词汇, 听起来既有宏大之感, 又颇为遥远, 好似仅仅归属于在实验室里专心致志钻研的科...