eCharts使用图表简单示例

https://blog.csdn.net/hlbt0112/article/details/48862427

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 plain copy
 
 
  1. <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 plain copy
 
 
  1. <script type="text/javascript">  
  2.             /* 
  3.             * 按需加载 
  4.             * 引入echart.js依赖的zrender.js, 再引入echart.js 
  5.             */  
  6.             require.config({  
  7.                 packages: [  
  8.                     {  
  9.                         name: 'zrender',  
  10.                         location: './js/zrender-2.0.2/src', // zrender与echarts在同一级目录  
  11.                         main: 'zrender'  
  12.                     },  
  13.                     {  
  14.                         name: 'echarts',  
  15.                         location: './js/echarts-2.0.2/src',  
  16.                         main: 'echarts'  
  17.                     }  
  18.                 ]  
  19.             });  
  20.           
  21.         /***/  
  22.         var option = {  
  23.                 title : {  
  24.                     text: '未来一周气温变化',  
  25.                     subtext: '测试数据'  
  26.                 },  
  27.                 tooltip : {  
  28.                     trigger: 'axis'//item  axis  
  29.                 },  
  30.                 legend: {  
  31.                     data:['最高气温','最低气温']  
  32.                 },  
  33.                 toolbox: {  
  34.                     show : true,  
  35.                     feature : {  
  36.                         mark : {show: true},  
  37.                         dataView : {show: true, readOnly: false},  
  38.                         magicType : {show: true, type: ['line', 'bar']},  
  39.                         restore : {show: true},  
  40.                         saveAsImage : {show: true}  
  41.                     }  
  42.                 },  
  43.                 calculable : true,  
  44.                 xAxis : [  
  45.                     {  
  46.                         type : 'category',  
  47.                         boundaryGap : false,  
  48.                         data : ['周一','周二','周三','周四','周五','周六','周日']  
  49.                     }  
  50.                 ],  
  51.                 yAxis : [  
  52.                     {  
  53.                         type : 'value',  
  54.                         axisLabel : {  
  55.                             formatter: '{value} °C'  
  56.                         },  
  57.                         splitNumber:10  
  58.                     }  
  59.                 ],  
  60.                 series : [  
  61.                     {  
  62.                         name:'最高气温',  
  63.                         type:'line',  
  64.                         data:[11, 11, 15, 13, 12, 13, 10],  
  65.                         markPoint : {  
  66.                             data : [  
  67.                                 {type : 'max', name: '最大值'},  
  68.                                 {type : 'min', name: '最小值'}  
  69.                             ]  
  70.                         },  
  71.                         markLine : {  
  72.                             data : [  
  73.                                 {type : 'average', name: '平均值'}  
  74.                             ]  
  75.                         }  
  76.                     },  
  77.                     {  
  78.                         name:'最低气温',  
  79.                         type:'line',  
  80.                         data:[1, -2, 2, 5, 3, 2, 0],  
  81.                         markPoint : {  
  82.                             data : [  
  83.                                 {name : '周最低', value : -2, xAxis: 1, yAxis: -1.5}  
  84.                             ]  
  85.                         },  
  86.                         markLine : {  
  87.                             data : [  
  88.                                 {type : 'average', name : '平均值'}  
  89.                             ]  
  90.                         }  
  91.                     }  
  92.                 ]  
  93.             };  
  94.               
  95.               
  96.             /* 
  97.             *按需加载 
  98.             */  
  99.             require(  
  100.                 [  
  101.                     'echarts',  
  102.                     'echarts/chart/line',  
  103.                     'echarts/chart/bar'  
  104.                 ],  
  105.                 //渲染ECharts图表  
  106.                 function DrawEChart(ec) {  
  107.                     //图表渲染的容器对象  
  108.                     var chartContainer = document.getElementById("myChart");  
  109.                     //加载图表  
  110.                     var myChart = ec.init(chartContainer);  
  111.                     myChart.setOption(option);  
  112.                 }  
  113.             );  
  114.         </script>  


然后发布应用,输入访问路径,进行访问,效果如下图:

猜你喜欢

转载自www.cnblogs.com/zkwarrior/p/9083483.html