zkwarrior

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 plaincopy
 
 
  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 plaincopy
 
 
  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>  


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

 

分类:

技术点:

相关文章:

  • 2021-08-26
  • 2021-09-13
  • 2021-05-26
  • 2022-12-23
  • 2021-07-20
  • 2021-12-22
  • 2021-08-05
  • 2021-10-03
猜你喜欢
  • 2021-11-07
  • 2022-12-23
  • 2022-12-23
  • 2021-11-07
  • 2021-12-28
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案