X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=tests%2Fzoom.html;h=5803af61c5ea9207ec21c93cae7f69162e7c9f48;hb=93a5bb4c827d6665f395c48b216438f95e94d76e;hp=0c214464e3ecf684a03f7d69130ab4baa15626e8;hpb=8b83c6cc6495cf8a22ed2af673736e774a29ca1d;p=dygraphs.git diff --git a/tests/zoom.html b/tests/zoom.html index 0c21446..5803af6 100644 --- a/tests/zoom.html +++ b/tests/zoom.html @@ -1,28 +1,48 @@ + - noise - - - - - + + zoom + + + -

Click the buttons to change the zoom

+

Click the buttons to change the zoom level or just use the normal + click-and drag. While zoom typically works by click-and-drag, the + buttons are useful for testing.

Window coordinates (in dates and values):

-
+
+
+

Zoomed: False

+

Zoomed X: False

+

Zoomed Y: False

+

+

Zoom operations:

-   -   -   -   -   +   +   +   +   +   +

+   +   +   +   +

+   +

+   +   +  

@@ -30,7 +50,15 @@ g = new Dygraph( document.getElementById("div_g"), NoisyData, { - zoomCallback : function(a,b,c,d) { showDimensions(a,b,c,d); } + errorBars: true, + zoomCallback : function(minDate, maxDate, yRange) { + showDimensions(minDate, maxDate, yRange); + }, + drawCallback: function(me, initial) { + document.getElementById("zoomed").innerHTML = "" + me.isZoomed(); + document.getElementById("zoomedX").innerHTML = "" + me.isZoomed("x"); + document.getElementById("zoomedY").innerHTML = "" + me.isZoomed("y"); + } } ); @@ -42,23 +70,46 @@ var maxDate = g.xAxisRange()[1]; var minValue = g.yAxisRange()[0]; var maxValue = g.yAxisRange()[1]; + showDimensions(minDate, maxDate, [minValue, maxValue]); + + function showDimensions(minDate, maxDate, yRanges) { + showXDimensions(minDate, maxDate); + showYDimensions(yRanges); + } + + function showXDimensions(first, second) { + var elem = document.getElementById("xdimensions"); + elem.innerHTML = "dateWindow : [" + first + ", "+ second + "]"; + } - showDimensions(minDate, maxDate, minValue, maxValue); + function showYDimensions(ranges) { + var elem = document.getElementById("ydimensions"); + elem.innerHTML = "valueRange : [" + ranges + "]"; + } + + function zoomGraphX(minDate, maxDate) { + g.updateOptions({ + dateWindow: [minDate, maxDate] + }); + showXDimensions(minDate, maxDate); + } + + function zoomGraphY(minValue, maxValue) { + g.updateOptions({ + valueRange: [minValue, maxValue] + }); + showYDimensions(g.yAxisRanges()); + } - function showDimensions(minDate, maxDate, minValue, maxValue) { - var elem = document.getElementById("dimensions"); - elem.innerHTML = - "dateWindow : [" + minDate + " , "+ maxDate + "],
" + - "valueRange : [" + minValue + " , "+ maxValue + "],"; + function unzoomGraph() { + g.updateOptions({ + dateWindow: null, + valueRange: null + }); } - function sizeGraph(i) { - switch(i) { - case 1: g.doZoomYValues_(4, 2); - break; - case 5: g.doUnzoom_(); - break; - } + function panEdgeFraction(value) { + g.updateOptions({ panEdgeFraction : value }); }