X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=dygraph-canvas.js;h=99ad493962b183b0a674367ec4ede451775fec65;hb=db775859ec7ae823b731bfb04cb544ef3ae7ad3a;hp=7b0cebffff0f2e4a1d1583278d5c6470d8a27d0f;hpb=3c080cd0184a943cd77118e83d3f4148360505d6;p=dygraphs.git diff --git a/dygraph-canvas.js b/dygraph-canvas.js index 7b0cebf..99ad493 100644 --- a/dygraph-canvas.js +++ b/dygraph-canvas.js @@ -57,8 +57,6 @@ var DygraphCanvasRenderer = function(dygraph, element, elementContext, layout) { this.height = this.element.height; this.width = this.element.width; - this.elementContext.save(); - // --- check whether everything is ok before we return if (!this.isIE && !(DygraphCanvasRenderer.isSupported(this.element))) throw "Canvas is not supported."; @@ -127,11 +125,6 @@ DygraphCanvasRenderer.prototype.clear = function() { context.clearRect(0, 0, this.width, this.height); }; -DygraphCanvasRenderer.prototype.onDoneDrawing = function() { - // balances the save called in the constructor. - this.elementContext.restore(); -} - /** * Checks whether the browser supports the <canvas> tag. * @private @@ -738,13 +731,21 @@ DygraphCanvasRenderer._fillPlotter = function(e) { 'rgba(' + rgb.r + ',' + rgb.g + ',' + rgb.b + ',' + fillAlpha + ')'; ctx.fillStyle = err_color; ctx.beginPath(); - while(iter.hasNext) { + var last_x, is_first = true; + while (iter.hasNext) { var point = iter.next(); if (!Dygraph.isOK(point.y)) { prevX = NaN; continue; } if (stackedGraph) { + if (!is_first && last_x == point.xval) { + continue; + } else { + is_first = false; + last_x = point.xval; + } + currBaseline = baseline[point.canvasx]; var lastY; if (currBaseline === undefined) {