ECharts图表是基于Canvas,纯Javascript图表库,基于BSD开源协议,官网地址:http://echarts.baidu.com/index.html

需要先下载插件:https://github.com/ecomfe/echarts/archive/1.4.1.zip

1. 首先需要在文件中引入JS库,可以使用百度的CDN

<script src="http://s1.bdstatic.com/r/www/cache/ecom/esl/1-6-10/esl.js"></script>

2. 之后创建一个用于显示图表的DIV

<div id="pie" style="height:400px"></div>

<div id="bar" style="height:400px"></div>

3. 配置加载的图表类型及路径

<script type="text/javascript">
// 路径配置
require.config({
paths:{
'echarts' : 'http://echarts.baidu.com/build/echarts',
'echarts/chart/bar' : 'http://echarts.baidu.com/build/echarts',
'echarts/chart/pie' : 'http://echarts.baidu.com/build/echarts'
}
});
</script>

4. 配置图表数据

optionpie = {
  title: {
    text: '2014年04月客户总满意度比例图',subtext: '测试人员',x: 'center'
  },
  tooltip: {
    trigger: 'item',
    formatter: "{a}<br/>{b} : {c} ({d}%)"
  },
  legend: {
    orient: 'vertical',
    x: 'left',
    data: ['满意', '不满意']
  },
  toolbox: {
    show: true,
    feature: {
      restore: true,
      saveAsImage: true
    }
  },
  calculable: true,
  series: [
  {
    name: '总满意度百分比',
    type: 'pie',
    radius: '55%',
    center: ['50%', 225],
    data: [
    { value: 100, name: '满意' },
    { value: 16, name: '不满意'}
  ]
  }
  ]
}; option = {
  title: {
    text: '2014年04月客户满意度分布图',subtext: '测试人员',x: 'left'
  },
  tooltip: {
    trigger: 'axis',
    formatter: "{b}<br/>{a0} : {c0}<br/>{a1} : {c1}"
  },
  legend: {
    x: 'right',
    padding: [5,70,5,5],
    data: ['满意', '不满意']
  },
  toolbox: {
    show: true,
    feature: {
      restore: true,
      saveAsImage: true
    }
  },
  calculable: true,
  xAxis: [
  {
    type: 'category',
    data: ['客服人员满意度', '维修人员满意度', '售后人员满意度']
  }
  ],
  yAxis: [
  {
    type: 'value',
    splitArea: { show: true }
  }
  ],
  series: [
  {
    name: '满意',
    type: 'bar',
    radius: '55%',
    center: ['50%', 225],
    data: [10, 5, 8]},
  {
    name: '不满意',
    type: 'bar',
    radius: '55%',
    center: ['50%', 225],
    data: [2, 4, 6]}
  ]
};

5. 将数据显示在图表中

require(
[
  'echarts',
  'echarts/chart/pie',
  'echarts/chart/bar'
],
function (ec) {
  //饼状图
  var pieChart = ec.init(document.getElementById('pie'));
  pieChart.setOption(optionpie);
  
  //柱状图
  var myChart = ec.init(document.getElementById('bar'));
  myChart.setOption(option);
}
)

通过以上即可完成图表的配置,这里附上完整的代码

 <!DOCTYPE html>
<head>
<meta charset="utf-8">
<title>Demo</title>
<!-- 来自百度CDN -->
<script src="http://s1.bdstatic.com/r/www/cache/ecom/esl/1-6-10/esl.js"></script>
</head>
<body>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<div id="pie" style="height:400px"></div> <div id="bar" style="height:400px"></div>
<script type="text/javascript">
// 路径配置
require.config({
paths:{
'echarts' : 'http://echarts.baidu.com/build/echarts',
'echarts/chart/bar' : 'http://echarts.baidu.com/build/echarts',
'echarts/chart/pie' : 'http://echarts.baidu.com/build/echarts'
}
}); optionpie = {
title: {
text: '2014年04月客户总满意度比例图',subtext: '测试人员',x: 'center'
},
tooltip: {
trigger: 'item',
formatter: "{a}<br/>{b} : {c} ({d}%)"
},
legend: {
orient: 'vertical',
x: 'left',
data: ['满意', '不满意']
},
toolbox: {
show: true,
feature: {
restore: true,
saveAsImage: true
}
},
calculable: true,
series: [
{
name: '总满意度百分比',
type: 'pie',
radius: '55%',
center: ['50%', 225],
data: [
{ value: 100, name: '满意' },
{ value: 16, name: '不满意'}
]
}
]
};
option = {
title: {
text: '2014年04月客户满意度分布图',subtext: '测试人员',x: 'left'
},
tooltip: {
trigger: 'axis',
formatter: "{b}<br/>{a0} : {c0}<br/>{a1} : {c1}"
},
legend: {
x: 'right',
padding: [5,70,5,5],
data: ['满意', '不满意']
},
toolbox: {
show: true,
feature: {
restore: true,
saveAsImage: true
}
},
calculable: true,
xAxis: [
{
type: 'category',
data: ['客服人员满意度', '维修人员满意度', '售后人员满意度']
}
],
yAxis: [
{
type: 'value',
splitArea: { show: true }
}
],
series: [
{
name: '满意',
type: 'bar',
radius: '55%',
center: ['50%', 225],
data: [10, 5, 8]},
{
name: '不满意',
type: 'bar',
radius: '55%',
center: ['50%', 225],
data: [2, 4, 6]}
]
};
require(
[
'echarts',
'echarts/chart/pie',
'echarts/chart/bar'
],
function (ec) {
var pieChart = ec.init(document.getElementById('pie'));
pieChart.setOption(optionpie);
var myChart = ec.init(document.getElementById('bar'));
myChart.setOption(option);
}
)
</script>
</body>

