|  |  | 
|  | <!-- | 
|  | Licensed to the Apache Software Foundation (ASF) under one | 
|  | or more contributor license agreements.  See the NOTICE file | 
|  | distributed with this work for additional information | 
|  | regarding copyright ownership.  The ASF licenses this file | 
|  | to you under the Apache License, Version 2.0 (the | 
|  | "License"); you may not use this file except in compliance | 
|  | with the License.  You may obtain a copy of the License at | 
|  |  | 
|  | http://www.apache.org/licenses/LICENSE-2.0 | 
|  |  | 
|  | Unless required by applicable law or agreed to in writing, | 
|  | software distributed under the License is distributed on an | 
|  | "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | 
|  | KIND, either express or implied.  See the License for the | 
|  | specific language governing permissions and limitations | 
|  | under the License. | 
|  | --> | 
|  |  | 
|  | <html> | 
|  | <head> | 
|  | <meta charset="utf-8"> | 
|  | <script src="lib/simpleRequire.js"></script> | 
|  | <script src="lib/config.js"></script> | 
|  | <meta name="viewport" content="width=device-width, initial-scale=1" /> | 
|  | </head> | 
|  | <body> | 
|  | <style> | 
|  | html, body, #main { | 
|  | width: 100%; | 
|  | height: 100%; | 
|  | margin: 0; | 
|  | } | 
|  | </style> | 
|  | <div id="timing"></div> | 
|  | <script> | 
|  |  | 
|  | require([ | 
|  | 'echarts' | 
|  | ], function (echarts) { | 
|  | var myChart; | 
|  | var lineCount = 20; | 
|  | var pointCount = 10000; | 
|  | var chartCount = 20; | 
|  |  | 
|  | var option = { | 
|  | tooltip : { | 
|  | trigger: 'axis', | 
|  | axisPointer: { | 
|  | animation: false | 
|  | } | 
|  | }, | 
|  | legend: { | 
|  | data:[] | 
|  | }, | 
|  | dataZoom: [{ | 
|  | show: true, | 
|  | realtime: true, | 
|  | // showDataShadow: false, | 
|  | start: 10, | 
|  | end: 60 | 
|  | }], | 
|  | xAxis : [ | 
|  | { | 
|  | type : 'time' | 
|  | } | 
|  | ], | 
|  | yAxis : [ | 
|  | { | 
|  | type : 'value' | 
|  | } | 
|  | ], | 
|  | series: [], | 
|  | animation: false | 
|  | }; | 
|  |  | 
|  | var lineStyle = { | 
|  | normal: { | 
|  | width: 2, | 
|  | opacity: 1 | 
|  | } | 
|  | }; | 
|  |  | 
|  | var date = new Float64Array(pointCount) | 
|  | var oneDay = 24 * 3600 * 1000; | 
|  | var base = +new Date(1987, 9, 3); | 
|  | for (var j = 0; j < pointCount; j++) { | 
|  | date[j] = base += oneDay; | 
|  | } | 
|  | for (var i = 0; i < lineCount; i++) { | 
|  | var y = Math.random() * 1000; | 
|  | var values = new Float64Array(pointCount * 2); | 
|  | var off = 0; | 
|  | for (var j = 0; j < pointCount; j++) { | 
|  | y += Math.round(10 + Math.random() * (-10 - 10)); | 
|  | values[off++] = date[j]; | 
|  | values[off++] = y; | 
|  | } | 
|  |  | 
|  | option.legend.data.push( 'line' + i ); | 
|  | option.series.push({ | 
|  | name: 'line' + i, | 
|  | type: 'line', | 
|  | hoverAnimation: false, | 
|  | showSymbol: false, | 
|  | dimensions: ['date', 'value'], | 
|  | encode: { | 
|  | x: 'date', | 
|  | y: 'value' | 
|  | }, | 
|  | data: values, | 
|  | lineStyle: lineStyle | 
|  | }); | 
|  | } | 
|  |  | 
|  | function refresh(isBtnRefresh){ | 
|  | var start = new Date(); | 
|  | console.profile('render'); | 
|  | for( var n = 0; n < chartCount; n++ ) { | 
|  | var el = document.createElement('div'); | 
|  | el.innerHTML = '<h1>'+n+'</h1><div id="chart'+n+'" style="width: 860px; height: 320px"></div>'; | 
|  | document.body.appendChild(el); | 
|  |  | 
|  | myChart = echarts.init(document.getElementById('chart'+n)); | 
|  | myChart.setOption(option, true); | 
|  | } | 
|  | console.profileEnd('render'); | 
|  | setTimeout(function () { | 
|  | var end = new Date(); | 
|  | document.getElementById('timing').innerHTML = 'Graphs loaded in ' + ( end - start ) + ' ms.'; | 
|  | }); | 
|  | }; | 
|  |  | 
|  | refresh(); | 
|  | }); | 
|  | </script> | 
|  | </body> | 
|  | </html> |