Vue中使用Echarts仪表盘展示实时数据的实现


Posted in Javascript onNovember 01, 2020

在vue中echarts仪表盘实时数据
彩笔一枚,简单记录一下。
业务场景:通过websocket实时推送数据,将数据渲染到仪表盘中。

第一步:
基于准备好的dom,初始化echarts仪表盘实例。

第二步:
我是通过父子组件传值把数据接收过来,在data中定义upPressure参数,并将接收来的devicePressure参数赋值给它,便于后面将值传入到echarts中

父组件中
 <div class="chart" shadow="always">
  <objEcharts :devicePressure="pressure"></objEcharts>
 </div>

子组件中
export default {
 props: {
  devicePressure: { type: String, require: true },
 },
 data() {
  return {
   upPressure: this.devicePressure,
  };
 },

第三步:
因为是实时数据,就需要在watch中监听数据变化,实时更新。
注:这里我只监听一个参数变化,没有使用deep: true。

watch: {
 	//监听devicePressure的数据变化。
  devicePressure(newData, oldData) {
  //把更新后的数据newData,赋值给需要传入echarts中的参数。
   this.upPressure = newData;
  //一定要调用echarts实例,要不然echarts不实时展示。
   this.drawLine();
  },
 },

第四步:
数据处理完之后,就要把它展示到仪表盘中了,所以直接找到echarts中需要数据的地方就好了。
介于仪表盘样式,可结合官方文档自定义。

export default {
 props: {
  devicePressure: { type: String, require: true },
 },
 data() {
  return {
   upPressure: this.devicePressure,
  };
 },
 mounted() {
  this.drawLine();
 },
 watch: {
  	devicePressure(newData, oldData) {
   this.upPressure = newData;
   this.drawLine();
  },
 },
methods: {
  drawLine() {
   // 基于准备好的dom,初始化echarts实例
   let visualOneChart = this.$echarts.init(document.getElementById("visualOneChart"));
   // 绘制图表
   visualOneChart.setOption({
    tooltip: {
     formatter: "{a} <br/>{b} : {c}Pa",
    },
    series: [
     {
      name: "压力值",
      type: "gauge",
      clockwise: true,
      detail: {
       formatter: this.upPressure,
       textStyle: {
        fontSize: 14,
       },
      },
      data: [{ value: this.upPressure, name: "压力值" }],
      radius: "90%",
      axisLabel: {// 刻度标签。
       show: true,
       distance: -5,
       color: "black", 
       fontSize: 10, 
       formatter: "{value}", 
      },
      axisLine: {// 仪表盘轴线(轮廓线)相关配置。
       show: true, 
       lineStyle: {// 仪表盘轴线样式。
        opacity: 1, 
        width: 15, 
        shadowBlur: 10, 
       },
      },
      pointer: { // 仪表盘指针。
       show: true,
       length: "70%", 
       width: 4, 
      },
     },
    ],
   });
  },
 },
}

Vue中使用Echarts仪表盘展示实时数据的实现

到此这篇关于Vue中使用Echarts仪表盘展示实时数据的实现的文章就介绍到这了,更多相关Vue Echarts仪表盘 内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
JavaScript设置FieldSet展开与收缩
May 15 Javascript
javascript 图片上传预览-兼容标准
Jun 01 Javascript
JavaScript 精粹读书笔记(1,2)
Feb 07 Javascript
dojo学习第二天 ajax异步请求之绑定列表
Aug 29 Javascript
通过jQuery源码学习javascript(二)
Dec 27 Javascript
node.js调用C++开发的模块实例
Jul 03 Javascript
jquery append 动态添加的元素事件on 不起作用的解决方案
Jul 30 Javascript
jQuery支持添加事件的日历特效代码分享(3种样式)
Aug 24 Javascript
基于jquery animate操作css样式属性小结
Nov 27 Javascript
Vue v2.4中新增的$attrs及$listeners属性使用教程
Jan 08 Javascript
又拍云 Node.js 实现文件上传、删除功能
Oct 28 Javascript
node.js使用express框架进行文件上传详解
Mar 03 Javascript
JavaScript实现刮刮乐效果
Nov 01 #Javascript
微信小程序实现单个或多个倒计时功能
Nov 01 #Javascript
微信小程序实现页面监听自定义组件的触发事件
Nov 01 #Javascript
uniapp微信小程序实现一个页面多个倒计时
Nov 01 #Javascript
uni-app使用countdown插件实现倒计时
Nov 01 #Javascript
uni-app实现获取验证码倒计时功能
Nov 01 #Javascript
uniapp电商小程序实现订单30分钟倒计时
Nov 01 #Javascript
You might like
php 小乘法表实现代码
2009/07/16 PHP
php面向对象全攻略 (十二) 抽象方法和抽象类
2009/09/30 PHP
php 读取文件乱码问题
2010/02/20 PHP
php实现在线生成条形码示例分享(条形码生成器)
2013/12/30 PHP
ThinkPHP表单自动验证实例
2014/10/13 PHP
PHP htmlspecialchars() 函数实例代码及用法大全
2018/09/18 PHP
实例讲解php将字符串输出到HTML
2019/01/27 PHP
js类后台管理菜单类-MenuSwitch
2007/09/12 Javascript
jQuery插件开发全解析
2012/10/10 Javascript
js获得当前系统日期时间的方法
2015/05/06 Javascript
mpvue实现小程序签到金币掉落动画(api实现)
2019/10/17 Javascript
p5.js绘制旋转的正方形
2019/10/23 Javascript
[42:36]DOTA2上海特级锦标赛B组败者赛 VG VS Spirit第二局
2016/02/26 DOTA
Python 3.6 性能测试框架Locust安装及使用方法(详解)
2017/10/11 Python
Python中的二维数组实例(list与numpy.array)
2018/04/13 Python
Python模拟登录的多种方法(四种)
2018/06/01 Python
python 格式化输出百分号的方法
2019/01/20 Python
Flask-WTF表单的使用方法
2019/07/12 Python
python爬虫模拟浏览器的两种方法实例分析
2019/12/09 Python
numpy矩阵数值太多不能全部显示的解决
2020/05/14 Python
Python selenium环境搭建实现过程解析
2020/09/08 Python
加拿大休闲和工业服装和鞋类零售商:L’Équipeur
2018/01/12 全球购物
L*SPACE官网:比基尼、泳装和度假服装
2019/03/18 全球购物
全球最大运动品牌的男装、女装和童装官方库存商:A&A Sports
2021/01/17 全球购物
应届生新闻编辑求职信
2013/11/19 职场文书
社会学专业求职信
2014/02/24 职场文书
巾帼建功标兵事迹材料
2014/05/11 职场文书
音乐教育专业自荐信
2014/09/18 职场文书
党员群众路线教育实践活动剖析材料
2014/10/10 职场文书
2014年银行员工工作总结
2014/11/12 职场文书
2015年五一劳动节活动总结
2015/02/09 职场文书
医生个人年终总结
2015/02/28 职场文书
学校捐书倡议书
2015/04/27 职场文书
MySQL中连接查询和子查询的问题
2021/09/04 MySQL
解析探秘fescar分布式事务实现原理
2022/02/28 Java/Android
关于CSS自定义属性与前端页面的主题切换问题
2022/03/21 HTML / CSS