/
fast.html
57 lines (46 loc) · 1.25 KB
/
fast.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
---
layout: default
---
<p>1 charts with 4 timeseries and 30 points updating at 60fps.</p>
<div id="chartContainer" style="display: inline-block; position: relative;"></div>
<script>
$(document).ready(function() {
var c = new CLACK.Chart(
document.getElementById('chartContainer')
);
var series = 4;
var points = 30;
var currentDate = new Date();
var colors = d3.scale.category10();
// console.time("generatechart");
for(var j = 0; j <= series; j++) {
var exes = [];
var whys = [];
for(var i = 0; i <= points; i++) {
exes.push(i);
whys.push((j + 1) * Math.sin(2 * Math.PI * j + i + currentDate.getSeconds()));
}
c.addSeries('default', {
x: exes,
y: whys,
label: 'foobar ' + j,
color: colors(j)
});
}
// console.timeEnd("generatechart");
c.draw();
var x = points;
var addAPoint = function() {
for(var j = 0; j <= series; j++) {
var y = Math.floor(Math.random() * 50);
// console.time('redraw');
c.addToSeries('default', j, [x], [(j + 1) * Math.sin(2 * Math.PI * j + x)], true);
c.draw();
// console.timeEnd('redraw');
x += 1;
}
window.requestAnimationFrame(addAPoint);
}
window.requestAnimationFrame(addAPoint);
});
</script>