源码先锋

源码先锋

学习下ECharts 异步加载数据

admin 127 93

ECharts通常数据设置在setOption中,如果我们需要异步加载数据,可以配合jQuery等工具,在异步获取数据后通过setOption填入数据和配置项就行。


ECharts通常数据设置在setOption中,如果我们需要异步加载数据,可以配合jQuery等工具,在异步获取数据后通过setOption填入数据和配置项就行。json数据:

实例

尝试一下»
如果异步加载需要一段时间,我们可以添加loading效果,ECharts默认有提供了一个简单的加载动画。只需要调用showLoading方法显示。数据加载完成后再调用hideLoading方法隐藏加载动画:

实例

尝试一下»

数据的动态更新

ECharts由数据驱动,数据的改变驱动图表展现的改变,因此动态数据的实现也变得异常简单。

所有数据的更新都通过setOption实现,你只需要定时获取数据,setOption填入数据,而不用考虑数据到底产生了那些变化,ECharts会找到两组数据之间的差异然后通过合适的动画去表现数据的变化。

实例

varbase=+newDate(2014,9,3);varoneDay=24*3600*1000;vardate=[];vardata=[()*150];varnow=newDate(base);functionaddData(shift){now=[(),()+1,()].join('/');(now);((()-0.4)*10+data[]);if(shift){();();}now=newDate(+newDate(now)+oneDay);}for(vari=1;i100;i++){addData();}option={xAxis:{type:'category',boundaryGap:false,data:date},yAxis:{boundaryGap:[0,'50%'],type:'value'},series:[{name:'成交',type:'line',smooth:true,symbol:'none',stack:'a',areaStyle:{normal:{}},data:data}]};setInterval(function(){addData(true);({xAxis:{data:date},series:[{name:'成交',data:data}]});},500);