Commit | Line | Data |
---|---|---|
54425b14 | 1 | <!DOCTYPE html> |
8b83c6cc RK |
2 | <html> |
3 | <head> | |
10494b48 | 4 | <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7; IE=EmulateIE9"> |
937029df | 5 | <title>zoom</title> |
8b83c6cc | 6 | <!--[if IE]> |
e1fb3740 | 7 | <script type="text/javascript" src="../excanvas.js"></script> |
8b83c6cc RK |
8 | <![endif]--> |
9 | <script type="text/javascript" src="../strftime/strftime-min.js"></script> | |
10 | <script type="text/javascript" src="../rgbcolor/rgbcolor.js"></script> | |
11 | <script type="text/javascript" src="../dygraph-canvas.js"></script> | |
12 | <script type="text/javascript" src="../dygraph.js"></script> | |
13 | <script type="text/javascript" src="data.js"></script> | |
14 | </head> | |
15 | <body> | |
437c0979 | 16 | <h3>Click the buttons to change the zoom level or just use the normal |
447254de | 17 | click-and drag. While zoom typically works by click-and-drag, the |
c65f2303 | 18 | buttons are useful for testing.</h3> |
8b83c6cc | 19 | <h4>Window coordinates (in dates and values):</h4> |
c65f2303 | 20 | <div id="xdimensions"></div> <div id="ydimensions"></div> |
8b83c6cc RK |
21 | <div id="div_g" style="width:600px; height:300px;"></div> |
22 | ||
23 | <p><b>Zoom operations:</b></p> | |
24 | <p> | |
437c0979 RK |
25 | <input type="button" value="Y (3,5)" onclick="zoomGraphY(3,5)"> |
26 | <input type="button" value="Y (0,4)" onclick="zoomGraphY(0,4)"> | |
27 | <input type="button" value="Y (2,4)" onclick="zoomGraphY(2,4)"> | |
28 | <input type="button" value="Y (0,2)" onclick="zoomGraphY(0,2)"> | |
937029df | 29 | <input type="button" value="Y (0,1)" onclick="zoomGraphY(0,1)"> |
437c0979 RK |
30 | <br> |
31 | <input type="button" value="Oct 8-13" onclick="zoomGraphX(1160261979962, 1163905694248)"> | |
32 | <input type="button" value="Oct 22-28" onclick="zoomGraphX(1161489164461 , 1162008465957)"> | |
33 | <input type="button" value="Oct 23-24" onclick="zoomGraphX(1161575878860, 1161660991675)"> | |
34 | <input type="button" value="Oct 26 6AM-noon" onclick="zoomGraphX(1161770537840, 1161792063332)"> | |
35 | <br> | |
36 | <input type="button" value="Unzoom" onclick="unzoomGraph()"> | |
8b83c6cc RK |
37 | </p> |
38 | ||
39 | ||
40 | <script type="text/javascript"> | |
41 | g = new Dygraph( | |
42 | document.getElementById("div_g"), | |
43 | NoisyData, { | |
a6cc9f3e | 44 | errorBars: true, |
885c13e4 | 45 | zoomCallback : function(minDate, maxDate, yRanges) { |
7142904f RK |
46 | showDimensions(minDate, maxDate, yRanges); |
47 | } | |
885c13e4 | 48 | } |
8b83c6cc RK |
49 | ); |
50 | ||
51 | // TODO(konigsberg): Implement a visualization that verifies that initial | |
52 | // displays also show correctly. | |
53 | ||
54 | // Pull an initial value for logging. | |
55 | var minDate = g.xAxisRange()[0]; | |
56 | var maxDate = g.xAxisRange()[1]; | |
57 | var minValue = g.yAxisRange()[0]; | |
58 | var maxValue = g.yAxisRange()[1]; | |
dea5c743 | 59 | showDimensions(minDate, maxDate, [minValue, maxValue]); |
8b83c6cc | 60 | |
dea5c743 | 61 | function showDimensions(minDate, maxDate, yRanges) { |
885c13e4 RK |
62 | showXDimensions(minDate, maxDate); |
63 | showYDimensions(yRanges); | |
c65f2303 RK |
64 | } |
65 | ||
66 | function showXDimensions(first, second) { | |
67 | var elem = document.getElementById("xdimensions"); | |
68 | elem.innerHTML = "dateWindow : [" + first + ", "+ second + "]"; | |
69 | } | |
70 | ||
5f3b823b | 71 | function showYDimensions(ranges) { |
c65f2303 | 72 | var elem = document.getElementById("ydimensions"); |
5f3b823b | 73 | elem.innerHTML = "valueRange : [" + ranges + "]"; |
8b83c6cc RK |
74 | } |
75 | ||
437c0979 | 76 | function zoomGraphX(minDate, maxDate) { |
c65f2303 RK |
77 | g.updateOptions({ |
78 | dateWindow: [minDate, maxDate] | |
79 | }); | |
90b15133 | 80 | showXDimensions(minDate, maxDate); |
437c0979 RK |
81 | } |
82 | ||
83 | function zoomGraphY(minValue, maxValue) { | |
c65f2303 RK |
84 | g.updateOptions({ |
85 | valueRange: [minValue, maxValue] | |
86 | }); | |
f99d913c | 87 | showYDimensions(g.yAxisRanges()); |
437c0979 RK |
88 | } |
89 | ||
90 | function unzoomGraph() { | |
c65f2303 | 91 | g.updateOptions({ |
eeab5025 RK |
92 | dateWindow: null, |
93 | valueRange: null | |
c65f2303 | 94 | }); |
8b83c6cc RK |
95 | } |
96 | </script> | |
97 | ||
98 | </body> | |
99 | </html> |