记录一下ECharts时间轴的使用,首先是照着官方的示例做一遍,在这里不要忘了引入timelineOption.js,后面介绍如何动态创建时间轴的记录数,即根据需求可伸缩显示有多少天或者年月等轴标记数。

官网demo:

[html] view plaincopy
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
  5. <title>a</title>
  6. <style>
  7. body{background-color:#000000}
  8. </style>
  9. </head>
  10. <body>
  11. <div id="main" style="height:500px;width: 100%; margin-left: 0px;float: left;"></div>
  12. <!--    本地引入ECharts,'js/dist/'本地文件路径下 -->
  13. <script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
  14. <script src="http://echarts.baidu.com/doc/example/timelineOption.js"></script>
  15. <script type="text/javascript">
  16. //        路径配置,'./js/dist'本地文件路径
  17. require.config({
  18. paths: {
  19. echarts: 'http://echarts.baidu.com/build/dist'
  20. }
  21. });
  22. require(
  23. [
  24. 'echarts',
  25. 'echarts/chart/line',   // 按需加载所需图表,如需动态类型切换功能,别忘了同时加载相应图表
  26. 'echarts/chart/bar'
  27. ],
  28. function (ec) {
  29. var myChart = ec.init(document.getElementById('main'));
  30. option = {
  31. timeline:{
  32. data:[
  33. '2002-01-01','2003-01-01','2004-01-01','2005-01-01','2006-01-01',
  34. '2007-01-01','2008-01-01','2009-01-01','2010-01-01','2011-01-01'
  35. ],
  36. label : {
  37. formatter : function(s) {
  38. return s.slice(0, 4);
  39. }
  40. },
  41. autoPlay : true,
  42. playInterval : 1000
  43. },
  44. options:[
  45. {
  46. title : {
  47. 'text':'2002全国宏观经济指标',
  48. 'subtext':'数据来自国家统计局'
  49. },
  50. tooltip : {'trigger':'axis'},
  51. legend : {
  52. x:'right',
  53. 'data':['GDP','金融','房地产','第一产业','第二产业','第三产业'],
  54. 'selected':{
  55. 'GDP':true,
  56. '金融':false,
  57. '房地产':true,
  58. '第一产业':false,
  59. '第二产业':false,
  60. '第三产业':false
  61. }
  62. },
  63. toolbox : {
  64. 'show':true,
  65. orient : 'vertical',
  66. x: 'right',
  67. y: 'center',
  68. 'feature':{
  69. 'mark':{'show':true},
  70. 'dataView':{'show':true,'readOnly':false},
  71. 'magicType':{'show':true,'type':['line','bar','stack','tiled']},
  72. 'restore':{'show':true},
  73. 'saveAsImage':{'show':true}
  74. }
  75. },
  76. calculable : true,
  77. grid : {'y':80,'y2':100},
  78. xAxis : [{
  79. 'type':'category',
  80. 'axisLabel':{'interval':0},
  81. 'data':[
  82. '北京','\n天津','河北','\n山西','内蒙古','\n辽宁','吉林','\n黑龙江',
  83. '上海','\n江苏','浙江','\n安徽','福建','\n江西','山东','\n河南',
  84. '湖北','\n湖南','广东','\n广西','海南','\n重庆','四川','\n贵州',
  85. '云南','\n西藏','陕西','\n甘肃','青海','\n宁夏','新疆'
  86. ]
  87. }],
  88. yAxis : [
  89. {
  90. 'type':'value',
  91. 'name':'GDP(亿元)',
  92. 'max':53500
  93. },
  94. {
  95. 'type':'value',
  96. 'name':'其他(亿元)'
  97. }
  98. ],
  99. series : [
  100. {
  101. 'name':'GDP',
  102. 'type':'bar',
  103. 'markLine':{
  104. symbol : ['arrow','none'],
  105. symbolSize : [4, 2],
  106. itemStyle : {
  107. normal: {
  108. lineStyle: {color:'orange'},
  109. barBorderColor:'orange',
  110. label:{
  111. position:'left',
  112. formatter:function(params){
  113. return Math.round(params.value);
  114. },
  115. textStyle:{color:'orange'}
  116. }
  117. }
  118. },
  119. 'data':[{'type':'average','name':'平均值'}]
  120. },
  121. 'data': dataMap.dataGDP['2002']
  122. },
  123. {
  124. 'name':'金融','yAxisIndex':1,'type':'bar',
  125. 'data': dataMap.dataFinancial['2002']
  126. },
  127. {
  128. 'name':'房地产','yAxisIndex':1,'type':'bar',
  129. 'data': dataMap.dataEstate['2002']
  130. },
  131. {
  132. 'name':'第一产业','yAxisIndex':1,'type':'bar',
  133. 'data': dataMap.dataPI['2002']
  134. },
  135. {
  136. 'name':'第二产业','yAxisIndex':1,'type':'bar',
  137. 'data': dataMap.dataSI['2002']
  138. },
  139. {
  140. 'name':'第三产业','yAxisIndex':1,'type':'bar',
  141. 'data': dataMap.dataTI['2002']
  142. }
  143. ]
  144. },
  145. {
  146. title : {'text':'2003全国宏观经济指标'},
  147. series : [
  148. {'data': dataMap.dataGDP['2003']},
  149. {'data': dataMap.dataFinancial['2003']},
  150. {'data': dataMap.dataEstate['2003']},
  151. {'data': dataMap.dataPI['2003']},
  152. {'data': dataMap.dataSI['2003']},
  153. {'data': dataMap.dataTI['2003']}
  154. ]
  155. },
  156. {
  157. title : {'text':'2004全国宏观经济指标'},
  158. series : [
  159. {'data': dataMap.dataGDP['2004']},
  160. {'data': dataMap.dataFinancial['2004']},
  161. {'data': dataMap.dataEstate['2004']},
  162. {'data': dataMap.dataPI['2004']},
  163. {'data': dataMap.dataSI['2004']},
  164. {'data': dataMap.dataTI['2004']}
  165. ]
  166. },
  167. {
  168. title : {'text':'2005全国宏观经济指标'},
  169. series : [
  170. {'data': dataMap.dataGDP['2005']},
  171. {'data': dataMap.dataFinancial['2005']},
  172. {'data': dataMap.dataEstate['2005']},
  173. {'data': dataMap.dataPI['2005']},
  174. {'data': dataMap.dataSI['2005']},
  175. {'data': dataMap.dataTI['2005']}
  176. ]
  177. },
  178. {
  179. title : {'text':'2006全国宏观经济指标'},
  180. series : [
  181. {'data': dataMap.dataGDP['2006']},
  182. {'data': dataMap.dataFinancial['2006']},
  183. {'data': dataMap.dataEstate['2006']},
  184. {'data': dataMap.dataPI['2006']},
  185. {'data': dataMap.dataSI['2006']},
  186. {'data': dataMap.dataTI['2006']}
  187. ]
  188. },
  189. {
  190. title : {'text':'2007全国宏观经济指标'},
  191. series : [
  192. {'data': dataMap.dataGDP['2007']},
  193. {'data': dataMap.dataFinancial['2007']},
  194. {'data': dataMap.dataEstate['2007']},
  195. {'data': dataMap.dataPI['2007']},
  196. {'data': dataMap.dataSI['2007']},
  197. {'data': dataMap.dataTI['2007']}
  198. ]
  199. },
  200. {
  201. title : {'text':'2008全国宏观经济指标'},
  202. series : [
  203. {'data': dataMap.dataGDP['2008']},
  204. {'data': dataMap.dataFinancial['2008']},
  205. {'data': dataMap.dataEstate['2008']},
  206. {'data': dataMap.dataPI['2008']},
  207. {'data': dataMap.dataSI['2008']},
  208. {'data': dataMap.dataTI['2008']}
  209. ]
  210. },
  211. {
  212. title : {'text':'2009全国宏观经济指标'},
  213. series : [
  214. {'data': dataMap.dataGDP['2009']},
  215. {'data': dataMap.dataFinancial['2009']},
  216. {'data': dataMap.dataEstate['2009']},
  217. {'data': dataMap.dataPI['2009']},
  218. {'data': dataMap.dataSI['2009']},
  219. {'data': dataMap.dataTI['2009']}
  220. ]
  221. },
  222. {
  223. title : {'text':'2010全国宏观经济指标'},
  224. series : [
  225. {'data': dataMap.dataGDP['2010']},
  226. {'data': dataMap.dataFinancial['2010']},
  227. {'data': dataMap.dataEstate['2010']},
  228. {'data': dataMap.dataPI['2010']},
  229. {'data': dataMap.dataSI['2010']},
  230. {'data': dataMap.dataTI['2010']}
  231. ]
  232. },
  233. {
  234. title : {'text':'2011全国宏观经济指标'},
  235. series : [
  236. {'data': dataMap.dataGDP['2011']},
  237. {'data': dataMap.dataFinancial['2011']},
  238. {'data': dataMap.dataEstate['2011']},
  239. {'data': dataMap.dataPI['2011']},
  240. {'data': dataMap.dataSI['2011']},
  241. {'data': dataMap.dataTI['2011']}
  242. ]
  243. }
  244. ]
  245. };
  246. myChart.setOption(option);
  247. }
  248. );
  249. </script>
  250. <?php
  251. ?>
  252. </body>
  253. </html>

以上为官方的静态数据写入方式,下面介绍根据需求动态添加数据方式:

[html] view plaincopy
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
  5. <title>a</title>
  6. <style>
  7. body{background-color:#000000}
  8. </style>
  9. </head>
  10. <body>
  11. <div id="main" style="height:500px;width: 100%; margin-left: 0px;float: left;"></div>
  12. <!--    本地引入ECharts,'js/dist/'本地文件路径下 -->
  13. <script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
  14. <script src="http://echarts.baidu.com/doc/example/timelineOption.js"></script>
  15. <script type="text/javascript">
  16. //        路径配置,'./js/dist'本地文件路径
  17. require.config({
  18. paths: {
  19. echarts: 'http://echarts.baidu.com/build/dist'
  20. }
  21. });
  22. require(
  23. [
  24. 'echarts',
  25. 'echarts/chart/line',   // 按需加载所需图表,如需动态类型切换功能,别忘了同时加载相应图表
  26. 'echarts/chart/bar'
  27. ],
  28. function (ec) {
  29. var myChart = ec.init(document.getElementById('main'));
  30. var text = '[{"NAME":"2002-01-01","VAL":"53"},{"NAME":"2003-01-01","VAL":"20"},{"NAME":"2004-01-01","VAL":"33"},{"NAME":"2005-01-01","VAL":"43"},{"NAME":"2006-01-01","VAL":"28"},{"NAME":"2007-01-01","VAL":"29"},{"NAME":"2008-01-01","VAL":"43"},{"NAME":"2009-01-01","VAL":"28"},{"NAME":"2010-01-01","VAL":"29"},{"NAME":"2011-01-01","VAL":"29"}]';
  31. var json = JSON.parse(text);
  32. option = {
  33. timeline:{
  34. data:(function(){
  35. var data=[];
  36. for(var i=0;i<json.length;i++){
  37. data.push(json[i].NAME);
  38. console.log(json[i].NAME);
  39. }
  40. return data;
  41. })(),
  42. label : {
  43. formatter : function(s) {
  44. return s.slice(0, 4);
  45. }
  46. },
  47. autoPlay : true,
  48. playInterval : 1000
  49. },
  50. options:(function(){
  51. var options=[];
  52. for(var i=0;i<json.length;i++){
  53. if(i==0){
  54. options.push({
  55. title : {
  56. 'text':'2002全国宏观经济指标',
  57. 'subtext':'数据来自国家统计局'
  58. },
  59. tooltip : {'trigger':'axis'},
  60. legend : {
  61. x:'right',
  62. 'data':['GDP','金融','房地产','第一产业','第二产业','第三产业'],
  63. 'selected':{
  64. 'GDP':true,
  65. '金融':false,
  66. '房地产':true,
  67. '第一产业':false,
  68. '第二产业':false,
  69. '第三产业':false
  70. }
  71. },
  72. toolbox : {
  73. 'show':true,
  74. orient : 'vertical',
  75. x: 'right',
  76. y: 'center',
  77. 'feature':{
  78. 'mark':{'show':true},
  79. 'dataView':{'show':true,'readOnly':false},
  80. 'magicType':{'show':true,'type':['line','bar','stack','tiled']},
  81. 'restore':{'show':true},
  82. 'saveAsImage':{'show':true}
  83. }
  84. },
  85. calculable : true,
  86. grid : {'y':80,'y2':100},
  87. xAxis : [{
  88. 'type':'category',
  89. 'axisLabel':{'interval':0},
  90. 'data':[
  91. '北京','\n天津','河北','\n山西','内蒙古','\n辽宁','吉林','\n黑龙江',
  92. '上海','\n江苏','浙江','\n安徽','福建','\n江西','山东','\n河南',
  93. '湖北','\n湖南','广东','\n广西','海南','\n重庆','四川','\n贵州',
  94. '云南','\n西藏','陕西','\n甘肃','青海','\n宁夏','新疆'
  95. ]
  96. }],
  97. yAxis : [
  98. {
  99. 'type':'value',
  100. 'name':'GDP(亿元)',
  101. 'max':53500
  102. },
  103. {
  104. 'type':'value',
  105. 'name':'其他(亿元)'
  106. }
  107. ],
  108. series : [
  109. {
  110. 'name':'GDP',
  111. 'type':'bar',
  112. 'markLine':{
  113. symbol : ['arrow','none'],
  114. symbolSize : [4, 2],
  115. itemStyle : {
  116. normal: {
  117. lineStyle: {color:'orange'},
  118. barBorderColor:'orange',
  119. label:{
  120. position:'left',
  121. formatter:function(params){
  122. return Math.round(params.value);
  123. },
  124. textStyle:{color:'orange'}
  125. }
  126. }
  127. },
  128. 'data':[{'type':'average','name':'平均值'}]
  129. },
  130. 'data': dataMap.dataGDP['2002']
  131. },
  132. {
  133. 'name':'金融','yAxisIndex':1,'type':'bar',
  134. 'data': dataMap.dataFinancial['2002']
  135. },
  136. {
  137. 'name':'房地产','yAxisIndex':1,'type':'bar',
  138. 'data': dataMap.dataEstate['2002']
  139. },
  140. {
  141. 'name':'第一产业','yAxisIndex':1,'type':'bar',
  142. 'data': dataMap.dataPI['2002']
  143. },
  144. {
  145. 'name':'第二产业','yAxisIndex':1,'type':'bar',
  146. 'data': dataMap.dataSI['2002']
  147. },
  148. {
  149. 'name':'第三产业','yAxisIndex':1,'type':'bar',
  150. 'data': dataMap.dataTI['2002']
  151. }
  152. ]
  153. });
  154. }else{
  155. var year = json[i].NAME.slice(0, 4);
  156. options.push({
  157. title : {'text':year+'全国宏观经济指标'},
  158. series : [
  159. {'data': dataMap.dataGDP[year]},
  160. {'data': dataMap.dataFinancial[year]},
  161. {'data': dataMap.dataEstate[year]},
  162. {'data': dataMap.dataPI[year]},
  163. {'data': dataMap.dataSI[year]},
  164. {'data': dataMap.dataTI[year]}
  165. ]
  166. });
  167. }
  168. }
  169. return options;
  170. })()
  171. };
  172. myChart.setOption(option);
  173. }
  174. );
  175. </script>
  176. <?php
  177. ?>
  178. </body>
  179. </html>

两者效果一样,如下图所示:

转载于:https://www.cnblogs.com/telwanggs/p/7183302.html

ECharts实例开发学习笔记二——时间轴相关推荐

  1. Polyworks脚本开发学习笔记(二二)-调取视角用脚本自动生成报告

    Polyworks脚本开发学习笔记(二二)-调取视角用脚本自动生成报告 Polyworks中,3D场景的视图可用标准视角及等轴侧视角.项目视角等方式调用,也可以用txt格式保存下来调用,如果以脚本的形 ...

  2. Polyworks脚本开发学习笔记(二十)-补充几个常见操作指令的使用

    Polyworks脚本开发学习笔记(二十)-补充几个常见操作指令的使用 大概要写到结尾了,最后几篇就将手册的各常用命令再看一遍,组合一下,并列举出常见的一些有用的操作. DATA_COLOR_MAP数 ...

  3. Polyworks脚本开发学习笔记(二)-TREEVIEW基本操作

    Polyworks脚本开发学习笔记(二)-TREEVIEW对象基本操作 TREEVIEW对象选择 选择/不选对象 TREEVIEW OBJECT SELECT ALL 全部对象选择,包括参考/数据/对 ...

  4. 龙芯1C300B主板V3.4嵌入式开发学习笔记二

    1 PMON更新 接着笔记一:https://blog.csdn.net/weixin_38709708/article/details/81271493 笔者手中的开发板一开始就烧写了PMON,当是 ...

  5. linux驱动开发学习笔记二十一:异步通知

    一.异步通知简介 我们首先来回顾一下"中断",中断是处理器提供的一种异步机制,我们配置好中断以后就可以让处理器去处理其他的事情了,当中断发生以后会触发我们事先设置好的中断服务函数, ...

  6. iOS开发学习笔记二:UITableView(1)

    一:TableViewController 1:删掉默认的ViewController 拖动一个TableViewController 2:新建一个Cocoa Touch Class,命名为:Tabl ...

  7. 微信平台开发学习笔记二(翻译功能的实现)

    参考http://www.cnblogs.com/mchina/p/3170565.html 不过看看这些前辈写这些东西的时间,就是感慨啊,13年我还没用微信呢 这里只是简单的实现有道的翻译功能,并且 ...

  8. CAD二次开发学习笔记二(创建一个对话框)

    打开资源视图->右击->添加资源->Dialog 双击对话框,弹出MFC类向导,输入类名FirstClass, 确定,创建对话框类.FirstClass.h与FirstClass.c ...

  9. Kinect开发学习笔记之(二)Kinect开发学习资源整理

    Kinect开发学习笔记之(二)Kinect开发学习资源整理 zouxy09@qq.com http://blog.csdn.net/zouxy09 刚刚接触Kinect,在网上狂搜资料,获得了很多有 ...

最新文章

  1. Java学习总结:17
  2. 什么?你还在使用fastjson,性能太差了
  3. Linux ALSA声卡驱动之八:ASoC架构中的Platform
  4. oracle从备份提取归档,Oracle归档模式有备份,丢失数据文件的恢复
  5. boost::mp11::mp_rename相关用法的测试程序
  6. ZooKeeper实战(三):ZooKeeper实现分布式配置中心、分布式锁、Reactive响应式模型
  7. 高橋君とカード / Tak and Cards(AtCoder-2037)
  8. 模拟linux终端测试java,介绍一个在线的Linux,没有安装Linux或者虚拟机不喜欢用的童鞋可以简单的用这个jslinux测试各种命令...
  9. Android_adb shell am/pm使用
  10. GEF: 图形拖拽处理
  11. linux网络程序编程
  12. 天堂2单机版服务器维护,天堂2芙蕾雅服务端单机版(l2jAngel-CT2.6芙蕾雅-34)
  13. 面试题 | ISP 图像处理算法工程师
  14. MetaMask新版本新增获取并修改用户剪切板内容权限
  15. 矩阵分析一子空间和特征分解
  16. html5中奖名单特效,jQuery基于json动态随机获取中奖名单抽奖代码
  17. C#汽车租凭(面对对象(封装、继承,多态的应用))
  18. 诚邀:每日十万+提问,知乎精准推荐如何做得更好?
  19. 2014年5月3日整理java笔试题+答案和自己的代码
  20. 快速解决Vue项目打包后文件过大问题

热门文章

  1. (53)多路时钟复用FPGA如何约束二(片内时钟复用约束)
  2. (103)FPGA面试题-画出程序所描述的电路原理图(一)
  3. FPGA 常用存储器比较
  4. (6)售货机verilog与Systemverilog编码
  5. 3.c++模式设计-抽象工厂模式
  6. python中scrapy是什么_python中Scrapy数据流是什么
  7. 安装ceston8出现timeout_瓦罗兰特Valorant:显示逾时怎么办 瓦罗兰特time out解决
  8. ajax php投票记录功能,PHP+AJAX 投票器功能
  9. 关于ioremap,request_mem_region
  10. 嵌入式Linux系统编程学习之二十四消息队列