Enford 5 년 전
부모
커밋
68dff2c9e2
100개의 변경된 파일20322개의 추가작업 그리고 0개의 파일을 삭제
  1. 245 0
      src/main/webapp/static/echarts-2.2.7/doc/example/axis.html
  2. 216 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar.html
  3. 136 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar1.html
  4. 160 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar10.html
  5. 285 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar11.html
  6. 157 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar12.html
  7. 158 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar13.html
  8. 155 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar14.html
  9. 174 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar15.html
  10. 171 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar2.html
  11. 115 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar3.html
  12. 138 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar4.html
  13. 129 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar5.html
  14. 153 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar6.html
  15. 131 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar7.html
  16. 140 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar8.html
  17. 192 0
      src/main/webapp/static/echarts-2.2.7/doc/example/bar9.html
  18. 169 0
      src/main/webapp/static/echarts-2.2.7/doc/example/chord.html
  19. 126 0
      src/main/webapp/static/echarts-2.2.7/doc/example/chord1.html
  20. 247 0
      src/main/webapp/static/echarts-2.2.7/doc/example/chord2.html
  21. 164 0
      src/main/webapp/static/echarts-2.2.7/doc/example/chord3.html
  22. 152 0
      src/main/webapp/static/echarts-2.2.7/doc/example/chord4.html
  23. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/data/migration.json
  24. 5756 0
      src/main/webapp/static/echarts-2.2.7/doc/example/data/webkit-dep.json
  25. 209 0
      src/main/webapp/static/echarts-2.2.7/doc/example/dataRange.html
  26. 126 0
      src/main/webapp/static/echarts-2.2.7/doc/example/dataRange1.html
  27. 186 0
      src/main/webapp/static/echarts-2.2.7/doc/example/dataRange2.html
  28. 134 0
      src/main/webapp/static/echarts-2.2.7/doc/example/dataZoom.html
  29. 136 0
      src/main/webapp/static/echarts-2.2.7/doc/example/dataZoom1.html
  30. 181 0
      src/main/webapp/static/echarts-2.2.7/doc/example/dataZoom2.html
  31. 118 0
      src/main/webapp/static/echarts-2.2.7/doc/example/demo.html
  32. 191 0
      src/main/webapp/static/echarts-2.2.7/doc/example/dynamicLineBar.html
  33. 179 0
      src/main/webapp/static/echarts-2.2.7/doc/example/dynamicPieRadar.html
  34. 283 0
      src/main/webapp/static/echarts-2.2.7/doc/example/dynamicScatterK.html
  35. 182 0
      src/main/webapp/static/echarts-2.2.7/doc/example/event.html
  36. 417 0
      src/main/webapp/static/echarts-2.2.7/doc/example/eventRiver1.html
  37. 119 0
      src/main/webapp/static/echarts-2.2.7/doc/example/eventRiver2.html
  38. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/eventRiver2_data.js
  39. 222 0
      src/main/webapp/static/echarts-2.2.7/doc/example/force.html
  40. 200 0
      src/main/webapp/static/echarts-2.2.7/doc/example/force1.html
  41. 190 0
      src/main/webapp/static/echarts-2.2.7/doc/example/force2.html
  42. 231 0
      src/main/webapp/static/echarts-2.2.7/doc/example/force3.html
  43. 202 0
      src/main/webapp/static/echarts-2.2.7/doc/example/force4.html
  44. 152 0
      src/main/webapp/static/echarts-2.2.7/doc/example/funnel.html
  45. 126 0
      src/main/webapp/static/echarts-2.2.7/doc/example/funnel1.html
  46. 162 0
      src/main/webapp/static/echarts-2.2.7/doc/example/funnel2.html
  47. 177 0
      src/main/webapp/static/echarts-2.2.7/doc/example/funnel3.html
  48. 186 0
      src/main/webapp/static/echarts-2.2.7/doc/example/funnel4.html
  49. 171 0
      src/main/webapp/static/echarts-2.2.7/doc/example/gauge.html
  50. 96 0
      src/main/webapp/static/echarts-2.2.7/doc/example/gauge1.html
  51. 138 0
      src/main/webapp/static/echarts-2.2.7/doc/example/gauge2.html
  52. 149 0
      src/main/webapp/static/echarts-2.2.7/doc/example/gauge3.html
  53. 264 0
      src/main/webapp/static/echarts-2.2.7/doc/example/gauge4.html
  54. 355 0
      src/main/webapp/static/echarts-2.2.7/doc/example/gauge5.html
  55. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/GUANGZHOU_geo.json
  56. 41 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/HK_geo.json
  57. 5232 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/UK_geo.json
  58. 54 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/USA_geo.json
  59. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/110100.json
  60. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/120100.json
  61. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130100.json
  62. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130200.json
  63. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130300.json
  64. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130400.json
  65. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130500.json
  66. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130600.json
  67. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130700.json
  68. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130800.json
  69. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130900.json
  70. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/131000.json
  71. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/131100.json
  72. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140100.json
  73. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140200.json
  74. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140300.json
  75. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140400.json
  76. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140500.json
  77. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140600.json
  78. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140700.json
  79. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140800.json
  80. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140900.json
  81. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/141000.json
  82. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/141100.json
  83. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150100.json
  84. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150200.json
  85. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150300.json
  86. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150400.json
  87. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150500.json
  88. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150600.json
  89. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150700.json
  90. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150800.json
  91. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150900.json
  92. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/152200.json
  93. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/152500.json
  94. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/152900.json
  95. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210100.json
  96. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210200.json
  97. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210300.json
  98. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210400.json
  99. 1 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210500.json
  100. 0 0
      src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210600.json

+ 245 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/axis.html

