@canvasjs/charts 3.12.0 → 3.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/LICENSE +1 -1
  2. package/canvasjs.min.js +82 -82
  3. package/package.json +1 -1
package/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- CanvasJS Chart - v3.12.0 GA - https://canvasjs.com/
1
+ CanvasJS Chart - v3.12.1 GA - https://canvasjs.com/
2
2
  Copyright 2025 fenopix
3
3
 
4
4
  --------------------- License Information --------------------
package/canvasjs.min.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- CanvasJS Chart - v3.12.0 GA - https://canvasjs.com/
2
+ CanvasJS Chart - v3.12.1 GA - https://canvasjs.com/
3
3
  Copyright 2025 fenopix
4
4
 
5
5
  --------------------- License Information --------------------
@@ -529,17 +529,17 @@ p>v+n||u>w+n||s<r-n?!1:!0}p?(0>a&&(a=f),q!==a&&(c=q,e+=-t),0===f%Math.max(m.leng
529
529
  !l(this.explodeOnClick)&&!this.explodeOnClick||(a=a.dataPoint,a.exploded=a.exploded?!1:!0,1<this.dataPoints.length&&r._animator.animate(0,500,function(a){c(a,!0);f();r.dispatchEvent("dataAnimationIterationEnd",{chart:r});r.dispatchEvent("dataAnimationEnd",{chart:r})}))};e();q();q();q();q();this.disableToolTip=!0;this._animator.animate(0,this.animatedRender?this.animationDuration:0,function(a){var b=r.plotArea.ctx;b.clearRect(p.x1,p.y1,p.width,p.height);b.fillStyle=r.backgroundColor;b.fillRect(p.x1,
530
530
  p.y1,p.width,p.height);for(var b=g[0].startAngle+2*Math.PI*a,c=0;c<m.length;c++){var d=0===c?g[c].startAngle:e,e=d+(g[c].endAngle-g[c].startAngle),h=!1;e>b&&(e=b,h=!0);var q=m[c].color?m[c].color:k._colorSet[c%k._colorSet.length];e>d&&ja(r.plotArea.ctx,g[c].center,g[c].radius,q,k.type,d,e,k.fillOpacity,g[c].percentInnerRadius);if(h)break}f();r.dispatchEvent("dataAnimationIterationEnd",{chart:r});1<=a&&r.dispatchEvent("dataAnimationEnd",{chart:r})},function(){r.disableToolTip=!1;r._animator.animate(0,
531
531
  r.animatedRender?500:0,function(a){c(a,!1);f();r.dispatchEvent("dataAnimationIterationEnd",{chart:r})});r.dispatchEvent("dataAnimationEnd",{chart:r})});k.radius=B;"doughnut"===k.type&&(k.innerRadius=F)}}};var ra=function(a,e,c,b){"undefined"===typeof c&&(c=1);0>=Math.round(e.y4-e.y1)||(a.save(),a.globalAlpha=c,a.beginPath(),a.moveTo(Math.round(e.x1),Math.round(e.y1)),a.lineTo(Math.round(e.x2),Math.round(e.y2)),a.lineTo(Math.round(e.x3),Math.round(e.y3)),a.lineTo(Math.round(e.x4),Math.round(e.y4)),
532
- "undefined"!==e.x5&&(a.lineTo(Math.round(e.x5),Math.round(e.y5)),a.lineTo(Math.round(e.x6),Math.round(e.y6))),a.closePath(),a.fillStyle=b?b:e.color,a.fill(),a.globalAplha=1,a.restore())};x.prototype.renderFunnel=function(a){function e(){for(var a=0,b=[],c=0;c<z.length;c++){if("undefined"===typeof z[c].y)return-1;z[c].y="number"===typeof z[c].y?z[c].y:0;a+=Math.abs(z[c].y)}if(0===a)return-1;for(c=b[0]=0;c<z.length;c++)b.push(Math.abs(z[c].y)*F/a);return b}function c(){var a=Y,b=aa,c=T,d=ba,e,g;e=S;
533
- g=U-N;d=Math.abs((g-e)*(b-a+(d-c))/2);c=ba-T;e=g-e;g=c*(g-U);g=Math.abs(g);g=d+g;for(var d=[],h=0,f=0;f<z.length;f++){if("undefined"===typeof z[f].y)return-1;z[f].y="number"===typeof z[f].y?z[f].y:0;h+=Math.abs(z[f].y)}if(0===h)return-1;for(var q=d[0]=0,k=0,l,m,b=b-a,q=!1,f=0;f<z.length;f++)a=Math.abs(z[f].y)*g/h,q?l=0==Number(c.toFixed(3))?0:a/c:(m=ea*ea*b*b-4*Math.abs(ea)*a,0>m?(m=c,q=(b+m)*(e-k)/2,a-=q,l=e-k,k+=e-k,l+=0==m?0:a/m,k+=a/m,q=!0):(l=(Math.abs(ea)*b-Math.sqrt(m))/2,m=b-2*l/Math.abs(ea),
534
- k+=l,k>e&&(k-=l,m=c,q=(b+m)*(e-k)/2,a-=q,l=e-k,k+=e-k,l+=a/m,k+=a/m,q=!0),b=m)),d.push(l);return d}function b(){if(s&&z){for(var a,b,c,e,d,h,f,k,q,m,n,p,u,v,w,E,t,x,C=[],A=[],B={percent:null,total:null},G=null,D=0;D<z.length;D++)x=P[D],x="undefined"!==typeof x.x5?(x.y2+x.y4)/2:(x.y2+x.y3)/2,x=g(x).x2+1,C[D]=Q-(isNaN(x)?0:x)-V;x=0.5*V;for(var D=0,J=z.length-1;D<z.length||0<=J;D++,J--){b=s.reversed?z[J]:z[D];a=b.color?b.color:s.reversed?s._colorSet[(z.length-1-D)%s._colorSet.length]:s._colorSet[D%s._colorSet.length];
535
- c=b.indexLabelPlacement||s.indexLabelPlacement||"outside";t=b.indexLabelTextAlign||s.indexLabelTextAlign||"left";e=b.indexLabelBackgroundColor||s.indexLabelBackgroundColor||(r?"transparent":null);d=b.indexLabelBorderColor||s.indexLabelBorderColor||(r?"transparent":null);h=l(b.indexLabelBorderThickness)?s.indexLabelBorderThickness:b.indexLabelBorderThickness;f=l(b.indexLabelPadding)?s.options.indexLabelPadding?s.options.indexLabelPadding:s.indexLabelPadding:b.indexLabelPadding;k=b.indexLabelFontColor||
532
+ "undefined"!==e.x5&&(a.lineTo(Math.round(e.x5),Math.round(e.y5)),a.lineTo(Math.round(e.x6),Math.round(e.y6))),a.closePath(),a.fillStyle=b?b:e.color,a.fill(),a.globalAplha=1,a.restore())};x.prototype.renderFunnel=function(a){function e(){for(var a=0,b=[],c=0;c<z.length;c++){if("undefined"===typeof z[c].y)return-1;z[c].y="number"===typeof z[c].y?z[c].y:0;a+=Math.abs(z[c].y)}if(0===a)return-1;for(c=b[0]=0;c<z.length;c++)b.push(Math.abs(z[c].y)*F/a);return b}function c(){var a=Y,b=aa,c=T,g=ba,d,e;d=S;
533
+ e=U-N;g=Math.abs((e-d)*(b-a+(g-c))/2);c=ba-T;d=e-d;e=c*(e-U);e=Math.abs(e);e=g+e;for(var g=[],h=0,f=0;f<z.length;f++){if("undefined"===typeof z[f].y)return-1;z[f].y="number"===typeof z[f].y?z[f].y:0;h+=Math.abs(z[f].y)}if(0===h)return-1;for(var q=g[0]=0,k=0,l,m,b=b-a,q=!1,f=0;f<z.length;f++)a=Math.abs(z[f].y)*e/h,q?l=0==Number(c.toFixed(3))?0:a/c:(m=ea*ea*b*b-4*Math.abs(ea)*a,0>m?(m=c,q=(b+m)*(d-k)/2,a-=q,l=d-k,k+=d-k,l+=0==m?0:a/m,k+=a/m,q=!0):(l=(Math.abs(ea)*b-Math.sqrt(m))/2,m=b-2*l/Math.abs(ea),
534
+ k+=l,k>d&&(k-=l,m=c,q=(b+m)*(d-k)/2,a-=q,l=d-k,k+=d-k,l+=a/m,k+=a/m,q=!0),b=m)),g.push(l);return g}function b(){if(s&&z){for(var a,b,c,d,e,h,f,k,q,m,n,p,u,v,w,E,t,x,C=[],A=[],B={percent:null,total:null},G=null,D=0;D<z.length;D++)x=P[D],x="undefined"!==typeof x.x5?(x.y2+x.y4)/2:(x.y2+x.y3)/2,x=g(x).x2+1,C[D]=Q-(isNaN(x)?0:x)-V;x=0.5*V;for(var D=0,J=z.length-1;D<z.length||0<=J;D++,J--){b=s.reversed?z[J]:z[D];a=b.color?b.color:s.reversed?s._colorSet[(z.length-1-D)%s._colorSet.length]:s._colorSet[D%s._colorSet.length];
535
+ c=b.indexLabelPlacement||s.indexLabelPlacement||"outside";t=b.indexLabelTextAlign||s.indexLabelTextAlign||"left";d=b.indexLabelBackgroundColor||s.indexLabelBackgroundColor||(r?"transparent":null);e=b.indexLabelBorderColor||s.indexLabelBorderColor||(r?"transparent":null);h=l(b.indexLabelBorderThickness)?s.indexLabelBorderThickness:b.indexLabelBorderThickness;f=l(b.indexLabelPadding)?s.options.indexLabelPadding?s.options.indexLabelPadding:s.indexLabelPadding:b.indexLabelPadding;k=b.indexLabelFontColor||
536
536
  s.indexLabelFontColor||"#979797";q=l(b.indexLabelFontSize)?s.indexLabelFontSize:b.indexLabelFontSize;m=b.indexLabelFontStyle||s.indexLabelFontStyle||"normal";n=b.indexLabelFontFamily||s.indexLabelFontFamily||"arial";p=b.indexLabelFontWeight||s.indexLabelFontWeight||"normal";a=b.indexLabelLineColor||s.options.indexLabelLineColor||a;u="number"===typeof b.indexLabelLineThickness?b.indexLabelLineThickness:"number"===typeof s.indexLabelLineThickness?s.indexLabelLineThickness:2;v=b.indexLabelLineDashType||
537
537
  s.indexLabelLineDashType||"solid";w="undefined"!==typeof b.indexLabelWrap?b.indexLabelWrap:"undefined"!==typeof s.indexLabelWrap?s.indexLabelWrap:!0;E=s.dataPointIds[D];y._eventManager.objectMap[E]={id:E,objectType:"dataPoint",dataPointIndex:D,dataSeriesIndex:0,funnelSection:P[s.reversed?z.length-1-D:D]};"inside"===s.indexLabelPlacement&&(C[D]=D!==ga?s.reversed?P[D].x2-P[D].x1:P[D].x3-P[D].x4:P[D].x3-P[D].x6,20>C[D]&&(C[D]=D!==ga?s.reversed?P[D].x3-P[D].x4:P[D].x2-P[D].x1:P[D].x2-P[D].x1,C[D]/=2));
538
538
  E=b.indexLabelMaxWidth?b.indexLabelMaxWidth:s.options.indexLabelMaxWidth?s.indexLabelMaxWidth:C[D];if(E>C[D]||0>E)E=C[D];A[D]="inside"===s.indexLabelPlacement?w?Math.max(P[D].height,q):1.5*q:!1;B=y.getPercentAndTotal(s,b);if(s.indexLabelFormatter||b.indexLabelFormatter)G={chart:y.options,dataSeries:s,dataPoint:b,total:B.total,percent:B.percent};b=b.indexLabelFormatter?b.indexLabelFormatter(G):b.indexLabel?y.replaceKeywordsWithValue(b.indexLabel,b,s,D):s.indexLabelFormatter?s.indexLabelFormatter(G):
539
- s.indexLabel?y.replaceKeywordsWithValue(s.indexLabel,b,s,D):b.label?b.label:"";0>=u&&(u=0);1E3>E&&1E3-E<x&&(E+=1E3-E);l(s.options.indexLabelMaxWidth)&&(s.indexLabelMaxWidth=l(s.indexLabelMaxWidth)?E:Math.max(E,s.indexLabelMaxWidth));O.roundRect||Aa(O);c=new la(O,{fontSize:q,fontFamily:n,fontColor:k,fontStyle:m,fontWeight:p,horizontalAlign:c,textAlign:t,backgroundColor:e,borderColor:d,borderThickness:h,maxWidth:E,maxHeight:!1===A[D]?w?4.28571429*q:1.5*q:A[D],text:b,padding:f,textBaseline:"middle"});
540
- c.measureText();c.height=c.height===2*c.padding?0:c.height;c.width=c.width===2*c.padding?0:c.width;H.push({textBlock:c,id:s.reversed?J:D,isDirty:!1,lineColor:a,lineThickness:u,lineDashType:v,height:c.height<c.maxHeight?c.height:c.maxHeight,width:c.width<c.maxWidth?c.width:c.maxWidth})}}}function d(){var a,b,c,e,d,g=[];d=!1;c=0;for(var h,f=Q-aa-V/2,f=s.options.indexLabelMaxWidth?s.indexLabelMaxWidth>f?f:s.indexLabelMaxWidth:f,q=H.length-1;0<=q;q--){h=z[H[q].id];c=H[q];e=c.textBlock;b=(a=p(q)<P.length?
541
- H[p(q)]:null)?a.textBlock:null;c=c.height;a&&e.y+c+ha>b.y&&(d=!0);c=h.indexLabelMaxWidth||f;if(c>f||0>c)c=f;g.push(c)}if(d)for(q=H.length-1;0<=q;q--)a=P[q],H[q].textBlock.maxWidth=g[g.length-(q+1)],H[q].textBlock.measureText(),H[q].textBlock.height=H[q].textBlock.height===2*H[q].textBlock.padding?0:H[q].textBlock.height,H[q].textBlock.width=H[q].textBlock.width===2*H[q].textBlock.padding?0:H[q].textBlock.width,H[q].textBlock.x=Q-f,c=H[q].textBlock.height<H[q].textBlock.maxHeight?H[q].textBlock.height:
542
- H[q].textBlock.maxHeight,d=H[q].textBlock.width<H[q].textBlock.maxWidth?H[q].textBlock.width:H[q].textBlock.maxWidth,H[q].height=c,H[q].width=d,c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,H[q].textBlock.y=c-H[q].height/2,s.reversed?(H[q].textBlock.y+H[q].height>W+t&&(H[q].textBlock.y=W+t-H[q].height),H[q].textBlock.y<sa-t&&(H[q].textBlock.y=sa-t)):(H[q].textBlock.y<W-t&&(H[q].textBlock.y=W-t),H[q].textBlock.y+H[q].height>sa+t&&(H[q].textBlock.y=sa+t-H[q].height))}function h(){var a,b,
539
+ s.indexLabel?y.replaceKeywordsWithValue(s.indexLabel,b,s,D):b.label?b.label:"";0>=u&&(u=0);1E3>E&&1E3-E<x&&(E+=1E3-E);l(s.options.indexLabelMaxWidth)&&(s.indexLabelMaxWidth=l(s.indexLabelMaxWidth)?E:Math.max(E,s.indexLabelMaxWidth));O.roundRect||Aa(O);c=new la(O,{fontSize:q,fontFamily:n,fontColor:k,fontStyle:m,fontWeight:p,horizontalAlign:c,textAlign:t,backgroundColor:d,borderColor:e,borderThickness:h,maxWidth:E,maxHeight:!1===A[D]?w?4.28571429*q:1.5*q:A[D],text:b,padding:f,textBaseline:"middle"});
540
+ c.measureText();c.height=c.height===2*c.padding?0:c.height;c.width=c.width===2*c.padding?0:c.width;H.push({textBlock:c,id:s.reversed?J:D,isDirty:!1,lineColor:a,lineThickness:u,lineDashType:v,height:c.height<c.maxHeight?c.height:c.maxHeight,width:c.width<c.maxWidth?c.width:c.maxWidth})}}}function d(){var a,b,c,d,e,g=[];e=!1;c=0;for(var h,f=Q-aa-V/2,f=s.options.indexLabelMaxWidth?s.indexLabelMaxWidth>f?f:s.indexLabelMaxWidth:f,q=H.length-1;0<=q;q--){h=z[H[q].id];c=H[q];d=c.textBlock;b=(a=p(q)<P.length?
541
+ H[p(q)]:null)?a.textBlock:null;c=c.height;a&&d.y+c+ha>b.y&&(e=!0);c=h.indexLabelMaxWidth||f;if(c>f||0>c)c=f;g.push(c)}if(e)for(q=H.length-1;0<=q;q--)a=P[q],H[q].textBlock.maxWidth=g[g.length-(q+1)],H[q].textBlock.measureText(),H[q].textBlock.height=H[q].textBlock.height===2*H[q].textBlock.padding?0:H[q].textBlock.height,H[q].textBlock.width=H[q].textBlock.width===2*H[q].textBlock.padding?0:H[q].textBlock.width,H[q].textBlock.x=Q-f,c=H[q].textBlock.height<H[q].textBlock.maxHeight?H[q].textBlock.height:
542
+ H[q].textBlock.maxHeight,e=H[q].textBlock.width<H[q].textBlock.maxWidth?H[q].textBlock.width:H[q].textBlock.maxWidth,H[q].height=c,H[q].width=e,c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,H[q].textBlock.y=c-H[q].height/2,s.reversed?(H[q].textBlock.y+H[q].height>W+t&&(H[q].textBlock.y=W+t-H[q].height),H[q].textBlock.y<sa-t&&(H[q].textBlock.y=sa-t)):(H[q].textBlock.y<W-t&&(H[q].textBlock.y=W-t),H[q].textBlock.y+H[q].height>sa+t&&(H[q].textBlock.y=sa+t-H[q].height))}function h(){var a,b,
543
543
  c,e;if("inside"!==s.indexLabelPlacement)for(var d=0;d<P.length;d++)0==H[d].textBlock.text.length?H[d].isDirty=!0:(a=P[d],c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,b=s.reversed?"undefined"!==typeof a.x5?c>Ea?g(c).x2+1:(a.x2+a.x3)/2+1:(a.x2+a.x3)/2+1:"undefined"!==typeof a.x5?c<Ea?g(c).x2+1:(a.x4+a.x3)/2+1:(a.x2+a.x3)/2+1,H[d].textBlock.x=b+V,H[d].textBlock.y=c-H[d].height/2,s.reversed?(H[d].textBlock.y+H[d].height>W+t&&(H[d].textBlock.y=W+t-H[d].height),H[d].textBlock.y<sa-t&&(H[d].textBlock.y=
544
544
  sa-t)):(H[d].textBlock.y<W-t&&(H[d].textBlock.y=W-t),H[d].textBlock.y+H[d].height>sa+t&&(H[d].textBlock.y=sa+t-H[d].height)));else for(d=0;d<P.length;d++)0==H[d].textBlock.text.length?H[d].isDirty=!0:(a=P[d],b=a.height,c=H[d].height,e=H[d].width,b>=c?(b=d!=ga?(a.x4+a.x3)/2-e/2:(a.x5+a.x4)/2-e/2,c=d!=ga?(a.y1+a.y3)/2-c/2:(a.y1+a.y4)/2-c/2,H[d].textBlock.x=b,H[d].textBlock.y=c):H[d].isDirty=!0)}function f(){function a(b,c){var d;if(0>b||b>=H.length)return 0;var e,g=H[b].textBlock;if(0>c){c*=-1;e=n(b);
545
545
  d=u(e,b);if(d>=c)return g.y-=c,c;if(0==b)return 0<d&&(g.y-=d),d;d+=a(e,-(c-d));0<d&&(g.y-=d);return d}e=p(b);d=u(b,e);if(d>=c)return g.y+=c,c;if(b==P.length-1)return 0<d&&(g.y+=d),d;d+=a(e,c-d);0<d&&(g.y+=d);return d}function b(){var a,d,e,g,h=0,q;g=(U-S+2*t)/l;q=l;for(var f,k=1;k<q;k++){e=k*g;for(var m=H.length-1;0<=m;m--)!H[m].isDirty&&(H[m].textBlock.y<e&&H[m].textBlock.y+H[m].height>e)&&(f=p(m),!(f>=H.length-1)&&H[m].textBlock.y+H[m].height+ha>H[f].textBlock.y&&(H[m].textBlock.y=H[m].textBlock.y+
@@ -665,78 +665,78 @@ e[g].lineCoordinates.width?e[g].titleMaxWidth:e[g].lineCoordinates.width),v.push
665
665
  2]:a[g]._labels[a[g]._labels.length-1],x=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle)),s=u.textBlock.width*Math.cos(Math.PI/180*Math.abs(u.textBlock.angle))+(u.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(u.textBlock.angle))),!a[g]||(!a[g].labelAutoFit||l(F)||l(I)||m.isNavigator||m.stockChart)||(u=0,0<a[g].labelAngle?I+s>r&&(a[g].convertPixelToValue(I)>=a[g].viewportMinimum&&
666
666
  a[g].convertPixelToValue(I)<=a[g].viewportMaximum)&&(u+=0<a[g].labelAngle?I+s-r-ba:0):0>a[g].labelAngle?F-x<f&&F-x<a[g].viewportMinimum&&(K=f-(T+a[g].tickLength+A+F-x+a[g].labelFontSize/2)):0===a[g].labelAngle&&(I+s>r&&(a[g].convertPixelToValue(I)>=a[g].viewportMinimum&&a[g].convertPixelToValue(I)<=a[g].viewportMaximum)&&(u=I+s/2-r-ba),F-x<f&&F-x<a[g].viewportMinimum&&(K=f-T-a[g].tickLength-A-F+x/2)),a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0<a[g].labelAngle&&0<u?
667
667
  r-=u:a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0>a[g].labelAngle&&0<K?f+=K:a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0===a[g].labelAngle&&(0<K&&(f+=K),0<u&&(r-=u))),m.panEnabled?X=l(m.sessionVariables.axisX.height)||m.stockChart?m.sessionVariables.axisX.height=X:m.sessionVariables.axisX.height:m.sessionVariables.axisX.height=X,u=Math.round(h.y2-X-d+D),k=Math.round(h.y2),a[g].lineCoordinates.x2=r,a[g].lineCoordinates.width=r-f,a[g].lineCoordinates.y1=
668
- u,a[g].lineCoordinates.y2=u,"inside"===a[g].labelPlacement&&0<g&&(a[g].lineCoordinates.y1=a[0].lineCoordinates.y2+D+(a[g].labelEffectiveHeight||0),a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2),"inside"===a[g].tickPlacement&&0<g&&(a[g].lineCoordinates.y1+=a[g].tickLength,a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2),a[g].bounds={x1:f,y1:u,x2:r,y2:k-(X+d-z[g]-D),width:r-f},a[g].bounds.height=a[g].bounds.y2-a[g].bounds.y1),D+=z[g]+a[g].margin;if(e&&0<e.length)for(g=
669
- 0;g<e.length;g++)e[g].lineCoordinates.x1=Math.round(h.x1+P+T),e[g].lineCoordinates.x2=r?r:Math.round(h.x2-ba-aa>m.width-n?m.width-n:h.x2-ba-aa),e[g].lineCoordinates.width=Math.abs(r-f),e[g]._labels&&1<e[g]._labels.length&&(k=e[g]._labels[1],u="dateTime"===e[g].valueType?e[g]._labels[e[g]._labels.length-2]:e[g]._labels[e[g]._labels.length-1],x=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle)),
670
- s=u.textBlock.width*Math.cos(Math.PI/180*Math.abs(u.textBlock.angle))+(u.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(u.textBlock.angle))),m.panEnabled?$=l(m.sessionVariables.axisX2.height)||m.stockChart?m.sessionVariables.axisX2.height=$:m.sessionVariables.axisX2.height:m.sessionVariables.axisX2.height=$,u=Math.round(h.y1),k=e[g].lineCoordinates.y1=u+$+Y-U,e[g].lineCoordinates.y2=u,"inside"===e[g].labelPlacement&&0<g&&(e[g].lineCoordinates.y1=e[0].lineCoordinates.y1-U-(e[g].labelEffectiveHeight||
671
- 0)-5),"inside"===e[g].tickPlacement&&0<g&&(e[g].lineCoordinates.y1-=e[g].tickLength),e[g].bounds={x1:f,y1:u+($+Y-("inside"===e[g].labelPlacement&&0===g?v[g]-5:v[g])-U),x2:r,y2:k,width:r-f},e[g].bounds.height=e[g].bounds.y2-e[g].bounds.y1,U+=("inside"===e[g].labelPlacement&&0===g?v[g]-5:v[g])+e[g].margin;if(c&&0<c.length)for(g=0;g<c.length;g++)T=m.isNavigator?0:10,c[g]&&(f=Math.round(a[0]?a[0].lineCoordinates.x1:e[0].lineCoordinates.x1),T=c[g]._labels&&0<c[g]._labels.length?c[g]._labels[c[g]._labels.length-
672
- 1].textBlock.height/2:n,u=Math.round(h.y1+$+Y<Math.max(T,n)?Math.max(T,n):h.y1+$+Y),r=Math.round(a[0]?a[0].lineCoordinates.x1:e[0].lineCoordinates.x1),T=0<a.length?0:c[g]._labels&&0<c[g]._labels.length?c[g]._labels[0].textBlock.height/2:n,k=Math.round(h.y2-X-d-T),c[g].lineCoordinates={x1:f-V,y1:u,x2:r-V,y2:k,height:Math.abs(k-u)},"inside"===c[g].labelPlacement&&0<g&&(c[g].lineCoordinates.x1=c[0].lineCoordinates.x1-V-(c[g].labelEffectiveWidth||0)-5,c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/
673
- 2),"inside"===c[g].tickPlacement&&0<g&&(c[g].lineCoordinates.x1-=c[g].tickLength,c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),c[g].bounds={x1:f-(("inside"===c[g].labelPlacement&&0===g?A[g]-5:A[g])+V),y1:u,x2:r-V,y2:k,height:k-u},c[g].bounds.width=c[g].bounds.x2-c[g].bounds.x1,c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.height?c[g].titleMaxWidth:c[g].lineCoordinates.height),V+=("inside"===c[g].labelPlacement&&0===
674
- g?A[g]-5:A[g])+c[g].margin);if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&(f=Math.round(a[0]?a[0].lineCoordinates.x2:e[0].lineCoordinates.x2),r=Math.round(f),T=b[g]._labels&&0<b[g]._labels.length?b[g]._labels[b[g]._labels.length-1].textBlock.height/2:0,u=Math.round(h.y1+$+Y<Math.max(T,n)?Math.max(T,n):h.y1+$+Y),T=0<a.length?0:b[g]._labels&&0<b[g]._labels.length?b[g]._labels[0].textBlock.height/2:0,k=Math.round(h.y2-(X+d+T)),b[g].lineCoordinates={x1:f+W,y1:u,x2:f+W,y2:k,height:Math.abs(k-u)},"inside"===
675
- b[g].labelPlacement&&0<g&&(b[g].lineCoordinates.x1=b[0].lineCoordinates.x2+W+(b[g].labelEffectiveWidth||0)+5,b[g].lineCoordinates.x2=b[g].lineCoordinates.x1+b[g].lineThickness/2),"inside"===b[g].tickPlacement&&0<g&&(b[g].lineCoordinates.x1+=b[g].tickLength,b[g].lineCoordinates.x2=b[g].lineCoordinates.x1+b[g].lineThickness/2),b[g].bounds={x1:f+W,y1:u,x2:r+(("inside"===b[g].labelPlacement&&0===g?B[g]-5:B[g])+W),y2:k,height:k-u},b[g].bounds.width=b[g].bounds.x2-b[g].bounds.x1,b[g].title&&(b[g]._titleTextBlock.maxWidth=
676
- 0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.height?b[g].titleMaxWidth:b[g].lineCoordinates.height),W+=("inside"===b[g].labelPlacement&&0===g?B[g]-5:B[g])+b[g].margin);if(a&&0<a.length)for(g=0;g<a.length;g++)a[g]&&(a[g].calculateValueToPixelConversionParameters(),a[g].calculateBreaksSizeInValues(),a[g]._labels&&1<a[g]._labels.length&&(F=(a[g].logarithmic?Math.log(a[g]._labels[1].position/a[g].viewportMinimum)/a[g].conversionParameters.lnLogarithmBase:a[g]._labels[1].position-a[g].viewportMinimum)*
677
- Math.abs(a[g].conversionParameters.pixelPerUnit)+a[g].lineCoordinates.x1,f=a[g]._labels[a[g]._labels.length-("dateTime"===a[g].valueType?2:1)].position,f=a[g].getApparentDifference(a[g].viewportMinimum,f),I=a[g].logarithmic?(1<f?Math.log(f)/a[g].conversionParameters.lnLogarithmBase*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1:(0<f?f*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1));if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateValueToPixelConversionParameters(),
678
- e[g].calculateBreaksSizeInValues(),e[g]._labels&&1<e[g]._labels.length&&(F=(e[g].logarithmic?Math.log(e[g]._labels[1].position/e[g].viewportMinimum)/e[g].conversionParameters.lnLogarithmBase:e[g]._labels[1].position-e[g].viewportMinimum)*Math.abs(e[g].conversionParameters.pixelPerUnit)+e[g].lineCoordinates.x1,f=e[g]._labels[e[g]._labels.length-("dateTime"===e[g].valueType?2:1)].position,f=e[g].getApparentDifference(e[g].viewportMinimum,f),I=e[g].logarithmic?(1<f?Math.log(f)/e[g].conversionParameters.lnLogarithmBase*
679
- Math.abs(e[g].conversionParameters.pixelPerUnit):0)+e[g].lineCoordinates.x1:(0<f?f*Math.abs(e[g].conversionParameters.pixelPerUnit):0)+e[g].lineCoordinates.x1);for(g=0;g<p.length;g++)"axisY"===p[g].type&&(p[g].calculateValueToPixelConversionParameters(),p[g].calculateBreaksSizeInValues());if(0<w){if(a&&0<a.length)for(g=0;g<a.length;g++)t=R[w-1][g]===R[w][g]?!0:!1;else t=!0;if(e&&0<e.length)for(g=0;g<e.length;g++)L=S[w-1][g]===S[w][g]?!0:!1;else L=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)M=O[w-1][g]===
680
- O[w][g]?!0:!1;else M=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)N=Q[w-1][g]===Q[w][g]?!0:!1;else N=!0}if(t&&L&&M&&N)break;w++}if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),a[g].calculateBreaksInPixels();if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateStripLinesThicknessInValues(),e[g].calculateBreaksInPixels();if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].calculateStripLinesThicknessInValues(),c[g].calculateBreaksInPixels();if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].calculateStripLinesThicknessInValues(),
681
- b[g].calculateBreaksInPixels()}else{n=[];F=[];K=[];x=[];I=[];s=[];R=[];for(S=[];4>w;){X=W=V=aa=T=Y=d=Q=O=D=$=0;if(a&&0<a.length)for(K=[],g=W=0;g<a.length;g++)K.push(Math.ceil(a[g]?a[g].createLabelsAndCalculateWidth():0)),W+=K[g],d+=a[g]&&!m.isNavigator?a[g].margin:0;else K.push(Math.ceil(a[0]?a[0].createLabelsAndCalculateWidth():0));R.push(K);if(e&&0<e.length)for(x=[],g=X=0;g<e.length;g++)x.push(Math.ceil(e[g]?e[g].createLabelsAndCalculateWidth():0)),X+=x[g],Y+=e[g]?e[g].margin:0;else x.push(Math.ceil(e[0]?
682
- e[0].createLabelsAndCalculateWidth():0));S.push(x);if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].lineCoordinates={},f=Math.round(h.x1+W+d),r=Math.round(h.x2-X-Y>m.width-10?m.width-10:h.x2-X-Y),c[g].labelAutoFit&&!l(z)&&(0<!a.length&&(f=0>c[g].labelAngle?Math.max(f,z):0===c[g].labelAngle?Math.max(f,z/2):f),0<!e.length&&(r=0<c[g].labelAngle?r-v/2:0===c[g].labelAngle?r-v/2:r)),c[g].lineCoordinates.x1=f,c[g].lineCoordinates.x2=r,c[g].lineCoordinates.width=Math.abs(r-f),c[g].title&&(c[g]._titleTextBlock.maxWidth=
683
- 0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.width?c[g].titleMaxWidth:c[g].lineCoordinates.width);if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].lineCoordinates={},f=Math.round(h.x1+W+d),r=Math.round(h.x2-X-Y>b[g].chart.width-10?b[g].chart.width-10:h.x2-X-Y),b[g]&&b[g].labelAutoFit&&!l(A)&&(0<!a.length&&(f=0<b[g].labelAngle?Math.max(f,A):0===b[g].labelAngle?Math.max(f,A/2):f),0<!e.length&&(r-=B/2)),b[g].lineCoordinates.x1=f,b[g].lineCoordinates.x2=r,b[g].lineCoordinates.width=Math.abs(r-
684
- f),b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.width?b[g].titleMaxWidth:b[g].lineCoordinates.width);if(c&&0<c.length)for(n=[],g=V=0;g<c.length;g++)n.push(Math.ceil(c[g]?c[g].createLabelsAndCalculateHeight():0)),V+=n[g]+c[g].margin,T+=c[g].margin;else n.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateHeight():0));I.push(n);if(b&&0<b.length)for(F=[],g=0;g<b.length;g++)F.push(Math.ceil(b[g]?b[g].createLabelsAndCalculateHeight():0)),aa+=b[g].margin;
685
- else F.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateHeight():0));s.push(F);if(c&&0<c.length)for(g=0;g<c.length;g++)0<c[g]._labels.length&&(k=c[g]._labels[0],u=c[g]._labels[c[g]._labels.length-1],z=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle)),v=u.textBlock.width*Math.cos(Math.PI/180*Math.abs(u.textBlock.angle))+(u.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(u.textBlock.angle)));
686
- if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&0<b[g]._labels.length&&(k=b[g]._labels[0],u=b[g]._labels[b[g]._labels.length-1],A=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle)),B=u.textBlock.width*Math.cos(Math.PI/180*Math.abs(u.textBlock.angle))+(u.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(u.textBlock.angle)));if(m.panEnabled)for(g=0;g<c.length;g++)n[g]=l(m.sessionVariables.axisY[g].height)?
687
- m.sessionVariables.axisY[g].height=n[g]:m.sessionVariables.axisY[g].height;else for(g=0;g<c.length;g++)m.sessionVariables.axisY[g].height=n[g];if(c&&0<c.length)for(g=c.length-1;0<=g;g--)u=Math.round(h.y2),k=Math.round(h.y2>c[g].chart.height?c[g].chart.height:h.y2),c[g].lineCoordinates.y1=u-(n[g]+c[g].margin+$),c[g].lineCoordinates.y2=u-(n[g]+c[g].margin+$),"inside"===c[g].labelPlacement&&0<g&&(c[g].lineCoordinates.y1=c[g].lineCoordinates.y1+n[g]-(c[g]._titleTextBlock?c[g]._titleTextBlock.height:0)-
688
- c[g].tickLength-(c[g].stripLineLabelEffectiveHeight||0)-5,c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/2),"inside"===c[g].tickPlacement&&0<g&&(c[g].lineCoordinates.y1+=c[g].tickLength,c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/2),c[g].bounds={x1:f,y1:u-(n[g]+$+c[g].margin),x2:r,y2:k-($+c[g].margin),width:r-f,height:n[g]},c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.width?c[g].titleMaxWidth:c[g].lineCoordinates.width),
689
- $+=n[g]+c[g].margin;if(b&&0<b.length)for(g=b.length-1;0<=g;g--)b[g]&&(u=Math.round(h.y1),k=Math.round(h.y1+(F[g]+b[g].margin+D)),b[g].lineCoordinates.y1=k,b[g].lineCoordinates.y2=k,"inside"===b[g].labelPlacement&&0<g&&(b[g].lineCoordinates.y1=k-F[g]+(b[g]._titleTextBlock?b[g]._titleTextBlock.height:0)+b[g].tickLength+(b[g].stripLineLabelEffectiveHeight||0),b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),"inside"===b[g].tickPlacement&&0<g&&(b[g].lineCoordinates.y1-=b[g].tickLength,
690
- b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),b[g].bounds={x1:f,y1:u+(b[g].margin+D),x2:r,y2:k,width:r-f},b[g].bounds.height=b[g].bounds.y2-b[g].bounds.y1,b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.width?b[g].titleMaxWidth:b[g].lineCoordinates.width),D+=F[g]+b[g].margin);if(a&&0<a.length)for(g=0;g<a.length;g++){T=a[g]._labels&&0<a[g]._labels.length?a[g]._labels[0].textBlock.fontSize/2:0;f=Math.round(h.x1+d);u=b&&
691
- 0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:h.y1<Math.max(T,10)?Math.max(T,10):h.y1):h.y1<Math.max(T,10)?Math.max(T,10):h.y1;r=Math.round(h.x1+W+d);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:h.y2-V>m.height-Math.max(T,10)?m.height-Math.max(T,10):h.y2-V):h.y2>m.height-Math.max(T,10)?m.height-Math.max(T,10):h.y2;if(c&&0<c.length)for(T=0;T<c.length;T++)c[T]&&c[T].labelAutoFit&&(r=c[T].lineCoordinates.x1,f=0>c[T].labelAngle||0===c[T].labelAngle?r-W:f);if(b&&0<b.length)for(T=0;T<b.length;T++)b[T]&&
692
- b[T].labelAutoFit&&(r=b[T].lineCoordinates.x1,f=r-W);a[g].lineCoordinates={x1:r-O,y1:u,x2:r-O,y2:k,height:Math.abs(k-u)};"inside"===a[g].labelPlacement&&0<g&&(a[g].lineCoordinates.x1=a[g].lineCoordinates.x1-(K[g]-(a[g]._titleTextBlock?a[g]._titleTextBlock.height:0))+a[g].tickLength+(a[g].stripLineLabelEffectiveWidth||0),a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);"inside"===a[g].tickPlacement&&0<g&&(a[g].lineCoordinates.x1-=a[g].tickLength,a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+
693
- a[g].lineThickness/2);a[g].bounds={x1:r-(K[g]+O),y1:u,x2:r-O,y2:k,height:k-u};a[g].bounds.width=a[g].bounds.x2-a[g].bounds.x1;a[g].title&&(a[g]._titleTextBlock.maxWidth=0<a[g].titleMaxWidth&&a[g].titleMaxWidth<a[g].lineCoordinates.height?a[g].titleMaxWidth:a[g].lineCoordinates.height);a[g].calculateValueToPixelConversionParameters();a[g].calculateBreaksSizeInValues();O+=K[g]+a[g].margin}if(e&&0<e.length)for(g=0;g<e.length;g++){T=e[g]._labels&&0<e[g]._labels.length?e[g]._labels[0].textBlock.fontSize/
694
- 2:0;f=Math.round(h.x1-d);u=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:h.y1<Math.max(T,10)?Math.max(T,10):h.y1):h.y1<Math.max(T,10)?Math.max(T,10):h.y1;r=Math.round(h.x2-X-Y);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:h.y2-V>m.height-Math.max(T,10)?m.height-Math.max(T,10):h.y2-V):h.y2>m.height-Math.max(T,10)?m.height-Math.max(T,10):h.y2;if(c&&0<c.length)for(T=0;T<c.length;T++)c[T]&&c[T].labelAutoFit&&(r=0>c[T].labelAngle?Math.max(r,z):0===c[T].labelAngle?Math.max(r,z/2):r,f=
695
- 0>c[T].labelAngle||0===c[T].labelAngle?r-X:f);if(b&&0<b.length)for(T=0;T<b.length;T++)b[T]&&b[T].labelAutoFit&&(r=b[T].lineCoordinates.x2,f=r-X);e[g].lineCoordinates={x1:r+Q,y1:u,x2:r+Q,y2:k,height:Math.abs(k-u)};"inside"===e[g].labelPlacement&&0<g&&(e[g].lineCoordinates.x1=e[g].lineCoordinates.x1+(x[g]-(e[g]._titleTextBlock?e[g]._titleTextBlock.height:0)-2)-e[g].tickLength-(e[g].stripLineLabelEffectiveWidth||0),e[g].lineCoordinates.x2=e[g].lineCoordinates.x1+e[g].lineThickness/2);"inside"===e[g].tickPlacement&&
696
- 0<g&&(e[g].lineCoordinates.x1+=e[g].tickLength,e[g].lineCoordinates.x2=e[g].lineCoordinates.x1+e[g].lineThickness/2);e[g].bounds={x1:e[g].lineCoordinates.x1,y1:u,x2:r+x[g]+Q,y2:k,width:r-f,height:k-u};e[g].bounds.width=e[g].bounds.x2-e[g].bounds.x1;e[g].title&&(e[g]._titleTextBlock.maxWidth=0<e[g].titleMaxWidth&&e[g].titleMaxWidth<e[g].lineCoordinates.height?e[g].titleMaxWidth:e[g].lineCoordinates.height);e[g].calculateValueToPixelConversionParameters();e[g].calculateBreaksSizeInValues();Q+=x[g]+
697
- e[g].margin}for(g=0;g<p.length;g++)"axisY"===p[g].type&&(p[g].calculateValueToPixelConversionParameters(),p[g].calculateBreaksSizeInValues());if(0<w){if(a&&0<a.length)for(g=0;g<a.length;g++)t=R[w-1][g]===R[w][g]?!0:!1;else t=!0;if(e&&0<e.length)for(g=0;g<e.length;g++)L=S[w-1][g]===S[w][g]?!0:!1;else L=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)M=I[w-1][g]===I[w][g]?!0:!1;else M=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)N=s[w-1][g]===s[w][g]?!0:!1;else N=!0}if(t&&L&&M&&N)break;w++}if(c&&0<c.length)for(g=
698
- 0;g<c.length;g++)c[g].calculateStripLinesThicknessInValues(),c[g].calculateBreaksInPixels();if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].calculateStripLinesThicknessInValues(),b[g].calculateBreaksInPixels();if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),a[g].calculateBreaksInPixels();if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateStripLinesThicknessInValues(),e[g].calculateBreaksInPixels()}};B.render=function(a,e,c,b,d){d=a[0]?a[0].chart:e[0].chart;var h=
699
- d.ctx;d.alignVerticalAxes&&d.alignVerticalAxes();h.save();h.beginPath();a&&a.length&&h.rect(2,a[0].bounds.y1,a[0].chart.width-4,a[a.length-1].bounds.y2);e&&e.length&&h.rect(2,e[e.length-1].bounds.y1,e[0].chart.width-4,e[0].bounds.y2);h.clip();if(a&&0<a.length)for(var f=0;f<a.length;f++)a[f].renderLabelsTicksAndTitle();if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderLabelsTicksAndTitle();h.restore();if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderLabelsTicksAndTitle();if(b&&0<b.length)for(f=
700
- 0;f<b.length;f++)b[f].renderLabelsTicksAndTitle();d.preparePlotArea();f=d.plotArea;h.save();h.beginPath();h.rect(f.x1,f.y1,Math.abs(f.x2-f.x1),Math.abs(f.y2-f.y1));h.clip();if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].renderStripLinesOfThicknessType("value");if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderStripLinesOfThicknessType("value");if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderStripLinesOfThicknessType("value");if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].renderStripLinesOfThicknessType("value");
701
- if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].renderInterlacedColors();if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderInterlacedColors();if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderInterlacedColors();if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].renderInterlacedColors();h.restore();if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].renderGrid(),r&&(a[f].createMask(),a[f].renderBreaksBackground());if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderGrid(),r&&(e[f].createMask(),e[f].renderBreaksBackground());
702
- if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderGrid(),r&&(c[f].createMask(),c[f].renderBreaksBackground());if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].renderGrid(),r&&(b[f].createMask(),b[f].renderBreaksBackground());if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].renderAxisLine();if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderAxisLine();if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderAxisLine();if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].renderAxisLine();h=!1;if(a&&0<a.length)for(f=0;f<
703
- a.length;f++)a[f].renderStripLinesOfThicknessType("pixel"),a[f].crosshair&&a[f].crosshair.enabled&&(h=!0,d.clearedOverlayedCanvas=a[f].type);if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderStripLinesOfThicknessType("pixel"),e[f].crosshair&&e[f].crosshair.enabled&&(h=!0,d.clearedOverlayedCanvas=e[f].type);if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderStripLinesOfThicknessType("pixel"),c[f].crosshair&&c[f].crosshair.enabled&&(h=!0,d.clearedOverlayedCanvas=c[f].type);if(b&&0<b.length)for(f=0;f<
704
- b.length;f++)b[f].renderStripLinesOfThicknessType("pixel"),b[f].crosshair&&b[f].crosshair.enabled&&(h=!0,d.clearedOverlayedCanvas=b[f].type);if(h||!h&&d.clearedOverlayedCanvas&&0<=d.clearedOverlayedCanvas.indexOf("axis"))d.resetOverlayedCanvas(),d.renderCrosshairs(null,l(d.sessionVariables.crosshairShownByPixel)||d.sessionVariables.crosshairShownByPixel?!0:d.sessionVariables.crosshairShownByPixel)};B.prototype.calculateStripLinesThicknessInValues=function(){for(var a=0;a<this.stripLines.length;a++)if(null!==
705
- this.stripLines[a].startValue&&null!==this.stripLines[a].endValue){var e=Math.min(this.stripLines[a].startValue,this.stripLines[a].endValue),c=Math.max(this.stripLines[a].startValue,this.stripLines[a].endValue),b=this.getApparentDifference(e,c);this.stripLines[a].value=this.convertPixelToValue((this.convertValueToPixel(e)+this.convertValueToPixel(c))/2);this.stripLines[a].thickness=b;this.stripLines[a]._thicknessType="value"}};B.prototype.calculateBreaksSizeInValues=function(){for(var a="left"===
706
- this._position||"right"===this._position?this.lineCoordinates.height||this.chart.height:this.lineCoordinates.width||this.chart.width,e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c=this.conversionParameters.pixelPerUnit||a/(this.logarithmic?this.conversionParameters.maximum/this.conversionParameters.minimum:this.conversionParameters.maximum-this.conversionParameters.minimum),b=this.scaleBreaks&&!l(this.scaleBreaks.options.spacing),d,h=0;h<e.length;h++)d=b||!l(e[h].options.spacing),e[h].spacing=
707
- Va(e[h].spacing,a,8,d?0.1*a:8,d?0:3)<<0,e[h].size=0>e[h].spacing?0:Math.abs(e[h].spacing/c),this.logarithmic&&(e[h].size=Math.pow(this.logarithmBase,e[h].size))};B.prototype.calculateBreaksInPixels=function(){if(!(this.scaleBreaks&&0>=this.scaleBreaks._appliedBreaks.length)){var a=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];a.length&&(this.scaleBreaks.firstBreakIndex=this.scaleBreaks.lastBreakIndex=null);for(var e=0;e<a.length&&!(a[e].startValue>this.conversionParameters.maximum);e++)a[e].endValue<
708
- this.conversionParameters.minimum||(l(this.scaleBreaks.firstBreakIndex)&&(this.scaleBreaks.firstBreakIndex=e),a[e].startValue>=this.conversionParameters.minimum&&(a[e].startPixel=this.convertValueToPixel(a[e].startValue),this.scaleBreaks.lastBreakIndex=e),a[e].endValue<=this.conversionParameters.maximum&&(a[e].endPixel=this.convertValueToPixel(a[e].endValue)))}};B.prototype.renderLabelsTicksAndTitle=function(){var a=this,e=!1,c=0,b=0,d=1,h=0;0!==this.labelAngle&&360!==this.labelAngle&&(d=1.2);if("undefined"===
709
- typeof this.options.interval){if("bottom"===this._position||"top"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],d=0!==this.labelAngle&&360!==this.labelAngle?1:1.2,f,l=this.viewportMaximum,r=this.lineCoordinates.width/Math.log(this.range),k=this._labels.length-1;0<=k;k--){n=this._labels[k];if(n.position<this.viewportMinimum)break;n.position>this.viewportMaximum||!(k===this._labels.length-1||f<Math.log(l/n.position)*r/d)||(c.push(n),l=n.position,f=
710
- n.textBlock.width*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.height*Math.abs(Math.sin(Math.PI/180*this.labelAngle)))}this._labels=c}else{for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||(f=n.textBlock.width*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.height*Math.abs(Math.sin(Math.PI/180*this.labelAngle)),c+=f);c>this.lineCoordinates.width*d&&this.labelAutoFit&&(e=!0)}if("left"===this._position||"right"===this._position)if(this.logarithmic&&
711
- !this.equidistantInterval&&this.labelAutoFit){for(var c=[],m,l=this.viewportMaximum,r=this.lineCoordinates.height/Math.log(this.range),k=this._labels.length-1;0<=k;k--){n=this._labels[k];if(n.position<this.viewportMinimum)break;n.position>this.viewportMaximum||!(k===this._labels.length-1||m<Math.log(l/n.position)*r)||(c.push(n),l=n.position,m=n.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.width*Math.abs(Math.sin(Math.PI/180*this.labelAngle)))}this._labels=c}else{for(k=
712
- 0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||(m=n.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.width*Math.abs(Math.sin(Math.PI/180*this.labelAngle)),b+=m);b>this.lineCoordinates.height*d&&this.labelAutoFit&&(e=!0)}}this.logarithmic&&(!this.equidistantInterval&&this.labelAutoFit)&&this._labels.sort(function(a,b){return a.position-b.position});var k=0,n,p;if("bottom"===this._position){for(k=0;k<this._labels.length;k++)n=this._labels[k],
713
- n.position<this.viewportMinimum||n.position>this.viewportMaximum||(p=this.getPixelCoordinatesOnAxis(n.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(p.x<<0)+0.5:p.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,p.y<<0),this.ctx.lineTo(b,p.y+this.tickLength<<0),this.ctx.stroke()),e&&0!==h++%2&&this.labelAutoFit||(0===n.textBlock.angle?(p.x-=n.textBlock.width/2,p.y="inside"===this.labelPlacement?
714
- p.y-(("inside"===this.tickPlacement?this.tickLength:0)+n.textBlock.height-n.textBlock.fontSize/2):p.y+("inside"===this.tickPlacement?0:this.tickLength)+n.textBlock.fontSize/2+5):0>this.labelAngle?(p.x=p.x-("inside"===this.labelPlacement?0:n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),p.y="inside"===this.labelPlacement?p.y-("inside"===this.tickPlacement?this.tickLength:0)-(n.textBlock.height-n.textBlock.fontSize/2)*Math.cos(Math.PI/
715
- 180*this.labelAngle):p.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-n.textBlock.fontSize/2*Math.cos(Math.PI/180*this.labelAngle))):(p.x=p.x-("inside"===this.labelPlacement?n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+n.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),p.y="inside"===this.labelPlacement?p.y-("inside"===this.tickPlacement?this.tickLength:0)-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-
716
- (n.textBlock.height-n.textBlock.fontSize/2)*Math.cos(Math.PI/180*this.labelAngle):p.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(n.textBlock.fontSize/2*Math.cos(Math.PI/180*this.labelAngle))),n.textBlock.x=p.x,n.textBlock.y=p.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(n=a._labels[k],!(n.position<a.viewportMinimum||n.position>a.viewportMaximum)&&(p=a.getPixelCoordinatesOnAxis(n.position),
717
- a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(p.x<<0)+0.5:p.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,p.y<<0);a.ctx.lineTo(b,p.y-a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+this.lineCoordinates.width/2-this._titleTextBlock.width/2,this._titleTextBlock.y=this.bounds.y2-this._titleTextBlock.height+this._titleTextBlock._lineHeight/
718
- 2-1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("top"===this._position){for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||n.position>this.viewportMaximum||(p=this.getPixelCoordinatesOnAxis(n.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(p.x<<0)+0.5:p.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,p.y<<0),
719
- this.ctx.lineTo(b,p.y-this.tickLength<<0),this.ctx.stroke()),e&&0!==h++%2&&this.labelAutoFit||(0===n.textBlock.angle?(p.x-=n.textBlock.width/2,p.y="inside"===this.labelPlacement?p.y+this.labelFontSize/2+("inside"===this.tickPlacement?this.tickLength:0)+5:p.y-(("inside"===this.tickPlacement?0:this.tickLength)+n.textBlock.height-n.textBlock.fontSize/2)):0>this.labelAngle?(p.x=p.x-("inside"===this.labelPlacement?n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+n.textBlock.topPadding*Math.sin(Math.PI/
720
- 180*this.labelAngle),p.y="inside"===this.labelPlacement?p.y+("inside"===this.tickPlacement?this.tickLength:0)+5-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)+n.textBlock.fontSize/2*Math.cos(Math.PI/180*this.labelAngle):p.y-("inside"===this.tickPlacement?0:this.tickLength)-2-(n.textBlock.height-n.textBlock.fontSize/2)*Math.cos(Math.PI/180*this.labelAngle)):(p.x=p.x-("inside"===this.labelPlacement?0:n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.topPadding*Math.sin(Math.PI/
721
- 180*this.labelAngle),p.y="inside"===this.labelPlacement?p.y+("inside"===this.tickPlacement?this.tickLength:0)+5+n.textBlock.fontSize/2*Math.cos(Math.PI/180*this.labelAngle):p.y-("inside"===this.tickPlacement?0:this.tickLength)-2-((n.textBlock.height-n.textBlock.fontSize/2)*Math.cos(Math.PI/180*this.labelAngle)+n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))),n.textBlock.x=p.x,n.textBlock.y=p.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=
722
- 0;k<a._labels.length;k++)if(n=a._labels[k],!(n.position<a.viewportMinimum||n.position>a.viewportMaximum)&&(p=a.getPixelCoordinatesOnAxis(n.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(p.x<<0)+0.5:p.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,p.y<<0);a.ctx.lineTo(b,p.y+a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+
723
- this.lineCoordinates.width/2-this._titleTextBlock.width/2,this._titleTextBlock.y=this.bounds.y1+this._titleTextBlock._lineHeight/2+1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("left"===this._position){for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||n.position>this.viewportMaximum||(p=this.getPixelCoordinatesOnAxis(n.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,
724
- this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(p.y<<0)+0.5:p.y<<0,this.ctx.beginPath(),this.ctx.moveTo(p.x<<0,b),this.ctx.lineTo(p.x-this.tickLength<<0,b),this.ctx.stroke()),e&&0!==h++%2&&this.labelAutoFit||(0===this.labelAngle?(n.textBlock.y=p.y-n.textBlock.topPadding,n.textBlock.x="inside"===this.labelPlacement?p.x+("inside"===this.tickPlacement?this.tickLength:0)+5:p.x-n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):
725
- 0>this.labelAngle?(n.textBlock.y=("inside"===this.labelPlacement?p.y:p.y-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-n.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),n.textBlock.x="inside"===this.labelPlacement?p.x-n.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:p.x-n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(n.textBlock.height-n.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===
726
- this.tickPlacement?0:this.tickLength)-5):(n.textBlock.y=("inside"===this.labelPlacement?p.y:p.y-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-n.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),n.textBlock.x="inside"===this.labelPlacement?p.x+(n.textBlock.height-n.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:p.x-n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-n.textBlock.fontSize/2*Math.sin(Math.PI/180*
727
- this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5)));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(n=a._labels[k],!(n.position<a.viewportMinimum||n.position>a.viewportMaximum)&&(p=a.getPixelCoordinatesOnAxis(n.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(p.y<<0)+0.5:p.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(p.x<<
728
- 0,b);a.ctx.lineTo(p.x+a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.bounds.x1+this._titleTextBlock._lineHeight/2,this._titleTextBlock.y=this.lineCoordinates.height/2+this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("right"===this._position){for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||
729
- n.position>this.viewportMaximum||(p=this.getPixelCoordinatesOnAxis(n.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(p.y<<0)+0.5:p.y<<0,this.ctx.beginPath(),this.ctx.moveTo(p.x<<0,b),this.ctx.lineTo(p.x+this.tickLength<<0,b),this.ctx.stroke()),e&&0!==h++%2&&this.labelAutoFit||(0===this.labelAngle?(n.textBlock.y=p.y-n.textBlock.topPadding,n.textBlock.x="inside"===this.labelPlacement?p.x-
730
- n.textBlock.width-("inside"===this.tickPlacement?this.tickLength:0)-5:p.x+("inside"===this.tickPlacement?0:this.tickLength)+5):0>this.labelAngle?(n.textBlock.y=("inside"===this.labelPlacement?p.y-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):p.y)-n.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),n.textBlock.x="inside"===this.labelPlacement?p.x-n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(n.textBlock.height-n.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-
731
- ("inside"===this.tickPlacement?this.tickLength:0)-5:p.x-n.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5):(n.textBlock.y=("inside"===this.labelPlacement?p.y-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):p.y)-n.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),n.textBlock.x="inside"===this.labelPlacement?p.x-n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-n.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)-
732
- ("inside"===this.tickPlacement?this.tickLength:0)-5:p.x+(n.textBlock.height-n.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5)));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(n=a._labels[k],!(n.position<a.viewportMinimum||n.position>a.viewportMaximum)&&(p=a.getPixelCoordinatesOnAxis(n.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=
733
- a.tickColor;var b=1===a.ctx.lineWidth%2?(p.y<<0)+0.5:p.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(p.x<<0,b);a.ctx.lineTo(p.x-a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.bounds.x2-this._titleTextBlock._lineHeight/2,this._titleTextBlock.y=this.lineCoordinates.height/2-this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}h=0;
734
- if("inside"===this.labelPlacement)this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)n=a._labels[k],n.position<a.viewportMinimum||(n.position>a.viewportMaximum||e&&0!==h++%2&&a.labelAutoFit)||(a.ctx.save(),a.ctx.beginPath(),n.textBlock.render(!0),a.ctx.restore())},this);else for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||(n.position>this.viewportMaximum||e&&0!==h++%2&&this.labelAutoFit)||n.textBlock.render(!0)};B.prototype.renderInterlacedColors=
735
- function(){var a=this.chart.plotArea.ctx,e,c,b=this.chart.plotArea,d=0;e=!0;if(("bottom"===this._position||"top"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?(e=this.getPixelCoordinatesOnAxis(this._labels[d].position),c=d+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(Math.min(c.x,e.x),b.y1,Math.abs(c.x-e.x),Math.abs(b.y1-b.y2)),e=!1):
736
- e=!0;else if(("left"===this._position||"right"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?(c=this.getPixelCoordinatesOnAxis(this._labels[d].position),e=d+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(b.x1,Math.min(c.y,e.y),Math.abs(b.x1-b.x2),Math.abs(e.y-c.y)),e=!1):e=!0;a.beginPath()};B.prototype.renderStripLinesOfThicknessType=function(a){if(this.stripLines&&
737
- 0<this.stripLines.length&&a){var e=this,c,b,d=0,h=0,f=!1;b=!1;for(var r=[],t=[],k=!1,m,d=0;d<this.stripLines.length;d++){var n=this.stripLines[d];n._thicknessType===a&&("pixel"===a&&(n.value<this.viewportMinimum||n.value>this.viewportMaximum||l(n.value)||isNaN(this.range))||"value"===a&&(n.startValue<=this.viewportMinimum&&n.endValue<=this.viewportMinimum||n.startValue>=this.viewportMaximum&&n.endValue>=this.viewportMaximum||l(n.startValue)||l(n.endValue)||isNaN(this.range))||r.push(n))}for(d=0;d<
738
- this._stripLineLabels.length;d++)if(n=this.stripLines[d],c=this._stripLineLabels[d],!(c.position<this.viewportMinimum||c.position>this.viewportMaximum||isNaN(this.range)))if(b=this.getPixelCoordinatesOnAxis(c.position),"outside"===c.stripLine.labelPlacement){n&&(this.ctx.strokeStyle=n.color,this.ctx.lineWidth="pixel"===n._thicknessType?n.thickness:this.tickThickness,l(n.opacity)||"pixel"!==n._thicknessType||(m=n.ctx.globalAlpha,n.ctx.globalAlpha=n.opacity));if("bottom"===this._position){var p=1===
739
- this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0;this.ctx.beginPath();this.ctx.moveTo(p,b.y<<0);this.ctx.lineTo(p,b.y+this.tickLength<<0);this.ctx.stroke();0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y+=this.tickLength+c.textBlock.fontSize/2+5):(b.x-=(0>this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)-c.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),b.y+=this.tickLength+5+(0>this.labelAngle?Math.abs(c.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-c.textBlock.fontSize/
668
+ u,a[g].lineCoordinates.y2=u,"inside"===a[g].labelPlacement&&0<g&&(a[g].lineCoordinates.y1=a[0].lineCoordinates.y2+D+(a[g].labelEffectiveHeight||0)+5,a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2),"inside"===a[g].tickPlacement&&0<g&&(a[g].lineCoordinates.y1+=a[g].tickLength,a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2),a[g].bounds={x1:f,y1:u,x2:r,y2:k-(X+d-("inside"===a[g].labelPlacement&&0===g?z[g]-5:z[g])-D),width:r-f},a[g].bounds.height=a[g].bounds.y2-
669
+ a[g].bounds.y1),D+=("inside"===a[g].labelPlacement&&0===g?z[g]-5:z[g])+a[g].margin;if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].lineCoordinates.x1=Math.round(h.x1+P+T),e[g].lineCoordinates.x2=r?r:Math.round(h.x2-ba-aa>m.width-n?m.width-n:h.x2-ba-aa),e[g].lineCoordinates.width=Math.abs(r-f),e[g]._labels&&1<e[g]._labels.length&&(k=e[g]._labels[1],u="dateTime"===e[g].valueType?e[g]._labels[e[g]._labels.length-2]:e[g]._labels[e[g]._labels.length-1],x=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+
670
+ (k.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle)),s=u.textBlock.width*Math.cos(Math.PI/180*Math.abs(u.textBlock.angle))+(u.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(u.textBlock.angle))),m.panEnabled?$=l(m.sessionVariables.axisX2.height)||m.stockChart?m.sessionVariables.axisX2.height=$:m.sessionVariables.axisX2.height:m.sessionVariables.axisX2.height=$,u=Math.round(h.y1),k=e[g].lineCoordinates.y1=u+$+Y-U,e[g].lineCoordinates.y2=
671
+ u,"inside"===e[g].labelPlacement&&0<g&&(e[g].lineCoordinates.y1=e[0].lineCoordinates.y1-U-(e[g].labelEffectiveHeight||0)-5),"inside"===e[g].tickPlacement&&0<g&&(e[g].lineCoordinates.y1-=e[g].tickLength),e[g].bounds={x1:f,y1:u+($+Y-("inside"===e[g].labelPlacement&&0===g?v[g]-5:v[g])-U),x2:r,y2:k,width:r-f},e[g].bounds.height=e[g].bounds.y2-e[g].bounds.y1,U+=("inside"===e[g].labelPlacement&&0===g?v[g]-5:v[g])+e[g].margin;if(c&&0<c.length)for(g=0;g<c.length;g++)T=m.isNavigator?0:10,c[g]&&(f=Math.round(a[0]?
672
+ a[0].lineCoordinates.x1:e[0].lineCoordinates.x1),T=c[g]._labels&&0<c[g]._labels.length?c[g]._labels[c[g]._labels.length-1].textBlock.height/2:n,u=Math.round(h.y1+$+Y<Math.max(T,n)?Math.max(T,n):h.y1+$+Y),r=Math.round(a[0]?a[0].lineCoordinates.x1:e[0].lineCoordinates.x1),T=0<a.length?0:c[g]._labels&&0<c[g]._labels.length?c[g]._labels[0].textBlock.height/2:n,k=Math.round(h.y2-X-d-T),c[g].lineCoordinates={x1:f-V,y1:u,x2:r-V,y2:k,height:Math.abs(k-u)},"inside"===c[g].labelPlacement&&0<g&&(c[g].lineCoordinates.x1=
673
+ c[0].lineCoordinates.x1-V-(c[g].labelEffectiveWidth||0)-5,c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),"inside"===c[g].tickPlacement&&0<g&&(c[g].lineCoordinates.x1-=c[g].tickLength,c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),c[g].bounds={x1:f-(("inside"===c[g].labelPlacement&&0===g?A[g]-5:A[g])+V),y1:u,x2:r-V,y2:k,height:k-u},c[g].bounds.width=c[g].bounds.x2-c[g].bounds.x1,c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<
674
+ c[g].lineCoordinates.height?c[g].titleMaxWidth:c[g].lineCoordinates.height),V+=("inside"===c[g].labelPlacement&&0===g?A[g]-5:A[g])+c[g].margin);if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&(f=Math.round(a[0]?a[0].lineCoordinates.x2:e[0].lineCoordinates.x2),r=Math.round(f),T=b[g]._labels&&0<b[g]._labels.length?b[g]._labels[b[g]._labels.length-1].textBlock.height/2:0,u=Math.round(h.y1+$+Y<Math.max(T,n)?Math.max(T,n):h.y1+$+Y),T=0<a.length?0:b[g]._labels&&0<b[g]._labels.length?b[g]._labels[0].textBlock.height/
675
+ 2:0,k=Math.round(h.y2-(X+d+T)),b[g].lineCoordinates={x1:f+W,y1:u,x2:f+W,y2:k,height:Math.abs(k-u)},"inside"===b[g].labelPlacement&&0<g&&(b[g].lineCoordinates.x1=b[0].lineCoordinates.x2+W+(b[g].labelEffectiveWidth||0)+5,b[g].lineCoordinates.x2=b[g].lineCoordinates.x1+b[g].lineThickness/2),"inside"===b[g].tickPlacement&&0<g&&(b[g].lineCoordinates.x1+=b[g].tickLength,b[g].lineCoordinates.x2=b[g].lineCoordinates.x1+b[g].lineThickness/2),b[g].bounds={x1:f+W,y1:u,x2:r+(("inside"===b[g].labelPlacement&&
676
+ 0===g?B[g]-5:B[g])+W),y2:k,height:k-u},b[g].bounds.width=b[g].bounds.x2-b[g].bounds.x1,b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.height?b[g].titleMaxWidth:b[g].lineCoordinates.height),W+=("inside"===b[g].labelPlacement&&0===g?B[g]-5:B[g])+b[g].margin);if(a&&0<a.length)for(g=0;g<a.length;g++)a[g]&&(a[g].calculateValueToPixelConversionParameters(),a[g].calculateBreaksSizeInValues(),a[g]._labels&&1<a[g]._labels.length&&(F=(a[g].logarithmic?
677
+ Math.log(a[g]._labels[1].position/a[g].viewportMinimum)/a[g].conversionParameters.lnLogarithmBase:a[g]._labels[1].position-a[g].viewportMinimum)*Math.abs(a[g].conversionParameters.pixelPerUnit)+a[g].lineCoordinates.x1,f=a[g]._labels[a[g]._labels.length-("dateTime"===a[g].valueType?2:1)].position,f=a[g].getApparentDifference(a[g].viewportMinimum,f),I=a[g].logarithmic?(1<f?Math.log(f)/a[g].conversionParameters.lnLogarithmBase*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1:
678
+ (0<f?f*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1));if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateValueToPixelConversionParameters(),e[g].calculateBreaksSizeInValues(),e[g]._labels&&1<e[g]._labels.length&&(F=(e[g].logarithmic?Math.log(e[g]._labels[1].position/e[g].viewportMinimum)/e[g].conversionParameters.lnLogarithmBase:e[g]._labels[1].position-e[g].viewportMinimum)*Math.abs(e[g].conversionParameters.pixelPerUnit)+e[g].lineCoordinates.x1,f=e[g]._labels[e[g]._labels.length-
679
+ ("dateTime"===e[g].valueType?2:1)].position,f=e[g].getApparentDifference(e[g].viewportMinimum,f),I=e[g].logarithmic?(1<f?Math.log(f)/e[g].conversionParameters.lnLogarithmBase*Math.abs(e[g].conversionParameters.pixelPerUnit):0)+e[g].lineCoordinates.x1:(0<f?f*Math.abs(e[g].conversionParameters.pixelPerUnit):0)+e[g].lineCoordinates.x1);for(g=0;g<p.length;g++)"axisY"===p[g].type&&(p[g].calculateValueToPixelConversionParameters(),p[g].calculateBreaksSizeInValues());if(0<w){if(a&&0<a.length)for(g=0;g<a.length;g++)t=
680
+ R[w-1][g]===R[w][g]?!0:!1;else t=!0;if(e&&0<e.length)for(g=0;g<e.length;g++)L=S[w-1][g]===S[w][g]?!0:!1;else L=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)M=O[w-1][g]===O[w][g]?!0:!1;else M=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)N=Q[w-1][g]===Q[w][g]?!0:!1;else N=!0}if(t&&L&&M&&N)break;w++}if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),a[g].calculateBreaksInPixels();if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateStripLinesThicknessInValues(),e[g].calculateBreaksInPixels();
681
+ if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].calculateStripLinesThicknessInValues(),c[g].calculateBreaksInPixels();if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].calculateStripLinesThicknessInValues(),b[g].calculateBreaksInPixels()}else{n=[];F=[];K=[];x=[];I=[];s=[];R=[];for(S=[];4>w;){X=W=V=aa=T=Y=d=Q=O=D=$=0;if(a&&0<a.length)for(K=[],g=W=0;g<a.length;g++)K.push(Math.ceil(a[g]?a[g].createLabelsAndCalculateWidth():0)),W+=K[g],d+=a[g]&&!m.isNavigator?a[g].margin:0;else K.push(Math.ceil(a[0]?a[0].createLabelsAndCalculateWidth():
682
+ 0));R.push(K);if(e&&0<e.length)for(x=[],g=X=0;g<e.length;g++)x.push(Math.ceil(e[g]?e[g].createLabelsAndCalculateWidth():0)),X+=x[g],Y+=e[g]?e[g].margin:0;else x.push(Math.ceil(e[0]?e[0].createLabelsAndCalculateWidth():0));S.push(x);if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].lineCoordinates={},f=Math.round(h.x1+W+d),r=Math.round(h.x2-X-Y>m.width-10?m.width-10:h.x2-X-Y),c[g].labelAutoFit&&!l(z)&&(0<!a.length&&(f=0>c[g].labelAngle?Math.max(f,z):0===c[g].labelAngle?Math.max(f,z/2):f),0<!e.length&&(r=
683
+ 0<c[g].labelAngle?r-v/2:0===c[g].labelAngle?r-v/2:r)),c[g].lineCoordinates.x1=f,c[g].lineCoordinates.x2=r,c[g].lineCoordinates.width=Math.abs(r-f),c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.width?c[g].titleMaxWidth:c[g].lineCoordinates.width);if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].lineCoordinates={},f=Math.round(h.x1+W+d),r=Math.round(h.x2-X-Y>b[g].chart.width-10?b[g].chart.width-10:h.x2-X-Y),b[g]&&b[g].labelAutoFit&&!l(A)&&(0<!a.length&&
684
+ (f=0<b[g].labelAngle?Math.max(f,A):0===b[g].labelAngle?Math.max(f,A/2):f),0<!e.length&&(r-=B/2)),b[g].lineCoordinates.x1=f,b[g].lineCoordinates.x2=r,b[g].lineCoordinates.width=Math.abs(r-f),b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.width?b[g].titleMaxWidth:b[g].lineCoordinates.width);if(c&&0<c.length)for(n=[],g=V=0;g<c.length;g++)n.push(Math.ceil(c[g]?c[g].createLabelsAndCalculateHeight():0)),V+=n[g]+c[g].margin,T+=c[g].margin;else n.push(Math.ceil(c[0]?
685
+ c[0].createLabelsAndCalculateHeight():0));I.push(n);if(b&&0<b.length)for(F=[],g=0;g<b.length;g++)F.push(Math.ceil(b[g]?b[g].createLabelsAndCalculateHeight():0)),aa+=b[g].margin;else F.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateHeight():0));s.push(F);if(c&&0<c.length)for(g=0;g<c.length;g++)0<c[g]._labels.length&&(k=c[g]._labels[0],u=c[g]._labels[c[g]._labels.length-1],z=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/
686
+ 180*Math.abs(k.textBlock.angle)),v=u.textBlock.width*Math.cos(Math.PI/180*Math.abs(u.textBlock.angle))+(u.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(u.textBlock.angle)));if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&0<b[g]._labels.length&&(k=b[g]._labels[0],u=b[g]._labels[b[g]._labels.length-1],A=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle)),B=u.textBlock.width*
687
+ Math.cos(Math.PI/180*Math.abs(u.textBlock.angle))+(u.textBlock.height-u.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(u.textBlock.angle)));if(m.panEnabled)for(g=0;g<c.length;g++)n[g]=l(m.sessionVariables.axisY[g].height)?m.sessionVariables.axisY[g].height=n[g]:m.sessionVariables.axisY[g].height;else for(g=0;g<c.length;g++)m.sessionVariables.axisY[g].height=n[g];if(c&&0<c.length)for(g=c.length-1;0<=g;g--)u=Math.round(h.y2),k=Math.round(h.y2>c[g].chart.height?c[g].chart.height:h.y2),c[g].lineCoordinates.y1=
688
+ u-(n[g]+c[g].margin+$),c[g].lineCoordinates.y2=u-(n[g]+c[g].margin+$),"inside"===c[g].labelPlacement&&0<g&&(c[g].lineCoordinates.y1=c[g].lineCoordinates.y1+n[g]-(c[g]._titleTextBlock?c[g]._titleTextBlock.height:0)-c[g].tickLength-(c[g].stripLineLabelEffectiveHeight||0)-5,c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/2),"inside"===c[g].tickPlacement&&0<g&&(c[g].lineCoordinates.y1+=c[g].tickLength,c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/2),c[g].bounds=
689
+ {x1:f,y1:u-(n[g]+$+c[g].margin),x2:r,y2:k-($+c[g].margin),width:r-f,height:n[g]},c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.width?c[g].titleMaxWidth:c[g].lineCoordinates.width),$+=n[g]+c[g].margin;if(b&&0<b.length)for(g=b.length-1;0<=g;g--)b[g]&&(u=Math.round(h.y1),k=Math.round(h.y1+(F[g]+b[g].margin+D)),b[g].lineCoordinates.y1=k,b[g].lineCoordinates.y2=k,"inside"===b[g].labelPlacement&&0<g&&(b[g].lineCoordinates.y1=k-F[g]+(b[g]._titleTextBlock?
690
+ b[g]._titleTextBlock.height:0)+b[g].tickLength+(b[g].stripLineLabelEffectiveHeight||0),b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),"inside"===b[g].tickPlacement&&0<g&&(b[g].lineCoordinates.y1-=b[g].tickLength,b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),b[g].bounds={x1:f,y1:u+(b[g].margin+D),x2:r,y2:k,width:r-f},b[g].bounds.height=b[g].bounds.y2-b[g].bounds.y1,b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.width?
691
+ b[g].titleMaxWidth:b[g].lineCoordinates.width),D+=F[g]+b[g].margin);if(a&&0<a.length)for(g=0;g<a.length;g++){T=a[g]._labels&&0<a[g]._labels.length?a[g]._labels[0].textBlock.fontSize/2:0;f=Math.round(h.x1+d);u=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:h.y1<Math.max(T,10)?Math.max(T,10):h.y1):h.y1<Math.max(T,10)?Math.max(T,10):h.y1;r=Math.round(h.x1+W+d);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:h.y2-V>m.height-Math.max(T,10)?m.height-Math.max(T,10):h.y2-V):h.y2>m.height-Math.max(T,
692
+ 10)?m.height-Math.max(T,10):h.y2;if(c&&0<c.length)for(T=0;T<c.length;T++)c[T]&&c[T].labelAutoFit&&(r=c[T].lineCoordinates.x1,f=0>c[T].labelAngle||0===c[T].labelAngle?r-W:f);if(b&&0<b.length)for(T=0;T<b.length;T++)b[T]&&b[T].labelAutoFit&&(r=b[T].lineCoordinates.x1,f=r-W);a[g].lineCoordinates={x1:r-O,y1:u,x2:r-O,y2:k,height:Math.abs(k-u)};"inside"===a[g].labelPlacement&&0<g&&(a[g].lineCoordinates.x1=a[g].lineCoordinates.x1-(K[g]-(a[g]._titleTextBlock?a[g]._titleTextBlock.height:0))+a[g].tickLength+
693
+ (a[g].stripLineLabelEffectiveWidth||0),a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);"inside"===a[g].tickPlacement&&0<g&&(a[g].lineCoordinates.x1-=a[g].tickLength,a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);a[g].bounds={x1:r-(K[g]+O),y1:u,x2:r-O,y2:k,height:k-u};a[g].bounds.width=a[g].bounds.x2-a[g].bounds.x1;a[g].title&&(a[g]._titleTextBlock.maxWidth=0<a[g].titleMaxWidth&&a[g].titleMaxWidth<a[g].lineCoordinates.height?a[g].titleMaxWidth:a[g].lineCoordinates.height);
694
+ a[g].calculateValueToPixelConversionParameters();a[g].calculateBreaksSizeInValues();O+=K[g]+a[g].margin}if(e&&0<e.length)for(g=0;g<e.length;g++){T=e[g]._labels&&0<e[g]._labels.length?e[g]._labels[0].textBlock.fontSize/2:0;f=Math.round(h.x1-d);u=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:h.y1<Math.max(T,10)?Math.max(T,10):h.y1):h.y1<Math.max(T,10)?Math.max(T,10):h.y1;r=Math.round(h.x2-X-Y);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:h.y2-V>m.height-Math.max(T,10)?m.height-Math.max(T,
695
+ 10):h.y2-V):h.y2>m.height-Math.max(T,10)?m.height-Math.max(T,10):h.y2;if(c&&0<c.length)for(T=0;T<c.length;T++)c[T]&&c[T].labelAutoFit&&(r=0>c[T].labelAngle?Math.max(r,z):0===c[T].labelAngle?Math.max(r,z/2):r,f=0>c[T].labelAngle||0===c[T].labelAngle?r-X:f);if(b&&0<b.length)for(T=0;T<b.length;T++)b[T]&&b[T].labelAutoFit&&(r=b[T].lineCoordinates.x2,f=r-X);e[g].lineCoordinates={x1:r+Q,y1:u,x2:r+Q,y2:k,height:Math.abs(k-u)};"inside"===e[g].labelPlacement&&0<g&&(e[g].lineCoordinates.x1=e[g].lineCoordinates.x1+
696
+ (x[g]-(e[g]._titleTextBlock?e[g]._titleTextBlock.height:0)-2)-e[g].tickLength-(e[g].stripLineLabelEffectiveWidth||0),e[g].lineCoordinates.x2=e[g].lineCoordinates.x1+e[g].lineThickness/2);"inside"===e[g].tickPlacement&&0<g&&(e[g].lineCoordinates.x1+=e[g].tickLength,e[g].lineCoordinates.x2=e[g].lineCoordinates.x1+e[g].lineThickness/2);e[g].bounds={x1:e[g].lineCoordinates.x1,y1:u,x2:r+x[g]+Q,y2:k,width:r-f,height:k-u};e[g].bounds.width=e[g].bounds.x2-e[g].bounds.x1;e[g].title&&(e[g]._titleTextBlock.maxWidth=
697
+ 0<e[g].titleMaxWidth&&e[g].titleMaxWidth<e[g].lineCoordinates.height?e[g].titleMaxWidth:e[g].lineCoordinates.height);e[g].calculateValueToPixelConversionParameters();e[g].calculateBreaksSizeInValues();Q+=x[g]+e[g].margin}for(g=0;g<p.length;g++)"axisY"===p[g].type&&(p[g].calculateValueToPixelConversionParameters(),p[g].calculateBreaksSizeInValues());if(0<w){if(a&&0<a.length)for(g=0;g<a.length;g++)t=R[w-1][g]===R[w][g]?!0:!1;else t=!0;if(e&&0<e.length)for(g=0;g<e.length;g++)L=S[w-1][g]===S[w][g]?!0:
698
+ !1;else L=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)M=I[w-1][g]===I[w][g]?!0:!1;else M=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)N=s[w-1][g]===s[w][g]?!0:!1;else N=!0}if(t&&L&&M&&N)break;w++}if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].calculateStripLinesThicknessInValues(),c[g].calculateBreaksInPixels();if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].calculateStripLinesThicknessInValues(),b[g].calculateBreaksInPixels();if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),
699
+ a[g].calculateBreaksInPixels();if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateStripLinesThicknessInValues(),e[g].calculateBreaksInPixels()}};B.render=function(a,e,c,b,d){d=a[0]?a[0].chart:e[0].chart;var h=d.ctx;d.alignVerticalAxes&&d.alignVerticalAxes();h.save();h.beginPath();a&&a.length&&h.rect(2,a[0].bounds.y1,a[0].chart.width-4,a[a.length-1].bounds.y2);e&&e.length&&h.rect(2,e[e.length-1].bounds.y1,e[0].chart.width-4,e[0].bounds.y2);h.clip();if(a&&0<a.length)for(var f=0;f<a.length;f++)a[f].renderLabelsTicksAndTitle();
700
+ if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderLabelsTicksAndTitle();h.restore();if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderLabelsTicksAndTitle();if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].renderLabelsTicksAndTitle();d.preparePlotArea();f=d.plotArea;h.save();h.beginPath();h.rect(f.x1,f.y1,Math.abs(f.x2-f.x1),Math.abs(f.y2-f.y1));h.clip();if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].renderStripLinesOfThicknessType("value");if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderStripLinesOfThicknessType("value");
701
+ if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderStripLinesOfThicknessType("value");if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].renderStripLinesOfThicknessType("value");if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].renderInterlacedColors();if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderInterlacedColors();if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderInterlacedColors();if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].renderInterlacedColors();h.restore();if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].renderGrid(),
702
+ r&&(a[f].createMask(),a[f].renderBreaksBackground());if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderGrid(),r&&(e[f].createMask(),e[f].renderBreaksBackground());if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderGrid(),r&&(c[f].createMask(),c[f].renderBreaksBackground());if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].renderGrid(),r&&(b[f].createMask(),b[f].renderBreaksBackground());if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].renderAxisLine();if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderAxisLine();
703
+ if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderAxisLine();if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].renderAxisLine();h=!1;if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].renderStripLinesOfThicknessType("pixel"),a[f].crosshair&&a[f].crosshair.enabled&&(h=!0,d.clearedOverlayedCanvas=a[f].type);if(e&&0<e.length)for(f=0;f<e.length;f++)e[f].renderStripLinesOfThicknessType("pixel"),e[f].crosshair&&e[f].crosshair.enabled&&(h=!0,d.clearedOverlayedCanvas=e[f].type);if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].renderStripLinesOfThicknessType("pixel"),
704
+ c[f].crosshair&&c[f].crosshair.enabled&&(h=!0,d.clearedOverlayedCanvas=c[f].type);if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].renderStripLinesOfThicknessType("pixel"),b[f].crosshair&&b[f].crosshair.enabled&&(h=!0,d.clearedOverlayedCanvas=b[f].type);if(h||!h&&d.clearedOverlayedCanvas&&0<=d.clearedOverlayedCanvas.indexOf("axis"))d.resetOverlayedCanvas(),d.renderCrosshairs(null,l(d.sessionVariables.crosshairShownByPixel)||d.sessionVariables.crosshairShownByPixel?!0:d.sessionVariables.crosshairShownByPixel)};
705
+ B.prototype.calculateStripLinesThicknessInValues=function(){for(var a=0;a<this.stripLines.length;a++)if(null!==this.stripLines[a].startValue&&null!==this.stripLines[a].endValue){var e=Math.min(this.stripLines[a].startValue,this.stripLines[a].endValue),c=Math.max(this.stripLines[a].startValue,this.stripLines[a].endValue),b=this.getApparentDifference(e,c);this.stripLines[a].value=this.convertPixelToValue((this.convertValueToPixel(e)+this.convertValueToPixel(c))/2);this.stripLines[a].thickness=b;this.stripLines[a]._thicknessType=
706
+ "value"}};B.prototype.calculateBreaksSizeInValues=function(){for(var a="left"===this._position||"right"===this._position?this.lineCoordinates.height||this.chart.height:this.lineCoordinates.width||this.chart.width,e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c=this.conversionParameters.pixelPerUnit||a/(this.logarithmic?this.conversionParameters.maximum/this.conversionParameters.minimum:this.conversionParameters.maximum-this.conversionParameters.minimum),b=this.scaleBreaks&&!l(this.scaleBreaks.options.spacing),
707
+ d,h=0;h<e.length;h++)d=b||!l(e[h].options.spacing),e[h].spacing=Va(e[h].spacing,a,8,d?0.1*a:8,d?0:3)<<0,e[h].size=0>e[h].spacing?0:Math.abs(e[h].spacing/c),this.logarithmic&&(e[h].size=Math.pow(this.logarithmBase,e[h].size))};B.prototype.calculateBreaksInPixels=function(){if(!(this.scaleBreaks&&0>=this.scaleBreaks._appliedBreaks.length)){var a=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];a.length&&(this.scaleBreaks.firstBreakIndex=this.scaleBreaks.lastBreakIndex=null);for(var e=0;e<a.length&&
708
+ !(a[e].startValue>this.conversionParameters.maximum);e++)a[e].endValue<this.conversionParameters.minimum||(l(this.scaleBreaks.firstBreakIndex)&&(this.scaleBreaks.firstBreakIndex=e),a[e].startValue>=this.conversionParameters.minimum&&(a[e].startPixel=this.convertValueToPixel(a[e].startValue),this.scaleBreaks.lastBreakIndex=e),a[e].endValue<=this.conversionParameters.maximum&&(a[e].endPixel=this.convertValueToPixel(a[e].endValue)))}};B.prototype.renderLabelsTicksAndTitle=function(){var a=this,e=!1,
709
+ c=0,b=0,d=1,h=0;0!==this.labelAngle&&360!==this.labelAngle&&(d=1.2);if("undefined"===typeof this.options.interval){if("bottom"===this._position||"top"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],d=0!==this.labelAngle&&360!==this.labelAngle?1:1.2,f,l=this.viewportMaximum,r=this.lineCoordinates.width/Math.log(this.range),k=this._labels.length-1;0<=k;k--){n=this._labels[k];if(n.position<this.viewportMinimum)break;n.position>this.viewportMaximum||!(k===
710
+ this._labels.length-1||f<Math.log(l/n.position)*r/d)||(c.push(n),l=n.position,f=n.textBlock.width*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.height*Math.abs(Math.sin(Math.PI/180*this.labelAngle)))}this._labels=c}else{for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||(f=n.textBlock.width*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.height*Math.abs(Math.sin(Math.PI/180*this.labelAngle)),c+=f);c>this.lineCoordinates.width*d&&this.labelAutoFit&&
711
+ (e=!0)}if("left"===this._position||"right"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],m,l=this.viewportMaximum,r=this.lineCoordinates.height/Math.log(this.range),k=this._labels.length-1;0<=k;k--){n=this._labels[k];if(n.position<this.viewportMinimum)break;n.position>this.viewportMaximum||!(k===this._labels.length-1||m<Math.log(l/n.position)*r)||(c.push(n),l=n.position,m=n.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.width*
712
+ Math.abs(Math.sin(Math.PI/180*this.labelAngle)))}this._labels=c}else{for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||(m=n.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.width*Math.abs(Math.sin(Math.PI/180*this.labelAngle)),b+=m);b>this.lineCoordinates.height*d&&this.labelAutoFit&&(e=!0)}}this.logarithmic&&(!this.equidistantInterval&&this.labelAutoFit)&&this._labels.sort(function(a,b){return a.position-b.position});var k=0,n,p;if("bottom"===
713
+ this._position){for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||n.position>this.viewportMaximum||(p=this.getPixelCoordinatesOnAxis(n.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(p.x<<0)+0.5:p.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,p.y<<0),this.ctx.lineTo(b,p.y+this.tickLength<<0),this.ctx.stroke()),e&&0!==h++%2&&this.labelAutoFit||(0===n.textBlock.angle?
714
+ (p.x-=n.textBlock.width/2,p.y="inside"===this.labelPlacement?p.y-(("inside"===this.tickPlacement?this.tickLength:0)+n.textBlock.height-n.textBlock._lineHeight/2+5):p.y+("inside"===this.tickPlacement?0:this.tickLength)+n.textBlock._lineHeight/2+5):0>this.labelAngle?(p.x=p.x-("inside"===this.labelPlacement?0:n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),p.y="inside"===this.labelPlacement?p.y-("inside"===this.tickPlacement?this.tickLength:
715
+ 0)-5-(n.textBlock.height-n.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle):p.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-n.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle))):(p.x=p.x-("inside"===this.labelPlacement?n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+n.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),p.y="inside"===this.labelPlacement?p.y-("inside"===this.tickPlacement?
716
+ this.tickLength:0)-5-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-(n.textBlock.height-n.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle):p.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(n.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle))),n.textBlock.x=p.x,n.textBlock.y=p.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(n=a._labels[k],!(n.position<a.viewportMinimum||
717
+ n.position>a.viewportMaximum)&&(p=a.getPixelCoordinatesOnAxis(n.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(p.x<<0)+0.5:p.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,p.y<<0);a.ctx.lineTo(b,p.y-a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+this.lineCoordinates.width/2-this._titleTextBlock.width/2,this._titleTextBlock.y=
718
+ this.bounds.y2-this._titleTextBlock.height+this._titleTextBlock._lineHeight/2-1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("top"===this._position){for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||n.position>this.viewportMaximum||(p=this.getPixelCoordinatesOnAxis(n.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%
719
+ 2?(p.x<<0)+0.5:p.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,p.y<<0),this.ctx.lineTo(b,p.y-this.tickLength<<0),this.ctx.stroke()),e&&0!==h++%2&&this.labelAutoFit||(0===n.textBlock.angle?(p.x-=n.textBlock.width/2,p.y="inside"===this.labelPlacement?p.y+n.textBlock._lineHeight/2+("inside"===this.tickPlacement?this.tickLength:0)+5:p.y-(("inside"===this.tickPlacement?0:this.tickLength)+n.textBlock.height-n.textBlock._lineHeight/2)-5):0>this.labelAngle?(p.x=p.x-("inside"===this.labelPlacement?n.textBlock.width*
720
+ Math.cos(Math.PI/180*this.labelAngle):0)+n.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),p.y="inside"===this.labelPlacement?p.y+("inside"===this.tickPlacement?this.tickLength:0)+5-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)+n.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle):p.y-("inside"===this.tickPlacement?0:this.tickLength)-5-(n.textBlock.height-n.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)):(p.x=p.x-("inside"===this.labelPlacement?0:n.textBlock.width*
721
+ Math.cos(Math.PI/180*this.labelAngle))+n.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),p.y="inside"===this.labelPlacement?p.y+("inside"===this.tickPlacement?this.tickLength:0)+5+n.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle):p.y-("inside"===this.tickPlacement?0:this.tickLength)-5-((n.textBlock.height-n.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)+n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))),n.textBlock.x=p.x,n.textBlock.y=p.y));"inside"===
722
+ this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(n=a._labels[k],!(n.position<a.viewportMinimum||n.position>a.viewportMaximum)&&(p=a.getPixelCoordinatesOnAxis(n.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(p.x<<0)+0.5:p.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,p.y<<0);a.ctx.lineTo(b,p.y+a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&
723
+ (this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+this.lineCoordinates.width/2-this._titleTextBlock.width/2,this._titleTextBlock.y=this.bounds.y1+this._titleTextBlock._lineHeight/2+1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("left"===this._position){for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||n.position>this.viewportMaximum||(p=this.getPixelCoordinatesOnAxis(n.position),this.tickThickness&&
724
+ "inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(p.y<<0)+0.5:p.y<<0,this.ctx.beginPath(),this.ctx.moveTo(p.x<<0,b),this.ctx.lineTo(p.x-this.tickLength<<0,b),this.ctx.stroke()),e&&0!==h++%2&&this.labelAutoFit||(0===this.labelAngle?(n.textBlock.y=p.y-n.textBlock.topPadding,n.textBlock.x="inside"===this.labelPlacement?p.x+("inside"===this.tickPlacement?this.tickLength:0)+5:p.x-n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-
725
+ ("inside"===this.tickPlacement?0:this.tickLength)-5):0>this.labelAngle?(n.textBlock.y=("inside"===this.labelPlacement?p.y:p.y-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-n.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),n.textBlock.x="inside"===this.labelPlacement?p.x-n.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:p.x-n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(n.textBlock.height-n.textBlock.fontSize/
726
+ 2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):(n.textBlock.y=("inside"===this.labelPlacement?p.y:p.y-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-n.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),n.textBlock.x="inside"===this.labelPlacement?p.x+(n.textBlock.height-n.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:p.x-n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-
727
+ n.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5)));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(n=a._labels[k],!(n.position<a.viewportMinimum||n.position>a.viewportMaximum)&&(p=a.getPixelCoordinatesOnAxis(n.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(p.y<<0)+0.5:p.y<<0;a.ctx.save();
728
+ a.ctx.beginPath();a.ctx.moveTo(p.x<<0,b);a.ctx.lineTo(p.x+a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.bounds.x1+this._titleTextBlock._lineHeight/2,this._titleTextBlock.y=this.lineCoordinates.height/2+this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("right"===this._position){for(k=0;k<this._labels.length;k++)n=this._labels[k],
729
+ n.position<this.viewportMinimum||n.position>this.viewportMaximum||(p=this.getPixelCoordinatesOnAxis(n.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(p.y<<0)+0.5:p.y<<0,this.ctx.beginPath(),this.ctx.moveTo(p.x<<0,b),this.ctx.lineTo(p.x+this.tickLength<<0,b),this.ctx.stroke()),e&&0!==h++%2&&this.labelAutoFit||(0===this.labelAngle?(n.textBlock.y=p.y-n.textBlock.topPadding,n.textBlock.x=
730
+ "inside"===this.labelPlacement?p.x-n.textBlock.width-("inside"===this.tickPlacement?this.tickLength:0)-5:p.x+("inside"===this.tickPlacement?0:this.tickLength)+5):0>this.labelAngle?(n.textBlock.y=("inside"===this.labelPlacement?p.y-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):p.y)-n.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),n.textBlock.x="inside"===this.labelPlacement?p.x-n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(n.textBlock.height-n.textBlock.fontSize/2)*
731
+ Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:p.x-n.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5):(n.textBlock.y=("inside"===this.labelPlacement?p.y-n.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):p.y)-n.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),n.textBlock.x="inside"===this.labelPlacement?p.x-n.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-n.textBlock.fontSize/
732
+ 2*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:p.x+(n.textBlock.height-n.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5)));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(n=a._labels[k],!(n.position<a.viewportMinimum||n.position>a.viewportMaximum)&&(p=a.getPixelCoordinatesOnAxis(n.position),a.tickThickness)){a.ctx.lineWidth=
733
+ a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(p.y<<0)+0.5:p.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(p.x<<0,b);a.ctx.lineTo(p.x-a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.bounds.x2-this._titleTextBlock._lineHeight/2,this._titleTextBlock.y=this.lineCoordinates.height/2-this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}h=
734
+ 0;if("inside"===this.labelPlacement)this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)n=a._labels[k],n.position<a.viewportMinimum||(n.position>a.viewportMaximum||e&&0!==h++%2&&a.labelAutoFit)||(a.ctx.save(),a.ctx.beginPath(),n.textBlock.render(!0),a.ctx.restore())},this);else for(k=0;k<this._labels.length;k++)n=this._labels[k],n.position<this.viewportMinimum||(n.position>this.viewportMaximum||e&&0!==h++%2&&this.labelAutoFit)||n.textBlock.render(!0)};
735
+ B.prototype.renderInterlacedColors=function(){var a=this.chart.plotArea.ctx,e,c,b=this.chart.plotArea,d=0;e=!0;if(("bottom"===this._position||"top"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?(e=this.getPixelCoordinatesOnAxis(this._labels[d].position),c=d+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(Math.min(c.x,e.x),b.y1,Math.abs(c.x-
736
+ e.x),Math.abs(b.y1-b.y2)),e=!1):e=!0;else if(("left"===this._position||"right"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?(c=this.getPixelCoordinatesOnAxis(this._labels[d].position),e=d+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(b.x1,Math.min(c.y,e.y),Math.abs(b.x1-b.x2),Math.abs(e.y-c.y)),e=!1):e=!0;a.beginPath()};B.prototype.renderStripLinesOfThicknessType=
737
+ function(a){if(this.stripLines&&0<this.stripLines.length&&a){var e=this,c,b,d=0,h=0,f=!1;b=!1;for(var r=[],t=[],k=!1,m,d=0;d<this.stripLines.length;d++){var n=this.stripLines[d];n._thicknessType===a&&("pixel"===a&&(n.value<this.viewportMinimum||n.value>this.viewportMaximum||l(n.value)||isNaN(this.range))||"value"===a&&(n.startValue<=this.viewportMinimum&&n.endValue<=this.viewportMinimum||n.startValue>=this.viewportMaximum&&n.endValue>=this.viewportMaximum||l(n.startValue)||l(n.endValue)||isNaN(this.range))||
738
+ r.push(n))}for(d=0;d<this._stripLineLabels.length;d++)if(n=this.stripLines[d],c=this._stripLineLabels[d],!(c.position<this.viewportMinimum||c.position>this.viewportMaximum||isNaN(this.range)))if(b=this.getPixelCoordinatesOnAxis(c.position),"outside"===c.stripLine.labelPlacement){n&&(this.ctx.strokeStyle=n.color,this.ctx.lineWidth="pixel"===n._thicknessType?n.thickness:this.tickThickness,l(n.opacity)||"pixel"!==n._thicknessType||(m=n.ctx.globalAlpha,n.ctx.globalAlpha=n.opacity));if("bottom"===this._position){var p=
739
+ 1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0;this.ctx.beginPath();this.ctx.moveTo(p,b.y<<0);this.ctx.lineTo(p,b.y+this.tickLength<<0);this.ctx.stroke();0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y+=this.tickLength+c.textBlock.fontSize/2+5):(b.x-=(0>this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)-c.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),b.y+=this.tickLength+5+(0>this.labelAngle?Math.abs(c.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-c.textBlock.fontSize/
740
740
  2*Math.cos(Math.PI/180*this.labelAngle)):Math.abs(c.textBlock.fontSize/2*Math.cos(Math.PI/180*this.labelAngle))))}else"top"===this._position?(p=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0,this.ctx.beginPath(),this.ctx.moveTo(p,b.y<<0),this.ctx.lineTo(p,b.y-this.tickLength<<0),this.ctx.stroke(),0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y-=this.tickLength+c.textBlock.height-c.textBlock.fontSize/2):(b.x-=(0<this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)-c.textBlock.topPadding*
741
741
  Math.sin(Math.PI/180*this.labelAngle),b.y-=this.tickLength+2+(0<this.labelAngle?(c.textBlock.height-c.textBlock.fontSize/2)*Math.cos(Math.PI/180*this.labelAngle)+c.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):(c.textBlock.height-c.textBlock.fontSize/2)*Math.cos(Math.PI/180*this.labelAngle)))):"left"===this._position?(p=1===this.ctx.lineWidth%2?(b.y<<0)+0.5:b.y<<0,this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,p),this.ctx.lineTo(b.x-this.tickLength<<0,p),this.ctx.stroke(),0===this.labelAngle?
742
742
  (b.x=b.x-c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-this.tickLength-5,b.y-=c.textBlock.topPadding):(b.y-=c.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)+c.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),b.x-=this.tickLength+5+(0<this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+c.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle):c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-(c.textBlock.height-c.textBlock.fontSize/2)*Math.sin(Math.PI/
@@ -960,7 +960,7 @@ X.prototype.cancelAllAnimations=function(){this.animations=[];this.animationRequ
960
960
  b.width,b.height,d-d*a,0,a*c.canvas.width/na,c.canvas.height/na)}},xClipAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas;c.save();0<a&&c.drawImage(b,0,0,b.width*a,b.height,0,0,b.width*a/na,b.height/na);c.restore()}},fadeInAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas;c.save();c.globalAlpha=a;c.drawImage(b,0,0,b.width,b.height,0,0,c.canvas.width/na,c.canvas.height/na);c.restore()}},easing:{linear:function(a,e,c,b){return c*a/b+e},easeOutQuad:function(a,e,c,b){return-c*
961
961
  (a/=b)*(a-2)+e},easeOutQuart:function(a,e,c,b){return-c*((a=a/b-1)*a*a*a-1)+e},easeInQuad:function(a,e,c,b){return c*(a/=b)*a+e},easeInQuart:function(a,e,c,b){return c*(a/=b)*a*a*a+e}}},ba={drawMarker:function(a,e,c,b,d,f,l,r){if(c){var t=1;c.fillStyle=f?f:"#000000";c.strokeStyle=l?l:"#000000";c.lineWidth=r?r:0;c.setLineDash&&c.setLineDash(I("solid",r));"circle"===b?(c.moveTo(a,e),c.beginPath(),c.arc(a,e,d/2,0,2*Math.PI,!1),f&&c.fill(),r&&(l?c.stroke():(t=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle=
962
962
  "black",c.stroke(),c.globalAlpha=t))):"square"===b?(c.beginPath(),c.rect(a-d/2,e-d/2,d,d),f&&c.fill(),r&&(l?c.stroke():(t=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=t))):"triangle"===b?(c.beginPath(),c.moveTo(a-d/2,e+d/2),c.lineTo(a+d/2,e+d/2),c.lineTo(a,e-d/2),c.closePath(),f&&c.fill(),r&&(l?c.stroke():(t=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=t)),c.beginPath()):"cross"===b&&(c.strokeStyle=f,c.lineWidth=d/4,c.beginPath(),
963
- c.moveTo(a-d/2,e-d/2),c.lineTo(a+d/2,e+d/2),c.stroke(),c.moveTo(a+d/2,e-d/2),c.lineTo(a-d/2,e+d/2),c.stroke())}},drawMarkers:function(a){for(var e=0;e<a.length;e++){var c=a[e];ba.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return x}();t.version="v3.12.0 GA";window.CanvasJS&&(t&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=t)})();
963
+ c.moveTo(a-d/2,e-d/2),c.lineTo(a+d/2,e+d/2),c.stroke(),c.moveTo(a+d/2,e-d/2),c.lineTo(a-d/2,e+d/2),c.stroke())}},drawMarkers:function(a){for(var e=0;e<a.length;e++){var c=a[e];ba.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return x}();t.version="v3.12.1 GA";window.CanvasJS&&(t&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=t)})();
964
964
 
965
965
  /*
966
966
  excanvas is used to support IE678 which do not implement HTML5 Canvas Element. You can safely remove the following excanvas code if you don't need to support older browsers.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@canvasjs/charts",
3
- "version": "3.12.0",
3
+ "version": "3.12.1",
4
4
  "description": "CanvasJS JavaScript Charts - Official",
5
5
  "main": "canvasjs.min.js",
6
6
  "keywords": [