一、简介:

1、绘制数据图表,有了它,想要网页上绘制个折线图、柱状图,从此easy。

2、使用这个百度的echarts.js插件,是通过把图片绘制在canvas上在显示在页面上。

官网对echarts的简介:

ECharts,缩写来自Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6/7/8/9/10/11,chrome,firefox,Safari等),底层依赖轻量级的Canvas类库ZRender,提供直观,生动,可交互,可高度个性化定制的数据可视化图表。创新的拖拽重计算、数据视图、值域漫游等特性大大增强了用户体验,赋予了用户对数据进行挖掘、整合的能力。

支持折线图(区域图)、柱状图(条状图)、散点图(气泡图)、K线图、饼图(环形图)、雷达图(填充雷达图)、和弦图、力导向布局图、地图、仪表盘、漏斗图、事件河流图等12类图表,同时提供标题,详情气泡、图例、值域、数据区域、时间轴、工具箱等7个可交互组件,支持多图表、组件的联动和混搭展现。

二、两种引入文件的方式

echarts插件下载地址:

http://echarts.baidu.com/build/echarts-2.2.0.zip

https://codeload.github.com/ecomfe/echarts/zip/2.2.0

1、标签是单文件引入

<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>ECharts</title>
</head>
<body>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<div id="main" style="height:400px"></div>
<!-- ECharts单文件引入 -->
<script src="http://echarts.baidu.com/build/dist/echarts-all.js"></script>
<script type="text/javascript">
// 基于准备好的dom,初始化echarts图表
var myChart = echarts.init(document.getElementById('main')); var option = {
tooltip: {
show: true
},
legend: {
data:['销量']
},
xAxis : [
{
type : 'category',
data : ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
}
],
yAxis : [
{
type : 'value'
}
],
series : [
{
"name":"销量",
"type":"bar",
"data":[, , , , , ]
}
]
}; // 为echarts对象加载数据
myChart.setOption(option);
</script>
</body>

2、模块化单文件引入

<!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>ECharts</title>
</head>
<body>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<div id="main" style="height:400px"></div>
<!-- ECharts单文件引入 -->
<script src="js/dist/echarts.js"></script>
<script type="text/javascript">
// 路径配置
require.config({
paths: {
echarts: 'js/dist'
}
}); // 使用
require(
[
'echarts',
'echarts/chart/map' // 使用柱状图就加载bar模块,按需加载
],
function (ec) {
// 基于准备好的dom,初始化echarts图表
var myChart = ec.init(document.getElementById('main'));
option = {
tooltip : {
trigger: 'item',
formatter: '{b}'
},
series : [
{
name: '中国',
type: 'map',
mapType: 'china',
selectedMode : 'multiple',
itemStyle:{
normal:{label:{show:true}},
emphasis:{label:{show:true}}
},
data:[
{name:'广东',selected:true}
]
}
]
};
var ecConfig = require('echarts/config');
myChart.on(ecConfig.EVENT.MAP_SELECTED, function (param){
var selected = param.selected;
var str = '当前选择: ';
for (var p in selected) {
if (selected[p]) {
str += p + ' ';
}
}
document.getElementById('wrong-message').innerHTML = str;
}) /*var option = {
tooltip: {
show: true
},
legend: {
data:['销量']
},
xAxis : [
{
type : 'category',
data : ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
}
],
yAxis : [
{
type : 'value'
}
],
series : [
{
"name":"销量",
"type":"bar",
"data":[5, 20, 40, 10, 10, 20]
}
]
};*/ // 为echarts对象加载数据
myChart.setOption(option);
}
);
</script>
</body>

方法二的效果图就是全国地图的效果,点击当前省份,背景颜色切换为黄色,如下:

我的文件目录是这样的:

so,在配置时,记得配置好路径!!!!

关于这两种引入方式,

1、肯定的,如果是用标签式的引入,就跟我们使用jquery的时候一样,在使用之前先引入jquery类库。然后就开始用了。

2、标签式引入,是引入了整个echarts这个插件,总共大小是899KB,压缩后的jquery大小才有90.9KB,~~~~(>_<)~~~~ 。这个插件实在大!!

3、模块化单文件引入,这是引入方式是一个基础js+你想要的那个模块,比如echarts.js+map.js,一个基础js的大小是341KB,一个模块是最小是k.js,5.15KB,最大模块是map.js,437KB,如果项目里要绘制的图不是很多种,使用模块化更节约资源。

三、笔记

标签式引入文件的步骤:
1、初始化echarts对象
var myChart = echarts.init(document.getElementById('main')); 
2、做好配置option
option={

}
3、加载数据到echarts对象
myChart.setOption(option)

===========================================================

关于几个常用到的参数:
title:
标题,在左上方
ps:跟subtext都可以通过x:参数进行更改

subtext:
副标题,在标题下方

legen:
图例,在头部的中间

boundaryGap:true
类目起始和结束两端空白策略

type:line:
图的类型,折线图
series:[{type:line}]

tooltip:
鼠标悬浮时的提示框
tooltip:{trigger:'axis'}

toolbox:
工具箱,在右上方,可不要

calculable : true:
拖拽重计算,就是这个柱形可以用鼠标拖动。

xAxis:
设置横坐标

yAxis:
设置纵坐标

series:
最重要,生成图表内容的。

markPoint:
绘制点,包括最大小值,以及转折点

markLine:
绘制直线,平均值线

splitLine : false
分割线

grid:设置网格
grid : {
borderWidth : 0, /* 两边的border=0 */
x :'55px', /* 通过修改xy x2 y2更改折线图的大小 */
y : '25px',
x2 : '20px',
y2 : '20px',
},

trigger:item/axis /* 触发提示框显示的样式 */
tooltip : {
trigger: 'item'
},

