1. eCharts官网 http://echarts.baidu.com/index.html。
这是官网的简介:
ECharts,缩写来自Enterprise Charts,商业级数据图表,一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6/7/8/9/10/11,chrome,firefox,Safari等),底层依赖轻量级的Canvas类库ZRender,提供直观,生动,可交互,可高度个性化定制的数据可视化图表。创新的拖拽重计算、数据视图、值域漫游等特性大大增强了用户体验,赋予了用户对数据进行挖掘、整合的能力。
支持折线图(区域图)、柱状图(条状图)、散点图(气泡图)、K线图、饼图(环形图)、雷达图(填充雷达图)、和弦图、力导向布局图、地图、仪表盘、漏斗图等11类图表,同时提供标题,详情气泡、图例、值域、数据区域、时间轴、工具箱等7个可交互组件,支持多图表、组件的联动和混搭展现。
首先,由于eCharts底层依赖轻量级的Canvas类库ZRender,所以我们必须下载ZRender文件,地址:http://ecomfe.github.io/zrender/
然后,我们需要下载echarts-2.0.2,这是我们通过eCharts进行前端图表开发所必需的。如下图红框圈起的部分,是我在练习eCharts图表展现所引入的目录:
2. 简单图表的开发
在html页面引入esl.js文件:
[html] view plaincopy
- <script type="text/javascript" src="./js/echarts-2.0.2/src/esl.js"></script>
下面的html代码段是要展示图表的部分:
<div id="myChart" style="height: 400px; width:800px; border: 1px solid #ccc; padding: 10px;"></div>
必须设置这个div的高度和宽度来指定图表所展示的大小,不然是看不到图表的。
紧接着,就是最关键的js部分:
[javascript] view plaincopy
- <script type="text/javascript">
- /*
- * 按需加载
- * 引入echart.js依赖的zrender.js, 再引入echart.js
- */
- require.config({
- packages: [
- {
- name: 'zrender',
- location: './js/zrender-2.0.2/src', // zrender与echarts在同一级目录
- main: 'zrender'
- },
- {
- name: 'echarts',
- location: './js/echarts-2.0.2/src',
- main: 'echarts'
- }
- ]
- });
- /***/
- var option = {
- title : {
- text: '未来一周气温变化',
- subtext: '测试数据'
- },
- tooltip : {
- trigger: 'axis'//item axis
- },
- legend: {
- data:['最高气温','最低气温']
- },
- toolbox: {
- show : true,
- feature : {
- mark : {show: true},
- dataView : {show: true, readOnly: false},
- magicType : {show: true, type: ['line', 'bar']},
- restore : {show: true},
- saveAsImage : {show: true}
- }
- },
- calculable : true,
- xAxis : [
- {
- type : 'category',
- boundaryGap : false,
- data : ['周一','周二','周三','周四','周五','周六','周日']
- }
- ],
- yAxis : [
- {
- type : 'value',
- axisLabel : {
- formatter: '{value} °C'
- },
- splitNumber:10
- }
- ],
- series : [
- {
- name:'最高气温',
- type:'line',
- data:[11, 11, 15, 13, 12, 13, 10],
- markPoint : {
- data : [
- {type : 'max', name: '最大值'},
- {type : 'min', name: '最小值'}
- ]
- },
- markLine : {
- data : [
- {type : 'average', name: '平均值'}
- ]
- }
- },
- {
- name:'最低气温',
- type:'line',
- data:[1, -2, 2, 5, 3, 2, 0],
- markPoint : {
- data : [
- {name : '周最低', value : -2, xAxis: 1, yAxis: -1.5}
- ]
- },
- markLine : {
- data : [
- {type : 'average', name : '平均值'}
- ]
- }
- }
- ]
- };
- /*
- *按需加载
- */
- require(
- [
- 'echarts',
- 'echarts/chart/line',
- 'echarts/chart/bar'
- ],
- //渲染ECharts图表
- function DrawEChart(ec) {
- //图表渲染的容器对象
- var chartContainer = document.getElementById("myChart");
- //加载图表
- var myChart = ec.init(chartContainer);
- myChart.setOption(option);
- }
- );
- </script>
然后发布应用,输入访问路径,进行访问,效果如下图: