eChart学习笔记
eChart的html代码很简单,给个容器,定好宽高就可以了
1 <div class="container-fluid">
2 <div class="row">
3 <div class="col-xs-8">
4 <div id="main" style="width: 100%;height:500px;"></div>
5 </div>
6 <div class="col-xs-4">
7 <div id="pieChart" style="width: 100%;height:460px;"></div>
8 </div>
9 </div>
10 </div>
因为服务器返回的数据较多,声明两个变量分布保存相应的数据
var gDashboardData = {};//另外一组数据,这里用不上
var gDateData = [];
var gMonthData = [];
发起请求,这里一般习惯用jQuery
(function(){
$.ajax({
type: "get",
url: "/main/statMainData",
async: false,
success: function (data) {
if (data.result == "1") {
gDashboardData = data.dashboard;
gDateData = data.dateData;
gMonthData = data.monthData;
setAllChartData();
} else {
toastr.warning(data.errorCode)//toastr提示插件
}
},
error: function (data, status) {
toastr.warning(data)
}
});
}());
拿到数据后绘制曲线图
(function() {
var myChart = echarts.init(document.getElementById('main'));
// 显示标题,图例和空的坐标轴
var xDateArray = [];
var yTotalArray = [];
var yCompleteArray = [];for (var i = 0; i < gDateData.length; i++) {//这个曲线图要显示的数据量比较多,所以继续遍历分别保存相应数据
xDateArray.push(gDateData[i].statDate);
yTotalArray.push(gDateData[i].allJobNum);
yCompleteArray.push(gDateData[i].finishNum);
}
myChart.setOption({
title: {
text: '工单月曲线图'
},
tooltip: {trigger: 'axis'},
legend: {
data: ['工单数', '工单完成数']
},
xAxis: { //X轴的值
type: 'category',
boundaryGap: false,
data: xDateArray
},
yAxis: {type: 'value'}, //Y轴的值,有两个,绘制两条曲线
series: [{
name: '工单数',
type: 'line',
data: yTotalArray
},
{
name: '工单完成数',
type: 'line',
data: yCompleteArray
}]
});
}())
绘制饼状图
(function() {
var myChart = echarts.init(document.getElementById('pieChart'));
myChart.setOption({
title:{text:"工单业务类型分布图"},
tooltip:{
trigger:"item",
formatter:"{b}:{c}<br/>占比 {d}%"
},
legend:{
orient:"horizontal",
left:'center',
bottom:0,
data:['配送','保养','安装','租赁','维修','回收']
},
series:[
{
type:'pie',
selectedMode: 'single',
radius:[0,'70%'],
data:[
{
value:gMonthData[0].num,
name:'回收',
itemStyle:{
normal:{
color:'rgb(149,149,149)'
}
}
},
{
value:gMonthData[1].num,
name:'保养',
itemStyle:{
normal:{
color:'rgb(0,192,239)'
}
}
},
{
value:gMonthData[2].num,
name:'安装',
itemStyle:{
normal:{
color:'rgb(62,98,121)'
}
}
},
{
value:gMonthData[3].num,
name:'租赁',
itemStyle:{
normal:{
color:'rgb(234,162,41)'
}
}
},
{
value:gMonthData[4].num,
name:'维修',
itemStyle:{
normal:{
color:'rgb(145,199,174)'
}
}
},
{
value:gMonthData[5].num,
name:'配送',
itemStyle:{
normal:{
color:'rgb(212,130,101)'
}
}
}
]
}
]
});
})();
看到结尾那一堆括号都懵逼了有没有,嵌套够深的,一会儿数组一会儿对象,这个难度不大,但是需要细心、耐心和良好的编程习惯。插件提供的功能还有很多,需要什么功能多去看看相关案例
eChart学习笔记的更多相关文章
- Webpack4 学习笔记四 暴露全局变量、externals
前言 此内容是个人学习笔记,以便日后翻阅.非教程,如有错误还请指出 webpack 暴露全局变量 通过 expose-loader 内联配置 在 webpack中配置 每个模块通过注入的方式 通过CD ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
- seaJs学习笔记2 – seaJs组建库的使用
原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...
- CSS学习笔记
CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...
- HTML学习笔记
HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...
随机推荐
- .net之抽象工厂模式
//抽象工厂 //抽象食物 namespace abstractFactory{ public abstract class food { public abstract void Food(); } ...
- 为linux系统实现回收站
在linux系统中,经常采用"rm *"或"rm -r *"操作删除一下文件,但是有时某些文件并不是我们想要删除的,但是已经被删除.很多时候都是悲剧的,数据是难 ...
- .Net Core Session使用
Sessiong 添加程序集 Microsoft.AspNetCore.Session 在Startup.cs 的 ConfigureServices中添加Session中间件设置 // sessio ...
- 蓝桥杯-无穷分数-java
/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 * All rights reserved. * 文件名称: ...
- webService 下得 拦截
当我们 对webservice 接口的 拦截 更具权限 来 判断 是否可以调用 一下是我的 一个demo 首先 我们写一个 拦截类 import javax.xml.soap.SOAPExcept ...
- hust1010 kmp
There is a string A. The length of A is less than 1,000,000. I rewrite it again and again. Then I go ...
- hibernate的映射关系之一对多
关系:事物之间相互作用.相互联系的状态.范围最大. 联系:在关系数据库中表示实体与实体之间的联系,1:1,1:n,m:n. 关联:表示对象之间的关系,既有数量性,又有方向性:动词:将对象之间通过某种方 ...
- WebGIS开源解决方案之开发环境搭建(一)
工欲善其事,必先利其器,本文主要讲述WebGIS开源解决方案之环境搭建--geoserver的安装 安装方式一:tomcat环境下安装 从tomcat官网下载tomcat环境,下载链接:http:// ...
- java.util.prefs.Preferences
java.util.prefs.Preferences Preferences类是在JDK1.4中首次提供的,可以用它来存放应用程序的配置数据,这里对Preferences类做点介绍. 1.Prefe ...
- Python批量修改文件名与后缀
引言: 有时因为文件版本的更新,后缀名会发生变化,例如Word13的docx到Word16的doc,又例如我们想修改音频文件的后缀.一个一个修改后缀名往往很麻烦,于是我们便可以写一个Python的脚本 ...