itemStyle:  /* 要设置拐点的图案跟颜色也是在这里设置,line跟圈圈的颜色就直接设置color */
itemStyle: {
normal: {
color : '#03a1e8',
lineStyle: {
borderColor : '#03a1e8'
},
label : { // 显示此刻数据
show: true,
textStyle : {
color : '#555',
fontSize : '12'
}
},
},
}
================================================

Last,API文档里面有好多参数,我个人比较喜欢阅读里面说明参数的图解,看起来更加简单明了,印象深刻。例如这图:

一看就知道要如何去掉标尺设置axisTick参数,要去除横竖的线是设置对应的x、y轴上得splitLine参数。


可设置参数甚多,阅读API文档是最好的idea~

百度推出的echarts,制表折线图柱状图饼图等的超级工具(转)的更多相关文章

  1. OpenGL——折线图柱状图饼图绘制

    折线图绘制代码: #include<iostream> //旧版本 固定管线 #include<Windows.h> #include <GL/glut.h> // ...

  2. G2 基本使用 折线图 柱状图 饼图 基本配置

    G2的基本使用 1.浏览器引入  <!-- 引入在线资源 --> <script src="https://gw.alipayobjects.com/os/lib/antv ...

  3. 数据可视化(Echart) :柱状图、折线图、饼图等六种基本图表的特点及适用场合

    数据可视化(Echart) 柱状图.折线图.饼图等六种基本图表的特点及适用场合 参考网址 效果图 源码 <!DOCTYPE html> <html> <head> ...

  4. v-charts 绘制柱状图、条形图、水球图、雷达图、折线图+柱状图,附官网地址

    v-charts 官网地址:https://v-charts.js.org/#/ 柱状图: <template> <ve-histogram :data="chartDat ...

  5. ChartControl 折线图 柱状图

    添加折线图(柱状图) 拖动ChartControl到Form上 在Series Collection中添加Line(或Bar) DevExpress.XtraCharts.Series series1 ...

  6. 安卓图表引擎AChartEngine(三) - 示例源码折线图、饼图和柱状图

    折线图: package org.achartengine.chartdemo.demo.chart; import java.util.ArrayList; import java.util.Lis ...

  7. JavaScript数据可视化编程学习(一)Flotr2,包含简单的,柱状图,折线图,饼图,散点图

    一.基础柱状图 二.基础的折线图 三.基础的饼图 四.基础的散点图 一.基础柱状图 如果你还没有想好你的数据用什么类型的图表来展示你的数据,你应该首先考虑是否可以做成柱状图.柱状图可以表示数据的变化过 ...

  8. HighCharts之2D柱状图、折线图和饼图的组合图

    HighCharts之2D柱状图.折线图和饼图的组合图 1.实例源码 ColumnLinePie.html: <!DOCTYPE html> <html> <head&g ...

  9. 利用pandas读取Excel表格,用matplotlib.pyplot绘制直方图、折线图、饼图

    利用pandas读取Excel表格,用matplotlib.pyplot绘制直方图.折线图.饼图 数据: 折线图代码: import  pandas  as pdimport  matplotlib. ...

随机推荐

  1. 2013/11/22工作随笔-缓存是放在Model层还是放在Controller层

    web网站的典型代码框架就是MVC架构,Model层负责数据获取,Controller层负责逻辑控制,View层则负责展示. 一般数据获取是去mysql中获取数据 但是这里有个问题,我们不会每次请求都 ...

  2. [Solution] 一步一步WCF(1) 快速入门

    Windows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架,可以翻译为Windows 通讯开发平台.整合了原有的windows通讯的 .n ...

  3. 6/14 sprint2 看板和燃尽图的更新

    看板: 燃尽图: 例会照: 总结:因为最近刚好碰上端午假期,再加上程序出了点问题,所以导致进度有点慢, 但是我们还是很努力地在找资料把问题给解决了,虽然完成的情况有点不如人意, 但是我们付出的努力还是 ...

  4. Struts 2常用的Ajax标签

    Struts 2对Ajax的支持 •Struts 2对Ajax提供了很好的支持 –Struts 2.1提供了基于Dojo的Ajax标签,对Ajax操作进行了进步封装,可以更快捷容易的使用Ajax   ...

  5. OpenProcess打开进程返回错误的问题

    问题描述 项目中需要做一个小功能:能够查看系统中当前正在运行的进程的内存信息,如内存块类型.分配状态.访问权限等.如下图所示: 需要的信息和上图相差无几.说起来也不算太难,毕竟现成的API已经提供了. ...

  6. VisualStudio代码调试输出跟踪

    class EFIntercepterLogging : DbCommandInterceptor { private readonly Stopwatch _stopwatch = new Stop ...

  7. jython 2.7 b3发布

    Jython 2.7b3 Bugs Fixed - [ 2108 ] Cannot set attribute to instances of AST/PythonTree (blocks pyfla ...

  8. 小白学Linux(二)--命令行基本操作

    安装完Ubuntu后,进入系统,呈现在眼前的是Ubuntu的界面,跟windows的差不太多.一般操作系统包含GUI和CLI.GUI就是我们现在看到的,也是windows常用的直接用拖拽,点击等操作对 ...

  9. Java与线程

    导语 我们知道,new一个thread,调用它的start的方法,就可以创建一个线程,并且启动该线程,然后执行该线程需要执行的业务逻辑, 那么run方法是怎么被执行的呢? Java线程和os线程 os ...

  10. php学习笔记:利用gd库生成图片,并实现随机验证码

    说明:一些基本的代码我都进行了注释,这里实现的验证码位数.需要用的字符串都可以再设置.有我的注释,大家应该很容易能看得懂. 基本思路: 1.用mt_rand()随机生成数字确定需要获取的字符串,对字符 ...