echarts數(shù)據(jù)異步更新

異步加載

數(shù)據(jù)是在初始化后setOption中直接填入的,但是很多時(shí)候可能數(shù)據(jù)需要異步加載后再填入。ECharts 中實(shí)現(xiàn)異步數(shù)據(jù)的更新非常簡單,在圖表初始化后不管任何時(shí)候只要通過 jQuery 等工具異步獲取數(shù)據(jù)后通過 setOption 填入數(shù)據(jù)和配置項(xiàng)就行。

loading 動(dòng)畫

如果數(shù)據(jù)加載時(shí)間較長,一個(gè)空的坐標(biāo)軸放在畫布上也會(huì)讓用戶覺得是不是產(chǎn)生 bug 了,因此需要一個(gè) loading 的動(dòng)畫來提示用戶數(shù)據(jù)正在加載。

ECharts 默認(rèn)有提供了一個(gè)簡單的加載動(dòng)畫。只需要調(diào)用 showLoading 方法顯示。數(shù)據(jù)加載完成后再調(diào)用 hideLoading 方法隱藏加載動(dòng)畫。

myChart.showLoading();
$.get('data.json').done(function (data) {
    myChart.hideLoading();
    myChart.setOption(...);
});

效果如下


image.png

數(shù)據(jù)的動(dòng)態(tài)更新

ECharts 由數(shù)據(jù)驅(qū)動(dòng),數(shù)據(jù)的改變驅(qū)動(dòng)圖表展現(xiàn)的改變,因此動(dòng)態(tài)數(shù)據(jù)的實(shí)現(xiàn)也變得異常簡單。

所有數(shù)據(jù)的更新都通過 setOption實(shí)現(xiàn),你只需要定時(shí)獲取數(shù)據(jù),setOption 填入數(shù)據(jù),而不用考慮數(shù)據(jù)到底產(chǎn)生了那些變化,ECharts 會(huì)找到兩組數(shù)據(jù)之間的差異然后通過合適的動(dòng)畫去表現(xiàn)數(shù)據(jù)的變化。

具體效果:


image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容