1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- <!DOCTYPE HTML>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Highcharts Example</title>
- <style type="text/css">
- </style>
- </head>
- <body>
- <script src="../../code/highcharts.js"></script>
- <script src="../../code/modules/boost.js"></script>
- <script src="../../code/modules/exporting.js"></script>
- <div id="container" style="height: 400px; max-width: 800px; margin: 0 auto"></div>
- <script type="text/javascript">
- function getData(n) {
- var arr = [],
- i,
- x,
- a,
- b,
- c,
- spike;
- for (
- i = 0, x = Date.UTC(new Date().getUTCFullYear(), 0, 1) - n * 36e5;
- i < n;
- i = i + 1, x = x + 36e5
- ) {
- if (i % 100 === 0) {
- a = 2 * Math.random();
- }
- if (i % 1000 === 0) {
- b = 2 * Math.random();
- }
- if (i % 10000 === 0) {
- c = 2 * Math.random();
- }
- if (i % 50000 === 0) {
- spike = 10;
- } else {
- spike = 0;
- }
- arr.push([
- x,
- 2 * Math.sin(i / 100) + a + b + c + spike + Math.random()
- ]);
- }
- return arr;
- }
- var n = 500000,
- data = getData(n);
- console.time('line');
- Highcharts.chart('container', {
- chart: {
- zoomType: 'x'
- },
- title: {
- text: 'Highcharts drawing ' + n + ' points'
- },
- subtitle: {
- text: 'Using the Boost module'
- },
- tooltip: {
- valueDecimals: 2
- },
- xAxis: {
- type: 'datetime'
- },
- series: [{
- data: data,
- lineWidth: 0.5,
- name: 'Hourly data points'
- }]
- });
- console.timeEnd('line');
- </script>
- </body>
- </html>
|