完整代码复制到html中可以直接运行

完整的API可以参考官网:http://echarts.baidu.com/doc/doc.html

  

ECharts开源图表使用方法简单介绍的更多相关文章

  1. InputStreamReader 和 OutputStreamWriter类使用方法简单介绍,及演示。

    InputStreamReader 和 OutputStreamWriter类使用方法简单介绍. 一.InputStreamReader类 InputStreamReader 将字节流转换为字符流.是 ...

  2. 基于SIP和RTP协议的开源VOIP之QuteCom简单介绍

    **************************************************************************************************** ...

  3. Android Mediaplayer各种属性和方法简单介绍

    主要涉及类:MediaPlayer (1) 当一个MediaPlayer对象被创建或者调用reset()方法之后,它处于空闲状态,调用release()方法后处于结束状态 1,一个MediaPlaye ...

  4. eclipse IDE使用git方法简单介绍

    eclipse下使用git插件上传代码至github 1.eclipse下安装git eclipse  git 插件的安装. 点击 Help->Install New Software-> ...

  5. awk基本使用方法简单介绍

    之前说过sed, 今天来说awk, 它也是一个文本处理器. 是linux下的一个命令, 比sed更强大. 搞linux开发, 尤其是后台开发, 这个命令差点儿必需要用到. awk这三个字母分别代表其三 ...

  6. java类中的static成员变量和static方法简单介绍,持续补充

    一.静态成员变量 1.属于整个类而不是某个对象实例,所以可以直接通过类名和对象名去调用. 2.静态成员属于整个类,当系统第一次使用该类时,就会为其分配内存空间直到该类被卸载才会进行资源回收 二.静态方 ...

  7. python 子进程 subpocess 的使用方法简单介绍

    python的子进程嘛,就是利用python打开一个子进程(当然像是一句废话),但是可能和我们理解的不太一样. 一:如何理解? 我们可能的理解:多开一个进程运行某个python函数(如果只想实现这个功 ...

  8. Python Appium 元素定位方法简单介绍

    Python  Appium  元素定位 常用的八种定位方法(与selenium通用) # id定位 driver.find_element_by_id() # name定位 driver.find_ ...

  9. java 多线程 start方法 run方法 简单介绍。

    一 start开启一个多线程, run 只是一个内部的方法. package com.aaa.threaddemo; /* * start方法的作用? * 在 Java中启动多线程调用的是start方 ...

随机推荐

  1. Python自动化运维之7、生成器、迭代器、列表解析、迭代器表达式

    迭代器和生成器 1.迭代器 迭代器是访问集合元素的一种方式.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退,不过这也没什么,因为人们很少在迭代途中往后退.另外 ...

  2. Python Socket Programming

    本文介绍使用Python进行Socket网络编程,假设读者已经具备了基本的网络编程知识和Python的基本语法知识,本文中的代码如果没有说明则都是运行在Python 3.4下. Python的sock ...

  3. Android 检查是否安装SD卡

    /** * 检查是否安装SD卡 * @return */ public static boolean checkSaveLocationExists() { String sDCardStatus = ...

  4. Entity Framewor 学习笔记 (Enum)

    EF 6 支持Enum 的处理 首先说一下 mysql 和 sql server 的区别 mysql 是有 Enum 这个类型的 , insert 时是放入 int , 出来的时候它会是 string ...

  5. 设计模式(七):Adapter 适配器模式 -- 结构型模式

    1. 概述: 接口的改变,是一个需要程序员们必须(虽然很不情愿)接受和处理的普遍问题.程序提供者们修改他们的代码;系统库被修正;各种程序语言以及相关库的发展和进化.  例子1:iphone4,你即可以 ...

  6. App项目升级Xcode7&iOS9(续) - This bundle is invalid. The bundle identifier contains disallowed characters

    金田 iOS 9发布已经有2月有余,现在Xcode已经有升级到Xcode7.1,开发环境安装等一系列相关的流程,以及Xcode 7 & iOS 9升级相关的一些部分,在这里就不再多加赘述(详见 ...

  7. Android ViewPager实现软件的第一次加载的滑动效果

    public class MainActivity extends Activity { private ViewPager viewPager; private List<View> V ...

  8. 护肤品总结 Skin Care (2)

    接护肤品总结(1) 面膜篇 个人不太喜欢片状面膜,所以用膏状面膜比较多. 1. Origins Drink Up-Intensive Overnight Mask 悦木之源补水睡眠面膜 牛油果油油的质 ...

  9. Spring的StringUtils工具类

    本文是转载文章,感觉比较好,如有侵权,请联系本人,我将及时删除. 原文网址:<Spring的StringUtils工具类> org.springframework.util.StringU ...

  10. SOFTWARE_INTRODUCE_01

    &amp;amp;amp;amp;lt;br data-mce-bogus="1"&amp;amp;amp;amp;gt;&amp;amp;amp;amp; ...