3 <title>labelsKMB
</title>
5 <script type=
"text/javascript" src=
"excanvas.js"></script>
7 <script type=
"text/javascript" src=
"../dygraph-combined.js"></script>
8 <script type=
"text/javascript" src=
"../dygraph-canvas.js"></script>
9 <script type=
"text/javascript" src=
"../dygraph.js"></script>
13 <div id=
"labelsKMB" style=
"width:600px; height: 300px;"></div>
16 <div id=
"labelsKMG2" style=
"width:600px; height: 300px;"></div>
18 <p>labelsKMG2 with yValueFormatter:
</p>
19 <div id=
"labelsKMG2yValueFormatter" style=
"width:600px; height: 300px;"></div>
21 <p>The curves are exponentials. Zooming in should reveal each of the 'K',
22 'M', 'B', etc. labels.
</p>
24 <script type=
"text/javascript">
25 function round(num, places) {
26 var shift = Math.pow(
10, places);
27 return Math.round(num * shift)/shift;
31 for (var i =
0, n =
1; i <
43; i++, n *=
2) {
35 var suffixes = ['', 'k', 'M', 'G', 'T'];
36 function formatValue(v) {
37 if (v <
1000) return v;
39 var magnitude = Math.floor(String(Math.floor(v)).length /
3);
40 if (magnitude
> suffixes.length -
1)
41 magnitude = suffixes.length -
1;
42 return String(round(v / Math.pow(
10, magnitude *
3),
2)) +
46 new Dygraph(document.getElementById(
"labelsKMB"), data, { labelsKMB: true });
47 new Dygraph(document.getElementById(
"labelsKMG2"), data, { labelsKMG2: true });
48 var g = new Dygraph(document.getElementById(
"labelsKMG2yValueFormatter"), data,
49 { labelsKMG2: true, yValueFormatter: formatValue });