完整版ajax+百度echarts实现统计图表demo并随着窗口大小改变而自适应
1.前言
百度Echarts会常用到我们的项目中做统计,api很详细,demo也非常之多,我们常用的是应有尽有了,做一些小项目的时候,百度echarts的demo已足够用了。今天呢。主要是跟小白讲一下,如何用ajax+百度Echarts实现我们动态数据的绑定呢?
2.详情
写一个很全的demo.接口的url自己换,数据结构自己换。
1.引入百度echarts库
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=xGF99mjQcACk1Ctv50lXs0QOqdHiZml1"></script>
2.html内容
<div class="match_echart cleanfloat">
<div id="chart1" style='margin-right:1%' ></div>
<div id="chart2" ></div>
</div>
3.css样式
/*定义宽高度*/
.match_echart>div{width:48%; height:400px;float:left; border:1px solid #d1d1d1;}
/*清浮动*/
.cleanfloat:after{display:block;clear:both;content:"";visibility:hidden;height:;}
4.js代码
var chart1 = echarts.init(document.getElementById('chart1'));
var chart2 = echarts.init(document.getElementById('chart2'));
//用ajax获取数据填充
function chartFun() {
/*饼图option*/
var option1 = { title: { text: '分类', x: 'center', },
tooltip: { trigger: 'item', formatter: "{a} <br/>{b} : {c} ({d}%)" },
legend: { orient: 'vertical', left: 'left', data: ['高度', '中度', '低度'] },
series: [{ name: '分类', type: 'pie', center: ['50%', '55%'], radius: '50%', data: [] }, ] }
/*柱状图option*/
var option2 = { title: { text: '对手', x: 'center', },
tooltip: { trigger: 'axis', axisPointer: { type: 'shadow' } },
xAxis: [{ type: 'category', data: [], axisTick: { alignWithLabel: true } }],
yAxis: [ { type: 'value' }], series: [{ name: '对手', type: 'bar', center: ['50%', '55%'], radius: '50%', data: [] }, ] }
/*分类饼图*/
$.ajax({
url: url1,//请换成自己的url
success: function (result) {
//换成自己的数据结构
var high = result.high;
var low = result.low;
var middle = result.middle;
option1.series[0].data.push({ value: high, name: "高度" }, { value: middle, name: "中度" }, { value: low, name: '低度' });
chart1.setOption(option1);
/*分类柱状图*/
$.ajax({
url: url2,//请换成自己的url
success: function (result) {
//换成自己的数据结构
for (var i = 0; i < result.list.length; i++) {
var column =result.list[i].column;
var num = result.list[i].num;
option2.series[0].data.push({ value: num, name: column });
option2.xAxis[0].data.push(column);
}
chart2.setOption(option2);
}
})
}
//调用方法
$(function(){
chartFun()
});
//根据窗口大小自适应图表
window.addEventListener("resize", function () {
chart1.resize();
chart2.resize();
});
5.效果展示

4.总结
这种demo在项目需求应用中应该是简单的不能再简单的了,很多童鞋的需求肯定不是酱紫的,好吧,如果你是小白,这个会了,稍微难的或者更难的都不会难倒你的。总之,掌握了其方法就会了。我这个写的是很菜,好吧,我承认我技术不照,学无止境!
完整版ajax+百度echarts实现统计图表demo并随着窗口大小改变而自适应的更多相关文章
- mui集成百度ECharts的统计图表以及清空释放图表
echarts官网地址: http://echarts.baidu.com/index.html 更换主题颜色: // 图表清空------------------- mychart.clear(); ...
- ztree--插件实现增删改查demo(完整版)
ztree--插件实现增删改查demo(完整版) var setting = { async: { enable: true, ...
- mark 百度Echarts统计图表
mark http://git.oschina.net/seeyoui/kensite_cms/blob/master/src/main/java/com/seeyoui/kensite/framew ...
- Thinkphp5.0 仿百度糯米 开发多商家 电商平台(完整版)
目录第1章 课程简介第2章 需求分析第3章 快速掌握thinkphp5第4章 任性的TP5模块第5章 生活服务分类管理模块第6章 百度地图应用封装第7章 打造属于TP5自己的发送邮件服务第8章 商户模 ...
- 黑马新版PYTHON教学课程(全)资料加视频完整版百度网盘资料
黑马新版PYTHON教学课程(全)资料加视频完整版 无加密,适合0基础人群.基础班+就业班.不用解压在线看 百度网盘地址一 淘宝店地址二
- JFreeChart与AJAX+JSON+ECharts两种处理方式生成热词统计可视化图表
本篇的思想:对HDFS获取的数据进行两种不同的可视化图表处理方式.第一种JFreeChar可视化处理生成图片文件查看.第二种AJAX+JSON+ECharts实现可视化图表,并呈现于浏览器上. 对 ...
- 百度echarts可以做什么
百度echarts可以做什么 一.总结 一句话总结:可视化做的很好,各种图都有.而且支持动态数据. 二.百度eCharts体验 前言 从昨天开始给项目里添加一些图表对比功能,上一个项目里使用的是Hig ...
- Swoole入门到实战 打造高性能 赛事直播平台(完整版)
Thinkphp+Swoole入门到实战打造高性能赛事直播平台 第1章 课程介绍 欢迎大家来到swoole的课程!本章主要是介绍了swoole的一些特性,以及使用场景,并且分享了swoole在其他公司 ...
- WPF仿百度Echarts人口迁移图
GitHub地址:https://github.com/ptddqr/wpf-echarts-map/tree/master 关于大名鼎鼎的百度Echarts我就不多说了 不了解的朋友直接看官方的例子 ...
随机推荐
- Mac 上Python多版本切换
Mac上自带了Python2.x的版本,有时需要使用Python3.x版本做开发,但不能删了Python2.x,可能引起系统不稳定,那么就需要安装多个版本的Python. 1.安装Python3.x版 ...
- 从《海贼王》的视角走进BAT的世界(百度/阿里/腾讯)
在伟大航路后半段--新世界,有三位君临天下的海上枭雄,就犹如海上皇帝一般,被人们称为"三皇",他们是--洛宾·里(Robin·Li),杰克·马(Jack·Ma)和波尼(pony)! ...
- ThinkPHP 前台视图实现类似于Yii的自动验证
ThinkPHP model类其实自带这个功能 可以写一个基础类继承Model 模型层代码: <?php namespace Manager\Model; use Think\Model; cl ...
- PHP+MySql实现后台数据的读取
我们使用的是PHP 的php_mysqli扩展 首先了解一些基础的用法 1.连接数据库使用 mysqli_connect() 参数:①主机地址 ②MYSQL用户名 ③MYSQL密码 ④选择 ...
- 利用wamp配置虚拟主机
第一步:打开wamp--Apache--httpd.conf找到# Virtual hosts 一行,把其下面的一行中的#去掉.
- MySQL如何有效的存储IP地址及字符串IP和数值之间如何转换
mysql> select inet_aton('192.168.0.1'); +--------------------------+ | inet_aton('192.168.0.1') | ...
- 【Android Developers Training】 91. 解决云储存冲突
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- Jquery-鼠标事件
鼠标事件是在用户移动鼠标光标或者使用任意鼠标键点击时触发的.(1):click事件:click事件于用户在元素敲击鼠标左键,并在相同元素上松开左键时触发. $('p').click(fu ...
- css样式表。作用是美化HTML网页.
样式表分为:(1)内联样式表 和HTML联合显示,控制精确,但是可重用性差,冗余多. 如:<p style="font-size:10px">内联样式表</p&g ...
- 简单来说一下ui-route
UI-Router被认为是AngularUI为开发者提供的最实用的一个模块,它是一个让开发者能够根据URL状态或者说是'机器状态'来组织和控制界面UI的渲染,而不是仅仅只改变路由(传统AngularJ ...