(超详细二)onenet数据可视化详解,如何用截取数据流绘图

本文介绍如何利用OneNET平台,通过仪表盘和曲线图展示传感器数据。从硬件搭建到数据流导入,再到创建仪表盘获取最新数据并绘制曲线,提供了详细步骤和代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

前言

硬件搭建

onenet平台准备

数据流导入

 仪表盘程序段(获取上传最后一组数据)

曲线代码段

注意



前言

上一篇我们采用传感器接入了onenet平台,实时上传采集的数据。当我们打开设备,打开数据流看着一排排在刷新的数据,有没有什么方法更直观一些呢?比如截取数据流进行可视化处理,用数据点绘制曲线,或者用仪表的方式感受采集数据的变化?

硬件搭建

https://blog.csdn.net/qq_45998204/article/details/124686714

详见上一章

onenet平台准备

新建一个面板

自行添加所需格式的常规图表

数据流导入

打开数据,管理数据源

 

 

这样我们再打开数据源选择时,就能找到我们上传的数据流了

如何对仪表盘进行控制,打开私有过滤器,进行修改,看看值的变化

 data-----选择的数据流值

rootdata----该设备下的所有数据流值

 OneNET View提供了过滤器来对数据源进行个性化处理,用户可以自行写入JavaScript代码,实现数据结构转换、筛选和一些简单的计算

 输入data,我们可以观察到,仪表板随着返回的数据流值发生了改变

打开数据处理结果,可以直观的观察到数据流返回信息,前边我们设置了刷新间隔5秒,数据点数100,在这么多数据处理结果里面,我们需要截取最新一组数据应用仪表盘显示

接下来就是如何截取我们所需的数据值来绘图

打开私有过滤器,进行修改,让它返回最后一组数据

调用函数 last(arr)

将last(data)赋给value

打开数据处理结果,最新一组数据显示一致

 仪表盘程序段(获取上传最后一组数据)

// last([1, 2]); // -> 2
function last(arr) {
    var len = arr ? arr.length : 0;
    if (len) return arr[len - 1];
}
return [{
    value: last(data).value,
    name: '温度'
}]

修改程序后一定要保存

观察单个数据无法很好表达整体情况

于是引入曲线图

选中定义的曲线图,添加数据源后,修改私有过滤器,返回数据流data(保存!)

 再打开数据处理结果,这里很多组数据,我们需要选取有用数据来帮助绘图,比如上传时间,上传的采样值(温度)

 通常数据源返回的结果大多是数组类型,通过迭代可以对每个元素进行处理。

 打开私有过滤器

曲线代码段

data.forEach((item, index) => {
    // console.log('元素:', item, ';下标:', index);
    item.x = item.update_at
    item.y = item.value
});
return data 

多设备多数据流上传情况同理

链接

(个人可视化图后来重做了一遍用于项目了,暂时关闭访问)

注意

看了评论发现有的人没有出图,流程没有问题,有个小细节注意一下

导入常规图表时这里是有三个系列,复制程序后发现只有x轴更新,是因为这里的y轴字段名是y1,而程序赋值的是y,修改此处就好了

有空再更一下rootdata的使用

欢迎交流


---------------------
作者:麓南的风
来源:CSDN
原文:https://blog.csdn.net/qq_45998204/article/details/124716864
版权声明:本文为作者原创文章,转载请附上博文链接!
内容解析By:CSDN,CNBLOG博客文章一键转载插件

<think>好的,我现在需要向用户解释Nacos是什么,用大白话来说。首先,我得回忆一下自己对Nacos的理解,然后尽量用简单易懂的语言表达出来,避免使用专业术语。 Nacos是阿里巴巴开源的一个项目,属于微服务架构中的一部分。那微服务是什么呢?微服务就是把一个大的应用拆分成多个小的服务,每个服务独立运行,比如用户服务、订单服务、支付服务等。这些服务之间需要互相通信,所以需要管理和协调。 这时候就需要用到服务发现和配置管理。服务发现指的是服务启动时注册自己的信息到某个中心,其他服务需要调用时,能从这个中心找到可用的实例。比如用户服务启动时告诉Nacos它的地址和端口,订单服务想调用用户服务时,就向Nacos询问用户服务的位置。 配置管理则是集中管理所有服务的配置信息。比如数据库连接信息,如果每个服务都自己配置,修改起来会很麻烦。用Nacos的话,所有配置存在一个地方,服务启动时从这里获取,需要修改时只需改一处,所有服务会自动更新。 用户可能不太清楚这些概念,所以需要用类比。比如,服务发现可以比作电话簿,存着所有服务的联系方式;配置管理就像公告板,所有服务都看这里的信息。Nacos就是同时提供电话簿和公告板的工具。 还要提到Nacos的优势,比如动态更新配置,不用重启服务,这对运维来说很方便。另外,健康检查确保服务可用,自动剔除故障实例,提高系统稳定性。 可能需要解释一些用户不熟悉的术语,比如动态配置、服务注册与发现。但尽量保持语言通俗,避免技术术语堆砌。如果用户已经了解微服务,可以适当深入,但根据问题要求,应该用大白话,所以保持基础解释。 总结的话,Nacos帮助管理微服务中的各个服务的位置和配置,让系统更灵活、可靠,简化开发和运维的工作。这样用户应该能明白它的主要作用和好处了。</think>Nacos 你可以理解为**微服务的"大管家"**,专门干两件大事: 1. **当电话簿** 比如你们公司有100个微服务(用户服务、订单服务、支付服务...),每个服务启动时都会把自己的联系方式(IP地址、端口号)告诉Nacos。当订单服务需要找支付服务时,不用记对方电话,直接问Nacos:"支付服务在哪?",Nacos就会返回最新可用的地址。 2. **当公告板** 所有服务的配置信息(比如数据库密码、功能开关)都统一存在Nacos里。比如双11要把所有服务的超时时间调长,不用挨个改代码,直接在Nacos改一次,所有服务自动就能读到新配置。 **举个现实例子**: 假设美团外卖有500个微服务,没有Nacos的话: - 每次新服务上线要手动通知其他服务 - 某个服务崩溃了其他服务可能还在调用它 - 改个数据库密码要重新部署所有服务 有了Nacos后: - 服务自动注册/发现 - 实时感知哪些服务健康 - 配置修改秒级生效 就像给整个系统装上了智能导航 + 中央遥控器
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值