ECharts.js学习(二)动态数据绑定
发布日期:2021-08-17 00:51:58 浏览次数:5 分类:技术文章

本文共 2013 字,大约阅读时间需要 6 分钟。

参考 自  

Echarts 数据绑定

简单的统计表已经可以生成,不过之前图标数据都是直接写在参数里面的,而实际使用中,我们的数据一般都是异步读取的。EChart.js对于数据异步读取这块提供了异步加载的方法。

绑定多组数据

很多时候需要展示的数据不单单是一组数据,很多时候会进行一个数据对比。这个时候只需要在series中增加一组数据,legend中添加一下这个数据组的name

$(document).ready(function(){	//指定图标的配置和数据	var option = {		title : {text:'Echarts 数据统计'},		legend : {data:['访问量','用户量']},		xAxis:{data:["Android","IOS","PC","Other"]},		yAxis:{},		series:[{			name:'访问量',			type:'bar',			data:[180,420,333,83]		},		{			name:'用户量',            type:'bar',            data:[125,330,230,60]		}		]	};		//初始化echarts实例    var myChart = echarts.init(document.getElementById('chartmain'));    //使用制定的配置项和数据显示图表    myChart.setOption(option);	});

数据异步加载

EChart中实现异步数据的更新非常简单,在图表初始化后不管任何时候只要通过 jQuery 等工具异步获取数据后通过 setOption 填入数据和配置项就行。

绑定数据的方式有两种,一种是写写好一些图表参数,然后数据留空,然后在异步读取数据的时候,绑定数据。还有一种就是直接异步读取数据的时候同时设置图表参数和数据绑定。

首先我们准备一份需要加载的数据文件data.json,数据内容:

{"name":["Android","IOS","PC","Other"],"data":[420,200,360,100]}

第一种异步加载的时候设置图表参数和绑定数据

第二种先设置图表参数,后绑定数据

因为是异步加载,所以有时候数据加载会慢,或者延迟。在数据没有加载前,图表这样的。面对这样的图表,肯定会觉得这是没有数据吗,还是图表有问题.对于这块ECharts增加了一个加载动画。

Loading动画加载

//打开loading动画        myChart.showLoading();        //加载数据函数        function bindData(){            //为了效果明显,我们做了延迟读取数据            setTimeout(function(){                                //异步加载数据                $.get('data.json').done(function (data) {                                        //获取数据后,隐藏loading动画                    myChart.hideLoading();                    data = eval('('+data+')');                                myChart.setOption({                        xAxis:{                            data:data.name                        },                        series:[                            {                                //根据名字对应到相应的系列                                name:"访问量",                                data:data.data                            }                        ]                    })                })            },2000)        }                bindData();

转载于:https://www.cnblogs.com/duguxiaobiao/p/9128839.html

转载地址:https://blog.csdn.net/weixin_30825199/article/details/99162847 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:再学C/C++ 之 浅析gdb的-g选项
下一篇:从零开始--系统深入学习android(实践-让我们开始写代码-Android框架学习-6.权限(Permissions))...

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年04月22日 17时09分58秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

Android应用构建:15:使用gradlew和Android SDK镜像构建安卓应用 2021-06-30
Android应用构建:16:使用gradle和Android SDK镜像构建安卓应用 2021-06-30
实例学习Ansible系列(18)服务管理的几种方式 2021-06-30
实例学习Ansible系列(19)drop-if-exist不出错的写法 2021-06-30
实例学习Ansible系列(20)retry + sleep的常见写法 2021-06-30
实例学习Ansible系列(21)从标准输出获取循环的列表 2021-06-30
Kubernetes 1.17 正式发布:22项功能改进 2021-06-30
Easypack: 使用Ansible快速部署Kubernetes集群 2021-06-30
kubenertes 1.17集群部署总结 2021-06-30
持续集成之企业微信通知:1:群机器人使用方法介绍 2021-06-30
持续集成之企业微信通知:2:推送消息格式说明 2021-06-30
持续集成之企业微信通知:3:推送消息示例(text、markdown、news) 2021-06-30
持续集成之企业微信通知:4:推送消息示例(image) 2021-06-30
持续集成之钉钉消息推送:1:群机器人使用方法介绍 2021-06-30
持续集成之钉钉消息推送:2:推送消息格式说明 2021-06-30
持续集成之钉钉消息推送:3:推送消息示例 2021-06-30
持续集成之消息推送:钉钉与企业微信的群聊机器人通用示例 2021-06-30
持续集成之钉钉消息推送:4:在Jenkins中向钉钉推送消息 2021-06-30
持续集成之企业微信通知:5:在Jenkins中向企业微信推送消息 2021-06-30
持续集成之群聊机器人消息推送:钉钉 vs 企业微信 2021-06-30