echarts画图需要每隔5秒定时刷新,怎样消除之前画的图?

发布于 2022-09-11 20:27:18 字数 1608 浏览 25 评论 0

实现一个图表,用echarts画好了,但需要每隔5秒刷新数据生成新的图标

html:
<div class="chartContent">

<div id="multiple"></div>

</div>

JS:
var echart={

arrPrice:[],
arrRate:[],
time:[]

};

//***我用了一个getData()来通过ajax实现获取实时数据;***
function getData(){
    $.ajax({
        url:'mod.json',
        type:'post',
        async:true,
        data:'',
        dataType:'json',
        success:function(data){
            for(i in data.result){
                echart.arrPrice.push(data.result[i].price);
                echart.arrRate.push(data.result[i].rise);
                echart.time.push(data.result[i].time);
            }
            drawChart();
        },
        error:function(){
            console.log('error')
        }
    });
}
**//drawChart()y用来实现echarts画图;**
    function drawChart(){
    var dom = document.getElementById("multiple");
    var myChart = echarts.init(dom);
    option = {
             xxx
            }
        ]
    };
    if (option && typeof option === "object") {
        myChart.setOption(option, true);
    }
}

然后window.setInterval(function(){

    //getData()
},3000);
来实现5秒定时刷新

希望得到每5秒图表重绘,但现在结果是这样的:
初始:
图片描述
5秒后:
图片描述
10秒后:
图片描述

我尝试每次重绘前移除“#multiple”重新插入这个div也是同样的效果.所以应该怎样清除之前绘制的图表?
请各位前辈大神看一下问题是出在哪里?小妹谢过~【抱拳】

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

少钕鈤記 2022-09-18 20:27:18
for(i in data.result){
                echart.arrPrice.push(data.result[i].price);
                echart.arrRate.push(data.result[i].rise);
                echart.time.push(data.result[i].time);
            }

问题出在这儿,你每次请求数据完成后,绘制图表前都需要把上一次的的数据清空。
echart.arrPrice = [];
echart.arrRate = [];
echart.time = [];

过期情话 2022-09-18 20:27:18

楼主应该先搞清楚Array的push方法是做什么用的。你的需求是清空而不是追加。

∞琼窗梦回ˉ 2022-09-18 20:27:18

每隔5秒重新绑定数据

瞎闹 2022-09-18 20:27:18

你读没清空就直接push了,数据越来越多了

一抹苦笑 2022-09-18 20:27:18

请问解决了吗?我感觉应该是把echarts清空之后再绘制,但是我现在也出现没有清空的问题

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文