echarts中饼图的异步数据加载绘制
来源:互联网 发布:amx m4 54数据 编辑:程序博客网 时间:2024/05/29 04:07
ECharts 中实现异步数据的更新非常简单,在图表初始化后不管任何时候只要通过 jQuery 等工具异步获取数据后通过 setOption 填入数据和配置项就行,但是从后台异步获取数据后,需要在前台根据不同的图表拼接成相应图表data的数据格式,一般常用的图表有折现图,柱状图,饼图。这里说明饼图的使用方法。
饼图的数据和配置项如下
option = { title : { text: '某站点用户访问来源', subtext: '纯属虚构', x:'center' }, tooltip : { trigger: 'item', formatter: "{a} <br/>{b} : {c} ({d}%)" }, legend: { orient: 'vertical', left: 'left', data: ['直接访问','邮件营销','联盟广告','视频广告','搜索引擎'] }, series : [ { name: '访问来源', type: 'pie', radius : '55%', center: ['50%', '60%'], data:[ {value:335, name:'直接访问'}, {value:310, name:'邮件营销'}, {value:234, name:'联盟广告'}, {value:135, name:'视频广告'}, {value:1548, name:'搜索引擎'} ], itemStyle: { emphasis: { shadowBlur: 10, shadowOffsetX: 0, shadowColor: 'rgba(0, 0, 0, 0.5)' } } } ]};
其中配置项中的data需要从后台异步获取数据后填充进去,而我们从后台获取到了关于value和name的json数据
故在此我们需要拼接饼图中data的数据格式
data: result.degree //legend里的data数据
data: (function(){ var rs = []; for(var res in result.degree){ rs.push({ name :result.degree[res], value:result.count[res] }); } return rs; })()
首次在页面加载时先加载图表的配置项,然后通过ajax请求异步请求数据,得到数据后再利用拼接完成的数据格式动态绘制饼图。
这是异步请求数据和动态加载饼图的完成代码
$.ajax({ type : "get", async : true, //异步请求(同步请求将会锁住浏览器,用户其他操作必须等待请求完成才可以执行) url : "此处为请求的url地址", //请求发送到 data : {}, dataType : "json", //返回数据形式为json success : function(result) { myChart.setOption({ //填入数据 legend: { data: result.degree }, series: [{ data: (function(){ var rs = []; for(var res in result.degree){ rs.push({ name :result.degree[res], value:result.count[res] }); } return rs; })() }] }); myChart.hideLoading(); //隐藏加载动画 }, error : function(errorMsg) { alert("图表请求数据失败!"); myChart.hideLoading(); } })
最后饼图成功的绘制
阅读全文
1 0
- echarts中饼图的异步数据加载绘制
- echarts异步数据加载和更新
- echarts 条形图异步加载数据
- echarts异步数据加载和更新
- echarts异步数据加载和更新
- echarts关系图异步加载数据
- echarts模拟从数据库异步加载数据
- echarts异步加载多组数据
- echarts异步加载柱状图数据叠加
- echarts异步数据加载使用总结
- echarts异步数据加载和更新
- 百度图表ECharts的异步加载
- echarts 实时数据的加载
- Echarts折柱图异步加载
- Echarts扩展之ajax异步加载tooltip数据
- Echarts使用心得总结——异步数据加载
- Echarts扩展之ajax异步加载tooltip数据
- ECharts官方教程(五)【异步数据加载和更新】
- 面试笔试整理5:项目问题准备
- javascript中构造函数和prototype属性
- JVM(2):JVM内存结构
- JMeter逻辑控制器
- 子线程的认识
- echarts中饼图的异步数据加载绘制
- hive-02-hive文件存储格式
- 【Android】 文件存取
- ajax上传问题
- Multi-Scale Context Aggregation by Dilated Convolution 对空洞卷积(扩张卷积)、感受野的理解
- Gitlab 配置外部PostgreSQL
- js如何去除html标签
- ccf 交通规划 dijkstra+最小路径花费
- HDU