Echarts使用心得总结——异步数据加载
2017-07-16 00:41
776 查看
异步加载
Echarts的数据一般是在初始化后setOption中直接填入的,但是很多时候可能数据需要异步加载后再填入。ECharts 中实现异步数据的更新非常简单,在图表初始化后不管任何时候只要使用ajax等异步获取数据后通过 setOption 填入数据就行。
实例代码:
data.json文件
也可以先设置完其它的样式,显示一个空的直角坐标轴,然后获取数据后填入数据。
如下:
loading 动画
如果数据加载时间较长,一个空的坐标轴放在画布上也会让用户觉得是不是产生 bug 了,因此需要一个 loading 的动画来提示用户数据正在加载。
ECharts 默认有提供了一个简单的加载动画。只需要调用 showLoading 方法显示。数据加载完成后再调用 hideLoading 方法隐藏加载动画。
效果如下:
Echarts的数据一般是在初始化后setOption中直接填入的,但是很多时候可能数据需要异步加载后再填入。ECharts 中实现异步数据的更新非常简单,在图表初始化后不管任何时候只要使用ajax等异步获取数据后通过 setOption 填入数据就行。
实例代码:
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Echarts使用心得总结——异步数据加载和更新</title> <script type="text/javascript" src="jquery-1.11.2.min.js"></script> <script type="text/javascript" src="echarts.min.js"></script> </head> <bod 4000 y> <div id="myChart" style="width:400px;height:300px;margin:auto;"></div> <script type="text/javascript"> var myChart = echarts.init(document.getElementById('myChart')); $.get('data.json').done(function (resule) { resule = JSON.parse(resule);//把string字符串转换为json数组 myChart.setOption({ title: { text: '异步数据加载示例' }, tooltip: {}, legend: { data:['销量'] }, xAxis: { data: resule.name }, yAxis: {}, series: [{ name: '销量', type: 'bar', data: resule.value }] }); }); </script> </body> </html>
data.json文件
{"name":["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"], "value":[5, 20, 36, 10, 10, 20]}
也可以先设置完其它的样式,显示一个空的直角坐标轴,然后获取数据后填入数据。
var myChart = echarts.init(document.getElementById('myChart')); // 显示标题,图例和空的坐标轴 myChart.setOption({ title: { text: '异步数据加载示例' }, tooltip: {}, legend: { data:['销量'] }, xAxis: { data: [] }, yAxis: {}, series: [{ name: '销量', type: 'bar', data: [] }] }); // 异步加载数据 $.get('data.json').done(function (resule) { resule = JSON.parse(resule);//把string字符串转换为json数组 myChart.setOption({ xAxis: { data: resule.name }, yAxis: {}, series: [{ name: '销量', type: 'bar', data: resule.value }] }); });
如下:
loading 动画
如果数据加载时间较长,一个空的坐标轴放在画布上也会让用户觉得是不是产生 bug 了,因此需要一个 loading 的动画来提示用户数据正在加载。
ECharts 默认有提供了一个简单的加载动画。只需要调用 showLoading 方法显示。数据加载完成后再调用 hideLoading 方法隐藏加载动画。
myChart.showLoading(); $.get('data.json').done(function (resule) { myChart.hideLoading(); resule = JSON.parse(resule);//把string字符串转换为json数组 myChart.setOption(...); });
效果如下:
相关文章推荐
- Echarts使用心得总结——异步数据加载与更新(二)
- echarts异步数据加载使用总结
- 微信小程序中使用ECharts 异步加载数据实现图表功能
- 微信小程序中使用ECharts 异步加载数据的方法
- vue在使用ECharts时的异步更新和数据加载详解
- 如何使用PHP+jQuery+MySQL实现异步加载ECharts地图数据(附源码下载)
- 如何使用PHP+jQuery+MySQL实现异步加载ECharts地图数据(附源码下载)
- asp.net 使用js分页实现异步加载数据
- Win8 在给列表绑定数据时,如果有需要 异步加载的数据时,一定要使用ObservableCollection
- MySQL命令行数据操作使用心得(总结版)
- Hive SQL使用和数据加载的一点总结
- 使用CursorLoader异步加载数据
- Hive SQL使用和数据加载的一点总结
- Android_Loader_使用LoaderManager管理Loader实现异步动态加载数据
- 使用EasyUI Tree异步加载JSON数据 生成树
- 使用CursorLoader异步加载数据
- 使用EasyUI Tree异步加载JSON数据 生成树
- 使用NSoperation多线程异步加载图片数据
- 使用Loaders异步加载数据
- [置顶] Android_Loader_使用LoaderManager管理Loader实现异步动态加载数据