利用Echarts 展示两条动态数据曲线,每1秒刷新一下数据,在echart官网例子基础上修改,修改了仿真数据的生成方式、生成数量,曲线数量,最总效果图如下:

详细代码如下:

遇到的主要问题点,

1,在生成模拟数据时,数据源格式很重要,格式不正确,无法正常显示。

new Date(parseInt(sttimestamp+i*1000)).toLocaleString('chinese',{hour12:false});

上述语句 toLocaleString(),显示的结果  2021/8/21 下午4:07:40,若要显示为24小时制,需要添加参数 'chinese',{hour12:false}。

2,数据横轴显示格式,默认会把毫秒显示出来,且不统一:

在横轴的样式里增加格式限制,即可按要求显示:

 axisLabel:{
formatter:'{HH}:{mm}:{ss}'
//显示24小时制,两位分钟,两位秒
}

完整代码如下:

var data = [];
var data2= []; var curtimestamp = Date.parse(new Date());
var sttimestamp = curtimestamp - 100*1000 ;
var temptime;
var tm = Date.now()
// 生成初始数据100条
for (var i = 0; i < 100; i++) {
temptime = new Date(parseInt(sttimestamp+i*1000)).toLocaleString('chinese',{hour12:false});
data.push({name:temptime,value:[temptime,Math.random()*10+150]});
data2.push({name:temptime,value:[temptime,Math.random()*10+100]});
}
// 显示设置
option = {
title: {
text: '实时数据展示',
left:'5%'
},
tooltip: {
trigger: 'axis',
formatter: function (params) {
params = params[0];
var date = new Date(params.name);
return date.getDate() + '/' + (date.getMonth() + 1) + '/' + date.getFullYear() + ' : ' + params.value[1];
},
axisPointer: {
animation: false
}
},
xAxis: {
type: 'time',
splitLine: {
show: false
},
minInterval: 5,
axisLabel:{
formatter:'{HH}:{mm}:{ss}'
}
},
yAxis: {
axisLine:{
show:true
},
type: 'value',
boundaryGap: [0, '100%'],
splitLine: {
show: false
}
},
series: [{
name: 'LineA',
type: 'line',
showSymbol: false,
hoverAnimation: false,
data: data
},{
name: 'LineB',
type: 'line',
color:'#2f4f4f',
showSymbol: false,
hoverAnimation: false,
data: data2
}]
}; setInterval(function () { // for (var i = 0; i < 5; i++) {
curtimestamp = Date.parse(new Date());
temptime = new Date(parseInt(curtimestamp)).toLocaleString('chinese',{hour12:false});
data.shift();
data.push({name:temptime,value:[temptime,Math.random()*10+150]}); data2.shift();
data2.push({name:temptime,value:[temptime,Math.random()*10+120]});
// } myChart.setOption({
series: [{
data: data
},{
data: data2
}
]
});
}, 1000);

