calculateXLabelRotation() subtracts space needed for x labels from
this.endPoint, but if this block is called more than once then the space
is subtracted more than once and the chart gets smaller and smaller with
every iteration
this.startPoint += this.padding;
this.endPoint -= this.padding;
+ // Cache the starting endpoint, excluding the space for x labels
+ var cachedEndPoint = this.endPoint;
+
// Cache the starting height, so can determine if we need to recalculate the scale yAxis
var cachedHeight = this.endPoint - this.startPoint,
cachedYLabelWidth;
// Only go through the xLabel loop again if the yLabel width has changed
if (cachedYLabelWidth < this.yLabelWidth){
+ this.endPoint = cachedEndPoint;
this.calculateXLabelRotation();
}
}