diff --git a/src/coord/cartesian/Cartesian2D.js b/src/coord/cartesian/Cartesian2D.js index 96f74d2057ed5c68e1d9f9ac7261c60d4c3cc3ca..aa745738ed5c33e9ada2ec49524b28a827ca9393 100644 --- a/src/coord/cartesian/Cartesian2D.js +++ b/src/coord/cartesian/Cartesian2D.js @@ -72,15 +72,19 @@ Cartesian2D.prototype = { * @return {Array.} */ clampData: function (data, out) { - var xAxisExtent = this.getAxis('x').scale.getExtent(); - var yAxisExtent = this.getAxis('y').scale.getExtent(); + var xScale = this.getAxis('x').scale; + var yScale = this.getAxis('y').scale; + var xAxisExtent = xScale.getExtent(); + var yAxisExtent = yScale.getExtent(); + var x = xScale.parse(data[0]); + var y = yScale.parse(data[1]); out = out || []; out[0] = Math.min( - Math.max(Math.min(xAxisExtent[0], xAxisExtent[1]), data[0]), + Math.max(Math.min(xAxisExtent[0], xAxisExtent[1]), x), Math.max(xAxisExtent[0], xAxisExtent[1]) ); out[1] = Math.min( - Math.max(Math.min(yAxisExtent[0], yAxisExtent[1]), data[1]), + Math.max(Math.min(yAxisExtent[0], yAxisExtent[1]), y), Math.max(yAxisExtent[0], yAxisExtent[1]) ); diff --git a/test/area2.html b/test/area2.html index b72a947bef576aa3e559c6d7773c068016d807cb..8e12834f82c86785ccfa4d2de96b80d91a59df31 100644 --- a/test/area2.html +++ b/test/area2.html @@ -13,6 +13,7 @@ margin: 0; } + markArea should be displayed.