Echarts 展示两条动态数据曲线的更多相关文章

  1. Echarts通过Ajax实现动态数据加载

    Echarts(3.x版)官网实例的数据都是静态的,实际使用中往往会要求从服务器端取数据进行动态显示,官网教程里给出的异步数据加载很粗略,下面就以官网最简单的实例为例子,详细演示如下过程:1.客户端通 ...

  2. 利用Hive实现求两条相邻数据时间差

    1.Hive row_number() 函数的高级用法 row_num 按照某个字段分区显示第几条数据 select imei,ts,fuel_instant,gps_longitude,gps_la ...

  3. MYSQL 当有两条重复数据时 保留一条

    delete from test  where id in (select id from (select  max(id) as id,count(text) as count from test ...

  4. 详细介绍如何计算两条折线的交点并使用Echarts展示以及图表优化

    1.背景 前段时间公司有个需求,需要在一个图表中展示两条折线,并且绘制出两条线的交点.为了满足需求大哥的需求,我也是着实想了有一会.下面我就把具体的实现过程给大家展示一下. 1.1.ECharts 简 ...

  5. Echarts基于动态数据初步使用 及问题 代码记录.

    ECHARTS 插件 基本的动态数据展示(横向图) 下载 echarts.commn.min.js文件 在页面中进行引用, 并为Echarts图形准备一个div盒子 <!-- 引入插件 --&g ...

  6. mysql 数据库查询最后两条数据

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u011925175/article/details/24186917  有一个mysql数据库的 ...

  7. echarts实现多条可拖动节点的折现图

    这篇博文主要是利用echarts实现两条以及多条可拖动节点的曲线,demo脱胎于官方demo,在官方demo的基础上添加了另一条曲线.因为之前写过一篇在vue中使用echarts实现可拖动节点的折线图 ...

  8. for循环每次展示固定条数的数据的写法。

    第一种是一组json数据实现分页的效果,也就是每一次展示5条数据.第二种场景是每一秒展示4条数据,直到全部显示完.两种思路都做个笔记记录下. var nums = 5; //每页出现的数量 var p ...

  9. ViewPager使用记录2——展示动态数据

    ViewPager是v4支持库中的一个控件,相信几乎所有接触Android开发的人都对它不陌生.之所以还要在这里翻旧账,是因为我在最近的项目中有多个需求用到了它,觉得自己对它的认识不够深刻.我计划从最 ...

随机推荐

  1. 在Ubuntu 16.04中搭建RobotFramework环境

    1.搭建RF环境 2.安装RF相关库 3.查看RF case 4.设置环境变量 相关知识点:pip  --proxy=http://xx.xx.xx.xx:xx install 包名,使用pip的-- ...

  2. buu SCTF Who is he

    1. 下载好附件,发现是unity的题目,找到assembly.dll,用dnspy直接打开干,在引用下面就是实际的代码 2.找到了核心代码,发现逻辑也挺简单的, 输入的text,要和一串字符串进行b ...

  3. Java | 集合(Collection)和迭代器(Iterator)

    集合(Collection) 集合就是Java中提供的一种 空器,可以用来存储多个数据. 集合和数组都是一个容器,它们有什么区别呢? 数组的长度是固定的,集合的长度是可变的. 数组中存储的是同一类型的 ...

  4. Socket 编程介绍

    Socket 编程发展 Linux Socket 编程领域,为了处理大量连接请求场景,需要使用非阻塞 I/O 和复用.select.poll 和 epoll 是 Linux API 提供的 I/O 复 ...

  5. QT. 学习之路 一

    初识QT 一:   hello-world: #include "mainwindow.h" #include <QApplication> #include < ...

  6. ORM研究3 - odoo fields常用的字段属性

    之前我们已经讲解了odoo ORM中的一些对字段常用的API操作方法,今天我们继续研究一下Odoo orm中字段的一些通用属性字段的使用,学会它们可以为自己创建数据映射并使用有更好的帮助. 通用字段属 ...

  7. Hive——简介

    Hive--简介 Hive 是基于 Hadoop 构建的一套数据仓库分析系统,它提供了丰富的 SQL 查询方式来分析存储在 Hadoop 分布式文件系统中的数据, 可以将结构化的数据文件映射为一张数据 ...

  8. 拿来-util工具函数

    记录一些写的好的工具函数.以便学习和项目中直接拿来使用. 判断值是否相等:使用于任何数据类型:基本数据类型和复杂深层次对象 function deepEqual (a, b) { if (a === ...

  9. 微信小程序云开发-云存储-上传单个视频到云存储并显示到页面上

    一.wxml文件 <!-- 上传视频到云存储 --> <button bindtap="chooseVideo" type="primary" ...

  10. 犀牛Rhino 7.0中文版安装破解教程

    犀牛Rhino 7.0中文版是一款专业的.功能强大的三维建模软件,利用它可以创建.编辑.分析.提供.渲染.动画与转换NURBS线条.曲面.实体与多边形网格:它能轻易整合3DS MAX 与Softima ...