@@ -0,0 +1,245 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+    
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        trigger: 'axis'
+    },
+    legend: {
+        data:['蒸发量','降水量','最低气温','最高气温']
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true},
+            magicType : {show: true, type: ['line', 'bar']},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    xAxis : [
+        {
+            type : 'category',
+            position: 'bottom',
+            boundaryGap: true,
+            axisLine : {    // 轴线
+                show: true,
+                lineStyle: {
+                    color: 'green',
+                    type: 'solid',
+                    width: 2
+                }
+            },
+            axisTick : {    // 轴标记
+                show:true,
+                length: 10,
+                lineStyle: {
+                    color: 'red',
+                    type: 'solid',
+                    width: 2
+                }
+            },
+            axisLabel : {
+                show:true,
+                interval: 'auto',    // {number}
+                rotate: 45,
+                margin: 8,
+                formatter: '{value}月',
+                textStyle: {
+                    color: 'blue',
+                    fontFamily: 'sans-serif',
+                    fontSize: 15,
+                    fontStyle: 'italic',
+                    fontWeight: 'bold'
+                }
+            },
+            splitLine : {
+                show:true,
+                lineStyle: {
+                    color: '#483d8b',
+                    type: 'dashed',
+                    width: 1
+                }
+            },
+            splitArea : {
+                show: true,
+                areaStyle:{
+                    color:['rgba(144,238,144,0.3)','rgba(135,200,250,0.3)']
+                }
+            },
+            data : [
+                '1','2','3','4','5',
+                {
+                    value:'6',
+                    textStyle: {
+                        color: 'red',
+                        fontSize: 30,
+                        fontStyle: 'normal',
+                        fontWeight: 'bold'
+                    }
+                },
+                '7','8','9','10','11','12'
+            ]
+        },
+        {
+            type : 'category',
+            data : ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value',
+            position: 'left',
+            //min: 0,
+            //max: 300,
+            //splitNumber: 5,
+            boundaryGap: [0,0.1],
+            axisLine : {    // 轴线
+                show: true,
+                lineStyle: {
+                    color: 'red',
+                    type: 'dashed',
+                    width: 2
+                }
+            },
+            axisTick : {    // 轴标记
+                show:true,
+                length: 10,
+                lineStyle: {
+                    color: 'green',
+                    type: 'solid',
+                    width: 2
+                }
+            },
+            axisLabel : {
+                show:true,
+                interval: 'auto',    // {number}
+                rotate: -45,
+                margin: 18,
+                formatter: '{value} ml',    // Template formatter!
+                textStyle: {
+                    color: '#1e90ff',
+                    fontFamily: 'verdana',
+                    fontSize: 10,
+                    fontStyle: 'normal',
+                    fontWeight: 'bold'
+                }
+            },
+            splitLine : {
+                show:true,
+                lineStyle: {
+                    color: '#483d8b',
+                    type: 'dotted',
+                    width: 2
+                }
+            },
+            splitArea : {
+                show: true,
+                areaStyle:{
+                    color:['rgba(205,92,92,0.3)','rgba(255,215,0,0.3)']
+                }
+            }
+        },
+        {
+            type : 'value',
+            splitNumber: 10,
+            axisLabel : {
+                formatter: function (value) {
+                    // Function formatter
+                    return value + ' °C'
+                }
+            },
+            splitLine : {
+                show: false
+            }
+        }
+    ],
+    series : [
+        {
+            name: '蒸发量',
+            type: 'bar',
+            data:[2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3]
+        },
+        {
+            name: '降水量',
+            type: 'bar',
+            data: [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]
+        },
+        {
+            name:'最低气温',
+            type: 'line',
+            yAxisIndex: 1,
+            data: [2.0, 2.2, 3.3, 4.5, 6.3, 10.2, 20.3, 23.4, 23.0, 16.5, 12.0, 6.2]
+        },
+        {
+            name:'最高气温',
+            type: 'line',
+            xAxisIndex: 1,
+            yAxisIndex: 1,
+            data: [12.0, 12.2, 13.3, 14.5, 16.3, 18.2, 28.3, 33.4, 31.0, 24.5, 18.0, 16.2]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+    </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 216 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar.html

@@ -0,0 +1,216 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        show: true,
+        trigger: 'item'
+    },
+    legend: {
+        data:['邮件营销','联盟广告','直接访问','搜索引擎']
+    },
+    toolbox: {
+        show : true,
+        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,
+    xAxis : [
+        {
+            type : 'category',
+            data : ['周一','周二','周三','周四','周五','周六','周日']
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value'
+        }
+    ],
+    series : [
+        {
+            name:'邮件营销',
+            type:'bar',
+            itemStyle: {        // 系列级个性化样式,纵向渐变填充
+                normal: {
+                    barBorderColor:'red',
+                    barBorderWidth: 5,
+                    color : (function (){
+                        var zrColor = require('zrender/tool/color');
+                        return zrColor.getLinearGradient(
+                            0, 400, 0, 300,
+                            [[0, 'green'],[1, 'yellow']]
+                        )
+                    })()
+                },
+                emphasis: {
+                    barBorderWidth: 5,
+                    barBorderColor:'green',
+                    color: (function (){
+                        var zrColor = require('zrender/tool/color');
+                        return zrColor.getLinearGradient(
+                            0, 400, 0, 300,
+                            [[0, 'red'],[1, 'orange']]
+                        )
+                    })(),
+                    label : {
+                        show : true,
+                        position : 'top',
+                        formatter : "{a} {b} {c}",
+                        textStyle : {
+                            color: 'blue'
+                        }
+                    }
+                }
+            },
+            data:[220, 232, 101, 234, 190, 330, 210]
+        },
+        {
+            name:'联盟广告',
+            type:'bar',
+            stack: '总量',
+            data:[120, '-', 451, 134, 190, 230, 110]
+        },
+        {
+            name:'直接访问',
+            type:'bar',
+            stack: '总量',
+            itemStyle: {                // 系列级个性化
+                normal: {
+                    barBorderWidth: 6,
+                    barBorderColor:'tomato',
+                    color: 'red'
+                },
+                emphasis: {
+                    barBorderColor:'red',
+                    color: 'blue'
+                }
+            },
+            data:[
+                320, 332, 100, 334,
+                {
+                    value: 390,
+                    symbolSize : 10,   // 数据级个性化
+                    itemStyle: {
+                        normal: {
+                            color :'lime'
+                        },
+                        emphasis: {
+                            color: 'skyBlue'
+                        }
+                    }
+                },
+                330, 320
+            ]
+        },
+        {
+            name:'搜索引擎',
+            type:'bar',
+            barWidth: 40,                   // 系列级个性化,柱形宽度
+            itemStyle: {
+                normal: {                   // 系列级个性化,横向渐变填充
+                    borderRadius: 5,
+                    color : (function (){
+                        var zrColor = require('zrender/tool/color');
+                        return zrColor.getLinearGradient(
+                            0, 0, 1000, 0,
+                            [[0, 'rgba(30,144,255,0.8)'],[1, 'rgba(138,43,226,0.8)']]
+                        )
+                    })(),
+                    label : {
+                        show : true,
+                        textStyle : {
+                            fontSize : '20',
+                            fontFamily : '微软雅黑',
+                            fontWeight : 'bold'
+                        }
+                    }
+                }
+            },
+            data:[
+                620, 732, 
+                {
+                    value: 701,
+                    itemStyle : { normal: {label : {position: 'inside'}}}
+                },
+                734, 890, 930, 820
+            ],
+            markLine : {
+                data : [
+                    {type : 'average', name : '平均值'},
+                    {type : 'max'},
+                    {type : 'min'}
+                ]
+            }
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 136 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar1.html

@@ -0,0 +1,136 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '某地区蒸发量和降水量',
+        subtext: '纯属虚构'
+    },
+    tooltip : {
+        trigger: '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',
+            data : ['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value'
+        }
+    ],
+    series : [
+        {
+            name:'蒸发量',
+            type:'bar',
+            data:[2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3],
+            markPoint : {
+                data : [
+                    {type : 'max', name: '最大值'},
+                    {type : 'min', name: '最小值'}
+                ]
+            },
+            markLine : {
+                data : [
+                    {type : 'average', name: '平均值'}
+                ]
+            }
+        },
+        {
+            name:'降水量',
+            type:'bar',
+            data:[2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3],
+            markPoint : {
+                data : [
+                    {name : '年最高', value : 182.2, xAxis: 7, yAxis: 183, symbolSize:18},
+                    {name : '年最低', value : 2.3, xAxis: 11, yAxis: 3}
+                ]
+            },
+            markLine : {
+                data : [
+                    {type : 'average', name : '平均值'}
+                ]
+            }
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 160 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar10.html

@@ -0,0 +1,160 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '温度计式图表',
+        subtext: 'From ExcelHome',
+        sublink: 'http://e.weibo.com/1341556070/AizJXrAEa'
+    },
+    tooltip : {
+        trigger: 'axis',
+        axisPointer : {            // 坐标轴指示器,坐标轴触发有效
+            type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
+        },
+        formatter: function (params){
+            return params[0].name + '<br/>'
+                   + params[0].seriesName + ' : ' + params[0].value + '<br/>'
+                   + params[1].seriesName + ' : ' + (params[1].value + params[0].value);
+        }
+    },
+    legend: {
+        selectedMode:false,
+        data:['Acutal', 'Forecast']
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    calculable : true,
+    xAxis : [
+        {
+            type : 'category',
+            data : ['Cosco','CMA','APL','OOCL','Wanhai','Zim']
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value',
+            boundaryGap: [0, 0.1]
+        }
+    ],
+    series : [
+        {
+            name:'Acutal',
+            type:'bar',
+            stack: 'sum',
+            barCategoryGap: '50%',
+            itemStyle: {
+                normal: {
+                    color: 'tomato',
+                    barBorderColor: 'tomato',
+                    barBorderWidth: 6,
+                    barBorderRadius:0,
+                    label : {
+                        show: true, position: 'insideTop'
+                    }
+                }
+            },
+            data:[260, 200, 220, 120, 100, 80]
+        },
+        {
+            name:'Forecast',
+            type:'bar',
+            stack: 'sum',
+            itemStyle: {
+                normal: {
+                    color: '#fff',
+                    barBorderColor: 'tomato',
+                    barBorderWidth: 6,
+                    barBorderRadius:0,
+                    label : {
+                        show: true, 
+                        position: 'top',
+                        formatter: function (params) {
+                            for (var i = 0, l = option.xAxis[0].data.length; i < l; i++) {
+                                if (option.xAxis[0].data[i] == params.name) {
+                                    return option.series[0].data[i] + params.value;
+                                }
+                            }
+                        },
+                        textStyle: {
+                            color: 'tomato'
+                        }
+                    }
+                }
+            },
+            data:[40, 80, 50, 80,80, 70]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 285 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar11.html

@@ -0,0 +1,285 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+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']}
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="timelineOption.js"></script>	
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 157 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar12.html

@@ -0,0 +1,157 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: 'ECharts2 vs ECharts1',
+        subtext: 'Chrome下测试数据'
+    },
+    tooltip : {
+        trigger: 'axis'
+    },
+    legend: {
+        data:[
+            'ECharts1 - 2k数据','ECharts1 - 2w数据','ECharts1 - 20w数据','',
+            'ECharts2 - 2k数据','ECharts2 - 2w数据','ECharts2 - 20w数据'
+        ]
+    },
+    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,
+    grid: {y: 70, y2:30, x2:20},
+    xAxis : [
+        {
+            type : 'category',
+            data : ['Line','Bar','Scatter','K','Map']
+        },
+        {
+            type : 'category',
+            axisLine: {show:false},
+            axisTick: {show:false},
+            axisLabel: {show:false},
+            splitArea: {show:false},
+            splitLine: {show:false},
+            data : ['Line','Bar','Scatter','K','Map']
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value',
+            axisLabel:{formatter:'{value} ms'}
+        }
+    ],
+    series : [
+        {
+            name:'ECharts2 - 2k数据',
+            type:'bar',
+            itemStyle: {normal: {color:'rgba(193,35,43,1)', label:{show:true}}},
+            data:[40,155,95,75, 0]
+        },
+        {
+            name:'ECharts2 - 2w数据',
+            type:'bar',
+            itemStyle: {normal: {color:'rgba(181,195,52,1)', label:{show:true,textStyle:{color:'#27727B'}}}},
+            data:[100,200,105,100,156]
+        },
+        {
+            name:'ECharts2 - 20w数据',
+            type:'bar',
+            itemStyle: {normal: {color:'rgba(252,206,16,1)', label:{show:true,textStyle:{color:'#E87C25'}}}},
+            data:[906,911,908,778,0]
+        },
+        {
+            name:'ECharts1 - 2k数据',
+            type:'bar',
+            xAxisIndex:1,
+            itemStyle: {normal: {color:'rgba(193,35,43,0.5)', label:{show:true,formatter:function(p){return p.value > 0 ? (p.value +'\n'):'';}}}},
+            data:[96,224,164,124,0]
+        },
+        {
+            name:'ECharts1 - 2w数据',
+            type:'bar',
+            xAxisIndex:1,
+            itemStyle: {normal: {color:'rgba(181,195,52,0.5)', label:{show:true}}},
+            data:[491,2035,389,955,347]
+        },
+        {
+            name:'ECharts1 - 20w数据',
+            type:'bar',
+            xAxisIndex:1,
+            itemStyle: {normal: {color:'rgba(252,206,16,0.5)', label:{show:true,formatter:function(p){return p.value > 0 ? (p.value +'+'):'';}}}},
+            data:[3000,3000,2817,3000,0]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 158 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar13.html

@@ -0,0 +1,158 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '双数值柱形图',
+        subtext: '纯属虚构'
+    },
+    tooltip : {
+        trigger: 'axis',
+        axisPointer:{
+            show: true,
+            type : 'cross',
+            lineStyle: {
+                type : 'dashed',
+                width : 1
+            }
+        },
+        formatter : function (params) {
+            return params.seriesName + ' : [ '
+                   + params.value[0] + ', ' 
+                   + params.value[1] + ' ]';
+        }
+    },
+    legend: {
+        data:['数据1','数据2']
+    },
+    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 : 'value'
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value',
+            axisLine: {
+                lineStyle: {
+                    color: '#dc143c'
+                }
+            }
+        }
+    ],
+    series : [
+        {
+            name:'数据1',
+            type:'bar',
+            data:[
+                [1.5, 10], [5, 7], [8, 8], [12, 6], [11, 12], [16, 9], [14, 6], [17, 4], [19, 9]
+            ],
+            markPoint : {
+                data : [
+                    // 纵轴,默认
+                    {type : 'max', name: '最大值',symbol: 'emptyCircle', itemStyle:{normal:{color:'#dc143c',label:{position:'top'}}}},
+                    {type : 'min', name: '最小值',symbol: 'emptyCircle', itemStyle:{normal:{color:'#dc143c',label:{position:'bottom'}}}},
+                    // 横轴
+                    {type : 'max', name: '最大值', valueIndex: 0, symbol: 'emptyCircle', itemStyle:{normal:{color:'#1e90ff',label:{position:'right'}}}},
+                    {type : 'min', name: '最小值', valueIndex: 0, symbol: 'emptyCircle', itemStyle:{normal:{color:'#1e90ff',label:{position:'left'}}}}
+                ]
+            },
+            markLine : {
+                data : [
+                    // 纵轴,默认
+                    {type : 'max', name: '最大值', itemStyle:{normal:{color:'#dc143c'}}},
+                    {type : 'min', name: '最小值', itemStyle:{normal:{color:'#dc143c'}}},
+                    {type : 'average', name : '平均值', itemStyle:{normal:{color:'#dc143c'}}},
+                    // 横轴
+                    {type : 'max', name: '最大值', valueIndex: 0, itemStyle:{normal:{color:'#1e90ff'}}},
+                    {type : 'min', name: '最小值', valueIndex: 0, itemStyle:{normal:{color:'#1e90ff'}}},
+                    {type : 'average', name : '平均值', valueIndex: 0, itemStyle:{normal:{color:'#1e90ff'}}}
+                ]
+            }
+        },
+        {
+            name:'数据2',
+            type:'bar',
+            barHeight:10,
+            data:[
+                [1, 2], [2, 3], [4, 4], [7, 5], [11, 11], [18, 15]
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 155 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar14.html

@@ -0,0 +1,155 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title: {
+        x: 'center',
+        text: 'ECharts例子个数统计',
+        subtext: 'Rainbow bar example',
+        link: 'http://echarts.baidu.com/doc/example.html'
+    },
+    tooltip: {
+        trigger: 'item'
+    },
+    toolbox: {
+        show: true,
+        feature: {
+            dataView: {show: true, readOnly: false},
+            restore: {show: true},
+            saveAsImage: {show: true}
+        }
+    },
+    calculable: true,
+    grid: {
+        borderWidth: 0,
+        y: 80,
+        y2: 60
+    },
+    xAxis: [
+        {
+            type: 'category',
+            show: false,
+            data: ['Line', 'Bar', 'Scatter', 'K', 'Pie', 'Radar', 'Chord', 'Force', 'Map', 'Gauge', 'Funnel']
+        }
+    ],
+    yAxis: [
+        {
+            type: 'value',
+            show: false
+        }
+    ],
+    series: [
+        {
+            name: 'ECharts例子个数统计',
+            type: 'bar',
+            itemStyle: {
+                normal: {
+                    color: function(params) {
+                        // build a color map as your need.
+                        var colorList = [
+                          '#C1232B','#B5C334','#FCCE10','#E87C25','#27727B',
+                           '#FE8463','#9BCA63','#FAD860','#F3A43B','#60C0DD',
+                           '#D7504B','#C6E579','#F4E001','#F0805A','#26C0C0'
+                        ];
+                        return colorList[params.dataIndex]
+                    },
+                    label: {
+                        show: true,
+                        position: 'top',
+                        formatter: '{b}\n{c}'
+                    }
+                }
+            },
+            data: [12,21,10,4,12,5,6,5,25,23,7],
+            markPoint: {
+                tooltip: {
+                    trigger: 'item',
+                    backgroundColor: 'rgba(0,0,0,0)',
+                    formatter: function(params){
+                        return '<img src="' 
+                                + params.data.symbol.replace('image://', '')
+                                + '"/>';
+                    }
+                },
+                data: [
+                    {xAxis:0, y: 350, name:'Line', symbolSize:20, symbol: 'image://../asset/ico/折线图.png'},
+                    {xAxis:1, y: 350, name:'Bar', symbolSize:20, symbol: 'image://../asset/ico/柱状图.png'},
+                    {xAxis:2, y: 350, name:'Scatter', symbolSize:20, symbol: 'image://../asset/ico/散点图.png'},
+                    {xAxis:3, y: 350, name:'K', symbolSize:20, symbol: 'image://../asset/ico/K线图.png'},
+                    {xAxis:4, y: 350, name:'Pie', symbolSize:20, symbol: 'image://../asset/ico/饼状图.png'},
+                    {xAxis:5, y: 350, name:'Radar', symbolSize:20, symbol: 'image://../asset/ico/雷达图.png'},
+                    {xAxis:6, y: 350, name:'Chord', symbolSize:20, symbol: 'image://../asset/ico/和弦图.png'},
+                    {xAxis:7, y: 350, name:'Force', symbolSize:20, symbol: 'image://../asset/ico/力导向图.png'},
+                    {xAxis:8, y: 350, name:'Map', symbolSize:20, symbol: 'image://../asset/ico/地图.png'},
+                    {xAxis:9, y: 350, name:'Gauge', symbolSize:20, symbol: 'image://../asset/ico/仪表盘.png'},
+                    {xAxis:10, y: 350, name:'Funnel', symbolSize:20, symbol: 'image://../asset/ico/漏斗图.png'},
+                ]
+            }
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 174 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar15.html

@@ -0,0 +1,174 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+var zrColor = require('zrender/tool/color');
+var colorList = [
+  '#ff7f50','#87cefa','#da70d6','#32cd32','#6495ed',
+  '#ff69b4','#ba55d3','#cd5c5c','#ffa500','#40e0d0'
+];
+var itemStyle = {
+    normal: {
+        color: function(params) {
+          if (params.dataIndex < 0) {
+            // for legend
+            return zrColor.lift(
+              colorList[colorList.length - 1], params.seriesIndex * 0.1
+            );
+          }
+          else {
+            // for bar
+            return zrColor.lift(
+              colorList[params.dataIndex], params.seriesIndex * 0.1
+            );
+          }
+        }
+    }
+};
+option = {
+    title: {
+        text: '2010-2013年中国城镇居民家庭人均消费构成(元)',
+        subtext: '数据来自国家统计局',
+        sublink: 'http://data.stats.gov.cn/search/keywordlist2?keyword=%E5%9F%8E%E9%95%87%E5%B1%85%E6%B0%91%E6%B6%88%E8%B4%B9'
+    },
+    tooltip: {
+        trigger: 'axis',
+        backgroundColor: 'rgba(255,255,255,0.7)',
+        axisPointer: {
+            type: 'shadow'
+        },
+        formatter: function(params) {
+            // for text color
+            var color = colorList[params[0].dataIndex];
+            var res = '<div style="color:' + color + '">';
+            res += '<strong>' + params[0].name + '消费(元)</strong>'
+            for (var i = 0, l = params.length; i < l; i++) {
+                res += '<br/>' + params[i].seriesName + ' : ' + params[i].value 
+            }
+            res += '</div>';
+            return res;
+        }
+    },
+    legend: {
+        x: 'right',
+        data:['2010','2011','2012','2013']
+    },
+    toolbox: {
+        show: true,
+        orient: 'vertical',
+        y: 'center',
+        feature: {
+            mark: {show: true},
+            dataView: {show: true, readOnly: false},
+            restore: {show: true},
+            saveAsImage: {show: true}
+        }
+    },
+    calculable: true,
+    grid: {
+        y: 80,
+        y2: 40,
+        x2: 40
+    },
+    xAxis: [
+        {
+            type: 'category',
+            data: ['食品', '衣着', '居住', '家庭设备及用品', '医疗保健', '交通和通信', '文教娱乐服务', '其他']
+        }
+    ],
+    yAxis: [
+        {
+            type: 'value'
+        }
+    ],
+    series: [
+        {
+            name: '2010',
+            type: 'bar',
+            itemStyle: itemStyle,
+            data: [4804.7,1444.3,1332.1,908,871.8,1983.7,1627.6,499.2]
+        },
+        {
+            name: '2011',
+            type: 'bar',
+            itemStyle: itemStyle,
+            data: [5506.3,1674.7,1405,1023.2,969,2149.7,1851.7,581.3]
+        },
+        {
+            name: '2012',
+            type: 'bar',
+            itemStyle: itemStyle,
+            data: [6040.9,1823.4,1484.3,1116.1,1063.7,2455.5,2033.5,657.1]
+        },
+        {
+            name: '2013',
+            type: 'bar',
+            itemStyle: itemStyle,
+            data: [6311.9,1902,1745.1,1215.1,1118.3,2736.9,2294,699.4]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 171 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar2.html

@@ -0,0 +1,171 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        trigger: 'axis',
+        axisPointer : {            // 坐标轴指示器,坐标轴触发有效
+            type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
+        }
+    },
+    legend: {
+        data:['直接访问','邮件营销','联盟广告','视频广告','搜索引擎','百度','谷歌','必应','其他']
+    },
+    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,
+    xAxis : [
+        {
+            type : 'category',
+            data : ['周一','周二','周三','周四','周五','周六','周日']
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value'
+        }
+    ],
+    series : [
+        {
+            name:'直接访问',
+            type:'bar',
+            data:[320, 332, 301, 334, 390, 330, 320]
+        },
+        {
+            name:'邮件营销',
+            type:'bar',
+            stack: '广告',
+            data:[120, 132, 101, 134, 90, 230, 210]
+        },
+        {
+            name:'联盟广告',
+            type:'bar',
+            stack: '广告',
+            data:[220, 182, 191, 234, 290, 330, 310]
+        },
+        {
+            name:'视频广告',
+            type:'bar',
+            stack: '广告',
+            data:[150, 232, 201, 154, 190, 330, 410]
+        },
+        {
+            name:'搜索引擎',
+            type:'bar',
+            data:[862, 1018, 964, 1026, 1679, 1600, 1570],
+            markLine : {
+                itemStyle:{
+                    normal:{
+                        lineStyle:{
+                            type: 'dashed'
+                        }
+                    }
+                },
+                data : [
+                    [{type : 'min'}, {type : 'max'}]
+                ]
+            }
+        },
+        {
+            name:'百度',
+            type:'bar',
+            barWidth : 5,
+            stack: '搜索引擎',
+            data:[620, 732, 701, 734, 1090, 1130, 1120]
+        },
+        {
+            name:'谷歌',
+            type:'bar',
+            stack: '搜索引擎',
+            data:[120, 132, 101, 134, 290, 230, 220]
+        },
+        {
+            name:'必应',
+            type:'bar',
+            stack: '搜索引擎',
+            data:[60, 72, 71, 74, 190, 130, 110]
+        },
+        {
+            name:'其他',
+            type:'bar',
+            stack: '搜索引擎',
+            data:[62, 82, 91, 84, 109, 110, 120]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 115 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar3.html

@@ -0,0 +1,115 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '世界人口总量',
+        subtext: '数据来自网络'
+    },
+    tooltip : {
+        trigger: 'axis'
+    },
+    legend: {
+        data:['2011年', '2012年']
+    },
+    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 : 'value',
+            boundaryGap : [0, 0.01]
+        }
+    ],
+    yAxis : [
+        {
+            type : 'category',
+            data : ['巴西','印尼','美国','印度','中国','世界人口(万)']
+        }
+    ],
+    series : [
+        {
+            name:'2011年',
+            type:'bar',
+            data:[18203, 23489, 29034, 104970, 131744, 630230]
+        },
+        {
+            name:'2012年',
+            type:'bar',
+            data:[19325, 23438, 31000, 121594, 134141, 681807]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 138 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar4.html

@@ -0,0 +1,138 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        trigger: 'axis',
+        axisPointer : {            // 坐标轴指示器,坐标轴触发有效
+            type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
+        }
+    },
+    legend: {
+        data:['直接访问', '邮件营销','联盟广告','视频广告','搜索引擎']
+    },
+    toolbox: {
+        show : true,
+        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,
+    xAxis : [
+        {
+            type : 'value'
+        }
+    ],
+    yAxis : [
+        {
+            type : 'category',
+            data : ['周一','周二','周三','周四','周五','周六','周日']
+        }
+    ],
+    series : [
+        {
+            name:'直接访问',
+            type:'bar',
+            stack: '总量',
+            itemStyle : { normal: {label : {show: true, position: 'insideRight'}}},
+            data:[320, 302, 301, 334, 390, 330, 320]
+        },
+        {
+            name:'邮件营销',
+            type:'bar',
+            stack: '总量',
+            itemStyle : { normal: {label : {show: true, position: 'insideRight'}}},
+            data:[120, 132, 101, 134, 90, 230, 210]
+        },
+        {
+            name:'联盟广告',
+            type:'bar',
+            stack: '总量',
+            itemStyle : { normal: {label : {show: true, position: 'insideRight'}}},
+            data:[220, 182, 191, 234, 290, 330, 310]
+        },
+        {
+            name:'视频广告',
+            type:'bar',
+            stack: '总量',
+            itemStyle : { normal: {label : {show: true, position: 'insideRight'}}},
+            data:[150, 212, 201, 154, 190, 330, 410]
+        },
+        {
+            name:'搜索引擎',
+            type:'bar',
+            stack: '总量',
+            itemStyle : { normal: {label : {show: true, position: 'insideRight'}}},
+            data:[820, 832, 901, 934, 1290, 1330, 1320]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 129 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar5.html

@@ -0,0 +1,129 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        trigger: 'axis',
+        axisPointer : {            // 坐标轴指示器,坐标轴触发有效
+            type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
+        }
+    },
+    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 : 'value'
+        }
+    ],
+    yAxis : [
+        {
+            type : 'category',
+            axisTick : {show: false},
+            data : ['周一','周二','周三','周四','周五','周六','周日']
+        }
+    ],
+    series : [
+        {
+            name:'利润',
+            type:'bar',
+            itemStyle : { normal: {label : {show: true, position: 'inside'}}},
+            data:[200, 170, 240, 244, 200, 220, 210]
+        },
+        {
+            name:'收入',
+            type:'bar',
+            stack: '总量',
+            barWidth : 5,
+            itemStyle: {normal: {
+                label : {show: true}
+            }},
+            data:[320, 302, 341, 374, 390, 450, 420]
+        },
+        {
+            name:'支出',
+            type:'bar',
+            stack: '总量',
+            itemStyle: {normal: {
+                label : {show: true, position: 'left'}
+            }},
+            data:[-120, -132, -101, -134, -190, -230, -210]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 153 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar6.html

@@ -0,0 +1,153 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title: {
+        text: '阶梯瀑布图',
+        subtext: 'From ExcelHome',
+        sublink: 'http://e.weibo.com/1341556070/Aj1J2x5a5'
+    },
+    tooltip : {
+        trigger: 'axis',
+        axisPointer : {            // 坐标轴指示器,坐标轴触发有效
+            type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
+        },
+        formatter: function (params) {
+            var tar;
+            if (params[1].value != '-') {
+                tar = params[1];
+            }
+            else {
+                tar = params[0];
+            }
+            return tar.name + '<br/>' + tar.seriesName + ' : ' + tar.value;
+        }
+    },
+    legend: {
+        data:['支出','收入']
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    xAxis : [
+        {
+            type : 'category',
+            splitLine: {show:false},
+            data :  function (){
+                var list = [];
+                for (var i = 1; i <= 11; i++) {
+                    list.push('11月' + i + '日');
+                }
+                return list;
+            }()
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value'
+        }
+    ],
+    series : [
+        {
+            name:'辅助',
+            type:'bar',
+            stack: '总量',
+            itemStyle:{
+                normal:{
+                    barBorderColor:'rgba(0,0,0,0)',
+                    color:'rgba(0,0,0,0)'
+                },
+                emphasis:{
+                    barBorderColor:'rgba(0,0,0,0)',
+                    color:'rgba(0,0,0,0)'
+                }
+            },
+            data:[0, 900, 1245, 1530, 1376, 1376, 1511, 1689, 1856, 1495, 1292]
+        },
+        {
+            name:'收入',
+            type:'bar',
+            stack: '总量',
+            itemStyle : { normal: {label : {show: true, position: 'top'}}},
+            data:[900, 345, 393, '-', '-', 135, 178, 286, '-', '-', '-']
+        },
+        {
+            name:'支出',
+            type:'bar',
+            stack: '总量',
+            itemStyle : { normal: {label : {show: true, position: 'bottom'}}},
+            data:['-', '-', '-', 108, 154, '-', '-', '-', 119, 361, 203]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 131 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar7.html

@@ -0,0 +1,131 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title: {
+        text: '深圳月最低生活费组成(单位:元)',
+        subtext: 'From ExcelHome',
+        sublink: 'http://e.weibo.com/1341556070/AjQH99che'
+    },
+    tooltip : {
+        trigger: 'axis',
+        axisPointer : {            // 坐标轴指示器,坐标轴触发有效
+            type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
+        },
+        formatter: function (params) {
+            var tar = params[0];
+            return tar.name + '<br/>' + tar.seriesName + ' : ' + tar.value;
+        }
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    xAxis : [
+        {
+            type : 'category',
+            splitLine: {show:false},
+            data : ['总费用','房租','水电费','交通费','伙食费','日用品数']
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value'
+        }
+    ],
+    series : [
+        {
+            name:'辅助',
+            type:'bar',
+            stack: '总量',
+            itemStyle:{
+                normal:{
+                    barBorderColor:'rgba(0,0,0,0)',
+                    color:'rgba(0,0,0,0)'
+                },
+                emphasis:{
+                    barBorderColor:'rgba(0,0,0,0)',
+                    color:'rgba(0,0,0,0)'
+                }
+            },
+            data:[0, 1700, 1400, 1200, 300, 0]
+        },
+        {
+            name:'生活费',
+            type:'bar',
+            stack: '总量',
+            itemStyle : { normal: {label : {show: true, position: 'inside'}}},
+            data:[2900, 1200, 300, 200, 900, 300]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 140 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar8.html

@@ -0,0 +1,140 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+var labelRight = {normal: {label : {position: 'right'}}};
+option = {
+    title: {
+        text: '交错正负轴标签',
+        subtext: 'From ExcelHome',
+        sublink: 'http://e.weibo.com/1341556070/AjwF2AgQm'
+    },
+    tooltip : {
+        trigger: 'axis',
+        axisPointer : {            // 坐标轴指示器,坐标轴触发有效
+            type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
+        }
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            magicType : {show: true, type: ['line', 'bar']},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    grid: {
+        y: 80,
+        y2: 30
+    },
+    xAxis : [
+        {
+            type : 'value',
+            position: 'top',
+            splitLine: {lineStyle:{type:'dashed'}},
+        }
+    ],
+    yAxis : [
+        {
+            type : 'category',
+            axisLine: {show: false},
+            axisLabel: {show: false},
+            axisTick: {show: false},
+            splitLine: {show: false},
+            data : ['ten', 'nine', 'eight', 'seven', 'six', 'five', 'four', 'three', 'two', 'one']
+        }
+    ],
+    series : [
+        {
+            name:'生活费',
+            type:'bar',
+            stack: '总量',
+            itemStyle : { normal: {
+                color: 'orange',
+                borderRadius: 5,
+                label : {
+                    show: true,
+                    position: 'left',
+                    formatter: '{b}'
+                }
+            }},
+            data:[
+                {value:-0.07, itemStyle:labelRight},
+                {value:-0.09, itemStyle:labelRight},
+                0.2, 0.44, 
+                {value:-0.23, itemStyle:labelRight},
+                0.08,
+                {value:-0.17, itemStyle:labelRight},
+                0.47,
+                {value:-0.36, itemStyle:labelRight},
+                0.18
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 192 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/bar9.html

@@ -0,0 +1,192 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+var placeHoledStyle = {
+    normal:{
+        barBorderColor:'rgba(0,0,0,0)',
+        color:'rgba(0,0,0,0)'
+    },
+    emphasis:{
+        barBorderColor:'rgba(0,0,0,0)',
+        color:'rgba(0,0,0,0)'
+    }
+};
+var dataStyle = { 
+    normal: {
+        label : {
+            show: true,
+            position: 'insideLeft',
+            formatter: '{c}%'
+        }
+    }
+};
+option = {
+    title: {
+        text: '多维条形图',
+        subtext: 'From ExcelHome',
+        sublink: 'http://e.weibo.com/1341556070/AiEscco0H'
+    },
+    tooltip : {
+        trigger: 'axis',
+        axisPointer : {            // 坐标轴指示器,坐标轴触发有效
+            type : 'shadow'        // 默认为直线,可选为:'line' | 'shadow'
+        },
+        formatter : '{b}<br/>{a0}:{c0}%<br/>{a2}:{c2}%<br/>{a4}:{c4}%<br/>{a6}:{c6}%'
+    },
+    legend: {
+        y: 55,
+        itemGap : document.getElementById('main').offsetWidth / 8,
+        data:['GML', 'PYP','WTC', 'ZTW']
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    grid: {
+        y: 80,
+        y2: 30
+    },
+    xAxis : [
+        {
+            type : 'value',
+            position: 'top',
+            splitLine: {show: false},
+            axisLabel: {show: false}
+        }
+    ],
+    yAxis : [
+        {
+            type : 'category',
+            splitLine: {show: false},
+            data : ['重庆', '天津', '上海', '北京']
+        }
+    ],
+    series : [
+        {
+            name:'GML',
+            type:'bar',
+            stack: '总量',
+            itemStyle : dataStyle,
+            data:[38, 50, 33, 72]
+        },
+        {
+            name:'GML',
+            type:'bar',
+            stack: '总量',
+            itemStyle: placeHoledStyle,
+            data:[62, 50, 67, 28]
+        },
+        {
+            name:'PYP',
+            type:'bar',
+            stack: '总量',
+            itemStyle : dataStyle,
+            data:[61, 41, 42, 30]
+        },
+        {
+            name:'PYP',
+            type:'bar',
+            stack: '总量',
+            itemStyle: placeHoledStyle,
+            data:[39, 59, 58, 70]
+        },
+        {
+            name:'WTC',
+            type:'bar',
+            stack: '总量',
+            itemStyle : dataStyle,
+            data:[37, 35, 44, 60]
+        },
+        {
+            name:'WTC',
+            type:'bar',
+            stack: '总量',
+            itemStyle: placeHoledStyle,
+            data:[63, 65, 56, 40]
+        },
+        {
+            name:'ZTW',
+            type:'bar',
+            stack: '总量',
+            itemStyle : dataStyle,
+            data:[71, 50, 31, 39]
+        },
+        {
+            name:'ZTW',
+            type:'bar',
+            stack: '总量',
+            itemStyle: placeHoledStyle,
+            data:[29, 50, 69, 61]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 169 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/chord.html

@@ -0,0 +1,169 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '测试数据'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: function (params) {
+            if (params.indicator2) { // is edge
+                return params.value.weight;
+            } else {// is node
+                return params.name
+            }
+        }
+    },
+    toolbox: {
+        show : true,
+        y:'bottom',
+        feature : {
+            restore : {show: true},
+            magicType: {show: true, type: ['force', 'chord']},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        x: 'right',
+        data:['g1','g2', 'g3', 'g4']
+    },
+    series : [
+        {
+            type:'chord',
+            radius : ['55%', '75%'],
+            center : ['50%', '50%'],
+            padding : 2,
+            sort : 'descending', // can be 'none', 'ascending', 'descending'
+            sortSub : 'descending', // can be 'none', 'ascending', 'descending'
+            startAngle : 90,
+            clockWise : false,
+            showScale : true,
+            showScaleText : true,
+            itemStyle : {
+                normal : {
+                    borderWidth : 0,
+                    borderColor : '#000',
+                    chordStyle : {
+                        borderWidth : 1,
+                        borderColor : '#333'
+                    },
+                    label: {
+                        show: true,
+                        color: 'red'
+                    }
+                },
+                emphasis : {
+                    borderWidth : 0,
+                    borderColor : '#000',
+                    chordStyle : {
+                        borderWidth : 2,
+                        borderColor : 'black'
+                    }
+                }
+            },
+            data : [
+                {
+                    name : 'g1',
+                    itemStyle : {
+                        normal: {
+                            color: 'rgba(255,30,30,0.5)',
+                            lineStyle : {
+                                width: 1,
+                                color: 'green'
+                            }
+                        },
+                        emphasis: {
+                            color: 'yellow',
+                            lineStyle : {
+                                width: 2,
+                                color: 'blue'
+                            }
+                        }
+                    }
+                },
+                {name : 'g2'},
+                {name : 'g3'},
+                {name : 'g4'}
+            ],
+            matrix : [
+                [11975,  5871, 8916, 2868],
+                [ 1951, 10048, 2060, 6171],
+                [ 8010, 16145, 8090, 8045],
+                [ 1013,   990,  940, 6907]
+            ],
+            markPoint : {
+                symbol: 'star',
+                data : [
+                    {name : '打酱油的标注', value : 100, x:'5%', y:'50%', symbolSize:32},
+                    {name : '打酱油的标注', value : 100, x:'95%', y:'50%', symbolSize:32}
+                ]
+            }
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 126 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/chord1.html

@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '测试数据',
+        subtext: 'From d3.js',
+        x:'right',
+        y:'bottom'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: function (params) {
+            if (params.indicator2) { // is edge
+                return params.value.weight;
+            } else {// is node
+                return params.name
+            }
+        }
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            restore : {show: true},
+            magicType: {show: true, type: ['force', 'chord']},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        x: 'left',
+        data:['group1','group2', 'group3', 'group4']
+    },
+    series : [
+        {
+            type:'chord',
+            sort : 'ascending',
+            sortSub : 'descending',
+            showScale : true,
+            showScaleText : true,
+            data : [
+                {name : 'group1'},
+                {name : 'group2'},
+                {name : 'group3'},
+                {name : 'group4'}
+            ],
+            itemStyle : {
+                normal : {
+                    label : {
+                        show : false
+                    }
+                }
+            },
+            matrix : [
+                [11975,  5871, 8916, 2868],
+                [ 1951, 10048, 2060, 6171],
+                [ 8010, 16145, 8090, 8045],
+                [ 1013,   990,  940, 6907]
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 247 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/chord2.html

@@ -0,0 +1,247 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    color : [
+        '#FBB367','#80B1D2','#FB8070','#CC99FF','#B0D961',
+        '#99CCCC','#BEBBD8','#FFCC99','#8DD3C8','#FF9999',
+        '#CCEAC4','#BB81BC','#FBCCEC','#CCFF66','#99CC66',
+        '#66CC66','#FF6666','#FFED6F','#ff7f50','#87cefa',
+    ],
+    title : {
+        text : '中东地区的敌友关系',
+        subtext: '数据来自财新网',
+        sublink: 'http://international.caixin.com/2013-09-06/100579154.html',
+        x:'right',
+        y:'bottom'
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            restore : {show: true},
+            magicType: {show: true, type: ['force', 'chord']},
+            saveAsImage : {show: true}
+        }
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter : function (params) {
+            if (params.name && params.name.indexOf('-') != -1) {
+                return params.name.replace('-', ' ' + params.seriesName + ' ')
+            }
+            else {
+                return params.name ? params.name : params.data.id
+            }
+        }
+    },
+    legend : {
+        data : [
+            '美国',
+            '叙利亚反对派',
+            '阿萨德',
+            '伊朗',
+            '塞西',
+            '哈马斯',
+            '以色列',
+            '穆斯林兄弟会',
+            '基地组织',
+            '俄罗斯',
+            '黎巴嫩什叶派',
+            '土耳其',
+            '卡塔尔',
+            '沙特',
+            '黎巴嫩逊尼派',
+            '',
+            '支持',
+            '反对',
+            '未表态'
+        ],
+        orient : 'vertical',
+        x : 'left'
+    },
+    series : [
+        {
+            "name": "支持",
+            "type": "chord",
+            "showScaleText": false,
+            "clockWise": false,
+            "data": [
+                {"name": "美国"},
+                {"name": "叙利亚反对派"},
+                {"name": "阿萨德"},
+                {"name": "伊朗"},
+                {"name": "塞西"},
+                {"name": "哈马斯"},
+                {"name": "以色列"},
+                {"name": "穆斯林兄弟会"},
+                {"name": "基地组织"},
+                {"name": "俄罗斯"},
+                {"name": "黎巴嫩什叶派"},
+                {"name": "土耳其"},
+                {"name": "卡塔尔"},
+                {"name": "沙特"},
+                {"name": "黎巴嫩逊尼派"}
+            ],
+            "matrix": [
+                [0,100,0,0,0,0,100,0,0,0,0,0,0,0,0],
+                [10,0,0,0,0,10,10,0,10,0,0,10,10,10,10],
+                [0,0,0,10,0,0,0,0,0,10,10,0,0,0,0],
+                [0,0,100,0,0,100,0,0,0,0,100,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,10,0],
+                [0,100,0,10,0,0,0,0,0,0,0,0,10,0,0],
+                [10,100,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,10,10,0,0],
+                [0,100,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,100,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,100,10,0,0,0,0,0,0,0,0,0,0,0],
+                [0,100,0,0,0,0,0,100,0,0,0,0,0,0,0],
+                [0,100,0,0,0,100,0,100,0,0,0,0,0,0,0],
+                [0,100,0,0,100,0,0,0,0,0,0,0,0,0,100],
+                [0,100,0,0,0,0,0,0,0,0,0,0,0,10,0]
+            ]
+        },
+        {
+            "name": "反对",
+            "type": "chord",
+            "insertToSerie": "支持",
+            "data": [
+                {"name": "美国"},
+                {"name": "叙利亚反对派"},
+                {"name": "阿萨德"},
+                {"name": "伊朗"},
+                {"name": "塞西"},
+                {"name": "哈马斯"},
+                {"name": "以色列"},
+                {"name": "穆斯林兄弟会"},
+                {"name": "基地组织"},
+                {"name": "俄罗斯"},
+                {"name": "黎巴嫩什叶派"},
+                {"name": "土耳其"},
+                {"name": "卡塔尔"},
+                {"name": "沙特"},
+                {"name": "黎巴嫩逊尼派"}
+            ],
+            "matrix": [
+                [0,0,100,100,0,100,0,0,100,0,0,0,0,0,0],
+                [0,0,0,10,0,0,0,0,0,10,10,0,0,0,0],
+                [10,0,0,0,0,0,10,10,10,0,0,10,10,0,10],
+                [10,100,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,10,0,100,0,0,0,10,10,0,0],
+                [10,0,0,0,100,0,10,0,0,0,0,0,0,0,0],
+                [0,0,100,0,0,100,0,0,0,0,0,0,0,0,0],
+                [0,0,100,0,10,0,0,0,0,0,0,0,0,10,0],
+                [10,0,100,0,0,0,0,0,0,0,0,0,0,100,0],
+                [0,100,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,100,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,100,0,100,0,0,0,0,0,0,0,0,0,0],
+                [0,0,100,0,100,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,100,10,0,0,0,0,0,0],
+                [0,0,100,0,0,0,0,0,0,0,0,0,0,0,0]
+            ]
+        },
+        {
+            "name": "未表态",
+            "type": "chord",
+            "insertToSerie": "支持",
+            "data": [
+                {"name": "美国"},
+                {"name": "叙利亚反对派"},
+                {"name": "阿萨德"},
+                {"name": "伊朗"},
+                {"name": "塞西"},
+                {"name": "哈马斯"},
+                {"name": "以色列"},
+                {"name": "穆斯林兄弟会"},
+                {"name": "基地组织"},
+                {"name": "俄罗斯"},
+                {"name": "黎巴嫩什叶派"},
+                {"name": "土耳其"},
+                {"name": "卡塔尔"},
+                {"name": "沙特"},
+                {"name": "黎巴嫩逊尼派"}
+            ],
+            "matrix": [
+                [0,0,0,0,100,0,0,100,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [10,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [10,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],
+                [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 164 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/chord3.html

@@ -0,0 +1,164 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '德国队效力联盟',
+        x:'right',
+        y:'bottom'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: function (params) {
+            if (params.indicator2) {    // is edge
+                return params.indicator2 + ' ' + params.name + ' ' + params.indicator;
+            } else {    // is node
+                return params.name
+            }
+        }
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            restore : {show: true},
+            magicType: {show: true, type: ['force', 'chord']},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        x: 'left',
+        data:['阿森纳', '拜仁慕尼黑', '多特蒙德']
+    },
+    series : [
+        {
+            type:'chord',
+            sort : 'ascending',
+            sortSub : 'descending',
+            showScale : false,
+            itemStyle : {
+                normal : {
+                    label : {
+                        rotate : true
+                    }
+                }
+            },
+            // 使用 nodes links 表达和弦图
+            nodes: [
+                {name:'默特萨克'},
+                {name:'厄齐尔'},
+                {name:'波多尔斯基'},
+                {name:'诺伊尔'},
+                {name:'博阿滕'},
+                {name:'施魏因施泰格'},
+                {name:'拉姆'},
+                {name:'克罗斯'},
+                {name:'穆勒'},
+                {name:'格策'},
+                {name:'胡梅尔斯'},
+                {name:'魏登费勒'},
+                {name:'杜尔姆'},
+                {name:'格罗斯克罗伊茨'},
+                {name:'阿森纳'},
+                {name:'拜仁慕尼黑'},
+                {name:'多特蒙德'}
+            ],
+            links: [
+                {source: '阿森纳', target: '默特萨克', weight: 0.9, name: '效力'},
+                {source: '阿森纳', target: '厄齐尔', weight: 0.9, name: '效力'},
+                {source: '阿森纳', target: '波多尔斯基', weight: 0.9, name: '效力'},
+                {source: '拜仁慕尼黑', target: '诺伊尔', weight: 0.9, name: '效力'},
+                {source: '拜仁慕尼黑', target: '博阿滕', weight: 0.9, name: '效力'},
+                {source: '拜仁慕尼黑', target: '施魏因施泰格', weight: 0.9, name: '效力'},
+                {source: '拜仁慕尼黑', target: '拉姆', weight: 0.9, name: '效力'},
+                {source: '拜仁慕尼黑', target: '克罗斯', weight: 0.9, name: '效力'},
+                {source: '拜仁慕尼黑', target: '穆勒', weight: 0.9, name: '效力'},
+                {source: '拜仁慕尼黑', target: '格策', weight: 0.9, name: '效力'},
+                {source: '多特蒙德', target: '胡梅尔斯', weight: 0.9, name: '效力'},
+                {source: '多特蒙德', target: '魏登费勒', weight: 0.9, name: '效力'},
+                {source: '多特蒙德', target: '杜尔姆', weight: 0.9, name: '效力'},
+                {source: '多特蒙德', target: '格罗斯克罗伊茨', weight: 0.9, name: '效力'},
+
+                // Ribbon Type 的和弦图每一对节点之间必须是双向边
+                {target: '阿森纳', source: '默特萨克', weight: 1},
+                {target: '阿森纳', source: '厄齐尔', weight: 1},
+                {target: '阿森纳', source: '波多尔斯基', weight: 1},
+                {target: '拜仁慕尼黑', source: '诺伊尔', weight: 1},
+                {target: '拜仁慕尼黑', source: '博阿滕', weight: 1},
+                {target: '拜仁慕尼黑', source: '施魏因施泰格', weight: 1},
+                {target: '拜仁慕尼黑', source: '拉姆', weight: 1},
+                {target: '拜仁慕尼黑', source: '克罗斯', weight: 1},
+                {target: '拜仁慕尼黑', source: '穆勒', weight: 1},
+                {target: '拜仁慕尼黑', source: '格策', weight: 1},
+                {target: '多特蒙德', source: '胡梅尔斯', weight: 1},
+                {target: '多特蒙德', source: '魏登费勒', weight: 1},
+                {target: '多特蒙德', source: '杜尔姆', weight: 1},
+                {target: '多特蒙德', source: '格罗斯克罗伊茨', weight: 1}
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 152 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/chord4.html

@@ -0,0 +1,152 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '德国队效力联盟',
+        x:'right',
+        y:'bottom'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: function (params) {
+            if (params.indicator2) {    // is edge
+                return params.indicator2 + ' ' + params.name + ' ' + params.indicator;
+            } else {    // is node
+                return params.name
+            }
+        }
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            restore : {show: true},
+            magicType: {show: true, type: ['force', 'chord']},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        x: 'left',
+        data:['阿森纳', '拜仁慕尼黑', '多特蒙德']
+    },
+    series : [
+        {
+            name: '德国队效力联盟',
+            type:'chord',
+            sort : 'ascending',
+            sortSub : 'descending',
+            ribbonType: false,
+            radius: '60%',
+            itemStyle : {
+                normal : {
+                    label : {
+                        rotate : true
+                    }
+                }
+            },
+            minRadius: 7,
+            maxRadius: 20,
+            // 使用 nodes links 表达和弦图
+            nodes: [
+                {name:'默特萨克'},
+                {name:'厄齐尔'},
+                {name:'波多尔斯基'},
+                {name:'诺伊尔'},
+                {name:'博阿滕'},
+                {name:'施魏因施泰格'},
+                {name:'拉姆'},
+                {name:'克罗斯'},
+                {name:'穆勒', symbol: 'star'},
+                {name:'格策'},
+                {name:'胡梅尔斯'},
+                {name:'魏登费勒'},
+                {name:'杜尔姆'},
+                {name:'格罗斯克罗伊茨'},
+                {name:'阿森纳'},
+                {name:'拜仁慕尼黑'},
+                {name:'多特蒙德'}
+            ],
+            links: [
+                {source: '阿森纳', target: '默特萨克', weight: 1, name: '效力'},
+                {source: '阿森纳', target: '厄齐尔', weight: 1, name: '效力'},
+                {source: '阿森纳', target: '波多尔斯基', weight: 1, name: '效力'},
+                {source: '拜仁慕尼黑', target: '诺伊尔', weight: 1, name: '效力'},
+                {source: '拜仁慕尼黑', target: '博阿滕', weight: 1, name: '效力'},
+                {source: '拜仁慕尼黑', target: '施魏因施泰格', weight: 1, name: '效力'},
+                {source: '拜仁慕尼黑', target: '拉姆', weight: 1, name: '效力'},
+                {source: '拜仁慕尼黑', target: '克罗斯', weight: 1, name: '效力'},
+                {source: '拜仁慕尼黑', target: '穆勒', weight: 1, name: '效力'},
+                {source: '拜仁慕尼黑', target: '格策', weight: 1, name: '效力'},
+                {source: '多特蒙德', target: '胡梅尔斯', weight: 1, name: '效力'},
+                {source: '多特蒙德', target: '魏登费勒', weight: 1, name: '效力'},
+                {source: '多特蒙德', target: '杜尔姆', weight: 1, name: '效力'},
+                {source: '多特蒙德', target: '格罗斯克罗伊茨', weight: 1, name: '效力'}
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/data/migration.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 5756 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/data/webkit-dep.json


+ 209 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/dataRange.html

@@ -0,0 +1,209 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+    <style type="text/css">
+        .CodeMirror {
+            height: 550px;
+        }
+    </style>
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+dataRangeStyle = [
+// 0
+    {
+        min: 0,
+        max: 2000,
+        formatter : function(v, v2){
+            if (v2 < 1000) { return '低于' + v2}
+            else if (v > 1000) { return '高于' + v}
+            else { return '中' }
+        }
+    },
+// 1
+    {
+        orient: 'horizontal', // 'vertical'
+        min: 0,
+        max: 2000,
+        formatter : '{value} 到 {value2}'
+    },
+// 2
+    {
+        text:['高','低'],           // 文本,默认为数值文本
+        min: 0,
+        max: 2000
+    },
+// 3
+    {
+        orient: 'horizontal', // 'vertical'
+        text:['高','低'],           // 文本,默认为数值文本
+        min: 0,
+        max: 2000
+    },
+// 4
+    {
+        splitNumber: 0,
+        min: 0,
+        max: 2000
+    },
+// 5
+    {
+        orient: 'horizontal', // 'vertical'
+        splitNumber: 0,
+        min: 0,
+        max: 2000
+    },
+// 6
+    {
+        splitNumber: 0,
+        text:['高','低'],            // 文本,默认为数值文本
+        min: 0,
+        max: 2000
+    },
+// 7
+    {
+        orient: 'horizontal', // 'vertical'
+        splitNumber: 0,
+        text:['高','低'],            // 文本,默认为数值文本
+        min: 0,
+        max: 2000
+    },
+// 8
+    {
+        calculable : true,
+        min: 0,
+        max: 2000,
+        formatter : function(v) {
+            if (v > 1500) {return v + ' (高)'}
+            else if (v < 500) {return v + ' (低)'}
+            else {return v + ' (中)'};
+        }
+    },
+// 9
+    {
+        orient: 'horizontal',      // 'vertical'
+        calculable : true,
+        min: 0,
+        max: 2000
+    },
+// 10
+    {
+        color:['red','yellow'],    //颜色
+        text:['高','低'],            // 文本,默认为数值文本
+        calculable : true,
+        min: 0,
+        max: 2000
+    },
+// 11
+    {
+        orient: 'horizontal',      // 'vertical'
+        color:['red','yellow'],    //颜色
+        text:['高','低'],            // 文本,默认为数值文本
+        calculable : true,
+        min: 0,
+        max: 2000
+    },
+// 12
+    {
+        orient: 'vertical',      // 'vertical'
+        color: ['red', 'pink'],    //颜色
+        splitList: [
+            {start: 300000},
+            {start: 900, end: 200000},
+            {start: 310, end: 1000},
+            {start: 200, end: 300},
+            {start: 10, end: 200, label: '自定义label: 10 到 200'},
+            {start: 5, end: 5},
+            {end: 10, color: 'black'}
+        ]
+    }
+]
+var cur = curIndex++%dataRangeStyle.length;
+option = {
+    title:{
+        text: '当前样式序号:' + cur,
+        subtext: 'NO.' + cur
+    },
+    dataRange: dataRangeStyle[cur],
+    series : [
+        {
+            name: '',
+            type: 'map',
+            data:[]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main" style="height: 530px;"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+                    &nbsp;&nbsp;&nbsp;
+                    <a target="_blank" href="./dataRange2.html">dataRange间隔自定义(customize split)</a>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">
+        var curIndex = 0;
+    </script>
+    <script src="../asset/js/echartsExample.js"></script>
+    <script>
+        function focusGraphic() {
+            domCode.className = 'col-md-4 ani';
+            domGraphic.className = 'col-md-8 ani';
+            refresh();
+        }
+    </script>
+</body>
+</html>

+ 126 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/dataRange1.html

@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        trigger: 'item'
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataZoom : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    dataRange: {
+        min: 0,
+        max: 100,
+        y: 'center',
+        text:['高','低'],           // 文本,默认为数值文本
+        color:['lightgreen','yellow'],
+        calculable : true
+    },
+    xAxis : [
+        {
+            type : 'value',
+            scale : true
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value',
+            position:'right',
+            scale : true
+        }
+    ],
+    animation: false,
+    series : [
+        {
+            name:'scatter1',
+            type:'scatter',
+            symbolSize:5,
+            data: (function () {
+                var d = [];
+                var len = 500;
+                var value;
+                while (len--) {
+                    value = (Math.random()*100).toFixed(2) - 0;
+                    d.push([
+                        (Math.random()*value + value).toFixed(2) - 0,
+                        (Math.random()*value).toFixed(2) - 0,
+                        value
+                    ]);
+                }
+                return d;
+            })()
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 186 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/dataRange2.html

@@ -0,0 +1,186 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+    <style type="text/css">
+        .CodeMirror {
+            height: 550px;
+        }
+    </style>
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '订单量',
+        subtext: '纯属虚构',
+        x:'center'
+    },
+    tooltip : {
+        trigger: 'item'
+    },
+    legend: {
+        orient: 'vertical',
+        x:'left',
+        data:['订单量']
+    },
+    dataRange: {
+        x: 'left',
+        y: 'bottom',
+        splitList: [
+            {start: 1500},
+            {start: 900, end: 1500},
+            {start: 310, end: 1000},
+            {start: 200, end: 300},
+            {start: 10, end: 200, label: '10 到 200(自定义label)'},
+            {start: 5, end: 5, label: '5(自定义特殊颜色)', color: 'black'},
+            {end: 10}
+        ],
+        color: ['#E0022B', '#E09107', '#A3E00B']
+    },
+    toolbox: {
+        show: true,
+        orient : 'vertical',
+        x: 'right',
+        y: 'center',
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    roamController: {
+        show: true,
+        x: 'right',
+        mapTypeControl: {
+            'china': true
+        }
+    },
+    series : [
+        {
+            name: '订单量',
+            type: 'map',
+            mapType: 'china',
+            roam: false,
+            itemStyle:{
+                normal:{
+                    label:{
+                        show:true,
+                        textStyle: {
+                           color: "rgb(249, 249, 249)"
+                        }
+                    }
+                },
+                emphasis:{label:{show:true}}
+            },
+            data:[
+                {name: '北京',value: Math.round(Math.random()*2000)},
+                {name: '天津',value: Math.round(Math.random()*2000)},
+                {name: '上海',value: Math.round(Math.random()*2000)},
+                {name: '重庆',value: Math.round(Math.random()*2000)},
+                {name: '河北',value: 0},
+                {name: '河南',value: Math.round(Math.random()*2000)},
+                {name: '云南',value: 5},
+                {name: '辽宁',value: 305},
+                {name: '黑龙江',value: Math.round(Math.random()*2000)},
+                {name: '湖南',value: 200},
+                {name: '安徽',value: Math.round(Math.random()*2000)},
+                {name: '山东',value: Math.round(Math.random()*2000)},
+                {name: '新疆',value: Math.round(Math.random()*2000)},
+                {name: '江苏',value: Math.round(Math.random()*2000)},
+                {name: '浙江',value: Math.round(Math.random()*2000)},
+                {name: '江西',value: Math.round(Math.random()*2000)},
+                {name: '湖北',value: Math.round(Math.random()*2000)},
+                {name: '广西',value: Math.round(Math.random()*2000)},
+                {name: '甘肃',value: Math.round(Math.random()*2000)},
+                {name: '山西',value: Math.round(Math.random()*2000)},
+                {name: '内蒙古',value: Math.round(Math.random()*2000)},
+                {name: '陕西',value: Math.round(Math.random()*2000)},
+                {name: '吉林',value: Math.round(Math.random()*2000)},
+                {name: '福建',value: Math.round(Math.random()*2000)},
+                {name: '贵州',value: Math.round(Math.random()*2000)},
+                {name: '广东',value: Math.round(Math.random()*2000)},
+                {name: '青海',value: Math.round(Math.random()*2000)},
+                {name: '西藏',value: Math.round(Math.random()*2000)},
+                {name: '四川',value: Math.round(Math.random()*2000)},
+                {name: '宁夏',value: Math.round(Math.random()*2000)},
+                {name: '海南',value: Math.round(Math.random()*2000)},
+                {name: '台湾',value: Math.round(Math.random()*2000)},
+                {name: '香港',value: Math.round(Math.random()*2000)},
+                {name: '澳门',value: Math.round(Math.random()*2000)}
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main" style="height: 530px;"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">
+        var curIndex = 0;
+    </script>
+    <script src="../asset/js/echartsExample.js"></script>
+    <script>
+        function focusGraphic() {
+            domCode.className = 'col-md-4 ani';
+            domGraphic.className = 'col-md-8 ani';
+            refresh();
+        }
+    </script>
+</body>
+</html>

+ 134 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/dataZoom.html

@@ -0,0 +1,134 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        trigger: 'axis'
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataZoom : {show: true},
+            dataView : {show: true},
+            magicType : {show: true, type: ['line', 'bar']},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    dataZoom : {
+        show : true,
+        realtime : true,
+        //orient: 'vertical',   // 'horizontal'
+        //x: 0,
+        y: 36,
+        //width: 400,
+        height: 20,
+        //backgroundColor: 'rgba(221,160,221,0.5)',
+        //dataBackgroundColor: 'rgba(138,43,226,0.5)',
+        //fillerColor: 'rgba(38,143,26,0.6)',
+        //handleColor: 'rgba(128,43,16,0.8)',
+        //xAxisIndex:[],
+        //yAxisIndex:[],
+        start : 40,
+        end : 60
+    },
+    xAxis : [
+        {
+            type : 'category',
+            boundaryGap : false,
+            data : function (){
+                var list = [];
+                var n = 0;
+                while (n++ < 150) {
+                    list.push(n);
+                }
+                return list;
+            }()
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value'
+        }
+    ],
+    series : [
+        {
+            name:'dz',
+            type:'line',
+            data:function (){
+                var list = [];
+                for (var i = 1; i <= 150; i++) {
+                    list.push(Math.round(Math.random()* 30));
+                }
+                return list;
+            }()
+        }
+    ],
+    calculable:false
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 136 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/dataZoom1.html

@@ -0,0 +1,136 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        trigger: 'axis'
+    },
+    legend: {
+        data:['最高','最低']
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataZoom : {show: true},
+            dataView : {show: true},
+            magicType : {show: true, type: ['line', 'bar', 'stack', 'tiled']},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    calculable : true,
+    dataZoom : {
+        show : true,
+        realtime : true,
+        start : 20,
+        end : 80
+    },
+    xAxis : [
+        {
+            type : 'category',
+            boundaryGap : false,
+            data : function (){
+                var list = [];
+                for (var i = 1; i <= 30; i++) {
+                    list.push('2013-03-' + i);
+                }
+                return list;
+            }()
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value'
+        }
+    ],
+    series : [
+        {
+            name:'最高',
+            type:'line',
+            data:function (){
+                var list = [];
+                for (var i = 1; i <= 30; i++) {
+                    list.push(Math.round(Math.random()* 30));
+                }
+                return list;
+            }()
+        },
+        {
+            name:'最低',
+            type:'line',
+            data:function (){
+                var list = [];
+                for (var i = 1; i <= 30; i++) {
+                    list.push(Math.round(Math.random()* 10));
+                }
+                return list;
+            }()
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 181 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/dataZoom2.html

@@ -0,0 +1,181 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        trigger: 'axis'
+    },
+    legend: {
+        data:['选定区间数据']
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {readOnly:false},
+            magicType : {show: true, type: ['line', 'bar', 'stack', 'tiled']},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    dataZoom : {
+        show : true,
+        realtime : false,
+        start : 0,
+        end : 10,
+        xAxisIndex:1
+    },
+    xAxis : [
+        {
+            type : 'category',
+            boundaryGap : true,
+            data : function (){
+                var list = [];
+                for (var i = 0; i < 10; i++) {
+                    list.push(i);
+                }
+                return list;
+            }()
+        },
+        {
+            type : 'category',
+            name:'隐藏全局',
+            boundaryGap : true,
+            data : function (){
+                var list = [];
+                for (var i = 0; i < 100; i++) {
+                    list.push(i);
+                }
+                return list;
+            }(),
+            splitLine: {show:false},
+            splitArea: {show:false}
+        }      
+    ],
+    yAxis : [
+        {
+            type : 'value'
+        }
+    ],
+    series : [
+        {
+            name:'选定区间数据',
+            type:'line',
+            data:function (){
+                var list = [];
+                for (var i = 0; i < 10; i++) {
+                    list.push(Math.round(Math.random()* 30) + 30);
+                }
+                return list;
+            }()
+        },
+        {
+            name:'全局',
+            type:'line',
+            symbol:'none',
+            itemStyle:{  
+              normal:{
+                color:'rgba(0,0,0,0)'
+              }
+            },
+            data:function (){
+                var list = [];
+                for (var i = 0; i < 100; i++) {
+                    list.push(Math.round(Math.random()* 10));
+                }
+                return list;
+            }(),
+          xAxisIndex:1
+        }
+    ]
+};
+var ecConfig = require('echarts/config');
+function getData(param) {
+  var start = param.zoom.start;
+  var end = param.zoom.end;
+  var curOption = this.getOption();
+  curOption.xAxis[0].data = function (){
+    var list = [];
+    for (var i = start; i < end; i++) {
+      list.push(i);
+    }
+    return list;
+  }();
+  curOption.series[0].data = function (){
+    var list = [];
+    for (var i = start; i < end; i++) {
+      list.push(Math.round(Math.random()* 30) + 30);
+    }
+    return list;
+  }();
+  myChart.setOption(curOption,true)
+}
+
+
+myChart.on(ecConfig.EVENT.DATA_ZOOM, getData);
+                    
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 118 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/demo.html

@@ -0,0 +1,118 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="../asset/js/esl/esl.js"></script>
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+    <div class="container featurette">
+        <div class="row">
+            <div id="graphic" class="col-md-12">
+                <div id="main" style="height:400px;width:100%"></div>
+            </div><!--/span-->
+        </div><!--/row-->
+    </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">
+        require.config({
+            packages: [
+                {
+                    name: 'echarts',
+                    location: '../../src',
+                    main: 'echarts'
+                },
+                {
+                    name: 'zrender',
+                    location: 'http://ecomfe.github.io/zrender/src',
+                    //location: '../../../zrender/src',
+                    main: 'zrender'
+                }
+            ]
+        });
+        
+        var option = {
+            tooltip : {
+                trigger: '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',
+                    data : ['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月']
+                }
+            ],
+            yAxis : [
+                {
+                    type : 'value',
+                    splitArea : {show : true}
+                }
+            ],
+            series : [
+                {
+                    name:'蒸发量',
+                    type:'bar',
+                    data:[2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3]
+                },
+                {
+                    name:'降水量',
+                    type:'bar',
+                    data:[2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]
+                }
+            ]
+        };
+        
+        require(
+            [
+                'echarts',
+                'echarts/chart/line',
+                'echarts/chart/bar'
+            ],
+            function (ec) {
+                var myChart = ec.init(document.getElementById('main'));
+                myChart.setOption(option);
+            }
+        )
+    </script>
+</body>
+</html>

+ 191 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/dynamicLineBar.html

@@ -0,0 +1,191 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '动态数据',
+        subtext: '纯属虚构'
+    },
+    tooltip : {
+        trigger: '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}
+        }
+    },
+    dataZoom : {
+        show : false,
+        start : 0,
+        end : 100
+    },
+    xAxis : [
+        {
+            type : 'category',
+            boundaryGap : true,
+            data : (function (){
+                var now = new Date();
+                var res = [];
+                var len = 10;
+                while (len--) {
+                    res.unshift(now.toLocaleTimeString().replace(/^\D*/,''));
+                    now = new Date(now - 2000);
+                }
+                return res;
+            })()
+        },
+        {
+            type : 'category',
+            boundaryGap : true,
+            data : (function (){
+                var res = [];
+                var len = 10;
+                while (len--) {
+                    res.push(len + 1);
+                }
+                return res;
+            })()
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value',
+            scale: true,
+            name : '价格',
+            boundaryGap: [0.2, 0.2]
+        },
+        {
+            type : 'value',
+            scale: true,
+            name : '预购量',
+            boundaryGap: [0.2, 0.2]
+        }
+    ],
+    series : [
+        {
+            name:'预购队列',
+            type:'bar',
+            xAxisIndex: 1,
+            yAxisIndex: 1,
+            data:(function (){
+                var res = [];
+                var len = 10;
+                while (len--) {
+                    res.push(Math.round(Math.random() * 1000));
+                }
+                return res;
+            })()
+        },
+        {
+            name:'最新成交价',
+            type:'line',
+            data:(function (){
+                var res = [];
+                var len = 10;
+                while (len--) {
+                    res.push((Math.random()*10 + 5).toFixed(1) - 0);
+                }
+                return res;
+            })()
+        }
+    ]
+};
+var lastData = 11;
+var axisData;
+clearInterval(timeTicket);
+timeTicket = setInterval(function (){
+    lastData += Math.random() * ((Math.round(Math.random() * 10) % 2) == 0 ? 1 : -1);
+    lastData = lastData.toFixed(1) - 0;
+    axisData = (new Date()).toLocaleTimeString().replace(/^\D*/,'');
+    
+    // 动态数据接口 addData
+    myChart.addData([
+        [
+            0,        // 系列索引
+            Math.round(Math.random() * 1000), // 新增数据
+            true,     // 新增数据是否从队列头部插入
+            false     // 是否增加队列长度,false则自定删除原有数据,队头插入删队尾,队尾插入删队头
+        ],
+        [
+            1,        // 系列索引
+            lastData, // 新增数据
+            false,    // 新增数据是否从队列头部插入
+            false,    // 是否增加队列长度,false则自定删除原有数据,队头插入删队尾,队尾插入删队头
+            axisData  // 坐标轴标签
+        ]
+    ]);
+}, 2100);
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">var timeTicket;</script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 179 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/dynamicPieRadar.html

@@ -0,0 +1,179 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '动态数据',
+        subtext: '纯属虚构'
+    },
+    tooltip : {
+        trigger: 'item'
+    },
+    legend: {
+        data:['随机数据1','随机数据2','随机数据3','随机数据4','随机数据5']
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    polar : [
+        {
+            indicator : [
+                { text : '指标一' },
+                { text : '指标二' },
+                { text : '指标三' },
+                { text : '指标四' },
+                { text : '指标五' }
+            ],
+            center : [document.getElementById('main').offsetWidth - 250, 225],
+            radius : 100
+        }
+    ],
+    calculable : false,
+    series : [
+        {
+            name:'pie',
+            type:'pie',
+            radius : [0, 110],
+            center: [250, 225],
+            data: (function (){
+                var res = [];
+                var len = 0;
+                while (len++ < 5) {
+                    res.push({
+                        name: '随机数据' + len,
+                        value: Math.round(Math.random()*10)
+                    });
+                }
+                return res;
+            })()
+        },
+        {
+            name: 'radar',
+            type: 'radar',
+            itemStyle: {normal: {areaStyle: {type: 'default'}}},
+            data: (function (){
+                var res = [];
+                var len = 0;
+                while (len++ < 3) {
+                    res.push({
+                        name: 'data' + len,
+                        value: [
+                            Math.round(Math.random()*100),
+                            Math.round(Math.random()*100),
+                            Math.round(Math.random()*100),
+                            Math.round(Math.random()*100),
+                            Math.round(Math.random()*100)
+                        ]
+                    });
+                }
+                return res;
+            })()
+        }
+    ]
+};
+var lastIndex = 5;
+var axisData;
+clearInterval(timeTicket);
+timeTicket = setInterval(function (){
+    lastIndex += 1;
+    // 动态数据接口 addData
+    myChart.addData([
+        [
+            0,        // 系列索引
+            {         // 新增数据
+                name: '随机数据' + lastIndex,
+                value: Math.round(Math.random()*10)
+            }, 
+            false,     // 新增数据是否从队列头部插入
+            false,     // 是否增加队列长度,false则自定删除原有数据,队头插入删队尾,队尾插入删队头
+            '随机数据' + lastIndex
+        ],
+        [
+            1,        // 系列索引
+            {         // 新增数据
+                name: 'data' + lastIndex,
+                value: [
+                    Math.round(Math.random()*100),
+                    Math.round(Math.random()*100),
+                    Math.round(Math.random()*100),
+                    Math.round(Math.random()*100),
+                    Math.round(Math.random()*100)
+                ]
+            }, 
+            false,     // 新增数据是否从队列头部插入
+            false      // 是否增加队列长度,false则自定删除原有数据,队头插入删队尾,队尾插入删队头
+        ]
+    ]);
+}, 2000);
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">var timeTicket;</script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 283 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/dynamicScatterK.html

@@ -0,0 +1,283 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '动态数据',
+        subtext: '纯属虚构'
+    },
+    tooltip : {
+        trigger: 'axis'
+    },
+    legend: {
+        data:['上证指数', '随机数据']
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    dataZoom : {
+        show : true,
+        realtime: true,
+        start : 50,
+        end : 100
+    },
+    xAxis : [
+        {
+            type : 'category',
+            boundaryGap : true,
+            data : [
+                "2013/1/24", "2013/1/25", "2013/1/28", "2013/1/29", "2013/1/30",
+                "2013/1/31", "2013/2/1", "2013/2/4", "2013/2/5", "2013/2/6", 
+                "2013/2/7", "2013/2/8", "2013/2/18", "2013/2/19", "2013/2/20", 
+                "2013/2/21", "2013/2/22", "2013/2/25", "2013/2/26", "2013/2/27", 
+                "2013/2/28", "2013/3/1", "2013/3/4", "2013/3/5", "2013/3/6", 
+                "2013/3/7", "2013/3/8", "2013/3/11", "2013/3/12", "2013/3/13", 
+                "2013/3/14", "2013/3/15", "2013/3/18", "2013/3/19", "2013/3/20", 
+                "2013/3/21", "2013/3/22", "2013/3/25", "2013/3/26", "2013/3/27", 
+                "2013/3/28", "2013/3/29", "2013/4/1", "2013/4/2", "2013/4/3", 
+                "2013/4/8", "2013/4/9", "2013/4/10", "2013/4/11", "2013/4/12", 
+                "2013/4/15", "2013/4/16", "2013/4/17", "2013/4/18", "2013/4/19", 
+                "2013/4/22", "2013/4/23", "2013/4/24", "2013/4/25", "2013/4/26", 
+                "2013/5/2", "2013/5/3", "2013/5/6", "2013/5/7", "2013/5/8", 
+                "2013/5/9", "2013/5/10", "2013/5/13", "2013/5/14", "2013/5/15", 
+                "2013/5/16", "2013/5/17", "2013/5/20", "2013/5/21", "2013/5/22", 
+                "2013/5/23", "2013/5/24", "2013/5/27", "2013/5/28", "2013/5/29", 
+                "2013/5/30", "2013/5/31", "2013/6/3", "2013/6/4", "2013/6/5", 
+                "2013/6/6", "2013/6/7", "2013/6/13"
+            ]
+        },
+        {
+            type : 'value',
+            max:100,
+            scale: true
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value',
+            scale:true,
+            splitNumber: 5,
+            boundaryGap: [0.05, 0.05]
+        },
+        {
+            type : 'value',
+            splitNumber: 5,
+            scale: true
+        }
+    ],
+    series : [
+        {
+            name:'上证指数',
+            type:'k',
+            data:[ // 开盘,收盘,最低,最高
+                [2320.26,2302.6,2287.3,2362.94],
+                [2300,2291.3,2288.26,2308.38],
+                [2295.35,2346.5,2295.35,2346.92],
+                [2347.22,2358.98,2337.35,2363.8],
+                [2360.75,2382.48,2347.89,2383.76],
+                [2383.43,2385.42,2371.23,2391.82],
+                [2377.41,2419.02,2369.57,2421.15],
+                [2425.92,2428.15,2417.58,2440.38],
+                [2411,2433.13,2403.3,2437.42],
+                [2432.68,2434.48,2427.7,2441.73],
+                [2430.69,2418.53,2394.22,2433.89],
+                [2416.62,2432.4,2414.4,2443.03],
+                [2441.91,2421.56,2415.43,2444.8],
+                [2420.26,2382.91,2373.53,2427.07],
+                [2383.49,2397.18,2370.61,2397.94],
+                [2378.82,2325.95,2309.17,2378.82],
+                [2322.94,2314.16,2308.76,2330.88],
+                [2320.62,2325.82,2315.01,2338.78],
+                [2313.74,2293.34,2289.89,2340.71],
+                [2297.77,2313.22,2292.03,2324.63],
+                [2322.32,2365.59,2308.92,2366.16],
+                [2364.54,2359.51,2330.86,2369.65],
+                [2332.08,2273.4,2259.25,2333.54],
+                [2274.81,2326.31,2270.1,2328.14],
+                [2333.61,2347.18,2321.6,2351.44],
+                [2340.44,2324.29,2304.27,2352.02],
+                [2326.42,2318.61,2314.59,2333.67],
+                [2314.68,2310.59,2296.58,2320.96],
+                [2309.16,2286.6,2264.83,2333.29],
+                [2282.17,2263.97,2253.25,2286.33],
+                [2255.77,2270.28,2253.31,2276.22],
+                [2269.31,2278.4,2250,2312.08],
+                [2267.29,2240.02,2239.21,2276.05],
+                [2244.26,2257.43,2232.02,2261.31],
+                [2257.74,2317.37,2257.42,2317.86],
+                [2318.21,2324.24,2311.6,2330.81],
+                [2321.4,2328.28,2314.97,2332],
+                [2334.74,2326.72,2319.91,2344.89],
+                [2318.58,2297.67,2281.12,2319.99],
+                [2299.38,2301.26,2289,2323.48],
+                [2273.55,2236.3,2232.91,2273.55],
+                [2238.49,2236.62,2228.81,2246.87],
+                [2229.46,2234.4,2227.31,2243.95],
+                [2234.9,2227.74,2220.44,2253.42],
+                [2232.69,2225.29,2217.25,2241.34],
+                [2196.24,2211.59,2180.67,2212.59],
+                [2215.47,2225.77,2215.47,2234.73],
+                [2224.93,2226.13,2212.56,2233.04],
+                [2236.98,2219.55,2217.26,2242.48],
+                [2218.09,2206.78,2204.44,2226.26],
+                [2199.91,2181.94,2177.39,2204.99],
+                [2169.63,2194.85,2165.78,2196.43],
+                [2195.03,2193.8,2178.47,2197.51],
+                [2181.82,2197.6,2175.44,2206.03],
+                [2201.12,2244.64,2200.58,2250.11],
+                [2236.4,2242.17,2232.26,2245.12],
+                [2242.62,2184.54,2182.81,2242.62],
+                [2187.35,2218.32,2184.11,2226.12],
+                [2213.19,2199.31,2191.85,2224.63],
+                [2203.89,2177.91,2173.86,2210.58],
+                [2170.78,2174.12,2161.14,2179.65],
+                [2179.05,2205.5,2179.05,2222.81],
+                [2212.5,2231.17,2212.5,2236.07],
+                [2227.86,2235.57,2219.44,2240.26],
+                [2242.39,2246.3,2235.42,2255.21],
+                [2246.96,2232.97,2221.38,2247.86],
+                [2228.82,2246.83,2225.81,2247.67],
+                [2247.68,2241.92,2231.36,2250.85],
+                [2238.9,2217.01,2205.87,2239.93],
+                [2217.09,2224.8,2213.58,2225.19],
+                [2221.34,2251.81,2210.77,2252.87],
+                [2249.81,2282.87,2248.41,2288.09],
+                [2286.33,2299.99,2281.9,2309.39],
+                [2297.11,2305.11,2290.12,2305.3],
+                [2303.75,2302.4,2292.43,2314.18],
+                [2293.81,2275.67,2274.1,2304.95],
+                [2281.45,2288.53,2270.25,2292.59],
+                [2286.66,2293.08,2283.94,2301.7],
+                [2293.4,2321.32,2281.47,2322.1],
+                [2323.54,2324.02,2321.17,2334.33],
+                [2316.25,2317.75,2310.49,2325.72],
+                [2320.74,2300.59,2299.37,2325.53],
+                [2300.21,2299.25,2294.11,2313.43],
+                [2297.1,2272.42,2264.76,2297.1],
+                [2270.71,2270.93,2260.87,2276.86],
+                [2264.43,2242.11,2240.07,2266.69],
+                [2242.26,2210.9,2205.07,2250.63],
+                [2190.1,2148.35,2126.22,2190.1]
+            ]
+        },
+        {
+            name:'随机数据',
+            type:'scatter',
+            xAxisIndex: 1,
+            yAxisIndex: 1,
+            symbolSize: function (value){
+                return Math.round(value[2] / 4);
+            },
+            data: (function () {
+                var d = [];
+                var len = 100;
+                while (len--) {
+                    d.push([
+                        (Math.random()*100).toFixed(2) - 0,
+                        (Math.random()*100).toFixed(2) - 0,
+                        (Math.random()*100).toFixed(2) - 0
+                    ]);
+                }
+                return d;
+            })()
+        }
+    ]
+};
+var lastIndex = 0;
+var len = option.series[0].data.length;
+clearInterval(timeTicket);
+timeTicket = setInterval(function (){
+    // 动态数据接口 addData
+    lastIndex += 1;
+    myChart.addData([
+        [
+            0,        // 系列索引
+            option.series[0].data[lastIndex%len], // 新增数据
+            false,     // 新增数据是否从队列头部插入
+            false,     // 是否增加队列长度,false则自定删除原有数据,队头插入删队尾,队尾插入删队头
+            option.xAxis[0].data[lastIndex%len]
+        ],
+        [
+            1,        // 系列索引
+            [
+                (Math.random()*100).toFixed(2) - 0,
+                (Math.random()*100).toFixed(2) - 0,
+                (Math.random()*100).toFixed(2) - 0
+            ], // 新增数据
+            false,    // 新增数据是否从队列头部插入
+            false    // 是否增加队列长度,false则自定删除原有数据,队头插入删队尾,队尾插入删队头
+        ]
+    ]);
+}, 2000);
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">var timeTicket;</script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 182 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/event.html

@@ -0,0 +1,182 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        trigger: 'axis'
+    },
+    legend: {
+        data:['最高','最低']
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {readOnly:false},
+            magicType : {show: true, type: ['line', 'bar', 'stack', 'tiled']},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    calculable : true,
+    dataZoom : {
+        show : true,
+        realtime : true,
+        start : 40,
+        end : 60
+    },
+    xAxis : [
+        {
+            type : 'category',
+            boundaryGap : true,
+            data : function (){
+                var list = [];
+                for (var i = 1; i <= 30; i++) {
+                    list.push('2013-03-' + i);
+                }
+                return list;
+            }()
+        }
+    ],
+    yAxis : [
+        {
+            type : 'value'
+        }
+    ],
+    series : [
+        {
+            name:'最高',
+            type:'line',
+            data:function (){
+                var list = [];
+                for (var i = 1; i <= 30; i++) {
+                    list.push(Math.round(Math.random()* 30) + 30);
+                }
+                return list;
+            }()
+        },
+        {
+            name:'最低',
+            type:'bar',
+            data:function (){
+                var list = [];
+                for (var i = 1; i <= 30; i++) {
+                    list.push(Math.round(Math.random()* 10));
+                }
+                return list;
+            }()
+        }
+    ]
+};
+var ecConfig = require('echarts/config');
+function eConsole(param) {
+    var mes = '【' + param.type + '】';
+    if (typeof param.seriesIndex != 'undefined') {
+        mes += '  seriesIndex : ' + param.seriesIndex;
+        mes += '  dataIndex : ' + param.dataIndex;
+    }
+    if (param.type == 'hover') {
+        document.getElementById('hover-console').innerHTML = 'Event Console : ' + mes;
+    }
+    else {
+        document.getElementById('console').innerHTML = mes;
+    }
+    console.log(param);
+}
+/*
+// -------全局通用
+REFRESH: 'refresh',
+RESTORE: 'restore',
+RESIZE: 'resize',
+CLICK: 'click',
+DBLCLICK: 'dblclick',
+HOVER: 'hover',
+MOUSEOUT: 'mouseout',
+// -------业务交互逻辑
+DATA_CHANGED: 'dataChanged',
+DATA_ZOOM: 'dataZoom',
+DATA_RANGE: 'dataRange',
+DATA_RANGE_HOVERLINK: 'dataRangeHoverLink',
+LEGEND_SELECTED: 'legendSelected',
+LEGEND_HOVERLINK: 'legendHoverLink',
+MAP_SELECTED: 'mapSelected',
+PIE_SELECTED: 'pieSelected',
+MAGIC_TYPE_CHANGED: 'magicTypeChanged',
+DATA_VIEW_CHANGED: 'dataViewChanged',
+TIMELINE_CHANGED: 'timelineChanged',
+MAP_ROAM: 'mapRoam',
+*/
+myChart.on(ecConfig.EVENT.CLICK, eConsole);
+myChart.on(ecConfig.EVENT.DBLCLICK, eConsole);
+//myChart.on(ecConfig.EVENT.HOVER, eConsole);
+myChart.on(ecConfig.EVENT.DATA_ZOOM, eConsole);
+myChart.on(ecConfig.EVENT.LEGEND_SELECTED, eConsole);
+myChart.on(ecConfig.EVENT.MAGIC_TYPE_CHANGED, eConsole);
+myChart.on(ecConfig.EVENT.DATA_VIEW_CHANGED, eConsole);
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                    <span id='hover-console' style="color:#1e90ff"></span>
+                    <span id='console' style="color:#1e90ff">Event Console</span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 417 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/eventRiver1.html

@@ -0,0 +1,417 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: 'Event River',
+        subtext: '纯属虚构'
+    },
+    tooltip : {
+        trigger: 'item',
+        enterable: true
+    },
+    legend: {
+        data:['财经事件', '政治事件']
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    xAxis : [
+        {
+            type : 'time',
+            boundaryGap: [0.05,0.1]
+        }
+    ],
+    series : [
+        {
+            "name": "财经事件", 
+            "type": "eventRiver", 
+            "weight": 123, 
+            "data": [
+                {
+                    "name": "阿里巴巴上市", 
+                    "weight": 123, 
+                    "evolution": [
+                        {
+                            "time": "2014-05-01", 
+                            "value": 14, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-02", 
+                            "value": 34, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-03", 
+                            "value": 60, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-04", 
+                            "value": 40, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-05", 
+                            "value": 10, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }
+                    ]
+                }, 
+                {
+                    "name": "阿里巴巴上市2", 
+                    "weight": 123, 
+                    "evolution": [
+                        {
+                            "time": "2014-05-02", 
+                            "value": 10, 
+                            "detail": {
+                                "link": "www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-03", 
+                            "value": 34, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-04", 
+                            "value": 40, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-05", 
+                            "value": 10, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }
+                    ]
+                }, 
+                {
+                    "name": "三星业绩暴跌", 
+                    "weight": 123, 
+                    "evolution": [
+                        {
+                            "time": "2014-05-03", 
+                            "value": 24, 
+                            "detail": {
+                                "link": "www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-04", 
+                            "value": 34, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-05", 
+                            "value": 50, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-06", 
+                            "value": 30, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-07", 
+                            "value": 20, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }
+                    ]
+                }
+            ]
+        }, 
+        {
+            "name": "政治事件", 
+            "type": "eventRiver", 
+            "weight": 123, 
+            "data": [
+                {
+                    "name": "Apec峰会", 
+                    "weight": 123, 
+                    "evolution": [
+                        {
+                            "time": "2014-05-06", 
+                            "value": 14, 
+                            "detail": {
+                                "link": "www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-07", 
+                            "value": 34, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-08", 
+                            "value": 60, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-09", 
+                            "value": 40, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-10", 
+                            "value": 20, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }
+                    ]
+                }, 
+                {
+                    "name": "运城官帮透视", 
+                    "weight": 123, 
+                    "evolution": [
+                        {
+                            "time": "2014-05-08", 
+                            "value": 4, 
+                            "detail": {
+                                "link": "www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-09", 
+                            "value": 14, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-10", 
+                            "value": 30, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-11", 
+                            "value": 20, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-12", 
+                            "value": 10, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }
+                    ]
+                }, 
+                {
+                    "name": "底层公务员收入超过副部长", 
+                    "weight": 123, 
+                    "evolution": [
+                        {
+                            "time": "2014-05-11", 
+                            "value": 4, 
+                            "detail": {
+                                "link": "www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-12", 
+                            "value": 24, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-13", 
+                            "value": 40, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-14", 
+                            "value": 20, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-15", 
+                            "value": 15, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }, 
+                        {
+                            "time": "2014-05-16", 
+                            "value": 10, 
+                            "detail": {
+                                "link": "http://www.baidu.com", 
+                                "text": "百度指数", 
+                                "img": '../asset/ico/favicon.png'
+                            }
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 119 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/eventRiver2.html

@@ -0,0 +1,119 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+    <style type="text/css">
+        .CodeMirror {
+            height: 650px;
+        }
+    </style>
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+var legendName = [];
+for (var i = 0, l = eventRiver2Data.length; i < l; i++) {
+    legendName.push(eventRiver2Data[i].name);
+    eventRiver2Data[i].itemStyle = {
+        normal: {
+            label: {
+                show:false
+            }
+        },
+        emphasis: {
+            label: {
+                show:false
+            }
+        }
+    }
+}
+
+option = {
+    title : {
+        text: 'Event River',
+        subtext: '纯属虚构'
+    },
+    tooltip : {
+        trigger: 'item',
+        enterable: true
+    },
+    legend: {
+        data: legendName
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    xAxis : [
+        {
+            type : 'time',
+            boundaryGap: [0.05,0.1]
+        }
+    ],
+    series : eventRiver2Data
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main" style="height:630px;"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="./eventRiver2_data.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/eventRiver2_data.js


+ 222 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/force.html

@@ -0,0 +1,222 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '人物关系:乔布斯',
+        subtext: '数据来自人立方',
+        x:'right',
+        y:'bottom'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: '{a} : {b}'
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            restore : {show: true},
+            magicType: {show: true, type: ['force', 'chord']},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        x: 'left',
+        data:['家人','朋友']
+    },
+    series : [
+        {
+            type:'force',
+            name : "人物关系",
+            ribbonType: false,
+            categories : [
+                {
+                    name: '人物'
+                },
+                {
+                    name: '家人',
+                    symbol: 'diamond'
+                },
+                {
+                    name:'朋友'
+                }
+            ],
+            itemStyle: {
+                normal: {
+                    label: {
+                        show: true,
+                        textStyle: {
+                            color: '#333'
+                        }
+                    },
+                    nodeStyle : {
+                        brushType : 'both',
+                        borderColor : 'rgba(255,215,0,0.4)',
+                        borderWidth : 1
+                    }
+                },
+                emphasis: {
+                    label: {
+                        show: false
+                        // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
+                    },
+                    nodeStyle : {
+                        //r: 30
+                    },
+                    linkStyle : {}
+                }
+            },
+            minRadius : 15,
+            maxRadius : 25,
+            gravity: 1.1,
+            scaling: 1.2,
+            draggable: false,
+            linkSymbol: 'arrow',
+            steps: 10,
+            coolDown: 0.9,
+            //preventOverlap: true,
+            nodes:[
+                {
+                    category:0, name: '乔布斯', value : 10,
+                    symbol: 'image://http://www.damndigital.com/wp-content/uploads/2010/12/steve-jobs.jpg',
+                    symbolSize: [60, 35],
+                    draggable: true,
+                    itemStyle: {
+                        normal: {
+                            label: {
+                                position: 'right',
+                                textStyle: {
+                                    color: 'black'
+                                }
+                            }
+                        }
+                    }
+                },
+                {category:1, name: '丽萨-乔布斯',value : 2},
+                {category:1, name: '保罗-乔布斯',value : 3},
+                {category:1, name: '克拉拉-乔布斯',value : 3},
+                {category:1, name: '劳伦-鲍威尔',value : 7},
+                {category:2, name: '史蒂夫-沃兹尼艾克',value : 5},
+                {category:2, name: '奥巴马',value : 8},
+                {category:2, name: '比尔-盖茨',value : 9},
+                {category:2, name: '乔纳森-艾夫',value : 4},
+                {category:2, name: '蒂姆-库克',value : 4},
+                {category:2, name: '龙-韦恩',value : 1},
+            ],
+            links : [
+                {source : '丽萨-乔布斯', target : '乔布斯', weight : 1, name: '女儿', itemStyle: {
+                    normal: {
+                        width: 1.5,
+                        color: 'red'
+                    }
+                }},
+                {source : '乔布斯', target : '丽萨-乔布斯', weight : 1, name: '父亲', itemStyle: {
+                    normal: { color: 'red' }
+                }},
+                {source : '保罗-乔布斯', target : '乔布斯', weight : 2, name: '父亲'},
+                {source : '克拉拉-乔布斯', target : '乔布斯', weight : 1, name: '母亲'},
+                {source : '劳伦-鲍威尔', target : '乔布斯', weight : 2},
+                {source : '史蒂夫-沃兹尼艾克', target : '乔布斯', weight : 3, name: '合伙人'},
+                {source : '奥巴马', target : '乔布斯', weight : 1},
+                {source : '比尔-盖茨', target : '乔布斯', weight : 6, name: '竞争对手'},
+                {source : '乔纳森-艾夫', target : '乔布斯', weight : 1, name: '爱将'},
+                {source : '蒂姆-库克', target : '乔布斯', weight : 1},
+                {source : '龙-韦恩', target : '乔布斯', weight : 1},
+                {source : '克拉拉-乔布斯', target : '保罗-乔布斯', weight : 1},
+                {source : '奥巴马', target : '保罗-乔布斯', weight : 1},
+                {source : '奥巴马', target : '克拉拉-乔布斯', weight : 1},
+                {source : '奥巴马', target : '劳伦-鲍威尔', weight : 1},
+                {source : '奥巴马', target : '史蒂夫-沃兹尼艾克', weight : 1},
+                {source : '比尔-盖茨', target : '奥巴马', weight : 6},
+                {source : '比尔-盖茨', target : '克拉拉-乔布斯', weight : 1},
+                {source : '蒂姆-库克', target : '奥巴马', weight : 1}
+            ]
+        }
+    ]
+};
+var ecConfig = require('echarts/config');
+function focus(param) {
+    var data = param.data;
+    var links = option.series[0].links;
+    var nodes = option.series[0].nodes;
+    if (
+        data.source != null
+        && data.target != null
+    ) { //点击的是边
+        var sourceNode = nodes.filter(function (n) {return n.name == data.source})[0];
+        var targetNode = nodes.filter(function (n) {return n.name == data.target})[0];
+        console.log("选中了边 " + sourceNode.name + ' -> ' + targetNode.name + ' (' + data.weight + ')');
+    } else { // 点击的是点
+        console.log("选中了" + data.name + '(' + data.value + ')');
+    }
+}
+myChart.on(ecConfig.EVENT.CLICK, focus)
+
+myChart.on(ecConfig.EVENT.FORCE_LAYOUT_END, function () {
+    console.log(myChart.chart.force.getPosition());
+});
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 200 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/force1.html

@@ -0,0 +1,200 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '人物关系:乔布斯',
+        subtext: '数据来自人立方',
+        x:'right',
+        y:'bottom'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: '{a} : {b}'
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            restore : {show: true},
+            magicType: {show: true, type: ['force', 'chord']},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        x: 'left',
+        data:['家人','朋友']
+    },
+    series : [
+        {
+            type:'force',
+            name : "人物关系",
+            ribbonType: false,
+            categories : [
+                {
+                    name: '人物'
+                },
+                {
+                    name: '家人'
+                },
+                {
+                    name:'朋友'
+                }
+            ],
+            itemStyle: {
+                normal: {
+                    label: {
+                        show: true,
+                        textStyle: {
+                            color: '#333'
+                        }
+                    },
+                    nodeStyle : {
+                        brushType : 'both',
+                        borderColor : 'rgba(255,215,0,0.4)',
+                        borderWidth : 1
+                    },
+                    linkStyle: {
+                        type: 'curve'
+                    }
+                },
+                emphasis: {
+                    label: {
+                        show: false
+                        // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
+                    },
+                    nodeStyle : {
+                        //r: 30
+                    },
+                    linkStyle : {}
+                }
+            },
+            useWorker: false,
+            minRadius : 15,
+            maxRadius : 25,
+            gravity: 1.1,
+            scaling: 1.1,
+            roam: 'move',
+            nodes:[
+                {category:0, name: '乔布斯', value : 10, label: '乔布斯\n(主要)'},
+                {category:1, name: '丽萨-乔布斯',value : 2},
+                {category:1, name: '保罗-乔布斯',value : 3},
+                {category:1, name: '克拉拉-乔布斯',value : 3},
+                {category:1, name: '劳伦-鲍威尔',value : 7},
+                {category:2, name: '史蒂夫-沃兹尼艾克',value : 5},
+                {category:2, name: '奥巴马',value : 8},
+                {category:2, name: '比尔-盖茨',value : 9},
+                {category:2, name: '乔纳森-艾夫',value : 4},
+                {category:2, name: '蒂姆-库克',value : 4},
+                {category:2, name: '龙-韦恩',value : 1},
+            ],
+            links : [
+                {source : '丽萨-乔布斯', target : '乔布斯', weight : 1, name: '女儿'},
+                {source : '保罗-乔布斯', target : '乔布斯', weight : 2, name: '父亲'},
+                {source : '克拉拉-乔布斯', target : '乔布斯', weight : 1, name: '母亲'},
+                {source : '劳伦-鲍威尔', target : '乔布斯', weight : 2},
+                {source : '史蒂夫-沃兹尼艾克', target : '乔布斯', weight : 3, name: '合伙人'},
+                {source : '奥巴马', target : '乔布斯', weight : 1},
+                {source : '比尔-盖茨', target : '乔布斯', weight : 6, name: '竞争对手'},
+                {source : '乔纳森-艾夫', target : '乔布斯', weight : 1, name: '爱将'},
+                {source : '蒂姆-库克', target : '乔布斯', weight : 1},
+                {source : '龙-韦恩', target : '乔布斯', weight : 1},
+                {source : '克拉拉-乔布斯', target : '保罗-乔布斯', weight : 1},
+                {source : '奥巴马', target : '保罗-乔布斯', weight : 1},
+                {source : '奥巴马', target : '克拉拉-乔布斯', weight : 1},
+                {source : '奥巴马', target : '劳伦-鲍威尔', weight : 1},
+                {source : '奥巴马', target : '史蒂夫-沃兹尼艾克', weight : 1},
+                {source : '比尔-盖茨', target : '奥巴马', weight : 6},
+                {source : '比尔-盖茨', target : '克拉拉-乔布斯', weight : 1},
+                {source : '蒂姆-库克', target : '奥巴马', weight : 1}
+            ]
+        }
+    ]
+};
+var ecConfig = require('echarts/config');
+function focus(param) {
+    var data = param.data;
+    var links = option.series[0].links;
+    var nodes = option.series[0].nodes;
+    if (
+        data.source !== undefined
+        && data.target !== undefined
+    ) { //点击的是边
+        var sourceNode = nodes.filter(function (n) {return n.name == data.source})[0];
+        var targetNode = nodes.filter(function (n) {return n.name == data.target})[0];
+        console.log("选中了边 " + sourceNode.name + ' -> ' + targetNode.name + ' (' + data.weight + ')');
+    } else { // 点击的是点
+        console.log("选中了" + data.name + '(' + data.value + ')');
+    }
+}
+myChart.on(ecConfig.EVENT.CLICK, focus)
+
+myChart.on(ecConfig.EVENT.FORCE_LAYOUT_END, function () {
+    console.log(myChart.chart.force.getPosition());
+});
+
+
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 190 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/force2.html

@@ -0,0 +1,190 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+
+var nodes = [];
+var links = [];
+var constMaxDepth = 2;
+var constMaxChildren = 7;
+var constMinChildren = 4;
+var constMaxRadius = 10;
+var constMinRadius = 2;
+
+function rangeRandom(min, max) {
+    return Math.random() * (max - min) + min;
+}
+
+function createRandomNode(depth) {
+    var node = {
+        name : 'NODE_' + nodes.length,
+        value : rangeRandom(constMinRadius, constMaxRadius),
+        // Custom properties
+        id : nodes.length,
+        depth : depth,
+        category : depth === constMaxDepth ? 0 : 1
+    }
+    nodes.push(node);
+
+    return node;
+}
+
+function forceMockThreeData() {
+    var depth = 0;
+    var rootNode = {
+        name : 'ROOT',
+        value : rangeRandom(constMinRadius, constMaxRadius),
+        // Custom properties
+        id : 0,
+        depth : 0,
+        category : 2
+    }
+    nodes.push(rootNode);
+
+    function mock(parentNode, depth) {
+        var nChildren = Math.round(rangeRandom(constMinChildren, constMaxChildren));
+        
+        for (var i = 0; i < nChildren; i++) {
+            var childNode = createRandomNode(depth);
+            links.push({
+                source : parentNode.id,
+                target : childNode.id,
+                weight : 1 
+            });
+            if (depth < constMaxDepth) {
+                mock(childNode, depth + 1);
+            }
+        }
+    }
+
+    mock(rootNode, 0);
+}
+
+forceMockThreeData();
+
+option = {
+    title : {
+        text: 'Force',
+        subtext: 'Force-directed tree',
+        x:'right',
+        y:'bottom'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: '{a} : {b}'
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            restore : {show: true},
+            magicType: {show: true, type: ['force', 'chord']},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        x: 'left',
+        data:['叶子节点','非叶子节点', '根节点']
+    },
+    series : [
+        {
+            type:'force',
+            name : "Force tree",
+            ribbonType: false,
+            categories : [
+                {
+                    name: '叶子节点'
+                },
+                {
+                    name: '非叶子节点'
+                },
+                {
+                    name: '根节点'
+                }
+            ],
+            itemStyle: {
+                normal: {
+                    label: {
+                        show: false
+                    },
+                    nodeStyle : {
+                        brushType : 'both',
+                        borderColor : 'rgba(255,215,0,0.6)',
+                        borderWidth : 1
+                    }
+                }
+            },
+            minRadius : constMinRadius,
+            maxRadius : constMaxRadius,
+            coolDown: 0.995,
+            steps: 10,
+            nodes : nodes,
+            links : links,
+            steps: 1
+        }
+    ]
+};
+
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 231 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/force3.html

@@ -0,0 +1,231 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+
+var nodes = [];
+var links = [];
+var constMaxDepth = 2;
+var constMaxChildren = 7;
+var constMinChildren = 4;
+var constMaxRadius = 10;
+var constMinRadius = 2;
+
+function rangeRandom(min, max) {
+    return Math.random() * (max - min) + min;
+}
+
+function createRandomNode(depth, parentNode) {
+    var node = {
+        name : 'NODE_' + nodes.length,
+        value : rangeRandom(constMinRadius, constMaxRadius),
+        // Custom properties
+        id : nodes.length,
+        depth : depth,
+        category : depth === constMaxDepth ? 0 : 1,
+        __parentNode__ : parentNode ? parentNode.id : -1,
+        __children__ : [],
+        __collapsed__ : false
+    }
+    nodes.push(node);
+
+    return node;
+}
+
+function forceMockThreeData() {
+    var depth = 0;
+    var rootNode = createRandomNode(0);
+    rootNode.name = 'ROOT';
+    rootNode.category = 2;
+
+    function mock(parentNode, depth) {
+        var nChildren = Math.round(rangeRandom(constMinChildren, constMaxChildren));
+        
+        for (var i = 0; i < nChildren; i++) {
+            var childNode = createRandomNode(depth, parentNode);
+            links.push({
+                source : parentNode.id,
+                target : childNode.id,
+                weight : 1
+            });
+            parentNode.__children__.push(childNode.id);
+            if (depth < constMaxDepth) {
+                mock(childNode, depth + 1);
+            }
+        }
+    }
+
+    mock(rootNode, 0);
+}
+
+forceMockThreeData();
+
+option = {
+    title : {
+        text: 'Force',
+        subtext: 'Node collapse example',
+        x:'right',
+        y:'bottom'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: '{a} : {b}'
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            restore : {show: true},
+            magicType: {show: true, type: ['force', 'chord']},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        x: 'left',
+        data:['叶子节点','非叶子节点', '根节点']
+    },
+    series : [
+        {
+            type:'force',
+            name : "Force tree",
+            ribbonType: false,
+            categories : [
+                {
+                    name: '叶子节点'
+                },
+                {
+                    name: '非叶子节点'
+                },
+                {
+                    name: '根节点'
+                }
+            ],
+            itemStyle: {
+                normal: {
+                    label: {
+                        show: false
+                    },
+                    nodeStyle : {
+                        brushType : 'both',
+                        strokeColor : 'rgba(255,215,0,0.6)',
+                        lineWidth : 1
+                    }
+                }
+            },
+            minRadius : constMinRadius,
+            maxRadius : constMaxRadius,
+            coolDown: 0.995,
+            nodes : nodes,
+            links : links
+        }
+    ]
+};
+
+function isAscendant(node1, node2) {
+    var parent = nodes[node2.__parentNode__];
+    while(parent) {
+        if (parent.id === node1.id) {
+            return true;
+        }
+        parent = nodes[parent.__parentNode__];
+    }
+    return false;
+}
+
+function addChildrenToChart(node) {
+    for (var i = 0; i < node.__children__.length; i++) {
+        var childNode = nodes[node.__children__[i]];
+        childNode.ignore = false;
+
+        addChildrenToChart(childNode);
+    }
+}
+
+var ecConfig = require('echarts/config');
+function focus(param) {
+    var data = param.data;
+    if (
+        data.source !== undefined
+        && data.target !== undefined
+    ) {
+    } else { // 点击的是点
+        var targetNode = nodes[data.id];
+    
+        if (!targetNode.__collapsed__) {
+            option.series[0].nodes = nodes.map(function (node) {
+                node.ignore = isAscendant(data, node);
+                return node;
+            });
+        } else {
+            addChildrenToChart(targetNode);
+        }
+
+        targetNode.__collapsed__ = ! targetNode.__collapsed__;
+        myChart.setOption(option, true);
+    }
+}
+myChart.on(ecConfig.EVENT.CLICK, focus);
+
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 202 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/force4.html

@@ -0,0 +1,202 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+
+var nodes = [];
+var links = [];
+var constMaxDepth = 4;
+var constMaxChildren = 3;
+var constMinChildren = 2;
+var constMaxRadius = 10;
+var constMinRadius = 2;
+var mainDom = document.getElementById('main');
+
+function rangeRandom(min, max) {
+    return Math.random() * (max - min) + min;
+}
+
+function createRandomNode(depth) {
+    var x = mainDom.clientWidth / 2 + (.5 - Math.random()) * 200;
+    var y = (mainDom.clientHeight - 20) * depth / (constMaxDepth + 1) + 20;
+    var node = {
+        name : 'NODE_' + nodes.length,
+        value : rangeRandom(constMinRadius, constMaxRadius),
+        // Custom properties
+        id : nodes.length,
+        depth : depth,
+        initial : [x, y],
+        fixY : true,
+        category : depth === constMaxDepth ? 0 : 1
+    }
+    nodes.push(node);
+
+    return node;
+}
+
+function forceMockThreeData() {
+    var depth = 0;
+
+    var rootNode = createRandomNode(0);
+    rootNode.name = 'ROOT';
+    rootNode.category = 2;
+
+    function mock(parentNode, depth) {
+        var nChildren = Math.round(rangeRandom(constMinChildren, constMaxChildren));
+        
+        for (var i = 0; i < nChildren; i++) {
+            var childNode = createRandomNode(depth);
+            links.push({
+                source : parentNode.id,
+                target : childNode.id,
+                weight : 1 
+            });
+            if (depth < constMaxDepth) {
+                mock(childNode, depth + 1);
+            }
+        }
+    }
+
+    mock(rootNode, 1);
+}
+
+forceMockThreeData();
+
+option = {
+    title : {
+        text: 'Force',
+        subtext: 'Force-directed tree',
+        x:'right',
+        y:'bottom'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: '{a} : {b}'
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            restore : {show: true},
+            magicType: {show: true, type: ['force', 'chord']},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        x: 'left',
+        data:['叶子节点','非叶子节点', '根节点']
+    },
+    series : [
+        {
+            type:'force',
+            name : "Force tree",
+            ribbonType: false,
+            categories : [
+                {
+                    name: '叶子节点',
+                    itemStyle: {
+                        normal: {
+                            color : '#ff7f50'
+                        }
+                    }
+                },
+                {
+                    name: '非叶子节点',
+                    itemStyle: {
+                        normal: {
+                            color : '#6f57bc'
+                        }
+                    }
+                },
+                {
+                    name: '根节点',
+                    itemStyle: {
+                        normal: {
+                            color : '#af0000'
+                        }
+                    }
+                }
+            ],
+            itemStyle: {
+                normal: {
+                    label: {
+                        show: false
+                    },
+                    nodeStyle : {
+                        brushType : 'both',
+                        strokeColor : 'rgba(255,215,0,0.6)',
+                        lineWidth : 1
+                    }
+                }
+            },
+            minRadius : constMinRadius,
+            maxRadius : constMaxRadius,
+            nodes : nodes,
+            links : links
+        }
+    ]
+};
+
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 152 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/funnel.html

@@ -0,0 +1,152 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '漏斗图',
+        subtext: '纯属虚构'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: "{a} <br/>{b} : {c}%"
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        data : ['展现','点击','访问','咨询','订单']
+    },
+    calculable : true,
+    series : [
+        {
+            name:'漏斗图',
+            type:'funnel',
+            x: '10%',
+            y: 60,
+            //x2: 80,
+            y2: 60,
+            width: '80%',
+            // height: {totalHeight} - y - y2,
+            min: 0,
+            max: 100,
+            minSize: '0%',
+            maxSize: '100%',
+            sort : 'descending', // 'ascending', 'descending'
+            gap : 10,
+            itemStyle: {
+                normal: {
+                    // color: 各异,
+                    borderColor: '#fff',
+                    borderWidth: 1,
+                    label: {
+                        show: true,
+                        position: 'inside'
+                        // textStyle: null      // 默认使用全局文本样式,详见TEXTSTYLE
+                    },
+                    labelLine: {
+                        show: false,
+                        length: 10,
+                        lineStyle: {
+                            // color: 各异,
+                            width: 1,
+                            type: 'solid'
+                        }
+                    }
+                },
+                emphasis: {
+                    // color: 各异,
+                    borderColor: 'red',
+                    borderWidth: 5,
+                    label: {
+                        show: true,
+                        formatter: '{b}:{c}%',
+                        textStyle:{
+                            fontSize:20
+                        }
+                    },
+                    labelLine: {
+                        show: true
+                    }
+                }
+            },
+            data:[
+                {value:60, name:'访问'},
+                {value:40, name:'咨询'},
+                {value:20, name:'订单'},
+                {value:80, name:'点击'},
+                {value:100, name:'展现'}
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 126 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/funnel1.html

@@ -0,0 +1,126 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '漏斗图',
+        subtext: '纯属虚构'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: "{a} <br/>{b} : {c}%"
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        data : ['展现','点击','访问','咨询','订单']
+    },
+    calculable : true,
+    series : [
+        {
+            name:'漏斗图',
+            type:'funnel',
+            width: '40%',
+            data:[
+                {value:60, name:'访问'},
+                {value:40, name:'咨询'},
+                {value:20, name:'订单'},
+                {value:80, name:'点击'},
+                {value:100, name:'展现'}
+            ]
+        },
+        {
+            name:'金字塔',
+            type:'funnel',
+            x : '50%',
+            sort : 'ascending',
+            itemStyle: {
+                normal: {
+                    // color: 各异,
+                    label: {
+                        position: 'left'
+                    }
+                }
+            },
+            data:[
+                {value:60, name:'访问'},
+                {value:40, name:'咨询'},
+                {value:20, name:'订单'},
+                {value:80, name:'点击'},
+                {value:100, name:'展现'}
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 162 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/funnel2.html

@@ -0,0 +1,162 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    color : [
+        'rgba(255, 69, 0, 0.5)',
+        'rgba(255, 150, 0, 0.5)',
+        'rgba(255, 200, 0, 0.5)',
+        'rgba(155, 200, 50, 0.5)',
+        'rgba(55, 200, 100, 0.5)'
+    ],
+    title : {
+        text: '漏斗图',
+        subtext: '纯属虚构'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: "{a} <br/>{b} : {c}%"
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        data : ['展现','点击','访问','咨询','订单']
+    },
+    calculable : true,
+    series : [
+        {
+            name:'预期',
+            type:'funnel',
+            x: '10%',
+            width: '80%',
+            itemStyle: {
+                normal: {
+                    label: {
+                        formatter: '{b}预期'
+                    },
+                    labelLine: {
+                        show : false
+                    }
+                },
+                emphasis: {
+                    label: {
+                        position:'inside',
+                        formatter: '{b}预期 : {c}%'
+                    }
+                }
+            },
+            data:[
+                {value:60, name:'访问'},
+                {value:40, name:'咨询'},
+                {value:20, name:'订单'},
+                {value:80, name:'点击'},
+                {value:100, name:'展现'}
+            ]
+        },
+        {
+            name:'实际',
+            type:'funnel',
+            x: '10%',
+            width: '80%',
+            maxSize: '80%',
+            itemStyle: {
+                normal: {
+                    borderColor: '#fff',
+                    borderWidth: 2,
+                    label: {
+                        position: 'inside',
+                        formatter: '{c}%',
+                        textStyle: {
+                            color: '#fff'
+                        }
+                    }
+                },
+                emphasis: {
+                    label: {
+                        position:'inside',
+                        formatter: '{b}实际 : {c}%'
+                    }
+                }
+            },
+            data:[
+                {value:30, name:'访问'},
+                {value:10, name:'咨询'},
+                {value:5, name:'订单'},
+                {value:50, name:'点击'},
+                {value:80, name:'展现'}
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 177 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/funnel3.html

@@ -0,0 +1,177 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '漏斗图',
+        subtext: '纯属虚构',
+        x: 'left',
+        y: 'bottom'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: "{a} <br/>{b} : {c}%"
+    },
+    toolbox: {
+        show : true,
+        orient: 'vertical',
+        y: 'center',
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        orient: 'vertical',
+        x: 'left',
+        data : ['展现','点击','访问','咨询','订单']
+    },
+    calculable : true,
+    series : [
+        {
+            name:'漏斗图',
+            type:'funnel',
+            width: '40%',
+            height: '45%',
+            x:'5%',
+            y:'50%',
+            data:[
+                {value:60, name:'访问'},
+                {value:30, name:'咨询'},
+                {value:10, name:'订单'},
+                {value:80, name:'点击'},
+                {value:100, name:'展现'}
+            ]
+        },
+        {
+            name:'金字塔',
+            type:'funnel',
+            width: '40%',
+            height: '45%',
+            x: '5%',
+            y: '5%',
+            sort : 'ascending',
+            data:[
+                {value:60, name:'访问'},
+                {value:30, name:'咨询'},
+                {value:10, name:'订单'},
+                {value:80, name:'点击'},
+                {value:100, name:'展现'}
+            ]
+        },
+        {
+            name:'漏斗图',
+            type:'funnel',
+            width: '40%',
+            height: '45%',
+            x:'55%',
+            y: '5%',
+            itemStyle: {
+                normal: {
+                    // color: 各异,
+                    label: {
+                        position: 'left'
+                    }
+                }
+            },
+            data:[
+                {value:60, name:'访问'},
+                {value:30, name:'咨询'},
+                {value:10, name:'订单'},
+                {value:80, name:'点击'},
+                {value:100, name:'展现'}
+            ]
+        },
+        {
+            name:'金字塔',
+            type:'funnel',
+            width: '40%',
+            height: '45%',
+            x:'55%',
+            y:'50%',
+            sort : 'ascending',
+            itemStyle: {
+                normal: {
+                    // color: 各异,
+                    label: {
+                        position: 'left'
+                    }
+                }
+            },
+            data:[
+                {value:60, name:'访问'},
+                {value:30, name:'咨询'},
+                {value:10, name:'订单'},
+                {value:80, name:'点击'},
+                {value:100, name:'展现'}
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 186 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/funnel4.html

@@ -0,0 +1,186 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <!--link href="../asset/css/font-awesome.min.css" rel="stylesheet"-->
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    title : {
+        text: '漏斗图(对比)',
+        subtext: '纯属虚构',
+        x: 'left',
+        y: 'bottom'
+    },
+    tooltip : {
+        trigger: 'item',
+        formatter: "{a} <br/>{b} : {c}%"
+    },
+    toolbox: {
+        show : true,
+        orient: 'vertical',
+        y: 'center',
+        feature : {
+            mark : {show: true},
+            dataView : {show: true, readOnly: false},
+            magicType : {
+                show: true, 
+                type: ['pie', 'funnel'],
+                option: {
+                    pie: {
+                        radius : [0, 50]
+                    }
+                }
+            },
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    legend: {
+        orient: 'vertical',
+        x: 'left',
+        data : ['产品A','产品B','产品C','产品D','产品E']
+    },
+    calculable : true,
+    series : [
+        {
+            name:'漏斗图',
+            type:'funnel',
+            width: '40%',
+            height: '45%',
+            x:'5%',
+            y:'50%',
+            funnelAlign: 'right',
+            
+            center: ['25%', '25%'],  // for pie
+            
+            data:[
+                {value:60, name:'产品C'},
+                {value:30, name:'产品D'},
+                {value:10, name:'产品E'},
+                {value:80, name:'产品B'},
+                {value:100, name:'产品A'}
+            ]
+        },
+        {
+            name:'金字塔',
+            type:'funnel',
+            width: '40%',
+            height: '45%',
+            x: '5%',
+            y: '5%',
+            sort : 'ascending',
+            funnelAlign: 'right',
+            
+            center: ['25%', '75%'],  // for pie
+            
+            data:[
+                {value:60, name:'产品C'},
+                {value:30, name:'产品D'},
+                {value:10, name:'产品E'},
+                {value:80, name:'产品B'},
+                {value:100, name:'产品A'}
+            ]
+        },
+        {
+            name:'漏斗图',
+            type:'funnel',
+            width: '40%',
+            height: '45%',
+            x:'55%',
+            y: '5%',
+            funnelAlign: 'left',
+            
+            center: ['75%', '25%'],  // for pie
+            
+            data:[
+                {value:60, name:'产品C'},
+                {value:30, name:'产品D'},
+                {value:10, name:'产品E'},
+                {value:80, name:'产品B'},
+                {value:100, name:'产品A'}
+            ]
+        },
+        {
+            name:'金字塔',
+            type:'funnel',
+            width: '40%',
+            height: '45%',
+            x:'55%',
+            y:'50%',
+            sort : 'ascending',
+            funnelAlign: 'left',
+            
+            center: ['75%', '75%'],  // for pie
+            
+            data:[
+                {value:60, name:'产品C'},
+                {value:30, name:'产品D'},
+                {value:10, name:'产品E'},
+                {value:80, name:'产品B'},
+                {value:100, name:'产品A'}
+            ]
+        }
+    ]
+};
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 171 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/gauge.html

@@ -0,0 +1,171 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        formatter: "{a} <br/>{b} : {c}%"
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    series : [
+        {
+            name:'个性化仪表盘',
+            type:'gauge',
+            center : ['50%', '50%'],    // 默认全局居中
+            radius : [0, '75%'],
+            startAngle: 140,
+            endAngle : -140,
+            min: 0,                     // 最小值
+            max: 100,                   // 最大值
+            precision: 0,               // 小数精度,默认为0,无小数点
+            splitNumber: 10,             // 分割段数,默认为5
+            axisLine: {            // 坐标轴线
+                show: true,        // 默认显示,属性show控制显示与否
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: [[0.2, 'lightgreen'],[0.4, 'orange'],[0.8, 'skyblue'],[1, '#ff4500']], 
+                    width: 30
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                show: true,        // 属性show控制显示与否,默认不显示
+                splitNumber: 5,    // 每份split细分多少段
+                length :8,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: '#eee',
+                    width: 1,
+                    type: 'solid'
+                }
+            },
+            axisLabel: {           // 坐标轴文本标签,详见axis.axisLabel
+                show: true,
+                formatter: function(v){
+                    switch (v+''){
+                        case '10': return '弱';
+                        case '30': return '低';
+                        case '60': return '中';
+                        case '90': return '高';
+                        default: return '';
+                    }
+                },
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    color: '#333'
+                }
+            },
+            splitLine: {           // 分隔线
+                show: true,        // 默认显示,属性show控制显示与否
+                length :30,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
+                    color: '#eee',
+                    width: 2,
+                    type: 'solid'
+                }
+            },
+            pointer : {
+                length : '80%',
+                width : 8,
+                color : 'auto'
+            },
+            title : {
+                show : true,
+                offsetCenter: ['-65%', -10],       // x, y,单位px
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    color: '#333',
+                    fontSize : 15
+                }
+            },
+            detail : {
+                show : true,
+                backgroundColor: 'rgba(0,0,0,0)',
+                borderWidth: 0,
+                borderColor: '#ccc',
+                width: 100,
+                height: 40,
+                offsetCenter: ['-60%', 10],       // x, y,单位px
+                formatter:'{value}%',
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    color: 'auto',
+                    fontSize : 30
+                }
+            },
+            data:[{value: 50, name: '仪表盘'}]
+        }
+    ]
+};
+
+clearInterval(timeTicket);
+timeTicket = setInterval(function (){
+    option.series[0].data[0].value = (Math.random()*100).toFixed(2) - 0;
+    myChart.setOption(option, true);
+},2000)
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">var timeTicket;</script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 96 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/gauge1.html

@@ -0,0 +1,96 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        formatter: "{a} <br/>{b} : {c}%"
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    series : [
+        {
+            name:'业务指标',
+            type:'gauge',
+            detail : {formatter:'{value}%'},
+            data:[{value: 50, name: '完成率'}]
+        }
+    ]
+};
+
+clearInterval(timeTicket);
+timeTicket = setInterval(function (){
+    option.series[0].data[0].value = (Math.random()*100).toFixed(2) - 0;
+    myChart.setOption(option, true);
+},2000);
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">var timeTicket;</script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 138 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/gauge2.html

@@ -0,0 +1,138 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        formatter: "{a} <br/>{b} : {c}%"
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    series : [
+        {
+            name:'业务指标',
+            type:'gauge',
+            splitNumber: 10,       // 分割段数,默认为5
+            axisLine: {            // 坐标轴线
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: [[0.2, '#228b22'],[0.8, '#48b'],[1, '#ff4500']], 
+                    width: 8
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                splitNumber: 10,   // 每份split细分多少段
+                length :12,        // 属性length控制线长
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: 'auto'
+                }
+            },
+            axisLabel: {           // 坐标轴文本标签,详见axis.axisLabel
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    color: 'auto'
+                }
+            },
+            splitLine: {           // 分隔线
+                show: true,        // 默认显示,属性show控制显示与否
+                length :30,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
+                    color: 'auto'
+                }
+            },
+            pointer : {
+                width : 5
+            },
+            title : {
+                show : true,
+                offsetCenter: [0, '-40%'],       // x, y,单位px
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    fontWeight: 'bolder'
+                }
+            },
+            detail : {
+                formatter:'{value}%',
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    color: 'auto',
+                    fontWeight: 'bolder'
+                }
+            },
+            data:[{value: 50, name: '完成率'}]
+        }
+    ]
+};
+
+clearInterval(timeTicket);
+timeTicket = setInterval(function (){
+    option.series[0].data[0].value = (Math.random()*100).toFixed(2) - 0;
+    myChart.setOption(option,true);
+},2000)
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">var timeTicket;</script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 149 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/gauge3.html

@@ -0,0 +1,149 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        formatter: "{a} <br/>{b} : {c}%"
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    series : [
+        {
+            name:'业务指标',
+            type:'gauge',
+            startAngle: 180,
+            endAngle: 0,
+            center : ['50%', '90%'],    // 默认全局居中
+            radius : 320,
+            axisLine: {            // 坐标轴线
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    width: 200
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                splitNumber: 10,   // 每份split细分多少段
+                length :12,        // 属性length控制线长
+            },
+            axisLabel: {           // 坐标轴文本标签,详见axis.axisLabel
+                formatter: function(v){
+                    switch (v+''){
+                        case '10': return '低';
+                        case '50': return '中';
+                        case '90': return '高';
+                        default: return '';
+                    }
+                },
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    color: '#fff',
+                    fontSize: 15,
+                    fontWeight: 'bolder'
+                }
+            },
+            pointer: {
+                width:50,
+                length: '90%',
+                color: 'rgba(255, 255, 255, 0.8)'
+            },
+            title : {
+                show : true,
+                offsetCenter: [0, '-60%'],       // x, y,单位px
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    color: '#fff',
+                    fontSize: 30
+                }
+            },
+            detail : {
+                show : true,
+                backgroundColor: 'rgba(0,0,0,0)',
+                borderWidth: 0,
+                borderColor: '#ccc',
+                width: 100,
+                height: 40,
+                offsetCenter: [0, -40],       // x, y,单位px
+                formatter:'{value}%',
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    fontSize : 50
+                }
+            },
+            data:[{value: 50, name: '完成率'}]
+        }
+    ]
+};
+
+clearInterval(timeTicket);
+timeTicket = setInterval(function (){
+    option.series[0].data[0].value = (Math.random()*100).toFixed(2) - 0;
+    myChart.setOption(option,true);
+},2000)
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">var timeTicket;</script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 264 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/gauge4.html

@@ -0,0 +1,264 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    tooltip : {
+        formatter: "{a} <br/>{c} {b}"
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    series : [
+        {
+            name:'速度',
+            type:'gauge',
+            z: 3,
+            min:0,
+            max:220,
+            splitNumber:11,
+            axisLine: {            // 坐标轴线
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    width: 10
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                length :15,        // 属性length控制线长
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: 'auto'
+                }
+            },
+            splitLine: {           // 分隔线
+                length :20,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
+                    color: 'auto'
+                }
+            },
+            title : {
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    fontWeight: 'bolder',
+                    fontSize: 20,
+                    fontStyle: 'italic'
+                }
+            },
+            detail : {
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    fontWeight: 'bolder'
+                }
+            },
+            data:[{value: 40, name: 'km/h'}]
+        },
+        {
+            name:'转速',
+            type:'gauge',
+            center : ['25%', '55%'],    // 默认全局居中
+            radius : '50%',
+            min:0,
+            max:7,
+            endAngle:45,
+            splitNumber:7,
+            axisLine: {            // 坐标轴线
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    width: 8
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                length :12,        // 属性length控制线长
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: 'auto'
+                }
+            },
+            splitLine: {           // 分隔线
+                length :20,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
+                    color: 'auto'
+                }
+            },
+            pointer: {
+                width:5
+            },
+            title : {
+                offsetCenter: [0, '-30%'],       // x, y,单位px
+            },
+            detail : {
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    fontWeight: 'bolder'
+                }
+            },
+            data:[{value: 1.5, name: 'x1000 r/min'}]
+        },
+        {
+            name:'油表',
+            type:'gauge',
+            center : ['75%', '50%'],    // 默认全局居中
+            radius : '50%',
+            min:0,
+            max:2,
+            startAngle:135,
+            endAngle:45,
+            splitNumber:2,
+            axisLine: {            // 坐标轴线
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: [[0.2, '#ff4500'],[0.8, '#48b'],[1, '#228b22']], 
+                    width: 8
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                splitNumber:5,
+                length :10,        // 属性length控制线长
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: 'auto'
+                }
+            },
+            axisLabel: {
+                formatter:function(v){
+                    switch (v + '') {
+                        case '0' : return 'E';
+                        case '1' : return 'Gas';
+                        case '2' : return 'F';
+                    }
+                }
+            },
+            splitLine: {           // 分隔线
+                length :15,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
+                    color: 'auto'
+                }
+            },
+            pointer: {
+                width:2
+            },
+            title : {
+                show: false
+            },
+            detail : {
+                show: false
+            },
+            data:[{value: 0.5, name: 'gas'}]
+        },
+        {
+            name:'水表',
+            type:'gauge',
+            center : ['75%', '50%'],    // 默认全局居中
+            radius : '50%',
+            min:0,
+            max:2,
+            startAngle:315,
+            endAngle:225,
+            splitNumber:2,
+            axisLine: {            // 坐标轴线
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: [[0.2, '#ff4500'],[0.8, '#48b'],[1, '#228b22']], 
+                    width: 8
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                show: false
+            },
+            axisLabel: {
+                formatter:function(v){
+                    switch (v + '') {
+                        case '0' : return 'H';
+                        case '1' : return 'Water';
+                        case '2' : return 'C';
+                    }
+                }
+            },
+            splitLine: {           // 分隔线
+                length :15,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
+                    color: 'auto'
+                }
+            },
+            pointer: {
+                width:2
+            },
+            title : {
+                show: false
+            },
+            detail : {
+                show: false
+            },
+            data:[{value: 0.5, name: 'gas'}]
+        }
+    ]
+};
+
+clearInterval(timeTicket);
+timeTicket = setInterval(function (){
+    option.series[0].data[0].value = (Math.random()*100).toFixed(2) - 0;
+    option.series[1].data[0].value = (Math.random()*7).toFixed(2) - 0;
+    option.series[2].data[0].value = (Math.random()*2).toFixed(2) - 0;
+    option.series[3].data[0].value = (Math.random()*2).toFixed(2) - 0;
+    myChart.setOption(option,true);
+},2000)
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">var timeTicket;</script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

+ 355 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/gauge5.html

@@ -0,0 +1,355 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="ECharts">
+    <meta name="author" content="kener.linfeng@gmail.com">
+    <title>ECharts · Example</title>
+
+    <link rel="shortcut icon" href="../asset/ico/favicon.png">
+
+    <link href="../asset/css/font-awesome.min.css" rel="stylesheet">
+    <link href="../asset/css/bootstrap.css" rel="stylesheet">
+    <link href="../asset/css/carousel.css" rel="stylesheet">
+    <link href="../asset/css/echartsHome.css" rel="stylesheet">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
+    <!--[if lt IE 9]>
+      <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
+      <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+    <![endif]-->
+
+    <script src="./www/js/echarts.js"></script>
+    <script src="../asset/js/codemirror.js"></script>
+    <script src="../asset/js/javascript.js"></script>
+
+    <link href="../asset/css/codemirror.css" rel="stylesheet">
+    <link href="../asset/css/monokai.css" rel="stylesheet">
+</head>
+
+<body>
+    <!-- Fixed navbar -->
+    <div class="navbar navbar-default navbar-fixed-top" role="navigation" id="head"></div>
+
+
+    <div class="container-fluid">
+        <div class="row-fluid example">
+            <div id="sidebar-code" class="col-md-4">
+                <div class="well sidebar-nav">
+                    <div class="nav-header"><a href="#" onclick="autoResize()" class="glyphicon glyphicon-resize-full" id ="icon-resize" ></a>option</div>
+                    <textarea id="code" name="code">
+option = {
+    backgroundColor: '#1b1b1b',
+    tooltip : {
+        formatter: "{a} <br/>{c} {b}"
+    },
+    toolbox: {
+        show : true,
+        feature : {
+            mark : {show: true},
+            restore : {show: true},
+            saveAsImage : {show: true}
+        }
+    },
+    series : [
+        {
+            name:'速度',
+            type:'gauge',
+            min:0,
+            max:220,
+            splitNumber:11,
+            axisLine: {            // 坐标轴线
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: [[0.09, 'lime'],[0.82, '#1e90ff'],[1, '#ff4500']],
+                    width: 3,
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            axisLabel: {            // 坐标轴小标记
+                textStyle: {       // 属性lineStyle控制线条样式
+                    fontWeight: 'bolder',
+                    color: '#fff',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                length :15,        // 属性length控制线长
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: 'auto',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            splitLine: {           // 分隔线
+                length :25,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
+                    width:3,
+                    color: '#fff',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            pointer: {           // 分隔线
+                shadowColor : '#fff', //默认透明
+                shadowBlur: 5
+            },
+            title : {
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    fontWeight: 'bolder',
+                    fontSize: 20,
+                    fontStyle: 'italic',
+                    color: '#fff',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            detail : {
+                backgroundColor: 'rgba(30,144,255,0.8)',
+                borderWidth: 1,
+                borderColor: '#fff',
+                shadowColor : '#fff', //默认透明
+                shadowBlur: 5,
+                offsetCenter: [0, '50%'],       // x, y,单位px
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    fontWeight: 'bolder',
+                    color: '#fff'
+                }
+            },
+            data:[{value: 40, name: 'km/h'}]
+        },
+        {
+            name:'转速',
+            type:'gauge',
+            center : ['25%', '55%'],    // 默认全局居中
+            radius : '50%',
+            min:0,
+            max:7,
+            endAngle:45,
+            splitNumber:7,
+            axisLine: {            // 坐标轴线
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: [[0.29, 'lime'],[0.86, '#1e90ff'],[1, '#ff4500']],
+                    width: 2,
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            axisLabel: {            // 坐标轴小标记
+                textStyle: {       // 属性lineStyle控制线条样式
+                    fontWeight: 'bolder',
+                    color: '#fff',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                length :12,        // 属性length控制线长
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: 'auto',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            splitLine: {           // 分隔线
+                length :20,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
+                    width:3,
+                    color: '#fff',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            pointer: {
+                width:5,
+                shadowColor : '#fff', //默认透明
+                shadowBlur: 5
+            },
+            title : {
+                offsetCenter: [0, '-30%'],       // x, y,单位px
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    fontWeight: 'bolder',
+                    fontStyle: 'italic',
+                    color: '#fff',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            detail : {
+                //backgroundColor: 'rgba(30,144,255,0.8)',
+               // borderWidth: 1,
+                borderColor: '#fff',
+                shadowColor : '#fff', //默认透明
+                shadowBlur: 5,
+                width: 80,
+                height:30,
+                offsetCenter: [25, '20%'],       // x, y,单位px
+                textStyle: {       // 其余属性默认使用全局文本样式,详见TEXTSTYLE
+                    fontWeight: 'bolder',
+                    color: '#fff'
+                }
+            },
+            data:[{value: 1.5, name: 'x1000 r/min'}]
+        },
+        {
+            name:'油表',
+            type:'gauge',
+            center : ['75%', '50%'],    // 默认全局居中
+            radius : '50%',
+            min:0,
+            max:2,
+            startAngle:135,
+            endAngle:45,
+            splitNumber:2,
+            axisLine: {            // 坐标轴线
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: [[0.2, 'lime'],[0.8, '#1e90ff'],[1, '#ff4500']],
+                    width: 2,
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                length :12,        // 属性length控制线长
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: 'auto',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            axisLabel: {
+                textStyle: {       // 属性lineStyle控制线条样式
+                    fontWeight: 'bolder',
+                    color: '#fff',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                },
+                formatter:function(v){
+                    switch (v + '') {
+                        case '0' : return 'E';
+                        case '1' : return 'Gas';
+                        case '2' : return 'F';
+                    }
+                }
+            },
+            splitLine: {           // 分隔线
+                length :15,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
+                    width:3,
+                    color: '#fff',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            pointer: {
+                width:2,
+                shadowColor : '#fff', //默认透明
+                shadowBlur: 5
+            },
+            title : {
+                show: false
+            },
+            detail : {
+                show: false
+            },
+            data:[{value: 0.5, name: 'gas'}]
+        },
+        {
+            name:'水表',
+            type:'gauge',
+            center : ['75%', '50%'],    // 默认全局居中
+            radius : '50%',
+            min:0,
+            max:2,
+            startAngle:315,
+            endAngle:225,
+            splitNumber:2,
+            axisLine: {            // 坐标轴线
+                lineStyle: {       // 属性lineStyle控制线条样式
+                    color: [[0.2, 'lime'],[0.8, '#1e90ff'],[1, '#ff4500']],
+                    width: 2,
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            axisTick: {            // 坐标轴小标记
+                show: false
+            },
+            axisLabel: {
+                textStyle: {       // 属性lineStyle控制线条样式
+                    fontWeight: 'bolder',
+                    color: '#fff',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                },
+                formatter:function(v){
+                    switch (v + '') {
+                        case '0' : return 'H';
+                        case '1' : return 'Water';
+                        case '2' : return 'C';
+                    }
+                }
+            },
+            splitLine: {           // 分隔线
+                length :15,         // 属性length控制线长
+                lineStyle: {       // 属性lineStyle(详见lineStyle)控制线条样式
+                    width:3,
+                    color: '#fff',
+                    shadowColor : '#fff', //默认透明
+                    shadowBlur: 10
+                }
+            },
+            pointer: {
+                width:2,
+                shadowColor : '#fff', //默认透明
+                shadowBlur: 5
+            },
+            title : {
+                show: false
+            },
+            detail : {
+                show: false
+            },
+            data:[{value: 0.5, name: 'gas'}]
+        }
+    ]
+};
+
+clearInterval(timeTicket);
+timeTicket = setInterval(function (){
+    option.series[0].data[0].value = (Math.random()*100).toFixed(2) - 0;
+    option.series[1].data[0].value = (Math.random()*7).toFixed(2) - 0;
+    option.series[2].data[0].value = (Math.random()*2).toFixed(2) - 0;
+    option.series[3].data[0].value = (Math.random()*2).toFixed(2) - 0;
+    myChart.setOption(option,true);
+},2000)
+                    </textarea>
+              </div><!--/.well -->
+            </div><!--/span-->
+            <div id="graphic" class="col-md-8">
+                <div id="main" class="main"></div>
+                <div>
+                    <button type="button" class="btn btn-sm btn-success" onclick="refresh(true)">刷 新</button>
+                    <span class="text-primary">切换主题</span>
+                    <select id="theme-select"></select>
+
+                    <span id='wrong-message' style="color:red"></span>
+                </div>
+            </div><!--/span-->
+        </div><!--/row-->
+        
+        </div><!--/.fluid-container-->
+
+    <footer id="footer"></footer>
+    <!-- Le javascript
+    ================================================== -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script src="../asset/js/jquery.min.js"></script>
+    <script type="text/javascript" src="../asset/js/echartsHome.js"></script>
+    <script src="../asset/js/bootstrap.min.js"></script>
+    <script type="text/javascript">var timeTicket;</script>
+    <script src="../asset/js/echartsExample.js"></script>
+</body>
+</html>

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/GUANGZHOU_geo.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 41 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/HK_geo.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 5232 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/UK_geo.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 54 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/USA_geo.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/110100.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/120100.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130100.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130200.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130300.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130400.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130500.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130600.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130700.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130800.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/130900.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/131000.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/131100.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140100.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140200.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140300.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140400.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140500.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140600.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140700.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140800.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/140900.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/141000.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/141100.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150100.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150200.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150300.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150400.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150500.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150600.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150700.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150800.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/150900.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/152200.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/152500.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/152900.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210100.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210200.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210300.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210400.json


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210500.json


+ 0 - 0
src/main/webapp/static/echarts-2.2.7/doc/example/geoJson/china-main-city/210600.json


이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.