ECharts实例开发学习笔记二——时间轴
记录一下ECharts时间轴的使用,首先是照着官方的示例做一遍,在这里不要忘了引入timelineOption.js,后面介绍如何动态创建时间轴的记录数,即根据需求可伸缩显示有多少天或者年月等轴标记数。
官网demo:
- <!DOCTYPE html>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
- <title>a</title>
- <style>
- body{background-color:#000000}
- </style>
- </head>
- <body>
- <div id="main" style="height:500px;width: 100%; margin-left: 0px;float: left;"></div>
- <!-- 本地引入ECharts,'js/dist/'本地文件路径下 -->
- <script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
- <script src="http://echarts.baidu.com/doc/example/timelineOption.js"></script>
- <script type="text/javascript">
- // 路径配置,'./js/dist'本地文件路径
- require.config({
- paths: {
- echarts: 'http://echarts.baidu.com/build/dist'
- }
- });
- require(
- [
- 'echarts',
- 'echarts/chart/line', // 按需加载所需图表,如需动态类型切换功能,别忘了同时加载相应图表
- 'echarts/chart/bar'
- ],
- function (ec) {
- var myChart = ec.init(document.getElementById('main'));
- option = {
- timeline:{
- data:[
- '2002-01-01','2003-01-01','2004-01-01','2005-01-01','2006-01-01',
- '2007-01-01','2008-01-01','2009-01-01','2010-01-01','2011-01-01'
- ],
- label : {
- formatter : function(s) {
- return s.slice(0, 4);
- }
- },
- autoPlay : true,
- playInterval : 1000
- },
- options:[
- {
- title : {
- 'text':'2002全国宏观经济指标',
- 'subtext':'数据来自国家统计局'
- },
- tooltip : {'trigger':'axis'},
- legend : {
- x:'right',
- 'data':['GDP','金融','房地产','第一产业','第二产业','第三产业'],
- 'selected':{
- 'GDP':true,
- '金融':false,
- '房地产':true,
- '第一产业':false,
- '第二产业':false,
- '第三产业':false
- }
- },
- toolbox : {
- 'show':true,
- orient : 'vertical',
- x: 'right',
- y: 'center',
- 'feature':{
- 'mark':{'show':true},
- 'dataView':{'show':true,'readOnly':false},
- 'magicType':{'show':true,'type':['line','bar','stack','tiled']},
- 'restore':{'show':true},
- 'saveAsImage':{'show':true}
- }
- },
- calculable : true,
- grid : {'y':80,'y2':100},
- xAxis : [{
- 'type':'category',
- 'axisLabel':{'interval':0},
- 'data':[
- '北京','\n天津','河北','\n山西','内蒙古','\n辽宁','吉林','\n黑龙江',
- '上海','\n江苏','浙江','\n安徽','福建','\n江西','山东','\n河南',
- '湖北','\n湖南','广东','\n广西','海南','\n重庆','四川','\n贵州',
- '云南','\n西藏','陕西','\n甘肃','青海','\n宁夏','新疆'
- ]
- }],
- yAxis : [
- {
- 'type':'value',
- 'name':'GDP(亿元)',
- 'max':53500
- },
- {
- 'type':'value',
- 'name':'其他(亿元)'
- }
- ],
- series : [
- {
- 'name':'GDP',
- 'type':'bar',
- 'markLine':{
- symbol : ['arrow','none'],
- symbolSize : [4, 2],
- itemStyle : {
- normal: {
- lineStyle: {color:'orange'},
- barBorderColor:'orange',
- label:{
- position:'left',
- formatter:function(params){
- return Math.round(params.value);
- },
- textStyle:{color:'orange'}
- }
- }
- },
- 'data':[{'type':'average','name':'平均值'}]
- },
- 'data': dataMap.dataGDP['2002']
- },
- {
- 'name':'金融','yAxisIndex':1,'type':'bar',
- 'data': dataMap.dataFinancial['2002']
- },
- {
- 'name':'房地产','yAxisIndex':1,'type':'bar',
- 'data': dataMap.dataEstate['2002']
- },
- {
- 'name':'第一产业','yAxisIndex':1,'type':'bar',
- 'data': dataMap.dataPI['2002']
- },
- {
- 'name':'第二产业','yAxisIndex':1,'type':'bar',
- 'data': dataMap.dataSI['2002']
- },
- {
- 'name':'第三产业','yAxisIndex':1,'type':'bar',
- 'data': dataMap.dataTI['2002']
- }
- ]
- },
- {
- title : {'text':'2003全国宏观经济指标'},
- series : [
- {'data': dataMap.dataGDP['2003']},
- {'data': dataMap.dataFinancial['2003']},
- {'data': dataMap.dataEstate['2003']},
- {'data': dataMap.dataPI['2003']},
- {'data': dataMap.dataSI['2003']},
- {'data': dataMap.dataTI['2003']}
- ]
- },
- {
- title : {'text':'2004全国宏观经济指标'},
- series : [
- {'data': dataMap.dataGDP['2004']},
- {'data': dataMap.dataFinancial['2004']},
- {'data': dataMap.dataEstate['2004']},
- {'data': dataMap.dataPI['2004']},
- {'data': dataMap.dataSI['2004']},
- {'data': dataMap.dataTI['2004']}
- ]
- },
- {
- title : {'text':'2005全国宏观经济指标'},
- series : [
- {'data': dataMap.dataGDP['2005']},
- {'data': dataMap.dataFinancial['2005']},
- {'data': dataMap.dataEstate['2005']},
- {'data': dataMap.dataPI['2005']},
- {'data': dataMap.dataSI['2005']},
- {'data': dataMap.dataTI['2005']}
- ]
- },
- {
- title : {'text':'2006全国宏观经济指标'},
- series : [
- {'data': dataMap.dataGDP['2006']},
- {'data': dataMap.dataFinancial['2006']},
- {'data': dataMap.dataEstate['2006']},
- {'data': dataMap.dataPI['2006']},
- {'data': dataMap.dataSI['2006']},
- {'data': dataMap.dataTI['2006']}
- ]
- },
- {
- title : {'text':'2007全国宏观经济指标'},
- series : [
- {'data': dataMap.dataGDP['2007']},
- {'data': dataMap.dataFinancial['2007']},
- {'data': dataMap.dataEstate['2007']},
- {'data': dataMap.dataPI['2007']},
- {'data': dataMap.dataSI['2007']},
- {'data': dataMap.dataTI['2007']}
- ]
- },
- {
- title : {'text':'2008全国宏观经济指标'},
- series : [
- {'data': dataMap.dataGDP['2008']},
- {'data': dataMap.dataFinancial['2008']},
- {'data': dataMap.dataEstate['2008']},
- {'data': dataMap.dataPI['2008']},
- {'data': dataMap.dataSI['2008']},
- {'data': dataMap.dataTI['2008']}
- ]
- },
- {
- title : {'text':'2009全国宏观经济指标'},
- series : [
- {'data': dataMap.dataGDP['2009']},
- {'data': dataMap.dataFinancial['2009']},
- {'data': dataMap.dataEstate['2009']},
- {'data': dataMap.dataPI['2009']},
- {'data': dataMap.dataSI['2009']},
- {'data': dataMap.dataTI['2009']}
- ]
- },
- {
- title : {'text':'2010全国宏观经济指标'},
- series : [
- {'data': dataMap.dataGDP['2010']},
- {'data': dataMap.dataFinancial['2010']},
- {'data': dataMap.dataEstate['2010']},
- {'data': dataMap.dataPI['2010']},
- {'data': dataMap.dataSI['2010']},
- {'data': dataMap.dataTI['2010']}
- ]
- },
- {
- title : {'text':'2011全国宏观经济指标'},
- series : [
- {'data': dataMap.dataGDP['2011']},
- {'data': dataMap.dataFinancial['2011']},
- {'data': dataMap.dataEstate['2011']},
- {'data': dataMap.dataPI['2011']},
- {'data': dataMap.dataSI['2011']},
- {'data': dataMap.dataTI['2011']}
- ]
- }
- ]
- };
- myChart.setOption(option);
- }
- );
- </script>
- <?php
- ?>
- </body>
- </html>
以上为官方的静态数据写入方式,下面介绍根据需求动态添加数据方式:
- <!DOCTYPE html>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
- <title>a</title>
- <style>
- body{background-color:#000000}
- </style>
- </head>
- <body>
- <div id="main" style="height:500px;width: 100%; margin-left: 0px;float: left;"></div>
- <!-- 本地引入ECharts,'js/dist/'本地文件路径下 -->
- <script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
- <script src="http://echarts.baidu.com/doc/example/timelineOption.js"></script>
- <script type="text/javascript">
- // 路径配置,'./js/dist'本地文件路径
- require.config({
- paths: {
- echarts: 'http://echarts.baidu.com/build/dist'
- }
- });
- require(
- [
- 'echarts',
- 'echarts/chart/line', // 按需加载所需图表,如需动态类型切换功能,别忘了同时加载相应图表
- 'echarts/chart/bar'
- ],
- function (ec) {
- var myChart = ec.init(document.getElementById('main'));
- 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"}]';
- var json = JSON.parse(text);
- option = {
- timeline:{
- data:(function(){
- var data=[];
- for(var i=0;i<json.length;i++){
- data.push(json[i].NAME);
- console.log(json[i].NAME);
- }
- return data;
- })(),
- label : {
- formatter : function(s) {
- return s.slice(0, 4);
- }
- },
- autoPlay : true,
- playInterval : 1000
- },
- options:(function(){
- var options=[];
- for(var i=0;i<json.length;i++){
- if(i==0){
- options.push({
- title : {
- 'text':'2002全国宏观经济指标',
- 'subtext':'数据来自国家统计局'
- },
- tooltip : {'trigger':'axis'},
- legend : {
- x:'right',
- 'data':['GDP','金融','房地产','第一产业','第二产业','第三产业'],
- 'selected':{
- 'GDP':true,
- '金融':false,
- '房地产':true,
- '第一产业':false,
- '第二产业':false,
- '第三产业':false
- }
- },
- toolbox : {
- 'show':true,
- orient : 'vertical',
- x: 'right',
- y: 'center',
- 'feature':{
- 'mark':{'show':true},
- 'dataView':{'show':true,'readOnly':false},
- 'magicType':{'show':true,'type':['line','bar','stack','tiled']},
- 'restore':{'show':true},
- 'saveAsImage':{'show':true}
- }
- },
- calculable : true,
- grid : {'y':80,'y2':100},
- xAxis : [{
- 'type':'category',
- 'axisLabel':{'interval':0},
- 'data':[
- '北京','\n天津','河北','\n山西','内蒙古','\n辽宁','吉林','\n黑龙江',
- '上海','\n江苏','浙江','\n安徽','福建','\n江西','山东','\n河南',
- '湖北','\n湖南','广东','\n广西','海南','\n重庆','四川','\n贵州',
- '云南','\n西藏','陕西','\n甘肃','青海','\n宁夏','新疆'
- ]
- }],
- yAxis : [
- {
- 'type':'value',
- 'name':'GDP(亿元)',
- 'max':53500
- },
- {
- 'type':'value',
- 'name':'其他(亿元)'
- }
- ],
- series : [
- {
- 'name':'GDP',
- 'type':'bar',
- 'markLine':{
- symbol : ['arrow','none'],
- symbolSize : [4, 2],
- itemStyle : {
- normal: {
- lineStyle: {color:'orange'},
- barBorderColor:'orange',
- label:{
- position:'left',
- formatter:function(params){
- return Math.round(params.value);
- },
- textStyle:{color:'orange'}
- }
- }
- },
- 'data':[{'type':'average','name':'平均值'}]
- },
- 'data': dataMap.dataGDP['2002']
- },
- {
- 'name':'金融','yAxisIndex':1,'type':'bar',
- 'data': dataMap.dataFinancial['2002']
- },
- {
- 'name':'房地产','yAxisIndex':1,'type':'bar',
- 'data': dataMap.dataEstate['2002']
- },
- {
- 'name':'第一产业','yAxisIndex':1,'type':'bar',
- 'data': dataMap.dataPI['2002']
- },
- {
- 'name':'第二产业','yAxisIndex':1,'type':'bar',
- 'data': dataMap.dataSI['2002']
- },
- {
- 'name':'第三产业','yAxisIndex':1,'type':'bar',
- 'data': dataMap.dataTI['2002']
- }
- ]
- });
- }else{
- var year = json[i].NAME.slice(0, 4);
- options.push({
- title : {'text':year+'全国宏观经济指标'},
- series : [
- {'data': dataMap.dataGDP[year]},
- {'data': dataMap.dataFinancial[year]},
- {'data': dataMap.dataEstate[year]},
- {'data': dataMap.dataPI[year]},
- {'data': dataMap.dataSI[year]},
- {'data': dataMap.dataTI[year]}
- ]
- });
- }
- }
- return options;
- })()
- };
- myChart.setOption(option);
- }
- );
- </script>
- <?php
- ?>
- </body>
- </html>
两者效果一样,如下图所示:

ECharts实例开发学习笔记二——时间轴的更多相关文章
- python-django开发学习笔记二
1.简述 1.1 开发环境 该笔记所基于的开发环境为:windows8.python2.7.5.psycopg2-2.4.2.django1.5.4.pyCharm-2.7.3.以上所描述的软件.插件 ...
- 软件开发学习笔记 <二>软件开发模型、Up、Rup、敏捷Up
软件开发过程(process) 是一个将用户需求转化为软件系统所需要的活动的集合. 软件生命周期(SDLC,Software Devlopment Life Cycle) 软件从孕育.诞生.成长.成熟 ...
- 基于.NET的CAD二次开发学习笔记二:AutoCAD .NET中的对象
1.CAD对象:一个CAD文件(DWG文件)即对应一个数据库,数据库中的所有组成部分,看的见(包括点.多段线.文字.圆等)和看不见(图层.线型.颜色等)的都是对象,数据库本身也是一个对象. 直线.圆弧 ...
- [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计
源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...
- python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码
python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码 python的json.dumps方法默认会输出成这种格式"\u535a\u ...
- python3.4学习笔记(二十五) Python 调用mysql redis实例代码
python3.4学习笔记(二十五) Python 调用mysql redis实例代码 #coding: utf-8 __author__ = 'zdz8207' #python2.7 import ...
- python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码
python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...
- amazeui学习笔记二(进阶开发5)--Web 组件开发规范Rules
amazeui学习笔记二(进阶开发5)--Web 组件开发规范Rules 一.总结 1.见名知意:见那些class名字知意,见函数名知意,见文件名知意 例如(HISTORY.md Web 组件更新历史 ...
- amazeui学习笔记二(进阶开发4)--JavaScript规范Rules
amazeui学习笔记二(进阶开发4)--JavaScript规范Rules 一.总结 1.注释规范总原则: As short as possible(如无必要,勿增注释):尽量提高代码本身的清晰性. ...
随机推荐
- Windows 10+Ubuntu 16.04在MBR分区上安装双系统(转)
以下内容转自这篇博客: http://www.cnblogs.com/Duane/p/5424218.html http://www.cnblogs.com/Duane/p/6776302.html( ...
- Maven安装好后包下载的测试命令和配置变量的查看命令:mvn help:system
mvn help:system 该命令会打印出所有的Java系统属性和环境变量,这些信息对我们日常的编程工作很有帮助.运行这条命令的目的是为了让Maven执行一个真正的任务.我们可以从命令行输出看到M ...
- Tap into your Linux system with SystemTap
https://major.io/2010/12/07/tap-into-your-linux-system-with-systemtap/ December 7, 2010 By Major Hay ...
- MySQL: 让MySQL支持颜文字emoji
数据库需要支持utf8mb4,如果已经创建了,那么可以用如下命令转换: alter database xxxx character set utf8mb4 collate utf8mb4_unicod ...
- 自己定义控件:onDraw 方法实现仿 iOS 的开关效果
概述 本文主要解说怎样在 Android 下实现高仿 iOS 的开关按钮,并不是是在 Android 自带的 ToggleButton 上改动,而是使用 API 提供的 onDraw.onMeasur ...
- CentOS yum时出现“Could not retrieve mirrorlist ”的解决的方法——resolv.conf的配置
原因:没有配置resolv.conf 解决方法: 到/etc文件夹下配置resolv.conf增加nameserver IP,如: nameserver 8.8.8.8 nameserver 8.8. ...
- 1245 最小的N个和(前k小ai+bi)
1245 最小的N个和 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 题目描述 Description 有两个长度为 N ...
- 【树剖求LCA】树剖知识点
不太优美但是有注释的版本: #include<cstdio> #include<iostream> using namespace std; struct edge{ int ...
- Grunt环境搭建及使用
jQuery在使用grunt,bootstrap在使用grunt,百度UEditor在使用grunt,你没有理由不学.不用! 1. 前言 各位web前端开发人员,如果你现在还不知道grunt或者听说过 ...
- E20170628-hm
forgery n. 伪造; 伪造罪; 伪造物; 伪造签字; distribute vt. 分配,散布; 散发,分发; 把…分类; [电] 配电; contribute to(contribu ...