1.全局绑定滚轮事件,获得dataZoom最新的位置:
myChart.on('dataZoom',function(event){ if(event.batch){ start=event.batch[0].start; end=event.batch[0].end; }else{ start=event.start; end=event.end; }; });
2.把最新的start和end赋值给要更新的option
window.setInterval(function () { num=Math.random()*num+100; data0.splice(0,1); data0.push(num); option.dataZoom[0].start=start; option.dataZoom[0].end=end; myChart.setOption(option); },3000);
3.echart数据增量刷新还可以用appendData
补充知识:echarts动态添加数据
我就废话不多说了,大家还是直接看代码吧~
<template> <!--为echarts准备一个具备大小的容器dom--> <div id="main" style="width: 600px;height: 400px;"></div> </template> <script> import echarts from 'echarts' export default { name: 'Chart', data () { return { charts: '', } }, methods:{ initLine(id){ this.charts = echarts.init(document.getElementById(id)) this.charts.setOption({ title: { text: '动态数据 + 时间坐标轴' }, tooltip: { trigger: 'axis', formatter: function (params) { params = params[0] return params.value[0] + ' : ' + params.value[1] }, axisPointer: { animation: false } }, xAxis: { type: 'time', splitLine: { show: false } }, yAxis: { type: 'value', boundaryGap: [0, '100%'], splitLine: { show: false } }, animation: false }) } }, mounted(){ this.$nextTick(function() { this.initLine('main') this.charts.setOption({ series : [ { name : '模拟数据0', type : 'line', showSymbol : false, hoverAnimation : false, data : [['2018-01-02', '3'],['2018-01-05', '4']] } ] }) setTimeout(() => { this.charts.appendData({ seriesIndex:0, data : [['2018-01-03', '1'],['2018-01-07', '2']] }) },2000) setTimeout(() => { this.charts.resize(); },4000) setTimeout(() => { this.charts.setOption({ series : [ {}, { name : '模拟数据1', type : 'line', showSymbol : false, hoverAnimation : false, data : [['2018-01-02', '5'],['2018-01-05', '10']] } ] }) this.charts.appendData({ seriesIndex:1, data : [['2018-01-03', '11'],['2018-01-10', '2']] }) },6000) setTimeout(() => { this.charts.resize(); },8000) }) } } </script> <style scoped> * { margin: 0; padding: 0; list-style: none; } </style>
补充
主动使用echarts的resize方法改变图表大小:
(opts?: { width?: number|string, height?: number|string, silent?: boolean })
当在参数中填入宽高,this.echarts.resize({width:300}),dom层必须有一个初始化像素的宽高,百分比的宽高该方法不会生效。
以上这篇解决echarts echarts数据动态更新和dataZoom被重置问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“解决echarts echarts数据动态更新和dataZoom被重置问题”评论...
更新动态
2024年04月29日
2024年04月29日
- 邓丽君《闽南语金曲集》[DSF][1G]
- dnf第10季战令奖励一览
- dnf结婚戒指怎么升级
- dnf继承怎么保留附魔
- 《重装岚影》成就列表一览
- 《百英雄传》:像素群像剧与英雄们的赞美诗
- 《下一站江湖Ⅱ》评测:一块仍需打磨的璞石
- 龙飘飘-人财两旺富贵全-2023-WAV分轨
- 迪克牛仔-国语真经典台湾首版-2005-WAV+CUE
- FrancescaTandoi,MatheusNicolaiewskySanderSmeets-BopWeb(2024Jazz)[Flac24-96]
- 《剑星》遭和谐影响深远:玩家担心《GTA6》被审查
- 世界最贵在售房产 法国达玛雅克城堡出售:33亿人民币
- 《仙剑世界》三测定档5月31日!风启测试招募已启动
- 杨宗纬.2008-鸽子【华纳】【WAV+CUE】
- 群星.2006-意难忘3CD【南方】【WAV+CUE】