@canvasjs/charts 3.14.6 → 3.14.7
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.
- package/LICENSE +1 -1
- package/canvasjs.min.js +287 -286
- package/package.json +1 -1
package/canvasjs.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
CanvasJS Chart - v3.14.
|
|
2
|
+
CanvasJS Chart - v3.14.7 GA - https://canvasjs.com/
|
|
3
3
|
Copyright 2025 fenopix
|
|
4
4
|
|
|
5
5
|
--------------------- License Information --------------------
|
|
@@ -520,11 +520,11 @@ k.options.indexLabelBorderColor:k.indexLabelBorderColor;m.indexLabelBorderThickn
|
|
|
520
520
|
g.indexLabelWrap:k.indexLabelWrap;m.indexLabelTextAlign=g.indexLabelTextAlign?g.indexLabelTextAlign:k.indexLabelTextAlign?k.indexLabelTextAlign:"left";m.startAngle=0===d?k.startAngle?k.startAngle/180*Math.PI:0:f[d-1].endAngle;m.startAngle=(m.startAngle+2*Math.PI)%(2*Math.PI);m.endAngle=m.startAngle+2*Math.PI/y*Math.abs(g.y);g=(m.endAngle+m.startAngle)/2;g=(g+2*Math.PI)%(2*Math.PI);m.midAngle=g;if(m.midAngle>Math.PI/2-t&&m.midAngle<Math.PI/2+t){if(0===a||f[c].midAngle>m.midAngle)c=d;a++}else if(m.midAngle>
|
|
521
521
|
3*Math.PI/2-t&&m.midAngle<3*Math.PI/2+t){if(0===b||f[e].midAngle>m.midAngle)e=d;b++}m.hemisphere=g>Math.PI/2&&g<=3*Math.PI/2?"left":"right";m.indexLabelTextBlock=new ka(h.plotArea.ctx,{fontSize:m.indexLabelFontSize,fontFamily:m.indexLabelFontFamily,fontColor:m.indexLabelFontColor,fontStyle:m.indexLabelFontStyle,fontWeight:m.indexLabelFontWeight,textAlign:m.indexLabelTextAlign,backgroundColor:m.indexLabelBackgroundColor,borderColor:m.indexLabelBorderColor,borderThickness:m.indexLabelBorderThickness,
|
|
522
522
|
maxWidth:m.indexLabelMaxWidth,maxHeight:m.indexLabelWrap?5*m.indexLabelFontSize:1.5*m.indexLabelFontSize,text:m.indexLabelText,padding:m.indexLabelPadding,textBaseline:"middle"});m.indexLabelTextBlock.measureText()}p=g=0;r=!1;for(d=0;d<n.length;d++)m=f[(c+d)%n.length],1<a&&(m.midAngle>Math.PI/2-t&&m.midAngle<Math.PI/2+t)&&(g<=a/2&&!r?(m.hemisphere="right",g++):(m.hemisphere="left",r=!0));r=!1;for(d=0;d<n.length;d++)m=f[(e+d)%n.length],1<b&&(m.midAngle>3*Math.PI/2-t&&m.midAngle<3*Math.PI/2+t)&&(p<=
|
|
523
|
-
b/2&&!r?(m.hemisphere="left",p++):(m.hemisphere="right",r=!0))}}function c(a,b){var c=h.plotArea.ctx;c.clearRect(q.x1,q.y1,q.width,q.height);c.fillStyle=h.backgroundColor;c.fillRect(q.x1,q.y1,q.width,q.height);for(c=0;c<n.length;c++){var
|
|
524
|
-
Math.abs(f[c].center.x-w.x)||0<Math.abs(f[c].center.y-w.y))f[c].center.x=w.x+g*(1-a),f[c].center.y=w.y+p*(1-a),l=!0;l&&b&&(g={},g.dataSeries=k,g.dataPoint=k.dataPoints[c],g.index=c,h.toolTip.highlightObjects([g]));sa(h.plotArea.ctx,f[c].center,f[c].radius,n[c].color?n[c].color:k._colorSet[c%k._colorSet.length],k.type,e,
|
|
525
|
-
|
|
526
|
-
0<
|
|
527
|
-
a.indexLabelTextBlock.height/2,
|
|
523
|
+
b/2&&!r?(m.hemisphere="left",p++):(m.hemisphere="right",r=!0))}}function c(a,b){var c=h.plotArea.ctx;c.clearRect(q.x1,q.y1,q.width,q.height);c.fillStyle=h.backgroundColor;c.fillRect(q.x1,q.y1,q.width,q.height);for(c=0;c<n.length;c++){var d=f[c].startAngle,e=f[c].endAngle;if(e>d){var g=0.07*z*Math.cos(f[c].midAngle),p=0.07*z*Math.sin(f[c].midAngle),l=!1;if(n[c].exploded){if(1E-9<Math.abs(f[c].center.x-(w.x+g))||1E-9<Math.abs(f[c].center.y-(w.y+p)))f[c].center.x=w.x+g*a,f[c].center.y=w.y+p*a,l=!0}else if(0<
|
|
524
|
+
Math.abs(f[c].center.x-w.x)||0<Math.abs(f[c].center.y-w.y))f[c].center.x=w.x+g*(1-a),f[c].center.y=w.y+p*(1-a),l=!0;l&&b&&(g={},g.dataSeries=k,g.dataPoint=k.dataPoints[c],g.index=c,h.toolTip.highlightObjects([g]));sa(h.plotArea.ctx,f[c].center,f[c].radius,n[c].color?n[c].color:k._colorSet[c%k._colorSet.length],k.type,d,e,k.fillOpacity,f[c].percentInnerRadius)}}c=h.plotArea.ctx;c.save();c.fillStyle="black";c.strokeStyle="grey";c.textBaseline="middle";c.lineJoin="round";for(d=d=0;d<n.length;d++)e=f[d],
|
|
525
|
+
e.indexLabelText&&(e.indexLabelTextBlock.y-=e.indexLabelTextBlock.height/2-e.indexLabelTextBlock._lineHeight/2,g=0,g="left"===e.hemisphere?"inside"!==k.indexLabelPlacement?-(e.indexLabelTextBlock.width+m):-e.indexLabelTextBlock.width/2:"inside"!==k.indexLabelPlacement?m:-e.indexLabelTextBlock.width/2,e.indexLabelTextBlock.x+=g,e.indexLabelTextBlock.render(!0),e.indexLabelTextBlock.x-=g,e.indexLabelTextBlock.y+=e.indexLabelTextBlock.height/2-e.indexLabelTextBlock._lineHeight/2,"inside"!==e.indexLabelPlacement&&
|
|
526
|
+
0<e.indexLabelLineThickness&&(g=e.center.x+z*Math.cos(e.midAngle),p=e.center.y+z*Math.sin(e.midAngle),c.strokeStyle=e.indexLabelLineColor,c.lineWidth=e.indexLabelLineThickness,c.setLineDash&&c.setLineDash(H(e.indexLabelLineDashType,e.indexLabelLineThickness)),c.beginPath(),c.moveTo(g,p),c.lineTo(e.indexLabelTextBlock.x,e.indexLabelTextBlock.y),c.lineTo(e.indexLabelTextBlock.x+("left"===e.hemisphere?-m:m),e.indexLabelTextBlock.y),c.stroke()),c.lineJoin="miter");c.save()}function b(a,b){var c=0,c=a.indexLabelTextBlock.y-
|
|
527
|
+
a.indexLabelTextBlock.height/2,e=a.indexLabelTextBlock.y+a.indexLabelTextBlock.height/2,f=b.indexLabelTextBlock.y-b.indexLabelTextBlock.height/2,d=b.indexLabelTextBlock.y+b.indexLabelTextBlock.height/2;return c=b.indexLabelTextBlock.y>a.indexLabelTextBlock.y?f-e:c-d}function e(a){for(var c=null,e=1;e<n.length;e++)if(c=(a+e+f.length)%f.length,f[c].hemisphere!==f[a].hemisphere){c=null;break}else if(f[c].indexLabelText&&c!==a&&(0>b(f[c],f[a])||("right"===f[a].hemisphere?f[c].indexLabelTextBlock.y>=f[a].indexLabelTextBlock.y:
|
|
528
528
|
f[c].indexLabelTextBlock.y<=f[a].indexLabelTextBlock.y)))break;else c=null;return c}function d(a,c,g){g=(g||0)+1;if(1E3<g)return 0;c=c||0;var k=0,p=w.y-1*s,m=w.y+1*s;if(0<=a&&a<n.length){var l=f[a];if(0>c&&l.indexLabelTextBlock.y<p||0<c&&l.indexLabelTextBlock.y>m)return 0;var r=0,h=0,h=r=r=0;0>c?l.indexLabelTextBlock.y-l.indexLabelTextBlock.height/2>p&&l.indexLabelTextBlock.y-l.indexLabelTextBlock.height/2+c<p&&(c=-(p-(l.indexLabelTextBlock.y-l.indexLabelTextBlock.height/2+c))):l.indexLabelTextBlock.y+
|
|
529
529
|
l.indexLabelTextBlock.height/2<p&&l.indexLabelTextBlock.y+l.indexLabelTextBlock.height/2+c>m&&(c=l.indexLabelTextBlock.y+l.indexLabelTextBlock.height/2+c-m);c=l.indexLabelTextBlock.y+c;p=0;p="right"===l.hemisphere?w.x+Math.sqrt(Math.pow(s,2)-Math.pow(c-w.y,2)):w.x-Math.sqrt(Math.pow(s,2)-Math.pow(c-w.y,2));h=w.x+z*Math.cos(l.midAngle);r=w.y+z*Math.sin(l.midAngle);r=Math.sqrt(Math.pow(p-h,2)+Math.pow(c-r,2));h=Math.acos(z/s);r=Math.acos((s*s+z*z-r*r)/(2*z*s));c=r<h?c-l.indexLabelTextBlock.y:0;p=null;
|
|
530
530
|
for(m=1;m<n.length;m++)if(p=(a-m+f.length)%f.length,f[p].hemisphere!==f[a].hemisphere){p=null;break}else if(f[p].indexLabelText&&f[p].hemisphere===f[a].hemisphere&&p!==a&&(0>b(f[p],f[a])||("right"===f[a].hemisphere?f[p].indexLabelTextBlock.y<=f[a].indexLabelTextBlock.y:f[p].indexLabelTextBlock.y>=f[a].indexLabelTextBlock.y)))break;else p=null;h=p;r=e(a);m=p=0;0>c?(m="right"===l.hemisphere?h:r,k=c,null!==m&&(h=-c,c=l.indexLabelTextBlock.y-l.indexLabelTextBlock.height/2-(f[m].indexLabelTextBlock.y+
|
|
@@ -535,27 +535,27 @@ c<p.indexLabelTextBlock.x?c=p.indexLabelTextBlock.x+15:"left"===l.hemisphere&&("
|
|
|
535
535
|
(f[L].indexLabelTextBlock.y<l.indexLabelTextBlock.y?t++:H++);t=B/(t+H||1)*H;var H=-1*(B-t),J=L=0;"right"===l.hemisphere?(L=d(a,t),H=-1*(B-L),J=d(y,H),+J.toFixed(x)<+H.toFixed(x)&&+L.toFixed(x)<=+t.toFixed(x)&&d(a,-(H-J))):(L=d(y,t),H=-1*(B-L),J=d(a,H),+J.toFixed(x)<+H.toFixed(x)&&+L.toFixed(x)<=+t.toFixed(x)&&d(y,-(H-J)))}}}}else for(a=0;a<n.length;a++)l=f[a],s="pie"===k.type?0.7*z:0.85*z,y=w.x+s*Math.cos(l.midAngle),t=w.y+s*Math.sin(l.midAngle),l.indexLabelTextBlock.x=y,l.indexLabelTextBlock.y=t;
|
|
536
536
|
for(a=0;a<n.length;a++)if(l=f[a],y=l.indexLabelTextBlock.measureText(),0!==y.height&&0!==y.width)y=y=0,"right"===l.hemisphere?(y=q.x2-(l.indexLabelTextBlock.x+l.indexLabelTextBlock.width+m),y*=-1):y=q.x1-(l.indexLabelTextBlock.x-l.indexLabelTextBlock.width-m),0<y&&(!p&&l.indexLabelText&&(t="right"===l.hemisphere?q.x2-l.indexLabelTextBlock.x:l.indexLabelTextBlock.x-q.x1,0.3*l.indexLabelTextBlock.maxWidth>t?l.indexLabelText="":l.indexLabelTextBlock.maxWidth=0.85*t,0.3*l.indexLabelTextBlock.maxWidth<
|
|
537
537
|
t&&(l.indexLabelTextBlock.x-="right"===l.hemisphere?2:-2)),Math.abs(l.indexLabelTextBlock.y-l.indexLabelTextBlock.height/2-w.y)<z||Math.abs(l.indexLabelTextBlock.y+l.indexLabelTextBlock.height/2-w.y)<z)&&(y/=Math.abs(Math.cos(l.indexLabelAngle)),9<y&&(y*=0.3),y>g&&(g=y)),y=y=0,0<l.indexLabelAngle&&l.indexLabelAngle<Math.PI?(y=q.y2-(l.indexLabelTextBlock.y+l.indexLabelTextBlock.height/2+5),y*=-1):y=q.y1-(l.indexLabelTextBlock.y-l.indexLabelTextBlock.height/2-5),0<y&&(!p&&l.indexLabelText&&(t=0<l.indexLabelAngle&&
|
|
538
|
-
l.indexLabelAngle<Math.PI?-1:1,0===d(a,y*t)&&d(a,2*t)),Math.abs(l.indexLabelTextBlock.x-w.x)<z&&(y/=Math.abs(Math.sin(l.indexLabelAngle)),9<y&&(y*=0.3),y>g&&(g=y)));var O=function(a,b,c){for(var
|
|
538
|
+
l.indexLabelAngle<Math.PI?-1:1,0===d(a,y*t)&&d(a,2*t)),Math.abs(l.indexLabelTextBlock.x-w.x)<z&&(y/=Math.abs(Math.sin(l.indexLabelAngle)),9<y&&(y*=0.3),y>g&&(g=y)));var O=function(a,b,c){for(var e=[],d=0;e.push(f[b]),b!==c;b=(b+1+n.length)%n.length);e.sort(function(a,b){return a.y-b.y});for(b=0;b<e.length;b++)if(c=e[b],d<0.7*a)d+=c.indexLabelTextBlock.height,c.indexLabelTextBlock.text="",c.indexLabelText="",c.indexLabelTextBlock.measureText();else break};(function(){for(var a=-1,c=-1,d=0,g=!1,p=0;p<
|
|
539
539
|
n.length;p++)if(g=!1,r=f[p],r.indexLabelText){var l=e(p);if(null!==l){var k=f[l];B=0;B=b(r,k);var h;if(h=0>B){h=r.indexLabelTextBlock.x;var q=r.indexLabelTextBlock.y-r.indexLabelTextBlock.height/2,t=r.indexLabelTextBlock.y+r.indexLabelTextBlock.height/2,v=k.indexLabelTextBlock.y-k.indexLabelTextBlock.height/2,s=k.indexLabelTextBlock.x+k.indexLabelTextBlock.width,w=k.indexLabelTextBlock.y+k.indexLabelTextBlock.height/2;h=r.indexLabelTextBlock.x+r.indexLabelTextBlock.width<k.indexLabelTextBlock.x-m||
|
|
540
540
|
h>s+m||q>w+m||t<v-m?!1:!0}h?(0>a&&(a=p),l!==a&&(c=l,d+=-B),0===p%Math.max(n.length/10,3)&&(g=!0)):g=!0;g&&(0<d&&0<=a&&0<=c)&&(O(d,a,c),c=a=-1,d=0)}}0<d&&O(d,a,c)})()}}function r(){h.plotArea.layoutManager.reset();h.title&&(h.title.dockInsidePlotArea||"center"===h.title.horizontalAlign&&"center"===h.title.verticalAlign)&&h.title.render();if(h.subtitles)for(var a=0;a<h.subtitles.length;a++){var b=h.subtitles[a];(b.dockInsidePlotArea||"center"===b.horizontalAlign&&"center"===b.verticalAlign)&&b.render()}h.legend&&
|
|
541
541
|
(h.legend.dockInsidePlotArea||"center"===h.legend.horizontalAlign&&"center"===h.legend.verticalAlign)&&(h.legend.setLayout(),h.legend.render())}var h=this;if(!(0>=a.dataSeriesIndexes.length)){var k=this.data[a.dataSeriesIndexes[0]],n=k.dataPoints,m=10,q=this.plotArea,f=k.dataPointEOs,v=2,s,u=1.3,t=20/180*Math.PI,x=6,w={x:(q.x2+q.x1)/2,y:(q.y2+q.y1)/2},y=0;a=!1;for(var B=0;B<n.length;B++)y+=Math.abs(n[B].y),!a&&("undefined"!==typeof n[B].indexLabel&&null!==n[B].indexLabel&&0<n[B].indexLabel.toString().length)&&
|
|
542
542
|
(a=!0),!a&&("undefined"!==typeof n[B].label&&null!==n[B].label&&0<n[B].label.toString().length)&&(a=!0);if(0!==y){a=a||"undefined"!==typeof k.indexLabel&&null!==k.indexLabel&&0<k.indexLabel.toString().length;var z="inside"!==k.indexLabelPlacement&&a?0.75*Math.min(q.width,q.height)/2:0.92*Math.min(q.width,q.height)/2;k.radius&&(z=Wa(k.radius,z));var D="undefined"!==typeof k.innerRadius&&null!==k.innerRadius?Wa(k.innerRadius,z,0.7*z):0.7*z,F=Math.min(D/z,(z-1)/z);this.pieDoughnutClickHandler=function(a){h.isAnimating||
|
|
543
543
|
!l(this.explodeOnClick)&&!this.explodeOnClick||(a=a.dataPoint,a.exploded=a.exploded?!1:!0,1<this.dataPoints.length&&h._animator.animate(0,500,function(a){c(a,!0);r();h.dispatchEvent("dataAnimationIterationEnd",{chart:h});h.dispatchEvent("dataAnimationEnd",{chart:h})}))};g();p();p();p();p();this.disableToolTip=!0;this._animator.animate(0,this.animatedRender?this.animationDuration:0,function(a){var b=h.plotArea.ctx;b.clearRect(q.x1,q.y1,q.width,q.height);b.fillStyle=h.backgroundColor;b.fillRect(q.x1,
|
|
544
|
-
q.y1,q.width,q.height);for(var b=f[0].startAngle+2*Math.PI*a,c=0;c<n.length;c++){var
|
|
544
|
+
q.y1,q.width,q.height);for(var b=f[0].startAngle+2*Math.PI*a,c=0;c<n.length;c++){var e=0===c?f[c].startAngle:d,d=e+(f[c].endAngle-f[c].startAngle),g=!1;d>b&&(d=b,g=!0);var p=n[c].color?n[c].color:k._colorSet[c%k._colorSet.length];d>e&&sa(h.plotArea.ctx,f[c].center,f[c].radius,p,k.type,e,d,k.fillOpacity,f[c].percentInnerRadius);if(g)break}r();h.dispatchEvent("dataAnimationIterationEnd",{chart:h});1<=a&&h.dispatchEvent("dataAnimationEnd",{chart:h})},function(){h.disableToolTip=!1;h._animator.animate(0,
|
|
545
545
|
h.animatedRender?500:0,function(a){c(a,!1);r();h.dispatchEvent("dataAnimationIterationEnd",{chart:h})});h.dispatchEvent("dataAnimationEnd",{chart:h})});k.radius=z;"doughnut"===k.type&&(k.innerRadius=D)}}};var ta=function(a,g,c,b){"undefined"===typeof c&&(c=1);0>=Math.round(g.y4-g.y1)||(a.save(),a.globalAlpha=c,a.beginPath(),a.moveTo(Math.round(g.x1),Math.round(g.y1)),a.lineTo(Math.round(g.x2),Math.round(g.y2)),a.lineTo(Math.round(g.x3),Math.round(g.y3)),a.lineTo(Math.round(g.x4),Math.round(g.y4)),
|
|
546
|
-
"undefined"!==g.x5&&(a.lineTo(Math.round(g.x5),Math.round(g.y5)),a.lineTo(Math.round(g.x6),Math.round(g.y6))),a.closePath(),a.fillStyle=b?b:g.color,a.fill(),a.globalAplha=1,a.restore())};u.prototype.renderFunnel=function(a){function g(){for(var a=0,b=[],c=0;c<x.length;c++){if("undefined"===typeof x[c].y)return-1;x[c].y="number"===typeof x[c].y?x[c].y:0;a+=Math.abs(x[c].y)}if(0===a)return-1;for(c=b[0]=0;c<x.length;c++)b.push(Math.abs(x[c].y)*F/a);return b}function c(){var a=U,b=T,c=$,
|
|
547
|
-
ca-ea;
|
|
548
|
-
m,k>
|
|
549
|
-
c=b.indexLabelPlacement||t.indexLabelPlacement||"outside";y=b.indexLabelTextAlign||t.indexLabelTextAlign||"left";
|
|
546
|
+
"undefined"!==g.x5&&(a.lineTo(Math.round(g.x5),Math.round(g.y5)),a.lineTo(Math.round(g.x6),Math.round(g.y6))),a.closePath(),a.fillStyle=b?b:g.color,a.fill(),a.globalAplha=1,a.restore())};u.prototype.renderFunnel=function(a){function g(){for(var a=0,b=[],c=0;c<x.length;c++){if("undefined"===typeof x[c].y)return-1;x[c].y="number"===typeof x[c].y?x[c].y:0;a+=Math.abs(x[c].y)}if(0===a)return-1;for(c=b[0]=0;c<x.length;c++)b.push(Math.abs(x[c].y)*F/a);return b}function c(){var a=U,b=T,c=$,e=X,d,f;d=Z;f=
|
|
547
|
+
ca-ea;e=Math.abs((f-d)*(b-a+(e-c))/2);c=X-$;d=f-d;f=c*(f-ca);f=Math.abs(f);f=e+f;for(var e=[],g=0,p=0;p<x.length;p++){if("undefined"===typeof x[p].y)return-1;x[p].y="number"===typeof x[p].y?x[p].y:0;g+=Math.abs(x[p].y)}if(0===g)return-1;for(var l=e[0]=0,k=0,m,r,b=b-a,l=!1,p=0;p<x.length;p++)a=Math.abs(x[p].y)*f/g,l?m=0==Number(c.toFixed(3))?0:a/c:(r=Y*Y*b*b-4*Math.abs(Y)*a,0>r?(r=c,l=(b+r)*(d-k)/2,a-=l,m=d-k,k+=d-k,m+=0==r?0:a/r,k+=a/r,l=!0):(m=(Math.abs(Y)*b-Math.sqrt(r))/2,r=b-2*m/Math.abs(Y),k+=
|
|
548
|
+
m,k>d&&(k-=m,r=c,l=(b+r)*(d-k)/2,a-=l,m=d-k,k+=d-k,m+=a/r,k+=a/r,l=!0),b=r)),e.push(m);return e}function b(){if(t&&x){for(var a,b,c,e,d,g,p,k,m,r,n,h,q,s,w,A,y,K,z=[],B=[],P={percent:null,total:null},D=null,E=0;E<x.length;E++)K=N[E],K="undefined"!==typeof K.x5?(K.y2+K.y4)/2:(K.y2+K.y3)/2,K=f(K).x2+1,z[E]=O-(isNaN(K)?0:K)-W;K=0.5*W;for(var E=0,F=x.length-1;E<x.length||0<=F;E++,F--){b=t.reversed?x[F]:x[E];a=b.color?b.color:t.reversed?t._colorSet[(x.length-1-E)%t._colorSet.length]:t._colorSet[E%t._colorSet.length];
|
|
549
|
+
c=b.indexLabelPlacement||t.indexLabelPlacement||"outside";y=b.indexLabelTextAlign||t.indexLabelTextAlign||"left";e=b.indexLabelBackgroundColor||t.indexLabelBackgroundColor||(v?"transparent":null);d=b.indexLabelBorderColor||t.indexLabelBorderColor||(v?"transparent":null);g=l(b.indexLabelBorderThickness)?t.indexLabelBorderThickness:b.indexLabelBorderThickness;p=l(b.indexLabelPadding)?t.options.indexLabelPadding?t.options.indexLabelPadding:t.indexLabelPadding:b.indexLabelPadding;k=b.indexLabelFontColor||
|
|
550
550
|
t.indexLabelFontColor||"#979797";m=l(b.indexLabelFontSize)?t.indexLabelFontSize:b.indexLabelFontSize;r=b.indexLabelFontStyle||t.indexLabelFontStyle||"normal";n=b.indexLabelFontFamily||t.indexLabelFontFamily||"arial";h=b.indexLabelFontWeight||t.indexLabelFontWeight||"normal";a=b.indexLabelLineColor||t.options.indexLabelLineColor||a;q="number"===typeof b.indexLabelLineThickness?b.indexLabelLineThickness:"number"===typeof t.indexLabelLineThickness?t.indexLabelLineThickness:2;s=b.indexLabelLineDashType||
|
|
551
551
|
t.indexLabelLineDashType||"solid";w="undefined"!==typeof b.indexLabelWrap?b.indexLabelWrap:"undefined"!==typeof t.indexLabelWrap?t.indexLabelWrap:!0;A=t.dataPointIds[E];u._eventManager.objectMap[A]={id:A,objectType:"dataPoint",dataPointIndex:E,dataSeriesIndex:0,funnelSection:N[t.reversed?x.length-1-E:E]};"inside"===t.indexLabelPlacement&&(z[E]=E!==fa?t.reversed?N[E].x2-N[E].x1:N[E].x3-N[E].x4:N[E].x3-N[E].x6,20>z[E]&&(z[E]=E!==fa?t.reversed?N[E].x3-N[E].x4:N[E].x2-N[E].x1:N[E].x2-N[E].x1,z[E]/=2));
|
|
552
552
|
A=b.indexLabelMaxWidth?b.indexLabelMaxWidth:t.options.indexLabelMaxWidth?t.indexLabelMaxWidth:z[E];if(A>z[E]||0>A)A=z[E];B[E]="inside"===t.indexLabelPlacement?w?Math.max(N[E].height,m):1.5*m+("object"===typeof p?(p.top||0)+(p.bottom||0):2*p):!1;P=u.getPercentAndTotal(t,b);if(t.indexLabelFormatter||b.indexLabelFormatter)D={chart:u.options,dataSeries:t,dataPoint:b,total:P.total,percent:P.percent};b=b.indexLabelFormatter?b.indexLabelFormatter(D):b.indexLabel?u.replaceKeywordsWithValue(b.indexLabel,b,
|
|
553
|
-
t,E):t.indexLabelFormatter?t.indexLabelFormatter(D):t.indexLabel?u.replaceKeywordsWithValue(t.indexLabel,b,t,E):b.label?b.label:"";0>=q&&(q=0);1E3>A&&1E3-A<K&&(A+=1E3-A);l(t.options.indexLabelMaxWidth)&&(t.indexLabelMaxWidth=l(t.indexLabelMaxWidth)?A:Math.max(A,t.indexLabelMaxWidth));R.roundRect||Ba(R);c=new ka(R,{fontSize:m,fontFamily:n,fontColor:k,fontStyle:r,fontWeight:h,horizontalAlign:c,textAlign:y,backgroundColor:
|
|
554
|
-
m:1.5*m)+("object"===typeof p?(p.top||0)+(p.bottom||0):2*p):B[E],text:b,padding:p,textBaseline:"middle"});c.measureText();c.height=c.height===2*c.padding?0:c.height;c.width=c.width===2*c.padding?0:c.width;G.push({textBlock:c,id:t.reversed?F:E,isDirty:!1,lineColor:a,lineThickness:q,lineDashType:s,height:c.height<c.maxHeight?c.height:c.maxHeight,width:c.width<c.maxWidth?c.width:c.maxWidth})}}}function e(){var a,b,c,d,f
|
|
555
|
-
p?p:t.indexLabelMaxWidth:p,k=G.length-1;0<=k;k--){g=x[G[k].id];c=G[k];
|
|
556
|
-
G[k].textBlock.x=O-p,c=G[k].textBlock.height<G[k].textBlock.maxHeight?G[k].textBlock.height:G[k].textBlock.maxHeight,
|
|
557
|
-
G[k].height>ua+y&&(G[k].textBlock.y=ua+y-G[k].height))}function d(){var a,b,c,
|
|
558
|
-
S+y&&(G[
|
|
553
|
+
t,E):t.indexLabelFormatter?t.indexLabelFormatter(D):t.indexLabel?u.replaceKeywordsWithValue(t.indexLabel,b,t,E):b.label?b.label:"";0>=q&&(q=0);1E3>A&&1E3-A<K&&(A+=1E3-A);l(t.options.indexLabelMaxWidth)&&(t.indexLabelMaxWidth=l(t.indexLabelMaxWidth)?A:Math.max(A,t.indexLabelMaxWidth));R.roundRect||Ba(R);c=new ka(R,{fontSize:m,fontFamily:n,fontColor:k,fontStyle:r,fontWeight:h,horizontalAlign:c,textAlign:y,backgroundColor:e,borderColor:d,borderThickness:g,maxWidth:A,maxHeight:!1===B[E]?(w?4.28571429*
|
|
554
|
+
m:1.5*m)+("object"===typeof p?(p.top||0)+(p.bottom||0):2*p):B[E],text:b,padding:p,textBaseline:"middle"});c.measureText();c.height=c.height===2*c.padding?0:c.height;c.width=c.width===2*c.padding?0:c.width;G.push({textBlock:c,id:t.reversed?F:E,isDirty:!1,lineColor:a,lineThickness:q,lineDashType:s,height:c.height<c.maxHeight?c.height:c.maxHeight,width:c.width<c.maxWidth?c.width:c.maxWidth})}}}function e(){var a,b,c,e,d,f=[];d=!1;c=0;for(var g,p=O-T-W/2,p=t.options.indexLabelMaxWidth?t.indexLabelMaxWidth>
|
|
555
|
+
p?p:t.indexLabelMaxWidth:p,k=G.length-1;0<=k;k--){g=x[G[k].id];c=G[k];e=c.textBlock;b=(a=q(k)<N.length?G[q(k)]:null)?a.textBlock:null;c=c.height;a&&e.y+c+ga>b.y&&(d=!0);c=g.indexLabelMaxWidth||p;if(c>p||0>c)c=p;f.push(c)}if(d)for(k=G.length-1;0<=k;k--)a=N[k],G[k].textBlock.maxWidth=f[f.length-(k+1)],G[k].textBlock.measureText(),G[k].textBlock.height=G[k].textBlock.height===2*G[k].textBlock.padding?0:G[k].textBlock.height,G[k].textBlock.width=G[k].textBlock.width===2*G[k].textBlock.padding?0:G[k].textBlock.width,
|
|
556
|
+
G[k].textBlock.x=O-p,c=G[k].textBlock.height<G[k].textBlock.maxHeight?G[k].textBlock.height:G[k].textBlock.maxHeight,d=G[k].textBlock.width<G[k].textBlock.maxWidth?G[k].textBlock.width:G[k].textBlock.maxWidth,G[k].height=c,G[k].width=d,c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,G[k].textBlock.y=c-G[k].height/2,t.reversed?(G[k].textBlock.y+G[k].height>S+y&&(G[k].textBlock.y=S+y-G[k].height),G[k].textBlock.y<ua-y&&(G[k].textBlock.y=ua-y)):(G[k].textBlock.y<S-y&&(G[k].textBlock.y=S-y),G[k].textBlock.y+
|
|
557
|
+
G[k].height>ua+y&&(G[k].textBlock.y=ua+y-G[k].height))}function d(){var a,b,c,e;if("inside"!==t.indexLabelPlacement)for(var d=0;d<N.length;d++)0==G[d].textBlock.text.length?G[d].isDirty=!0:(a=N[d],c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,b=t.reversed?"undefined"!==typeof a.x5?c>ya?f(c).x2+1:(a.x2+a.x3)/2+1:(a.x2+a.x3)/2+1:"undefined"!==typeof a.x5?c<ya?f(c).x2+1:(a.x4+a.x3)/2+1:(a.x2+a.x3)/2+1,G[d].textBlock.x=b+W,G[d].textBlock.y=c-G[d].height/2,t.reversed?(G[d].textBlock.y+G[d].height>
|
|
558
|
+
S+y&&(G[d].textBlock.y=S+y-G[d].height),G[d].textBlock.y<ua-y&&(G[d].textBlock.y=ua-y)):(G[d].textBlock.y<S-y&&(G[d].textBlock.y=S-y),G[d].textBlock.y+G[d].height>ua+y&&(G[d].textBlock.y=ua+y-G[d].height)));else for(d=0;d<N.length;d++)0==G[d].textBlock.text.length?G[d].isDirty=!0:(a=N[d],b=a.height,c=G[d].height,e=G[d].width,b>=c?(b=d!=fa?(a.x4+a.x3)/2-e/2:(a.x5+a.x4)/2-e/2,c=d!=fa?(a.y1+a.y3)/2-c/2:(a.y1+a.y4)/2-c/2,G[d].textBlock.x=b,G[d].textBlock.y=c):G[d].isDirty=!0)}function p(){function a(b,
|
|
559
559
|
c){var d;if(0>b||b>=G.length)return 0;var e,f=G[b].textBlock;if(0>c){c*=-1;e=m(b);d=r(e,b);if(d>=c)return f.y-=c,c;if(0==b)return 0<d&&(f.y-=d),d;d+=a(e,-(c-d));0<d&&(f.y-=d);return d}e=q(b);d=r(b,e);if(d>=c)return f.y+=c,c;if(b==N.length-1)return 0<d&&(f.y+=d),d;d+=a(e,c-d);0<d&&(f.y+=d);return d}function b(){var a,d,e,f,g=0,k;f=(ca-Z+2*y)/l;k=l;for(var p,r=1;r<k;r++){e=r*f;for(var h=G.length-1;0<=h;h--)!G[h].isDirty&&(G[h].textBlock.y<e&&G[h].textBlock.y+G[h].height>e)&&(p=q(h),!(p>=G.length-1)&&
|
|
560
560
|
G[h].textBlock.y+G[h].height+ga>G[p].textBlock.y&&(G[h].textBlock.y=G[h].textBlock.y+G[h].height-e>e-G[h].textBlock.y?e+1:e-G[h].height-1))}for(p=N.length-1;0<p;p--)if(!G[p].isDirty){e=m(p);if(0>e&&(e=0,G[e].isDirty))break;if(G[p].textBlock.y<G[e].textBlock.y+G[e].height){d=d||p;f=p;for(k=0;G[f].textBlock.y<G[e].textBlock.y+G[e].height+ga;){a=a||G[f].textBlock.y+G[f].height;k+=G[f].height;k+=ga;f=e;if(0>=f){f=0;k+=G[f].height;break}e=m(f);if(0>e){f=0;k+=G[f].height;break}}if(f!=p){g=G[f].textBlock.y;
|
|
561
561
|
a-=g;a=k-a;g=c(a,d,f);break}}}return g}function c(a,b,d){var e=[],f=0,g=0;for(a=Math.abs(a);d<=b;d++)e.push(N[d]);e.sort(function(a,b){return a.height-b.height});for(d=0;d<e.length;d++)if(b=e[d],f<a)g++,f+=G[b.id].height+ga,G[b.id].textBlock.text="",G[b.id].indexLabelText="",G[b.id].isDirty=!0,G[b.id].textBlock.measureText();else break;return g}for(var d,e,f,g,k,p,l=1,n=0;n<2*l;n++){for(var h=G.length-1;0<=h&&!(0<=m(h)&&m(h),f=G[h],g=f.textBlock,p=(k=q(h)<N.length?G[q(h)]:null)?k.textBlock:null,d=
|
|
@@ -631,273 +631,274 @@ a=new ka(this.ctx,{x:0,y:0,maxWidth:d,backgroundColor:this.labelBackgroundColor,
|
|
|
631
631
|
textBlock:a,effectiveHeight:null,breaksLabelType:void 0}))}if("bottom"===this._position||"top"===this._position)h=this.logarithmic&&!this.equidistantInterval&&2<=this._labels.length?this.lineCoordinates.width*Math.log(Math.min(this._labels[this._labels.length-1].position/this._labels[this._labels.length-2].position,this._labels[1].position/this._labels[0].position))/Math.log(this.range):this.lineCoordinates.width/(this.logarithmic&&this.equidistantInterval?Math.log(this.range)/Math.log(this.logarithmBase):
|
|
632
632
|
Math.abs(this.range))*F[this.intervalType+"Duration"]*this.interval,d="undefined"===typeof this.options.labelMaxWidth?0.5*this.chart.width>>0:this.options.labelMaxWidth,this.chart.panEnabled||(p="undefined"===typeof this.options.labelWrap||this.labelWrap?0.8*this.chart.height>>0:1.5*this.labelFontSize+("object"===typeof this.labelPadding?(this.labelPadding.top||0)+(this.labelPadding.bottom||0):2*this.labelPadding));else if("left"===this._position||"right"===this._position)h=this.logarithmic&&!this.equidistantInterval&&
|
|
633
633
|
2<=this._labels.length?this.lineCoordinates.height*Math.log(Math.min(this._labels[this._labels.length-1].position/this._labels[this._labels.length-2].position,this._labels[1].position/this._labels[0].position))/Math.log(this.range):this.lineCoordinates.height/(this.logarithmic&&this.equidistantInterval?Math.log(this.range)/Math.log(this.logarithmBase):Math.abs(this.range))*F[this.intervalType+"Duration"]*this.interval,this.chart.panEnabled||(d="undefined"===typeof this.options.labelMaxWidth?0.3*this.chart.width>>
|
|
634
|
-
0:this.options.labelMaxWidth),p="undefined"===typeof this.options.labelWrap||this.labelWrap?0.3*this.chart.height>>0:1.5*this.labelFontSize;for(b=0;b<this._labels.length;b++){a=this._labels[b].textBlock
|
|
635
|
-
360)),"bottom"===this._position||"top"===this._position)if(d=Math.floor(0.9*h),q=0,!this.chart.panEnabled&&1<=this._labels.length){this.sessionVariables.labelFontSize=
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
this.
|
|
651
|
-
this.sessionVariables.
|
|
652
|
-
|
|
653
|
-
g=g.measureText();break}e.push(a.height);this.sessionVariables.labelMaxHeight=Math.max.apply(Math,e);b=d*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
this.labelFontSize)
|
|
657
|
-
|
|
658
|
-
this.
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
this.
|
|
662
|
-
this.
|
|
663
|
-
this.sessionVariables.
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
0.8*this.chart.width>>0:0.8*this.chart.height>>0:1.5*d.labelFontSize+("object"===typeof d.labelPadding?(d.labelPadding.top||0)+(d.labelPadding.bottom||0):2*d.labelPadding),l(d.labelBackgroundColor)&&
|
|
668
|
-
d.options.labelMaxWidth:p,maxHeight:y,angle:this.labelAngle,text:d.labelFormatter?d.labelFormatter({chart:this.chart,axis:this,stripLine:d}):d.label,textAlign:d.labelTextAlign,fontSize:d.labelFontSize,
|
|
669
|
-
function(){var a=0,g=0;this._labels=[];this._stripLineLabels=[];var c=0,b=[],e=this.chart.isNavigator?0:5;this.labelEffectiveWidth=l(this.labelEffectiveWidth)?0:this.labelEffectiveWidth;if("left"===
|
|
670
|
-
|
|
671
|
-
"inside"===this.labelPlacement&&(a-=0<b.length?Math.max.apply(null,b):0,a+=Math.max(p,0<b.length?Math.max.apply(null,b):p)),a<=p&&(a=p),this.stripLineLabelEffectiveWidth=
|
|
672
|
-
[]
|
|
673
|
-
|
|
674
|
-
c.height*Math.cos(Math.PI/180*Math.abs(this.labelAngle)),g=Math.max(g,this._stripLineLabels[b].stripLine.tickLength),"inside"===this.labelPlacement&&(a-=0<d.length?Math.max.apply(null,
|
|
675
|
-
this.tickLength))+e};y.setLayout=function(a,g,c,b,e,d){var p,h,s,k,n=a[0]?a[0].chart:g[0].chart,m=n.isNavigator?0:10,q=n._axes;if(a&&0<a.length)for(var f=0;f<a.length;f++)a[f]&&
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
q[f].
|
|
679
|
-
0,$=J=e=0,aa=0,X=0,Y=0,N=p=0;if(c&&0<c.length)for(z=[],f=p=0;f<c.length;f++)z.push(Math.ceil(c[f]?c[f].createLabelsAndCalculateWidth():0)),p+=z[f],$+=c[f]&&!n.isNavigator?c[f].margin:
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
b[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===b[0].tickPlacement?b[0].tickLength:0):0)-(!b.length||"inside"!==b[b.length-1].labelPlacement||b[b.length-1].title||b[b.length-1].stripLineLabelEffectiveWidth||
|
|
684
|
-
h.textBlock.
|
|
685
|
-
(
|
|
686
|
-
0>a[f].labelAngle&&0<H?p+=H:a[f].viewportMaximum===a[f].maximum&&a[f].viewportMinimum===a[f].minimum&&0===a[f].labelAngle&&(0<H&&(p+=H),0<h&&(s-=h)));n.panEnabled?X=l(n.sessionVariables.axisX.height)||n.stockChart?n.sessionVariables.axisX.height=
|
|
687
|
-
1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5);a[f].lineCoordinates.x2=s;a[f].lineCoordinates.width=s-p;a[f].lineCoordinates.y1=h;a[f].lineCoordinates.y2=h;a[f].bounds={x1:p,y1:h,x2:s,
|
|
688
|
-
2);"inside"===a[f].tickPlacement&&(a[f].lineCoordinates.y1+=a[f].tickLength,a[f].lineCoordinates.y2=a[f].lineCoordinates.y1+a[f].lineThickness/2)}W+=x[f]+a[f].margin}$=0===a[0].dataSeries.length;if(!$)for(f=0;f<a[0].dataSeries.length;f++){if(a[0].dataSeries[f].dataPoints){
|
|
689
|
-
$=!0),a[0].lineCoordinates.width=a[0].lineCoordinates.x2-a[0].lineCoordinates.x1)}if(g&&0<g.length)for(f=0;f<g.length;f++)g[f].lineCoordinates.x1=p,g[f].lineCoordinates.x2=s,g[f].lineCoordinates.width=Math.abs(s-p),g[f]._labels&&1<g[f]._labels.length&&(h=g[f]._labels[1],Q="dateTime"===
|
|
690
|
-
180*Math.abs(h.textBlock.angle)),t=Q.textBlock.width*Math.cos(Math.PI/180*Math.abs(Q.textBlock.angle))+(Q.textBlock.height-Q.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(Q.textBlock.angle))),n.panEnabled?Y=l(n.sessionVariables.axisX2.height)||n.stockChart?n.sessionVariables.axisX2.height=
|
|
691
|
-
0:5),k=g[f].lineCoordinates.y1=h+Y+J-V,g[f].lineCoordinates.y2=h,g[f].bounds={x1:p,y1:h+(Y+J-w[f]-V),x2:s,y2:k,width:s-p},g[f].bounds.height=g[f].bounds.y2-g[f].bounds.y1,"inside"===g[f].labelPlacement&&(g[f].lineCoordinates.y1=g[0].bounds.y2-V-(g[f].labelEffectiveHeight||0)-5),"inside"===
|
|
692
|
-
(c[0]?("inside"===c[0].labelPlacement?c[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===c[0].tickPlacement?c[0].tickLength:0):0)),$=Math.max(c[f]._labels&&0<c[f]._labels.length?c[f]._labels[c[f]._labels.length-1].textBlock._lineHeight/2:m,m),h=Math.round(Math.max(d.y1+Y+
|
|
693
|
-
1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),$=0<a.length?0:c[f]._labels&&0<c[f]._labels.length?c[f]._labels[0].textBlock.height/2:m,k=Math.round(d.y2-X+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveHeight+(n.isNavigator?0:2):0)+("inside"===a[0].tickPlacement?
|
|
694
|
-
h)},c[f].bounds={x1:p-(z[f]+U),y1:h,x2:s-U,y2:k,height:k-h},c[f].bounds.width=c[f].bounds.x2-c[f].bounds.x1,"inside"===c[f].labelPlacement&&(c[f].lineCoordinates.x1=Math.round(c[0].bounds.x1+z[0]-U-(c[f].labelEffectiveWidth||0)-5),c[f].lineCoordinates.x2=c[f].lineCoordinates.x1+
|
|
695
|
-
c[f].titleMaxWidth<c[f].lineCoordinates.height?c[f].titleMaxWidth:c[f].lineCoordinates.height),U+=z[f]+c[f].margin);if(b&&0<b.length)for(f=0;f<b.length;f++)b[f]&&(p=s=Math.round((a[0]?a[0].lineCoordinates.x2:g[0].lineCoordinates.x2)-(b[0]?("inside"===b[0].labelPlacement?
|
|
696
|
-
|
|
697
|
-
a[0].tickPlacement?a[0].tickLength:0):0))-(!a.length||"inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),b[f].lineCoordinates={x1:p+T,y1:h,x2:p+T,y2:k,height:Math.abs(k-h)},b[f].bounds={x1:p+
|
|
698
|
-
b[f].
|
|
699
|
-
a[f]._labels&&1<a[f]._labels.length&&(D=(a[f].logarithmic?Math.log(a[f]._labels[1].position/a[f].viewportMinimum)/a[f].conversionParameters.lnLogarithmBase:a[f]._labels[1].position-a[f].viewportMinimum)*Math.abs(a[f].conversionParameters.pixelPerUnit)+a[f].lineCoordinates.x1,
|
|
700
|
-
0)+a[f].lineCoordinates.x1:(0<p?p*Math.abs(a[f].conversionParameters.pixelPerUnit):0)+a[f].lineCoordinates.x1));if(g&&0<g.length)for(f=0;f<g.length;f++)g[f].calculateValueToPixelConversionParameters(),g[f].calculateBreaksSizeInValues(),g[f]._labels&&
|
|
701
|
-
p=g[f]._labels[g[f]._labels.length-("dateTime"===g[f].valueType?2:1)].position,p=g[f].getApparentDifference(g[f].viewportMinimum,p),F=g[f].logarithmic?(1<p?Math.log(p)/g[f].conversionParameters.lnLogarithmBase*Math.abs(g[f].conversionParameters.pixelPerUnit):
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
Math.max(p,x):0===c[f].labelAngle?Math.max(p,x/2):p),0<!g.length&&(s=0<c[f].labelAngle?s-w/2:0===c[f].labelAngle?s-w/2:s)),c[f].lineCoordinates.x1=p,c[f].lineCoordinates.x2=s,c[f].lineCoordinates.width=Math.abs(s-p),
|
|
707
|
-
(
|
|
708
|
-
n.isNavigator?0:5),b[f].chart.width-10)),b[f]&&b[f].labelAutoFit&&!l(z)&&(0<!a.length&&(p=0<b[f].labelAngle?Math.max(p,z):0===b[f].labelAngle?Math.max(p,z/2):p),0<!g.length&&(s-=B/2)),b[f].lineCoordinates.x1=
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
Q.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(
|
|
712
|
-
f;f--)h=Math.round(d.y2)-("inside"!==c[c.length-1].labelPlacement||c[c.length-1].title||c[c.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),k=Math.round(d.y2>c[f].chart.height?c[f].chart.height:d.y2)-("inside"!==c[c.length-1].labelPlacement||
|
|
713
|
-
c[
|
|
714
|
-
Y+=m[f]+c[f].margin;if(b&&0<b.length)for(f=b.length-1;0<=f;f--)b[f]&&(h=Math.round(d.y1)+("inside"!==b[b.length-1].labelPlacement||b[b.length-1].title||b[b.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),k=Math.round(d.y1+(D[f]+b[f].margin+
|
|
715
|
-
|
|
716
|
-
if(a&&0<a.length)for(f=0;f<a.length;f++){$=a[f]._labels&&0<a[f]._labels.length?a[f]._labels[0].textBlock.fontSize/2:0;p=Math.round(d.x1+e);h=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:d.y1<Math.max($,10)?Math.max($,10):d.y1):
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
X-J);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:d.y2-U>n.height-Math.max($,10)?n.height-Math.max($,10):d.y2-U):d.y2>n.height-Math.max($,10)?n.height-Math.max($,10):d.y2;if(c&&0<c.length)for(Q=0;Q<c.length;Q++)c[Q]&&
|
|
721
|
-
|
|
722
|
-
g[f].tickLength,g[f].lineCoordinates.x2=g[f].lineCoordinates.x1+g[f].lineThickness/2);g[f].bounds={x1:p+E,y1:h,x2:p+y[f]+E,y2:k,height:k-h};g[f].bounds.width=g[f].bounds.x2-g[f].bounds.x1;g[f].title&&(g[f]._titleTextBlock.maxWidth=
|
|
723
|
-
|
|
724
|
-
0<
|
|
725
|
-
d.alignVerticalAxes();p.save();"normal"===e&&(p.beginPath(),a&&a.length&&p.rect(2,a[0].bounds.y1,a[0].chart.width-4,a[a.length-1].bounds.y2),g&&g.length&&p.rect(2,g[g.length-1].bounds.y1,
|
|
726
|
-
|
|
727
|
-
h[e].crosshair&&h[e].crosshair.enabled&&(p=!0,d.clearedOverlayedCanvas=h[e].type)}if(p||!p&&d.clearedOverlayedCanvas&&0<=d.clearedOverlayedCanvas.indexOf("axis"))d.resetOverlayedCanvas(),d.renderCrosshairs(null
|
|
728
|
-
this.stripLines[a].endValue),b=this.getApparentDifference(g,c);this.stripLines[a].value=this.convertPixelToValue((this.convertValueToPixel(g)+this.convertValueToPixel(c))/2);this.stripLines[a].thickness=
|
|
729
|
-
[]
|
|
730
|
-
|
|
731
|
-
this.scaleBreaks.
|
|
732
|
-
1:1.2,h,l=this.viewportMaximum,s=this.lineCoordinates.width/Math.log(this.range),k=this._labels.length-1;0<=k;k--){m=this._labels[k];if(m.position<this.viewportMinimum)break;m.position>
|
|
733
|
-
this.
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
2?(q.x<<0)+0.5:q.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,q.y<<0),this.ctx.lineTo(b,q.y+this.tickLength<<0),this.ctx.stroke()),g&&0!==d++%2&&this.labelAutoFit||
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
m.textBlock.y=q.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(m=a._labels[k],!(m.position<
|
|
740
|
-
a.
|
|
741
|
-
|
|
742
|
-
this.
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
a.tickColor;var b=1===a.ctx.lineWidth%2?(q.x<<0)+0.5:q.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,q.y<<0);a.ctx.lineTo(b,q.y+a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},
|
|
746
|
-
this
|
|
747
|
-
(
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.y<<
|
|
751
|
-
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++)m=
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
Math.
|
|
755
|
-
0;k<a._labels.length;k++)if(m=a._labels[k],!(m.position<a.viewportMinimum||m.position>a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),a.tickThickness)){a.ctx.lineWidth=
|
|
756
|
-
|
|
757
|
-
this)
|
|
758
|
-
|
|
759
|
-
this.getPixelCoordinatesOnAxis(this._labels[e+1].position),a.fillRect(b.x1,Math.min(c.y,g.y),Math.abs(b.x1-b.x2),Math.abs(g.y-c.y)),g=!1):g=!0;a.beginPath()};y.prototype.renderStripLinesOfThicknessType=
|
|
760
|
-
|
|
761
|
-
m.tickColor?m.tickColor:m.color,this.ctx.lineWidth=m.tickThickness=l(m.tickThickness)?"pixel"===m._thicknessType?m.thickness:this.thickness:m.tickThickness,l(m.opacity)||"pixel"!==m._thicknessType||
|
|
762
|
-
|
|
763
|
-
0,0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(q,b.y<<0),this.ctx.lineTo(q,b.y-m.tickLength<<0),this.ctx.stroke()),0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y-=m.tickLength+c.textBlock.height-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
this.
|
|
768
|
-
2)
|
|
769
|
-
this.
|
|
770
|
-
c.textBlock.
|
|
771
|
-
|
|
772
|
-
2
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
this.
|
|
779
|
-
a))};y.prototype.renderGrid=function(){if(this.gridThickness&&0<this.gridThickness){var a=this.chart.ctx;a.save();var g,c=this.chart.plotArea;a.lineWidth=this.gridThickness;
|
|
780
|
-
|
|
781
|
-
0,g),a.lineTo(c.x2<<0,g),a.stroke());a.restore()}};y.prototype.renderAxisLine=function(){var a=this.chart.ctx,g=v?this.chart._preRenderCtx:a,c=Math.ceil(this.tickThickness/(this.reversed
|
|
782
|
-
this.lineColor?this.lineColor:"black";g.setLineDash&&g.setLineDash(H(this.lineDashType,this.lineThickness));var h=1===this.lineThickness%2?(this.lineCoordinates.y1<<0)+0.5:this.lineCoordinates.y1<<
|
|
783
|
-
c,h),e=this.scaleBreaks._appliedBreaks[r].endPixel+b;e&&(g.moveTo(e,h),g.lineTo(d,h));g.stroke()}}else if(("left"===this._position||"right"===this._position)&&
|
|
784
|
-
|
|
785
|
-
this.
|
|
786
|
-
return g};y.prototype.convertPixelToValue=function(a){if("undefined"===typeof a)return null;var g=0,c=0,b,g=!0,e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c="number"===typeof a?
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
if(b<e[c].size){a*=Math.pow(e[c].endValue/e[c].startValue,1===e[c].size?1:Math.log(b)/Math.log(e[c].size))/b;break}else a*=e[c].endValue/e[c].startValue/e[c].size;b/=e[c].size}else break
|
|
790
|
-
|
|
791
|
-
e[c].startValue,
|
|
792
|
-
|
|
793
|
-
this.conversionParameters.minimum)
|
|
794
|
-
e[c
|
|
795
|
-
e[c].
|
|
796
|
-
g=!1
|
|
797
|
-
|
|
798
|
-
0;d<e.length&&!(g<e[d].startValue);d++)a>e[d].endValue||(a<=e[d].startValue&&g>=e[d].endValue?c=c/e[d].endValue*e[d].startValue*e[d].size:a>=e[d].startValue&&g>=e[d].endValue?c=c/e[d].endValue*a*Math.pow(e[d].size,Math.log(e[d].endValue/
|
|
799
|
-
a)/Math.log(e[d].endValue/e[d].startValue))
|
|
800
|
-
e[d].size*(g-a)/(e[d].endValue-e[d].startValue)));return c};y.prototype.setViewPortRange=function(a,g){this.sessionVariables.newViewportMinimum=this.viewportMinimum=Math.min(a,g);this.sessionVariables.newViewportMaximum=this.viewportMaximum=
|
|
801
|
-
function(a){a=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];var g={pixelPerUnit:null,minimum:null,reference:null},c=this.lineCoordinates.width,b=this.lineCoordinates.height,c="bottom"===this._position||"top"===this._position?c:b,b=Math.abs(this.range);
|
|
802
|
-
this.
|
|
803
|
-
|
|
804
|
-
a[e].startValue)
|
|
805
|
-
c
|
|
806
|
-
a[e].startValue)/(a[e].endValue-a[e].startValue)));g.minimum=this.viewportMinimum;g.maximum=this.viewportMaximum;g.range=b;if("bottom"===this._position||"top"===this._position)this.logarithmic?(g.lnLogarithmBase=Math.log(this.logarithmBase),
|
|
807
|
-
|
|
808
|
-
a.width,this.maxHeight=a.height):(this.maxWidth=a.height,this.maxHeight=a.width);var a="axisX"===this.type?"xySwapped"===this.chart.plotInfo.axisPlacement?62:70:"xySwapped"===this.chart.plotInfo.axisPlacement?50:40,b=4;"axisX"===this.type&&
|
|
809
|
-
|
|
810
|
-
isNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;!l(this.minimum)&&this.viewportMinimum<this.minimum&&(this.viewportMinimum=this.minimum);!l(this.maximum)&&this.viewportMaximum>this.maximum&&(this.viewportMaximum=this.maximum);if(this.scaleBreaks)for(b=
|
|
811
|
-
|
|
812
|
-
0<this.dataSeries.length)for(e=0;e<this.dataSeries.length;e++)"dateTime"===this.dataSeries[e].xValueType&&(c=!0);e=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin;d=null!==this.viewportMaximum?
|
|
813
|
-
this.viewportMinimum:this.dataInfo.viewPortMin,d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,h=Math.pow(2,50),isFinite(e)||isFinite(d)?isFinite(e)?isFinite(d)||(d=e):e=d:(d="undefined"===
|
|
814
|
-
e,null,!0)),5),0<=d?e=d-b:d=isFinite(e)?e+b:0):(e>=h||d>=h||e<=-h||d<=-h)&&10>d-e?d+=9:(b=Math.min(0.01*Math.abs(this.getApparentDifference(e,d,null,!0)),0.05),0!==d&&(d+=b),0!==e&&(e-=b)),h=Infinity!==this.dataInfo.minDiff?
|
|
815
|
-
null===this.viewportMinimum?e:this.viewportMinimum,isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum,null,!0);if("axisX"===this.type&&c){this.valueType="dateTime";this.intervalType||(b/1<=
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
this.intervalType="
|
|
821
|
-
F.yearDuration),this.intervalType="year"));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=e-h/2;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=d+h/2;g?this.autoValueFormatString="MMM DD YYYY HH:mm":
|
|
822
|
-
"MMM DD YYYY":"hour"===this.intervalType?this.autoValueFormatString="hh:mm TT":"minute"===this.intervalType?this.autoValueFormatString="hh:mm TT":"second"===this.intervalType?this.autoValueFormatString="hh:mm:ss TT":"millisecond"===this.intervalType&&(this.autoValueFormatString=
|
|
823
|
-
(a-1),!0);if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?e-h/2:Math.floor(e/this.interval)*this.interval;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum="axisX"===this.type?d+h/2:
|
|
824
|
-
typeof this.options.interval&&(this.interval=y.getNiceNumber((this.viewportMaximum-this.viewportMinimum)/(a-1),!0)))}if(null===this.minimum||null===this.maximum)if("axisX"===this.type?(e=null!==this.minimum?this.minimum:this.dataInfo.min,d=null!==this.maximum?
|
|
825
|
-
this.minimum:this.dataInfo.min,d=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(e)||isFinite(d)?0===e&&0===d?(d+=9,e=0):0===d-e?(b=Math.min(Math.abs(0.01*Math.abs(d)),5),d+=b,e-=b):e>d?(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,
|
|
826
|
-
isFinite(this.dataInfo.minDiff)?0:Infinity),h=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<d-e?0.5*Math.abs(d-e):1,this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&0<e&&(e=0),this.includeZero&&(null===this.maximum||
|
|
827
|
-
isNaN(this.
|
|
828
|
-
|
|
829
|
-
this.options.maximum&&(this.minimum-=10));l(this.sessionVariables.newViewportMinimum)&&(this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum));l(this.sessionVariables.newViewportMaximum)&&(this.viewportMaximum=Math.min(this.viewportMaximum,
|
|
830
|
-
this.interval)*this.interval;this.valueFormatString||(this.valueFormatString=y.generateValueFormatString(this.range,2))}};y.prototype.calculateLogarithmicAxisParameters=function(){var a=this.chart.layoutManager.getFreeSpace(),g=Math.log(this.logarithmBase),
|
|
831
|
-
50),3),b,e,d,h;h=1;if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=this.minimum;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;if(this.scaleBreaks)for(h=
|
|
832
|
-
|
|
833
|
-
(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,e=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,1===e/b&&(h=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?
|
|
834
|
-
e=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,0>=b&&!isFinite(e)?(e="undefined"===typeof this.options.interval?0:this.options.interval,b=1):0>=b?b=e:isFinite(e)||(e=b),1===b&&1===e?(e*=this.logarithmBase-
|
|
835
|
-
0.01),Math.pow(this.logarithmBase,0.04)),1!==e&&(e*=h),1!==b&&(b/=h)),d=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:e/b>this.logarithmBase?e/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,this.includeZero&&(null===
|
|
836
|
-
this.viewportMinimum
|
|
837
|
-
|
|
838
|
-
1===this.options.viewportMaximum&&(this.viewportMinimum/=this.logarithmBase-1/this.logarithmBase),this.options&&"undefined"===typeof this.options.interval&&(this.interval=y.getNiceExponent(Math.ceil(Math.log(h)/g)/(a-1)),c=y.getNiceNumber((this.viewportMaximum-
|
|
839
|
-
"undefined"===typeof this.options.interval?0.4:this.options.interval),e*=h,b/=h),d=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:e/b>this.logarithmBase?e/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.minimum?
|
|
840
|
-
Math.min(0.01*(b/e),5),1<=e?b=e/h:e=b*h):(h=Math.min(e/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==e&&(e*=h),1!==b&&(b/=h)):(e="undefined"===typeof this.options.interval?0:this.options.interval,b=1),d=Infinity!==this.dataInfo.minDiff?
|
|
841
|
-
1>e&&(e=1)),this.intervalType="number",null===this.minimum&&(this.minimum="axisX"===this.type?b/Math.sqrt(d):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/g/this.interval)),l(null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?
|
|
842
|
-
isNaN(this.sessionVariables.viewportMinimum)?"undefined"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:this.sessionVariables.viewportMinimum))),null===this.maximum&&(this.maximum="axisX"===this.type?e*Math.sqrt(d):
|
|
843
|
-
|
|
844
|
-
this.logarithmBase-1/this.logarithmBase));this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum);this.viewportMaximum=Math.min(this.viewportMaximum,this.maximum);this.viewportMinimum>this.viewportMaximum&&(!this.options.viewportMinimum&&!this.options.minimum||
|
|
845
|
-
Math.pow(this.logarithmBase,2*Math.ceil(this.interval))):this.viewportMaximum=this.maximum=this.options.viewportMinimum||this.options.minimum);b=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(g*this.interval)+0.2)*this.interval);this.range=
|
|
846
|
-
!1;this.intervalStartPosition=g;this.interval=c}else this.options.interval||(c=Math.ceil(this.interval),this.range>this.interval&&(this.interval=c,b=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(g*this.interval)+0.2)*this.interval))),
|
|
847
|
-
if(2<g)for(h=0;h<g-2;h++)this.valueFormatString+="#"}};y.generateValueFormatString=function(a,g){var c="#,##0.",b=g;1>a&&(b+=Math.floor(Math.abs(Math.log(a)/Math.LN10)),isNaN(b)||!isFinite(b))&&(b=g);for(var e=0;e<b;e++)c+="#";return c};y.getNiceExponent=function(a,
|
|
848
|
-
Math.LN10),b=a/Math.pow(10,c),b=g?1.5>b?1:3>b?2:7>b?5:10:1>=b?1:2>=b?2:5>=b?5:10;return-20>c?Number(b*Math.pow(10,c)):Number((b*Math.pow(10,c)).toFixed(20))};y.prototype.getLabelStartPoint=function(){var a=F[this.intervalType+"Duration"]*this.interval,a=
|
|
849
|
-
0<a.getMilliseconds()
|
|
850
|
-
|
|
851
|
-
0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())&&(a.setFullYear(a.getFullYear()+1),a.setMonth(0),a.setDate(1),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0));return a};ra(aa,S);ra(Y,S);Y.prototype.createUserOptions=function(a){if("undefined"!==
|
|
852
|
-
this.options="undefined"===typeof a?{}:a;this.parent.options[this.optionsName][g]=this.options}};Y.prototype.render=function(a){if(0!==this.spacing||0!==this.options.lineThickness&&("undefined"!==typeof this.options.lineThickness||0!==this.parent.lineThickness)){var g=
|
|
853
|
-
e=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.endValue);this.ctx.strokeStyle=this.lineColor;this.ctx.fillStyle=this.color;this.ctx.beginPath();this.ctx.globalAlpha=1;W(this.id);var d,h,l,s,k,n;a=Math.max(this.spacing,
|
|
854
|
-
e.x<<0,"top"===this.scaleBreaks.parent._position?(e=this.chart.plotArea.y1,l=this.chart.plotArea.y2+m/2+0.5<<0):(e=this.chart.plotArea.y2,l=this.chart.plotArea.y1-m/2+0.5<<0,a*=-1),this.bounds={x1:b-m/2,y1:e,x2:h+m/2,y2:l},this.ctx.moveTo(b,
|
|
855
|
-
d*a,k+a,s+d*a,k+2*a,s,k+3*a),k+=3*a,d*=-1;this.ctx.bezierCurveTo(s+d*a,k+a,s+d*a,k+2*a,s,k+3*a);s=h;d*=-1;this.ctx.lineTo(s,k);for(q=0;q<n;q++)this.ctx.bezierCurveTo(s+d*a,k-a,s+d*a,k-2*a,s,k-3*a),k-=3*a,d*=-1}else{if("zigzag"===
|
|
856
|
-
this.scaleBreaks.parent._position)if(e=1===m%2?(e.y<<0)+0.5:e.y<<0,l=1===m%2?(b.y<<0)+0.5:b.y<<0,"left"===this.scaleBreaks.parent._position?(b=this.chart.plotArea.x1,h=this.chart.plotArea.x2+m/2+0.5<<0):(b=this.chart.plotArea.x2,
|
|
857
|
-
this.ctx.lineTo(b,l);else if("wavy"===this.type){s=b;k=e;d=0.5;n=(h-s)/a/3;for(q=0;q<n;q++)this.ctx.bezierCurveTo(s+a,k+d*a,s+2*a,k+d*a,s+3*a,k),s+=3*a,d*=-1;this.ctx.bezierCurveTo(s+a,k+d*a,s+2*a,k+d*a,s+3*a,k);k=l;d*=-1;this.ctx.lineTo(s,
|
|
858
|
-
k),k+=2*d*a,s-=2*a,d*=-1;this.ctx.lineTo(s+a,k+d*a)}0<m&&this.ctx.stroke();this.ctx.closePath();this.ctx.globalAlpha=this.fillOpacity;this.ctx.globalCompositeOperation="destination-over";this.ctx.fill();this.ctx.restore();this.ctx.globalAlpha=
|
|
859
|
-
this.parent.options.stripLines.indexOf(this.options));this.options="undefined"===typeof a?{}:a;this.parent.options.stripLines[g]=this.options}};ia.prototype.render=function(){this.ctx.save();var a=this.parent.getPixelCoordinatesOnAxis(this.value),
|
|
860
|
-
var b=this.ctx.globalAlpha;this.ctx.globalAlpha=c;W(this.id);var e,d,h,l;this.ctx.lineWidth=g;this.ctx.setLineDash&&this.ctx.setLineDash(H(this.lineDashType,g));if("bottom"===this.parent._position||"top"===this.parent._position)a="pixel"===
|
|
861
|
-
|
|
862
|
-
var g=this.chart,c=!1;g.resetOverlayedCanvas();g.clearedOverlayedCanvas=this.parent.type;this.chart.renderCrosshairs(this.parent,!1);var b,e="xySwapped"===g.plotInfo.axisPlacement;"bottom"===this.parent._position?b=e?g.axisY:g.axisX:
|
|
863
|
-
a:null);b=["axisX","axisX2","axisY","axisY2"];for(e=0;e<b.length;e++)for(var d=b[e],h=0;h<g[d].length;h++){var r=g[d][h],s=r._crosshairValue;r.crosshair&&r.crosshair.enabled&&(this.parent===r&&(r.sessionVariables.crosshairShownByPixel
|
|
864
|
-
|
|
865
|
-
function(a,g,c){var b,e,d,h,r=null,s=null,k=null,n="";this.valueFormatString||("dateTime"===this.parent.valueType?this.valueFormatString=this.parent.valueFormatString:(k=0,k="xySwapped"===this.chart.plotInfo.axisPlacement?50<this.parent.range?
|
|
866
|
-
2:10>this.parent.range?1:0),this.valueFormatString=y.generateValueFormatString(this.parent.range,k)));var m=null===this.opacity?1:this.opacity,q=Math.abs("pixel"===this._thicknessType?this.thickness:this.parent.conversionParameters.pixelPerUnit*
|
|
867
|
-
0.3*this.chart.width:this.labelMaxWidth;this.labelMaxHeight=l(this.options.labelWrap)||this.labelWrap?0.3*this.chart.height:1.5*this.labelFontSize+("object"===typeof this.labelPadding?(this.labelPadding.top||0)+(this.labelPadding.bottom||
|
|
868
|
-
text:n,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,padding:this.labelPadding,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle"});
|
|
869
|
-
this.chart.sessionVariables.mouseY:g});else if("left"===this.parent._position||"right"===this.parent._position)u=this.parent.convertPixelToValue({y:g});for(var t=0;t<this.parent.dataSeries.length;t++)(z=this.parent.dataSeries[t].getDataPointAtX(u
|
|
870
|
-
0;t<n.length;t++){if("rangeBar"===n[t].dataSeries.type||"error"===n[t].dataSeries.type){if(n[t].dataPoint.y)for(var D=0;D<n[t].dataPoint.y.length;D++)x=Math.abs(a-this.parent.convertValueToPixel(n[t].dataPoint.y[D])),x<=u&&(u=x,z=t)}else"stackedBar"===
|
|
871
|
-
n[0].dataPoint.x,l(w)&&(w=Math.abs(a-this.parent.convertValueToPixel(100*(n[0].dataSeries.dataPointEOs[n[0].index].cumulativeY/n[0].dataSeries.plotUnit.dataPointYSums[x])))),cumulativeY=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=n[t].dataPoint.x.getTime?
|
|
872
|
-
x<=u&&(u=x,z=t));l(w)||(u=Math.min(u,w))}w=n[z];t=0;if("bottom"===this.parent._position||"top"===this.parent._position){if("rangeBar"===w.dataSeries.type||"error"===w.dataSeries.type){u=Math.abs(a-this.parent.convertValueToPixel(w.dataPoint.y[0]));for(n=
|
|
873
|
-
w.dataPoint.y[t];0!==w.dataPoint.y[t]%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?
|
|
874
|
-
w.dataSeries.type?(u=Math.abs(a-this.parent.convertValueToPixel(n[0].dataPoint.y)),cumulativeY=w.dataSeries.dataPointEOs[w.index].cumulativeY,r=1===f.lineWidth%2?(this.parent.convertValueToPixel(cumulativeY)<<0)+0.5:this.parent.convertValueToPixel(cumulativeY)<<
|
|
875
|
-
1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:cumulativeY}):l(this.options.label)?ha(cumulativeY,this.valueFormatString,this.chart._cultureInfo):this.label):"stackedBar100"===
|
|
876
|
-
r=1===f.lineWidth%2?(this.parent.convertValueToPixel(yPercent)<<0)+0.5:this.parent.convertValueToPixel(yPercent)<<0,this.value=yPercent,0!==yPercent%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,
|
|
877
|
-
ha(yPercent,this.valueFormatString,this.chart._cultureInfo):this.label):(r=1===f.lineWidth%2?(this.parent.convertValueToPixel(w.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(w.dataPoint.y)<<0,this.value=w.dataPoint.y,0!==w.dataPoint.y%
|
|
878
|
-
axis:this.parent.options,crosshair:this.options,value:w.dataPoint.y}):l(this.options.label)?ha(w.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):this.label);b=e=r;d=this.chart.plotArea.y1;h=this.chart.plotArea.y2;
|
|
879
|
-
|
|
880
|
-
this.parent.viewportMaximum;n+=u)if(this.parent.labels[n])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(u=this.parent.convertPixelToValue({y:g}),z=null,t=0;t<this.parent.dataSeries.length;t++)(z=
|
|
881
|
-
this.parent.
|
|
882
|
-
this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataPoint.x}):l(this.options.label)?
|
|
883
|
-
this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}}else if("bottom"===this.parent._position||"top"===this.parent._position){u=
|
|
884
|
-
b){return a.distance-b.distance});w=n[0];b=e=r=1===f.lineWidth%2?(this.parent.convertValueToPixel(w.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(w.dataPoint.x)<<0;d=this.chart.plotArea.y1;h=this.chart.plotArea.y2;
|
|
885
|
-
t=0;t<this.parent.dataSeries.length;t++)(z=this.parent.dataSeries[t].getDataPointAtX(u,!0,!0))&&0<=z.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,
|
|
886
|
-
|
|
887
|
-
this.label;this.value=w.dataPoint.x;k.x=b-k.measureText().width/2;k.x+k.width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.width);k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1);"bottom"===this.parent._position?
|
|
888
|
-
this.
|
|
889
|
-
|
|
890
|
-
x=Math.abs(g-this.parent.convertValueToPixel(
|
|
891
|
-
n[t].dataPoint.x.getTime():n[
|
|
892
|
-
x<=
|
|
893
|
-
x
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
634
|
+
0:this.options.labelMaxWidth),p="undefined"===typeof this.options.labelWrap||this.labelWrap?0.3*this.chart.height>>0:1.5*this.labelFontSize;for(b=0;b<this._labels.length;b++){a=this._labels[b].textBlock;!this.labelAutoFit&&0>=d&&(d="undefined"===typeof this.options.labelMaxWidth?0.5*this.chart.width>>0:this.options.labelMaxWidth);a.maxWidth=d;!this.labelAutoFit&&0>=p&&(p="undefined"===typeof this.options.labelWrap||this.labelWrap?0.8*this.chart.height>>0:1.5*this.labelFontSize+("object"===typeof this.labelPadding?
|
|
635
|
+
(this.labelPadding.top||0)+(this.labelPadding.bottom||0):2*this.labelPadding));a.maxHeight=p;var u=a.measureText();s=u.height}e=[];q=m=0;if(this.labelAutoFit||this.options.labelAutoFit)if(l(this.labelAngle)||(this.labelAngle=(this.labelAngle%360+360)%360,90<this.labelAngle&&270>this.labelAngle?this.labelAngle-=180:270<=this.labelAngle&&360>=this.labelAngle&&(this.labelAngle-=360)),"bottom"===this._position||"top"===this._position)if(d=Math.floor(0.9*h),q=0,!this.chart.panEnabled&&1<=this._labels.length){this.sessionVariables.labelFontSize=
|
|
636
|
+
this.labelFontSize;this.sessionVariables.labelMaxWidth=d;this.sessionVariables.labelMaxHeight=p;this.sessionVariables.labelAngle=this.labelAngle;this.sessionVariables.labelWrap=this.labelWrap;for(c=0;c<this._labels.length;c++)if(!this._labels[c].breaksLabelType){a=this._labels[c].textBlock;for(var A,f=a.text.split(" "),b=0;b<f.length;b++)n=f[b],this.ctx.font=a.fontStyle+" "+a.fontWeight+" "+a.fontSize+"px "+a.fontFamily,n=this.ctx.measureText(n),n.width>q&&(A=c,q=n.width)}c=0;for(c=this.intervalStartPosition<
|
|
637
|
+
this.viewportMinimum?1:0;c<this._labels.length;c++)if(!this._labels[c].breaksLabelType){a=this._labels[c].textBlock;u=a.measureText();for(f=c+1;f<this._labels.length;f++)if(!this._labels[f].breaksLabelType){g=this._labels[f].textBlock;g=g.measureText();break}e.push(a.height);this.sessionVariables.labelMaxHeight=Math.max.apply(Math,e);Math.cos(Math.PI/180*Math.abs(this.labelAngle));Math.sin(Math.PI/180*Math.abs(this.labelAngle));b=d*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(p-a.fontSize/2)*
|
|
638
|
+
Math.cos(Math.PI/180*Math.abs(this.labelAngle));if(l(this.options.labelAngle)&&isNaN(this.options.labelAngle)&&0!==this.options.labelAngle)if(this.sessionVariables.labelMaxHeight=0===this.labelAngle?p:Math.min((b-d*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)),b),n=(k-(s+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(-25)))/Math.sin(Math.PI/180*Math.abs(-25)),!l(this.options.labelWrap))this.labelWrap?l(this.options.labelMaxWidth)?(this.sessionVariables.labelMaxWidth=
|
|
639
|
+
Math.min(Math.max(d,q),n),this.sessionVariables.labelWrap=this.labelWrap,g&&u.width+g.width>>0>2*d&&(this.sessionVariables.labelAngle=-25)):(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>d?-25:this.sessionVariables.labelAngle):l(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxHeight=p,this.sessionVariables.labelMaxWidth=
|
|
640
|
+
d,g&&u.width+g.width>>0>2*d&&(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=n)):(this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>d?-25:this.sessionVariables.labelAngle,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=p,this.sessionVariables.labelWrap=this.labelWrap);else{if(l(this.options.labelWrap))if(!l(this.options.labelMaxWidth))this.options.labelMaxWidth<d?(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,
|
|
641
|
+
this.sessionVariables.labelMaxHeight=b):(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=p);else if(!l(g))if(b=u.width+g.width>>0,f=this.labelFontSize,q<d)b-2*d>m&&(m=b-2*d,b>=2*d&&b<2.2*d?(this.sessionVariables.labelMaxWidth=d,l(this.options.labelFontSize)&&12<f&&(f=Math.floor(12/13*f),a.measureText()),this.sessionVariables.labelFontSize=l(this.options.labelFontSize)?f:this.options.labelFontSize,this.sessionVariables.labelAngle=
|
|
642
|
+
this.labelAngle):b>=2.2*d&&b<2.8*d?(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=n,this.sessionVariables.labelFontSize=f):b>=2.8*d&&b<3.2*d?(this.sessionVariables.labelMaxWidth=Math.max(d,q),this.sessionVariables.labelWrap=!0,l(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=l(this.options.labelFontSize)?f:this.options.labelFontSize,this.sessionVariables.labelAngle=
|
|
643
|
+
this.labelAngle):b>=3.2*d&&b<3.6*d?(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=n,this.sessionVariables.labelFontSize=this.labelFontSize):b>3.6*d&&b<5*d?(l(this.options.labelFontSize)&&12<f&&(f=Math.floor(12/13*f),a.measureText()),this.sessionVariables.labelFontSize=l(this.options.labelFontSize)?f:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=n):
|
|
644
|
+
b>5*d&&(this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=d,this.sessionVariables.labelFontSize=f,this.sessionVariables.labelMaxHeight=p,this.sessionVariables.labelAngle=this.labelAngle));else if(A===c&&(0===A&&q+this._labels[A+1].textBlock.measureText().width-2*d>m||A===this._labels.length-1&&q+this._labels[A-1].textBlock.measureText().width-2*d>m||0<A&&A<this._labels.length-1&&q+this._labels[A+1].textBlock.measureText().width-2*d>m&&q+this._labels[A-1].textBlock.measureText().width-
|
|
645
|
+
2*d>m))m=0===A?q+this._labels[A+1].textBlock.measureText().width-2*d:q+this._labels[A-1].textBlock.measureText().width-2*d,this.sessionVariables.labelFontSize=l(this.options.labelFontSize)?f:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=n;else if(0===m)for(this.sessionVariables.labelFontSize=l(this.options.labelFontSize)?f:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,b=0;b<this._labels.length;b++)a=
|
|
646
|
+
this._labels[b].textBlock,a.maxWidth=this.sessionVariables.labelMaxWidth=Math.min(Math.max(d,q),n),u=a.measureText(),b<this._labels.length-1&&(f=b+1,g=this._labels[f].textBlock,g.maxWidth=this.sessionVariables.labelMaxWidth=Math.min(Math.max(d,q),n),g=g.measureText(),u.width+g.width>>0>2*d&&(this.sessionVariables.labelAngle=-25))}else(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxHeight=0===this.labelAngle?p:Math.min((b-d*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/
|
|
647
|
+
Math.sin(Math.PI/180*Math.abs(this.labelAngle)),b),n=0!=this.labelAngle?(k-(s+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)):d,this.sessionVariables.labelMaxHeight=this.labelWrap?(k-n*Math.sin(Math.PI/180*Math.abs(this.labelAngle)))/Math.cos(Math.PI/180*Math.abs(this.labelAngle)):1.5*this.labelFontSize,l(this.options.labelWrap))?l(this.options.labelWrap)&&(this.labelWrap&&!l(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=
|
|
648
|
+
this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:n,this.sessionVariables.labelMaxHeight=p):(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxWidth=n,this.sessionVariables.labelMaxHeight=Math.max(b,0.9*h),this.sessionVariables.labelWrap=this.labelWrap)):(this.options.labelWrap?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:
|
|
649
|
+
n):(l(this.options.labelMaxWidth),this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:n,this.sessionVariables.labelWrap=this.labelWrap),this.sessionVariables.labelMaxHeight=p)}this.sessionVariables.labelMaxHeight=Math.max(this.sessionVariables.labelMaxHeight,1.5*this.labelFontSize);for(b=0;b<this._labels.length;b++)a=this._labels[b].textBlock,a.maxWidth=this.labelMaxWidth=this.sessionVariables.labelMaxWidth,a.fontSize=this.sessionVariables.labelFontSize,a.angle=
|
|
650
|
+
this.labelAngle=this.sessionVariables.labelAngle,a.wrap=this.labelWrap=this.sessionVariables.labelWrap,a.maxHeight=this.sessionVariables.labelMaxHeight,a.measureText()}else for(c=0;c<this._labels.length;c++)a=this._labels[c].textBlock,a.maxWidth=this.labelMaxWidth=l(this.options.labelMaxWidth)?l(this.sessionVariables.labelMaxWidth)?this.sessionVariables.labelMaxWidth=d:this.sessionVariables.labelMaxWidth:this.options.labelMaxWidth,a.fontSize=this.labelFontSize=l(this.options.labelFontSize)?l(this.sessionVariables.labelFontSize)?
|
|
651
|
+
this.sessionVariables.labelFontSize=this.labelFontSize:this.sessionVariables.labelFontSize:this.options.labelFontSize,a.angle=this.labelAngle=l(this.options.labelAngle)?l(this.sessionVariables.labelAngle)?this.sessionVariables.labelAngle=this.labelAngle:this.sessionVariables.labelAngle:this.labelAngle,a.wrap=this.labelWrap=l(this.options.labelWrap)?l(this.sessionVariables.labelWrap)?this.sessionVariables.labelWrap=this.labelWrap:this.sessionVariables.labelWrap:this.options.labelWrap,a.maxHeight=l(this.sessionVariables.labelMaxHeight)?
|
|
652
|
+
this.sessionVariables.labelMaxHeight=p:this.sessionVariables.labelMaxHeight,a.measureText();else if("left"===this._position||"right"===this._position)if(d=l(this.options.labelMaxWidth)?0.3*this.chart.width>>0:this.options.labelMaxWidth,p="undefined"===typeof this.options.labelWrap||this.labelWrap?0.3*this.chart.height>>0:1.5*this.labelFontSize,!this.chart.panEnabled&&1<=this._labels.length){this.sessionVariables.labelFontSize=this.labelFontSize;this.sessionVariables.labelMaxWidth=d;this.sessionVariables.labelMaxHeight=
|
|
653
|
+
p;this.sessionVariables.labelAngle=l(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle;this.sessionVariables.labelWrap=this.labelWrap;for(c=0;c<this._labels.length;c++)if(!this._labels[c].breaksLabelType){a=this._labels[c].textBlock;u=a.measureText();for(f=c+1;f<this._labels.length;f++)if(!this._labels[f].breaksLabelType){g=this._labels[f].textBlock;g=g.measureText();break}e.push(a.height);this.sessionVariables.labelMaxHeight=Math.max.apply(Math,e);b=d*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+
|
|
654
|
+
(p-a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle));Math.cos(Math.PI/180*Math.abs(this.labelAngle));Math.sin(Math.PI/180*Math.abs(this.labelAngle));l(this.options.labelAngle)&&isNaN(this.options.labelAngle)&&0!==this.options.labelAngle?l(this.options.labelWrap)?l(this.options.labelWrap)&&(l(this.options.labelMaxWidth)?l(g)||(h=u.height+g.height>>0,h-2*p>q&&(q=h-2*p,h>=2*p&&h<2.4*p?(l(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),
|
|
655
|
+
a.measureText()),this.sessionVariables.labelMaxHeight=p,this.sessionVariables.labelFontSize=l(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize):h>=2.4*p&&h<2.8*p?(this.sessionVariables.labelMaxHeight=b,this.sessionVariables.labelFontSize=this.labelFontSize,this.sessionVariables.labelWrap=!0):h>=2.8*p&&h<3.2*p?(this.sessionVariables.labelMaxHeight=p,this.sessionVariables.labelWrap=!0,l(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*
|
|
656
|
+
this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=l(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelAngle=l(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle):h>=3.2*p&&h<3.6*p?(this.sessionVariables.labelMaxHeight=b,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelFontSize=this.labelFontSize):h>3.6*p&&h<10*p?(l(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/
|
|
657
|
+
13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=l(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelMaxWidth=d,this.sessionVariables.labelMaxHeight=p,this.sessionVariables.labelAngle=l(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle):h>10*p&&h<50*p&&(l(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=
|
|
658
|
+
l(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelMaxHeight=p,this.sessionVariables.labelMaxWidth=d,this.sessionVariables.labelAngle=l(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle))):(this.sessionVariables.labelMaxHeight=p,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth)):(this.sessionVariables.labelMaxWidth=this.labelWrap?this.options.labelMaxWidth?
|
|
659
|
+
this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth:this.labelMaxWidth?this.options.labelMaxWidth?this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth:d,this.sessionVariables.labelMaxHeight=p):(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxWidth=0===this.labelAngle?d:Math.min((b-p*Math.sin(Math.PI/180*Math.abs(this.labelAngle)))/Math.cos(Math.PI/180*Math.abs(this.labelAngle)),p),l(this.options.labelWrap))?l(this.options.labelWrap)&&(this.labelWrap&&
|
|
660
|
+
!l(this.options.labelMaxWidth)?(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth,this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxHeight=b):(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:d,this.sessionVariables.labelMaxHeight=0===this.labelAngle?p:b,l(this.options.labelMaxWidth)&&(this.sessionVariables.labelAngle=this.labelAngle))):this.options.labelWrap?
|
|
661
|
+
(this.sessionVariables.labelMaxHeight=0===this.labelAngle?p:b,this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=d):(this.sessionVariables.labelMaxHeight=p,l(this.options.labelMaxWidth),this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth,this.sessionVariables.labelWrap=this.labelWrap)}for(b=0;b<this._labels.length;b++)a=this._labels[b].textBlock,a.maxWidth=this.labelMaxWidth=this.sessionVariables.labelMaxWidth,
|
|
662
|
+
a.fontSize=this.labelFontSize=this.sessionVariables.labelFontSize,a.angle=this.labelAngle=this.sessionVariables.labelAngle,a.wrap=this.labelWrap=this.sessionVariables.labelWrap,a.maxHeight=this.sessionVariables.labelMaxHeight,a.measureText()}else for(l(this.chart.stockChart)||this.chart.isNavigator||(this.sessionVariables.labelMaxHeight=p),c=0;c<this._labels.length;c++)a=this._labels[c].textBlock,a.maxWidth=this.labelMaxWidth=l(this.options.labelMaxWidth)?l(this.sessionVariables.labelMaxWidth)?this.sessionVariables.labelMaxWidth=
|
|
663
|
+
d:this.sessionVariables.labelMaxWidth:this.options.labelMaxWidth,a.fontSize=this.labelFontSize=l(this.options.labelFontSize)?l(this.sessionVariables.labelFontSize)?this.sessionVariables.labelFontSize=this.labelFontSize:this.sessionVariables.labelFontSize:this.options.labelFontSize,a.angle=this.labelAngle=l(this.options.labelAngle)?l(this.sessionVariables.labelAngle)?this.sessionVariables.labelAngle=this.labelAngle:this.sessionVariables.labelAngle:this.labelAngle,a.wrap=this.labelWrap=l(this.options.labelWrap)?
|
|
664
|
+
l(this.sessionVariables.labelWrap)?this.sessionVariables.labelWrap=this.labelWrap:this.sessionVariables.labelWrap:this.options.labelWrap,a.maxHeight=l(this.sessionVariables.labelMaxHeight)?this.sessionVariables.labelMaxHeight=p:this.sessionVariables.labelMaxHeight,a.measureText();for(c=0;c<this.stripLines.length;c++){var d=this.stripLines[c],y;d.labelFontSize="outside"===d.labelPlacement&&l(d.options.labelFontSize)?this.labelFontSize:d.labelFontSize;d.labelFontFamily="outside"===d.labelPlacement&&
|
|
665
|
+
l(d.options.labelFontFamily)?this.labelFontFamily:d.labelFontFamily;d.labelFontWeight="outside"===d.labelPlacement&&l(d.options.labelFontWeight)?this.labelFontWeight:d.labelFontWeight;d.labelFontStyle="outside"===d.labelPlacement&&l(d.options.labelFontStyle)?this.labelFontStyle:d.labelFontStyle;if("outside"===d.labelPlacement){p=this.sessionVariables.labelMaxWidth;if("bottom"===this._position||"top"===this._position)l(d.options.labelWrap)&&!l(this.sessionVariables.stripLineLabelMaxHeight)?y=this.sessionVariables.stripLineLabelMaxHeight:
|
|
666
|
+
this.sessionVariables.stripLineLabelMaxHeight=y=d.labelWrap?0.8*this.chart.height>>0:1.5*d.labelFontSize+("object"===typeof d.labelPadding?(d.labelPadding.top||0)+(d.labelPadding.bottom||0):2*d.labelPadding);if("left"===this._position||"right"===this._position)l(d.options.labelWrap)&&!l(this.sessionVariables.stripLineLabelMaxHeight)?y=this.sessionVariables.stripLineLabelMaxHeight:this.sessionVariables.stripLineLabelMaxHeight=y=d.labelWrap?0.8*this.chart.width>>0:1.5*d.labelFontSize+("object"===typeof d.labelPadding?
|
|
667
|
+
(d.labelPadding.top||0)+(d.labelPadding.bottom||0):2*d.labelPadding);l(d.labelBackgroundColor)&&(d.labelBackgroundColor="#EEEEEE")}else p="bottom"===this._position||"top"===this._position?0.9*this.chart.width>>0:0.9*this.chart.height>>0,y=l(d.options.labelWrap)||d.labelWrap?"bottom"===this._position||"top"===this._position?0.8*this.chart.width>>0:0.8*this.chart.height>>0:1.5*d.labelFontSize+("object"===typeof d.labelPadding?(d.labelPadding.top||0)+(d.labelPadding.bottom||0):2*d.labelPadding),l(d.labelBackgroundColor)&&
|
|
668
|
+
(l(d.startValue)&&0!==d.startValue?d.labelBackgroundColor=v?"transparent":null:d.labelBackgroundColor="#EEEEEE");a=new ka(this.ctx,{x:0,y:0,backgroundColor:d.labelBackgroundColor,borderColor:d.labelBorderColor,borderThickness:d.labelBorderThickness,cornerRadius:d.labelCornerRadius,maxWidth:d.options.labelMaxWidth?d.options.labelMaxWidth:p,maxHeight:y,angle:this.labelAngle,text:d.labelFormatter?d.labelFormatter({chart:this.chart,axis:this,stripLine:d}):d.label,textAlign:d.labelTextAlign,fontSize:d.labelFontSize,
|
|
669
|
+
fontFamily:d.labelFontFamily,fontWeight:d.labelFontWeight,fontColor:d.labelFontColor||d.color,fontStyle:d.labelFontStyle,textBaseline:"middle",padding:d.labelPadding});this._stripLineLabels.push({position:d.value,textBlock:a,effectiveHeight:null,stripLine:d})}};y.prototype.createLabelsAndCalculateWidth=function(){var a=0,g=0;this._labels=[];this._stripLineLabels=[];var c=0,b=[],e=this.chart.isNavigator?0:5;this.labelEffectiveWidth=l(this.labelEffectiveWidth)?0:this.labelEffectiveWidth;if("left"===
|
|
670
|
+
this._position||"right"===this._position){this.createLabels();for(g=0;g<this._labels.length;g++){var d=this._labels[g].textBlock,d=d.measureText(),p=0,p=0===this.labelAngle?d.width:d.width*Math.cos(Math.PI/180*Math.abs(this.labelAngle))+d.height*Math.sin(Math.PI/180*Math.abs(this.labelAngle));a<=p&&(this.labelEffectiveWidth=a=p);this._labels[g].effectiveWidth=p}for(g=0;g<this._stripLineLabels.length;g++)"outside"===this._stripLineLabels[g].stripLine.labelPlacement&&(this._stripLineLabels[g].stripLine.value>=
|
|
671
|
+
this.viewportMinimum&&this._stripLineLabels[g].stripLine.value<=this.viewportMaximum)&&(d=this._stripLineLabels[g].textBlock,d=d.measureText(),p=0===this.labelAngle?d.width:d.width*Math.cos(Math.PI/180*Math.abs(this.labelAngle))+d.height*Math.sin(Math.PI/180*Math.abs(this.labelAngle)),c=Math.max(c,this._stripLineLabels[g].stripLine.tickLength),"inside"===this.labelPlacement&&(a-=0<b.length?Math.max.apply(null,b):0,a+=Math.max(p,0<b.length?Math.max.apply(null,b):p)),a<=p&&(a=p),this.stripLineLabelEffectiveWidth=
|
|
672
|
+
this._stripLineLabels[g].effectiveWidth=p,b.push(p));"inside"===this.labelPlacement&&(a+=e)}return(this.title?this._titleTextBlock.measureText().height+2:0)+a+("inside"===this.tickPlacement?c+this.tickLength:Math.max(c,this.tickLength))+e};y.prototype.createLabelsAndCalculateHeight=function(){var a=0;this._labels=[];this._stripLineLabels=[];var g=0,c,b=0,e=this.chart.isNavigator?0:"bottom"===this._position&&"inside"===this.labelPlacement||"top"===this._position&&"outside"===this.labelPlacement?2:
|
|
673
|
+
5;this.labelEffectiveHeight=l(this.labelEffectiveHeight)?0:this.labelEffectiveHeight;var d=[];if("bottom"===this._position||"top"===this._position){this.createLabels();for(b=0;b<this._labels.length;b++){c=this._labels[b].textBlock;c=c.measureText();var p=0,p=0===this.labelAngle?c.height:c.width*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+c.height*Math.cos(Math.PI/180*Math.abs(this.labelAngle));a<=p&&(this.labelEffectiveHeight=a=p);this._labels[b].effectiveHeight=p}for(b=0;b<this._stripLineLabels.length;b++)"outside"===
|
|
674
|
+
this._stripLineLabels[b].stripLine.labelPlacement&&(this._stripLineLabels[b].stripLine.value>=this.viewportMinimum&&this._stripLineLabels[b].stripLine.value<=this.viewportMaximum)&&(c=this._stripLineLabels[b].textBlock,c=c.measureText(),p=0===this.labelAngle?c.height:c.width*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+c.height*Math.cos(Math.PI/180*Math.abs(this.labelAngle)),g=Math.max(g,this._stripLineLabels[b].stripLine.tickLength),"inside"===this.labelPlacement&&(a-=0<d.length?Math.max.apply(null,
|
|
675
|
+
d):0,a+=Math.max(p,0<d.length?Math.max.apply(null,d):p)),a<=p&&(a=p),this.stripLineLabelEffectiveHeight=this._stripLineLabels[b].effectiveHeight=p,d.push(p));"inside"===this.labelPlacement&&(a+=e)}return(this.title?this._titleTextBlock.measureText().height+2:0)+a+("inside"===this.tickPlacement?g+this.tickLength:Math.max(g,this.tickLength))+e};y.setLayout=function(a,g,c,b,e,d){var p,h,s,k,n=a[0]?a[0].chart:g[0].chart,m=n.isNavigator?0:10,q=n._axes;if(a&&0<a.length)for(var f=0;f<a.length;f++)a[f]&&
|
|
676
|
+
a[f].calculateAxisParameters();if(g&&0<g.length)for(f=0;f<g.length;f++)g[f].calculateAxisParameters();if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].calculateAxisParameters();if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].calculateAxisParameters();for(f=0;f<q.length;f++)if(q[f]&&q[f].scaleBreaks&&q[f].scaleBreaks._appliedBreaks.length)for(var v=q[f].scaleBreaks._appliedBreaks,u=0;u<v.length&&!(v[u].startValue>q[f].viewportMaximum);u++)v[u].endValue<q[f].viewportMinimum||(l(q[f].scaleBreaks.firstBreakIndex)&&
|
|
677
|
+
(q[f].scaleBreaks.firstBreakIndex=u),v[u].startValue>=q[f].viewPortMinimum&&(q[f].scaleBreaks.lastBreakIndex=u));for(var y=u=0,t=0,x=0,w=0,z=0,B=0,D,F,H=h=0,I,M,L,v=I=M=L=!1,f=0;f<q.length;f++)q[f]&&q[f].title&&(q[f]._titleTextBlock=new ka(q[f].ctx,{text:q[f].title,fontSize:q[f].titleFontSize,fontFamily:q[f].titleFontFamily,fontWeight:q[f].titleFontWeight,fontColor:q[f].titleFontColor,fontStyle:q[f].titleFontStyle,borderColor:q[f].titleBorderColor,borderThickness:q[f].titleBorderThickness,backgroundColor:q[f].titleBackgroundColor,
|
|
678
|
+
cornerRadius:q[f].titleCornerRadius,textBaseline:"middle",textAlign:q[f].titleTextAlign,padding:q[f].titlePadding}));for(f=0;f<q.length;f++)if(q[f].title){var J=1.5*q[f].titleFontSize+("object"===typeof q[f].titlePadding?(q[f].titlePadding.top||0)+(q[f].titlePadding.bottom||0):2*q[f].titlePadding);q[f]._titleTextBlock.maxWidth=q[f].titleMaxWidth||d.height;q[f]._titleTextBlock.maxHeight=q[f].titleWrap?0.8*d.width:Math.min(J,0.8*d.width);switch(q[f]._position){case "left":q[f]._titleTextBlock.angle=
|
|
679
|
+
-90;break;case "right":q[f]._titleTextBlock.angle=90;break;default:q[f]._titleTextBlock.maxWidth=q[f].titleMaxWidth||d.width,q[f]._titleTextBlock.maxHeight=q[f].titleWrap?0.8*d.height:Math.min(J,0.8*d.height),q[f]._titleTextBlock.angle=0}}if("normal"===e){for(var x=[],w=[],z=[],B=[],O=[],R=[],S=[],E=[];4>u;){var W=0,V=0,U=0,T=0,$=J=e=0,aa=0,X=0,Y=0,N=p=0;if(c&&0<c.length)for(z=[],f=p=0;f<c.length;f++)z.push(Math.ceil(c[f]?c[f].createLabelsAndCalculateWidth():0)),p+=z[f],$+=c[f]&&!n.isNavigator?c[f].margin:
|
|
680
|
+
0;else z.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateWidth():0));S.push(z);if(b&&0<b.length)for(B=[],f=N=0;f<b.length;f++)B.push(Math.ceil(b[f]?b[f].createLabelsAndCalculateWidth():0)),N+=B[f],aa+=b[f]?b[f].margin:0;else B.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateWidth():0));E.push(B);p=Math.round(d.x1+p+$-(c[0]?("inside"===c[0].labelPlacement?c[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===c[0].tickPlacement?c[0].tickLength:0):0))+(!c.length||"inside"!==c[c.length-1].labelPlacement||
|
|
681
|
+
c[c.length-1].title||c[c.length-1].stripLineLabelEffectiveWidth||n.isNavigator?0:5);s=Math.round(Math.min(d.x2-N-aa+(b[0]?("inside"===b[0].labelPlacement?b[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===b[0].tickPlacement?b[0].tickLength:0):0),n.width-m));if(a&&0<a.length)for(x=[],f=X=0;f<a.length;f++)a[f]&&(a[f].lineCoordinates={}),a[f].lineCoordinates.width=Math.abs(s-p),a[f].title&&(a[f]._titleTextBlock.maxWidth=0<a[f].titleMaxWidth&&a[f].titleMaxWidth<a[f].lineCoordinates.width?a[f].titleMaxWidth:
|
|
682
|
+
a[f].lineCoordinates.width),x.push(Math.ceil(a[f]?a[f].createLabelsAndCalculateHeight():0)),X+=x[f],e+=a[f]&&!n.isNavigator?a[f].margin:0;else x.push(Math.ceil(a[0]?a[0].createLabelsAndCalculateHeight():0));O.push(x);if(g&&0<g.length)for(w=[],f=Y=0;f<g.length;f++)g[f]&&(g[f].lineCoordinates={}),g[f].lineCoordinates.width=Math.abs(s-p),g[f].title&&(g[f]._titleTextBlock.maxWidth=0<g[f].titleMaxWidth&&g[f].titleMaxWidth<g[f].lineCoordinates.width?g[f].titleMaxWidth:g[f].lineCoordinates.width),w.push(Math.ceil(g[f]?
|
|
683
|
+
g[f].createLabelsAndCalculateHeight():0)),Y+=w[f],J+=g[f]&&!n.isNavigator?g[f].margin:0;else w.push(Math.ceil(g[0]?g[0].createLabelsAndCalculateHeight():0));R.push(w);if(a&&0<a.length){for(f=0;f<a.length;f++){if(a[f]){a[f].lineCoordinates.x1=p;s=Math.round(Math.min(d.x2-N-aa+(b[0]?("inside"===b[0].labelPlacement?b[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===b[0].tickPlacement?b[0].tickLength:0):0)-(!b.length||"inside"!==b[b.length-1].labelPlacement||b[b.length-1].title||b[b.length-1].stripLineLabelEffectiveWidth||
|
|
684
|
+
n.isNavigator?0:5),n.width-m));if(a[f]._labels&&1<a[f]._labels.length){var Q=h=0;h=a[f]._labels[1];Q="dateTime"===a[f].valueType?a[f]._labels[a[f]._labels.length-2]:a[f]._labels[a[f]._labels.length-1];y=h.textBlock.width*Math.cos(Math.PI/180*Math.abs(h.textBlock.angle))+(h.textBlock.height-h.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(h.textBlock.angle));t=Q.textBlock.width*Math.cos(Math.PI/180*Math.abs(Q.textBlock.angle))+Q.textBlock.height*Math.sin(Math.PI/180*Math.abs(Q.textBlock.angle))}!a[f]||
|
|
685
|
+
(!a[f].labelAutoFit||l(D)||l(F)||n.isNavigator||n.stockChart)||(h=0,0<a[f].labelAngle?(k=t-(Q.textBlock.height-Q.textBlock._lineHeight/2)*Math.sin(Math.PI/180*Q.textBlock.angle),F+k>s&&(a[f].convertPixelToValue(F)>=a[f].viewportMinimum&&a[f].convertPixelToValue(F)<=a[f].viewportMaximum)&&(h+=F+k-s-N)):0>a[f].labelAngle?D-y<p&&D-y<a[f].viewportMinimum&&(H=p-($+a[f].tickLength+z+D-y+a[f].labelFontSize/2)):0===a[f].labelAngle&&(F+t>s&&(a[f].convertPixelToValue(F)>=a[f].viewportMinimum&&a[f].convertPixelToValue(F)<=
|
|
686
|
+
a[f].viewportMaximum)&&(h=F+t/2-s-N),D-y<p&&D-y<a[f].viewportMinimum&&(H=p-$-a[f].tickLength-z-D+y/2)),a[f].viewportMaximum===a[f].maximum&&a[f].viewportMinimum===a[f].minimum&&0<a[f].labelAngle&&0<h?s-=h:a[f].viewportMaximum===a[f].maximum&&a[f].viewportMinimum===a[f].minimum&&0>a[f].labelAngle&&0<H?p+=H:a[f].viewportMaximum===a[f].maximum&&a[f].viewportMinimum===a[f].minimum&&0===a[f].labelAngle&&(0<H&&(p+=H),0<h&&(s-=h)));n.panEnabled?X=l(n.sessionVariables.axisX.height)||n.stockChart?n.sessionVariables.axisX.height=
|
|
687
|
+
X:n.sessionVariables.axisX.height:n.sessionVariables.axisX.height=X;h=Math.round(d.y2-X-e+W)-("inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5);k=Math.round(d.y2)-("inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5);a[f].lineCoordinates.x2=s;a[f].lineCoordinates.width=s-p;a[f].lineCoordinates.y1=h;a[f].lineCoordinates.y2=h;a[f].bounds={x1:p,y1:h,x2:s,
|
|
688
|
+
y2:k-(X+e-x[f]-W),width:s-p};a[f].bounds.height=a[f].bounds.y2-a[f].bounds.y1;"inside"===a[f].labelPlacement&&(a[f].lineCoordinates.y1=a[0].bounds.y1+W+(a[f].labelEffectiveHeight||0)+(n.isNavigator?0:2),a[f].lineCoordinates.y2=a[f].lineCoordinates.y1+a[f].lineThickness/2);"inside"===a[f].tickPlacement&&(a[f].lineCoordinates.y1+=a[f].tickLength,a[f].lineCoordinates.y2=a[f].lineCoordinates.y1+a[f].lineThickness/2)}W+=x[f]+a[f].margin}$=0===a[0].dataSeries.length;if(!$)for(f=0;f<a[0].dataSeries.length;f++){if(a[0].dataSeries[f].dataPoints){$=
|
|
689
|
+
!1;break}$=!0}if($)for($=!1,f=1;f<a.length;f++)0!==a[f].dataSeries.length&&($?a[f].lineCoordinates.x2>a[0].lineCoordinates.x2&&(a[0].lineCoordinates.x2=a[f].lineCoordinates.x2):(a[0].lineCoordinates.x2=a[f].lineCoordinates.x2,$=!0),a[0].lineCoordinates.width=a[0].lineCoordinates.x2-a[0].lineCoordinates.x1)}if(g&&0<g.length)for(f=0;f<g.length;f++)g[f].lineCoordinates.x1=p,g[f].lineCoordinates.x2=s,g[f].lineCoordinates.width=Math.abs(s-p),g[f]._labels&&1<g[f]._labels.length&&(h=g[f]._labels[1],Q="dateTime"===
|
|
690
|
+
g[f].valueType?g[f]._labels[g[f]._labels.length-2]:g[f]._labels[g[f]._labels.length-1],y=h.textBlock.width*Math.cos(Math.PI/180*Math.abs(h.textBlock.angle))+(h.textBlock.height-Q.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(h.textBlock.angle)),t=Q.textBlock.width*Math.cos(Math.PI/180*Math.abs(Q.textBlock.angle))+(Q.textBlock.height-Q.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(Q.textBlock.angle))),n.panEnabled?Y=l(n.sessionVariables.axisX2.height)||n.stockChart?n.sessionVariables.axisX2.height=
|
|
691
|
+
Y:n.sessionVariables.axisX2.height:n.sessionVariables.axisX2.height=Y,h=Math.round(d.y1)+("inside"!==g[g.length-1].labelPlacement||g[g.length-1].title||g[g.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),k=g[f].lineCoordinates.y1=h+Y+J-V,g[f].lineCoordinates.y2=h,g[f].bounds={x1:p,y1:h+(Y+J-w[f]-V),x2:s,y2:k,width:s-p},g[f].bounds.height=g[f].bounds.y2-g[f].bounds.y1,"inside"===g[f].labelPlacement&&(g[f].lineCoordinates.y1=g[0].bounds.y2-V-(g[f].labelEffectiveHeight||0)-5),"inside"===
|
|
692
|
+
g[f].tickPlacement&&(g[f].lineCoordinates.y1-=g[f].tickLength),V+=w[f]+g[f].margin;if(c&&0<c.length)for(f=0;f<c.length;f++)$=n.isNavigator?0:10,c[f]&&(p=s=Math.round((a[0]?a[0].lineCoordinates.x1:g[0].lineCoordinates.x1)+(c[0]?("inside"===c[0].labelPlacement?c[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===c[0].tickPlacement?c[0].tickLength:0):0)),$=Math.max(c[f]._labels&&0<c[f]._labels.length?c[f]._labels[c[f]._labels.length-1].textBlock._lineHeight/2:m,m),h=Math.round(Math.max(d.y1+Y+
|
|
693
|
+
J-(g[0]?("inside"===g[0].labelPlacement?g[0].labelEffectiveHeight+5:0)+("inside"===g[0].tickPlacement?g[0].tickLength:0):0),0<g.length?0:$))+(!g.length||"inside"!==g[g.length-1].labelPlacement||g[g.length-1].title||g[g.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),$=0<a.length?0:c[f]._labels&&0<c[f]._labels.length?c[f]._labels[0].textBlock.height/2:m,k=Math.round(d.y2-X+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveHeight+(n.isNavigator?0:2):0)+("inside"===a[0].tickPlacement?
|
|
694
|
+
a[0].tickLength:0):0)-e-$)-(!a.length||"inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),c[f].lineCoordinates={x1:p-U,y1:h,x2:s-U,y2:k,height:Math.abs(k-h)},c[f].bounds={x1:p-(z[f]+U),y1:h,x2:s-U,y2:k,height:k-h},c[f].bounds.width=c[f].bounds.x2-c[f].bounds.x1,"inside"===c[f].labelPlacement&&(c[f].lineCoordinates.x1=Math.round(c[0].bounds.x1+z[0]-U-(c[f].labelEffectiveWidth||0)-5),c[f].lineCoordinates.x2=c[f].lineCoordinates.x1+
|
|
695
|
+
c[f].lineThickness/2),"inside"===c[f].tickPlacement&&(c[f].lineCoordinates.x1-=c[f].tickLength,c[f].lineCoordinates.x2=c[f].lineCoordinates.x1+c[f].lineThickness/2),c[f].title&&(c[f]._titleTextBlock.maxWidth=0<c[f].titleMaxWidth&&c[f].titleMaxWidth<c[f].lineCoordinates.height?c[f].titleMaxWidth:c[f].lineCoordinates.height),U+=z[f]+c[f].margin);if(b&&0<b.length)for(f=0;f<b.length;f++)b[f]&&(p=s=Math.round((a[0]?a[0].lineCoordinates.x2:g[0].lineCoordinates.x2)-(b[0]?("inside"===b[0].labelPlacement?
|
|
696
|
+
b[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===b[0].tickPlacement?b[0].tickLength:0):0)),$=Math.max(b[f]._labels&&0<b[f]._labels.length?b[f]._labels[b[f]._labels.length-1].textBlock.height/2:0,m),h=Math.round(Math.max(d.y1+Y+J-(g[0]?("inside"===g[0].labelPlacement?g[0].labelEffectiveHeight+(n.isNavigator?0:5):0)+("inside"===g[0].tickPlacement?g[0].tickLength:0):0)+(!g.length||"inside"!==g[g.length-1].labelPlacement||g[g.length-1].title||g[g.length-1].stripLineLabelEffectiveHeight||n.isNavigator?
|
|
697
|
+
0:5),0<g.length?0:$)),$=0<a.length?0:b[f]._labels&&0<b[f]._labels.length?b[f]._labels[0].textBlock.height/2:0,k=Math.round(d.y2-(X+e+$)+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveHeight+(n.isNavigator?0:2):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0))-(!a.length||"inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),b[f].lineCoordinates={x1:p+T,y1:h,x2:p+T,y2:k,height:Math.abs(k-h)},b[f].bounds={x1:p+
|
|
698
|
+
T,y1:h,x2:s+B[f]+T,y2:k,height:k-h},b[f].bounds.width=b[f].bounds.x2-b[f].bounds.x1,"inside"===b[f].labelPlacement&&(b[f].lineCoordinates.x1=Math.round(b[0].bounds.x1+T+(b[f].labelEffectiveWidth||0)+(n.isNavigator?0:5)),b[f].lineCoordinates.x2=b[f].lineCoordinates.x1+b[f].lineThickness/2),"inside"===b[f].tickPlacement&&(b[f].lineCoordinates.x1+=b[f].tickLength,b[f].lineCoordinates.x2=b[f].lineCoordinates.x1+b[f].lineThickness/2),b[f].title&&(b[f]._titleTextBlock.maxWidth=0<b[f].titleMaxWidth&&b[f].titleMaxWidth<
|
|
699
|
+
b[f].lineCoordinates.height?b[f].titleMaxWidth:b[f].lineCoordinates.height),T+=B[f]+b[f].margin);if(a&&0<a.length)for(f=0;f<a.length;f++)a[f]&&(a[f].calculateValueToPixelConversionParameters(),a[f].calculateBreaksSizeInValues(),a[f]._labels&&1<a[f]._labels.length&&(D=(a[f].logarithmic?Math.log(a[f]._labels[1].position/a[f].viewportMinimum)/a[f].conversionParameters.lnLogarithmBase:a[f]._labels[1].position-a[f].viewportMinimum)*Math.abs(a[f].conversionParameters.pixelPerUnit)+a[f].lineCoordinates.x1,
|
|
700
|
+
p=a[f]._labels[a[f]._labels.length-("dateTime"===a[f].valueType?2:1)].position,p=a[f].getApparentDifference(a[f].viewportMinimum,p),F=a[f].logarithmic?(1<p?Math.log(p)/a[f].conversionParameters.lnLogarithmBase*Math.abs(a[f].conversionParameters.pixelPerUnit):0)+a[f].lineCoordinates.x1:(0<p?p*Math.abs(a[f].conversionParameters.pixelPerUnit):0)+a[f].lineCoordinates.x1));if(g&&0<g.length)for(f=0;f<g.length;f++)g[f].calculateValueToPixelConversionParameters(),g[f].calculateBreaksSizeInValues(),g[f]._labels&&
|
|
701
|
+
1<g[f]._labels.length&&(D=(g[f].logarithmic?Math.log(g[f]._labels[1].position/g[f].viewportMinimum)/g[f].conversionParameters.lnLogarithmBase:g[f]._labels[1].position-g[f].viewportMinimum)*Math.abs(g[f].conversionParameters.pixelPerUnit)+g[f].lineCoordinates.x1,p=g[f]._labels[g[f]._labels.length-("dateTime"===g[f].valueType?2:1)].position,p=g[f].getApparentDifference(g[f].viewportMinimum,p),F=g[f].logarithmic?(1<p?Math.log(p)/g[f].conversionParameters.lnLogarithmBase*Math.abs(g[f].conversionParameters.pixelPerUnit):
|
|
702
|
+
0)+g[f].lineCoordinates.x1:(0<p?p*Math.abs(g[f].conversionParameters.pixelPerUnit):0)+g[f].lineCoordinates.x1);for(f=0;f<q.length;f++)"axisY"===q[f].type&&(q[f].calculateValueToPixelConversionParameters(),q[f].calculateBreaksSizeInValues());if(0<u){if(a&&0<a.length)for(f=0;f<a.length;f++)v=O[u-1][f]===O[u][f]?!0:!1;else v=!0;if(g&&0<g.length)for(f=0;f<g.length;f++)I=R[u-1][f]===R[u][f]?!0:!1;else I=!0;if(c&&0<c.length)for(f=0;f<c.length;f++)M=S[u-1][f]===S[u][f]?!0:!1;else M=!0;if(b&&0<b.length)for(f=
|
|
703
|
+
0;f<b.length;f++)L=E[u-1][f]===E[u][f]?!0:!1;else L=!0}if(v&&I&&M&&L)break;u++}if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].calculateStripLinesThicknessInValues(),a[f].calculateBreaksInPixels();if(g&&0<g.length)for(f=0;f<g.length;f++)g[f].calculateStripLinesThicknessInValues(),g[f].calculateBreaksInPixels();if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].calculateStripLinesThicknessInValues(),c[f].calculateBreaksInPixels();if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].calculateStripLinesThicknessInValues(),
|
|
704
|
+
b[f].calculateBreaksInPixels()}else{m=[];D=[];H=[];y=[];t=[];F=[];O=[];for(R=[];4>u;){X=T=U=aa=$=J=e=E=S=V=Y=0;if(a&&0<a.length)for(H=[],f=T=0;f<a.length;f++)H.push(Math.ceil(a[f]?a[f].createLabelsAndCalculateWidth():0)),T+=H[f],e+=a[f]&&!n.isNavigator?a[f].margin:0;else H.push(Math.ceil(a[0]?a[0].createLabelsAndCalculateWidth():0));O.push(H);if(g&&0<g.length)for(y=[],f=X=0;f<g.length;f++)y.push(Math.ceil(g[f]?g[f].createLabelsAndCalculateWidth():0)),X+=y[f],J+=g[f]?g[f].margin:0;else y.push(Math.ceil(g[0]?
|
|
705
|
+
g[0].createLabelsAndCalculateWidth():0));R.push(y);if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].lineCoordinates={},p=Math.round(d.x1+T+e-(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0))+(!a.length||"inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveWidth||n.isNavigator?0:5),s=Math.round(Math.min(d.x2-X-J+(g[0]?("inside"===g[0].labelPlacement?g[0].labelEffectiveWidth+
|
|
706
|
+
(n.isNavigator?0:5):0)+("inside"===g[0].tickPlacement?g[0].tickLength:0):0)-(!g.length||"inside"!==g[g.length-1].labelPlacement||g[g.length-1].title||g[g.length-1].stripLineLabelEffectiveWidth||n.isNavigator?0:5),n.width-10)),c[f].labelAutoFit&&!l(x)&&(0<!a.length&&(p=0>c[f].labelAngle?Math.max(p,x):0===c[f].labelAngle?Math.max(p,x/2):p),0<!g.length&&(s=0<c[f].labelAngle?s-w/2:0===c[f].labelAngle?s-w/2:s)),c[f].lineCoordinates.x1=p,c[f].lineCoordinates.x2=s,c[f].lineCoordinates.width=Math.abs(s-p),
|
|
707
|
+
c[f].title&&(c[f]._titleTextBlock.maxWidth=0<c[f].titleMaxWidth&&c[f].titleMaxWidth<c[f].lineCoordinates.width?c[f].titleMaxWidth:c[f].lineCoordinates.width);if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].lineCoordinates={},p=Math.round(d.x1+T+e-(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0))+(!a.length||"inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveWidth||
|
|
708
|
+
n.isNavigator?0:5),s=Math.round(Math.min(d.x2-X-J+(g[0]?("inside"===g[0].labelPlacement?g[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===g[0].tickPlacement?g[0].tickLength:0):0)-(!g.length||"inside"!==g[g.length-1].labelPlacement||g[g.length-1].title||g[g.length-1].stripLineLabelEffectiveWidth||n.isNavigator?0:5),b[f].chart.width-10)),b[f]&&b[f].labelAutoFit&&!l(z)&&(0<!a.length&&(p=0<b[f].labelAngle?Math.max(p,z):0===b[f].labelAngle?Math.max(p,z/2):p),0<!g.length&&(s-=B/2)),b[f].lineCoordinates.x1=
|
|
709
|
+
p,b[f].lineCoordinates.x2=s,b[f].lineCoordinates.width=Math.abs(s-p),b[f].title&&(b[f]._titleTextBlock.maxWidth=0<b[f].titleMaxWidth&&b[f].titleMaxWidth<b[f].lineCoordinates.width?b[f].titleMaxWidth:b[f].lineCoordinates.width);if(c&&0<c.length)for(m=[],f=U=0;f<c.length;f++)m.push(Math.ceil(c[f]?c[f].createLabelsAndCalculateHeight():0)),U+=m[f]+c[f].margin,$+=c[f].margin;else m.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateHeight():0));t.push(m);if(b&&0<b.length)for(D=[],f=0;f<b.length;f++)D.push(Math.ceil(b[f]?
|
|
710
|
+
b[f].createLabelsAndCalculateHeight():0)),aa+=b[f].margin;else D.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateHeight():0));F.push(D);if(c&&0<c.length)for(f=0;f<c.length;f++)0<c[f]._labels.length&&(h=c[f]._labels[0],Q=c[f]._labels[c[f]._labels.length-1],x=h.textBlock.width*Math.cos(Math.PI/180*Math.abs(h.textBlock.angle))+(h.textBlock.height-Q.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(h.textBlock.angle)),w=Q.textBlock.width*Math.cos(Math.PI/180*Math.abs(Q.textBlock.angle))+(Q.textBlock.height-
|
|
711
|
+
Q.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(Q.textBlock.angle)));if(b&&0<b.length)for(f=0;f<b.length;f++)b[f]&&0<b[f]._labels.length&&(h=b[f]._labels[0],Q=b[f]._labels[b[f]._labels.length-1],z=h.textBlock.width*Math.cos(Math.PI/180*Math.abs(h.textBlock.angle))+(h.textBlock.height-Q.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(h.textBlock.angle)),B=Q.textBlock.width*Math.cos(Math.PI/180*Math.abs(Q.textBlock.angle))+(Q.textBlock.height-Q.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(Q.textBlock.angle)));
|
|
712
|
+
if(n.panEnabled)for(f=0;f<c.length;f++)m[f]=l(n.sessionVariables.axisY[f].height)?n.sessionVariables.axisY[f].height=m[f]:n.sessionVariables.axisY[f].height;else for(f=0;f<c.length;f++)n.sessionVariables.axisY[f].height=m[f];if(c&&0<c.length)for(f=c.length-1;0<=f;f--)h=Math.round(d.y2)-("inside"!==c[c.length-1].labelPlacement||c[c.length-1].title||c[c.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),k=Math.round(d.y2>c[f].chart.height?c[f].chart.height:d.y2)-("inside"!==c[c.length-1].labelPlacement||
|
|
713
|
+
c[c.length-1].title||c[c.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),c[f].lineCoordinates.y1=h-(m[f]+c[f].margin+Y),c[f].lineCoordinates.y2=h-(m[f]+c[f].margin+Y),"inside"===c[f].labelPlacement&&(c[f].lineCoordinates.y1=c[f].lineCoordinates.y1+c[f].labelEffectiveHeight+(n.isNavigator?0:2),c[f].lineCoordinates.y2=c[f].lineCoordinates.y1+c[f].lineThickness/2),"inside"===c[f].tickPlacement&&(c[f].lineCoordinates.y1+=c[f].tickLength,c[f].lineCoordinates.y2=c[f].lineCoordinates.y1+c[f].lineThickness/
|
|
714
|
+
2),c[f].bounds={x1:p,y1:h-(m[f]+Y+c[f].margin),x2:s,y2:k-(Y+c[f].margin),width:s-p,height:m[f]},c[f].title&&(c[f]._titleTextBlock.maxWidth=0<c[f].titleMaxWidth&&c[f].titleMaxWidth<c[f].lineCoordinates.width?c[f].titleMaxWidth:c[f].lineCoordinates.width),Y+=m[f]+c[f].margin;if(b&&0<b.length)for(f=b.length-1;0<=f;f--)b[f]&&(h=Math.round(d.y1)+("inside"!==b[b.length-1].labelPlacement||b[b.length-1].title||b[b.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),k=Math.round(d.y1+(D[f]+b[f].margin+
|
|
715
|
+
V))+("inside"!==b[b.length-1].labelPlacement||b[b.length-1].title||b[b.length-1].stripLineLabelEffectiveHeight||n.isNavigator?0:5),b[f].lineCoordinates.y1=k,b[f].lineCoordinates.y2=k,"inside"===b[f].labelPlacement&&(b[f].lineCoordinates.y1=k-b[f].labelEffectiveHeight-5,b[f].lineCoordinates.y2=b[f].lineCoordinates.y1-b[f].lineThickness/2),"inside"===b[f].tickPlacement&&(b[f].lineCoordinates.y1-=b[f].tickLength,b[f].lineCoordinates.y2=b[f].lineCoordinates.y1-b[f].lineThickness/2),b[f].bounds={x1:p,
|
|
716
|
+
y1:h+(b[f].margin+V),x2:s,y2:k,width:s-p},b[f].bounds.height=b[f].bounds.y2-b[f].bounds.y1,b[f].title&&(b[f]._titleTextBlock.maxWidth=0<b[f].titleMaxWidth&&b[f].titleMaxWidth<b[f].lineCoordinates.width?b[f].titleMaxWidth:b[f].lineCoordinates.width),V+=D[f]+b[f].margin);if(a&&0<a.length)for(f=0;f<a.length;f++){$=a[f]._labels&&0<a[f]._labels.length?a[f]._labels[0].textBlock.fontSize/2:0;p=Math.round(d.x1+e);h=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:d.y1<Math.max($,10)?Math.max($,10):d.y1):
|
|
717
|
+
d.y1<Math.max($,10)?Math.max($,10):d.y1;s=Math.round(d.x1+T+e);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:d.y2-U>n.height-Math.max($,10)?n.height-Math.max($,10):d.y2-U):d.y2>n.height-Math.max($,10)?n.height-Math.max($,10):d.y2;if(c&&0<c.length)for(Q=0;Q<c.length;Q++)c[Q]&&c[Q].labelAutoFit&&(s=c[Q].lineCoordinates.x1+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0),p=0>c[Q].labelAngle||0===c[Q].labelAngle?
|
|
718
|
+
s-T:p);if(b&&0<b.length)for(Q=0;Q<b.length;Q++)b[Q]&&b[Q].labelAutoFit&&(s=b[Q].lineCoordinates.x1+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0),p=s-T);a[f].lineCoordinates={x1:s-S,y1:h,x2:s-S,y2:k,height:Math.abs(k-h)};"inside"===a[f].labelPlacement&&(a[f].lineCoordinates.x1=a[f].lineCoordinates.x1-a[f].labelEffectiveWidth-5,a[f].lineCoordinates.x2=a[f].lineCoordinates.x1+a[f].lineThickness/2);"inside"===
|
|
719
|
+
a[f].tickPlacement&&(a[f].lineCoordinates.x1-=a[f].tickLength,a[f].lineCoordinates.x2=a[f].lineCoordinates.x1+a[f].lineThickness/2);a[f].bounds={x1:s-(H[f]+S),y1:h,x2:s-S,y2:k,height:k-h};a[f].bounds.width=a[f].bounds.x2-a[f].bounds.x1;a[f].title&&(a[f]._titleTextBlock.maxWidth=0<a[f].titleMaxWidth&&a[f].titleMaxWidth<a[f].lineCoordinates.height?a[f].titleMaxWidth:a[f].lineCoordinates.height);a[f].calculateValueToPixelConversionParameters();a[f].calculateBreaksSizeInValues();S+=H[f]+a[f].margin}if(g&&
|
|
720
|
+
0<g.length)for(f=0;f<g.length;f++){$=g[f]._labels&&0<g[f]._labels.length?g[f]._labels[0].textBlock.fontSize/2:0;s=Math.round(d.x1-J);h=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:d.y1<Math.max($,10)?Math.max($,10):d.y1):d.y1<Math.max($,10)?Math.max($,10):d.y1;p=Math.round(d.x2-X-J);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:d.y2-U>n.height-Math.max($,10)?n.height-Math.max($,10):d.y2-U):d.y2>n.height-Math.max($,10)?n.height-Math.max($,10):d.y2;if(c&&0<c.length)for(Q=0;Q<c.length;Q++)c[Q]&&
|
|
721
|
+
c[Q].labelAutoFit&&(p=c[Q].lineCoordinates.x2-(g[0]?("inside"===g[0].labelPlacement?g[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===g[0].tickPlacement?g[0].tickLength:0):0),s=0>c[Q].labelAngle||0===c[Q].labelAngle?p+X:p);if(b&&0<b.length)for(Q=0;Q<b.length;Q++)b[Q]&&b[Q].labelAutoFit&&(p=b[Q].lineCoordinates.x2-(g[0]?("inside"===g[0].labelPlacement?g[0].labelEffectiveWidth+(n.isNavigator?0:5):0)+("inside"===g[0].tickPlacement?g[0].tickLength:0):0),s=p+X);g[f].lineCoordinates={x1:p+E,y1:h,
|
|
722
|
+
x2:p+E,y2:k,height:Math.abs(k-h)};"inside"===g[f].labelPlacement&&(g[f].lineCoordinates.x1=g[f].lineCoordinates.x1+g[f].labelEffectiveWidth+(n.isNavigator?0:5),g[f].lineCoordinates.x2=g[f].lineCoordinates.x1+g[f].lineThickness/2);"inside"===g[f].tickPlacement&&(g[f].lineCoordinates.x1+=g[f].tickLength,g[f].lineCoordinates.x2=g[f].lineCoordinates.x1+g[f].lineThickness/2);g[f].bounds={x1:p+E,y1:h,x2:p+y[f]+E,y2:k,height:k-h};g[f].bounds.width=g[f].bounds.x2-g[f].bounds.x1;g[f].title&&(g[f]._titleTextBlock.maxWidth=
|
|
723
|
+
0<g[f].titleMaxWidth&&g[f].titleMaxWidth<g[f].lineCoordinates.height?g[f].titleMaxWidth:g[f].lineCoordinates.height);g[f].calculateValueToPixelConversionParameters();g[f].calculateBreaksSizeInValues();E+=y[f]+g[f].margin}for(f=0;f<q.length;f++)"axisY"===q[f].type&&(q[f].calculateValueToPixelConversionParameters(),q[f].calculateBreaksSizeInValues());if(0<u){if(a&&0<a.length)for(f=0;f<a.length;f++)v=O[u-1][f]===O[u][f]?!0:!1;else v=!0;if(g&&0<g.length)for(f=0;f<g.length;f++)I=R[u-1][f]===R[u][f]?!0:
|
|
724
|
+
!1;else I=!0;if(c&&0<c.length)for(f=0;f<c.length;f++)M=t[u-1][f]===t[u][f]?!0:!1;else M=!0;if(b&&0<b.length)for(f=0;f<b.length;f++)L=F[u-1][f]===F[u][f]?!0:!1;else L=!0}if(v&&I&&M&&L)break;u++}if(c&&0<c.length)for(f=0;f<c.length;f++)c[f].calculateStripLinesThicknessInValues(),c[f].calculateBreaksInPixels();if(b&&0<b.length)for(f=0;f<b.length;f++)b[f].calculateStripLinesThicknessInValues(),b[f].calculateBreaksInPixels();if(a&&0<a.length)for(f=0;f<a.length;f++)a[f].calculateStripLinesThicknessInValues(),
|
|
725
|
+
a[f].calculateBreaksInPixels();if(g&&0<g.length)for(f=0;f<g.length;f++)g[f].calculateStripLinesThicknessInValues(),g[f].calculateBreaksInPixels()}};y.render=function(a,g,c,b,e){var d=a[0]?a[0].chart:g[0].chart,p=d.ctx,h=[];h.push.apply(h,a);h.push.apply(h,g);h.push.apply(h,c);h.push.apply(h,b);d.alignVerticalAxes&&d.alignVerticalAxes();p.save();"normal"===e&&(p.beginPath(),a&&a.length&&p.rect(2,a[0].bounds.y1,a[0].chart.width-4,a[a.length-1].bounds.y2),g&&g.length&&p.rect(2,g[g.length-1].bounds.y1,
|
|
726
|
+
g[0].chart.width-4,g[0].bounds.y2),p.clip());if(a&&0<a.length)for(e=0;e<a.length;e++)a[e].renderLabelsTicksAndTitle();if(g&&0<g.length)for(e=0;e<g.length;e++)g[e].renderLabelsTicksAndTitle();p.restore();if(c&&0<c.length)for(e=0;e<c.length;e++)c[e].renderLabelsTicksAndTitle();if(b&&0<b.length)for(e=0;e<b.length;e++)b[e].renderLabelsTicksAndTitle();d.preparePlotArea();a=d.plotArea;p.save();p.beginPath();p.rect(a.x1,a.y1,Math.abs(a.x2-a.x1),Math.abs(a.y2-a.y1));p.clip();if(h&&0<h.length){for(e=0;e<h.length;e++)h[e].renderStripLinesOfThicknessType("value");
|
|
727
|
+
for(e=0;e<h.length;e++)h[e].renderInterlacedColors()}p.restore();p=!1;if(h&&0<h.length){for(e=0;e<h.length;e++)h[e].renderGrid(),v&&(h[e].createMask(),h[e].renderBreaksBackground());for(e=0;e<h.length;e++)h[e].renderAxisLine();for(e=0;e<h.length;e++)h[e].renderStripLinesOfThicknessType("pixel"),h[e].crosshair&&h[e].crosshair.enabled&&(p=!0,d.clearedOverlayedCanvas=h[e].type)}if(p||!p&&d.clearedOverlayedCanvas&&0<=d.clearedOverlayedCanvas.indexOf("axis"))d.resetOverlayedCanvas(),d.renderCrosshairs(null,
|
|
728
|
+
!0)};y.prototype.calculateStripLinesThicknessInValues=function(){for(var a=0;a<this.stripLines.length;a++)if(null!==this.stripLines[a].startValue&&null!==this.stripLines[a].endValue){var g=Math.min(this.stripLines[a].startValue,this.stripLines[a].endValue),c=Math.max(this.stripLines[a].startValue,this.stripLines[a].endValue),b=this.getApparentDifference(g,c);this.stripLines[a].value=this.convertPixelToValue((this.convertValueToPixel(g)+this.convertValueToPixel(c))/2);this.stripLines[a].thickness=
|
|
729
|
+
b;this.stripLines[a]._thicknessType="value"}};y.prototype.calculateBreaksSizeInValues=function(){for(var a="left"===this._position||"right"===this._position?this.lineCoordinates.height||this.chart.height:this.lineCoordinates.width||this.chart.width,g=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c=this.conversionParameters.pixelPerUnit||a/(this.logarithmic?this.conversionParameters.maximum/this.conversionParameters.minimum:this.conversionParameters.maximum-this.conversionParameters.minimum),
|
|
730
|
+
b=this.scaleBreaks&&!l(this.scaleBreaks.options.spacing),e,d=0;d<g.length;d++)e=b||!l(g[d].options.spacing),g[d].spacing=Wa(g[d].spacing,a,8,e?0.1*a:8,e?0:3)<<0,g[d].size=0>g[d].spacing?0:Math.abs(g[d].spacing/c),this.logarithmic&&(g[d].size=Math.pow(this.logarithmBase,g[d].size))};y.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=
|
|
731
|
+
null);for(var g=0;g<a.length&&!(a[g].startValue>this.conversionParameters.maximum);g++)a[g].endValue<this.conversionParameters.minimum||(l(this.scaleBreaks.firstBreakIndex)&&(this.scaleBreaks.firstBreakIndex=g),a[g].startValue>=this.conversionParameters.minimum&&(a[g].startPixel=this.convertValueToPixel(a[g].startValue),this.scaleBreaks.lastBreakIndex=g),a[g].endValue<=this.conversionParameters.maximum&&(a[g].endPixel=this.convertValueToPixel(a[g].endValue)))}};y.prototype.renderLabelsTicksAndTitle=
|
|
732
|
+
function(){var a=this,g=!1,c=0,b=0,e=1,d=0;0!==this.labelAngle&&360!==this.labelAngle&&(e=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=[],e=0!==this.labelAngle&&360!==this.labelAngle?1:1.2,h,l=this.viewportMaximum,s=this.lineCoordinates.width/Math.log(this.range),k=this._labels.length-1;0<=k;k--){m=this._labels[k];if(m.position<this.viewportMinimum)break;m.position>
|
|
733
|
+
this.viewportMaximum||!(k===this._labels.length-1||h<Math.log(l/m.position)*s/e)||(c.push(m),l=m.position,h=m.textBlock.width*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+m.textBlock.height*Math.abs(Math.sin(Math.PI/180*this.labelAngle)))}this._labels=c}else{for(k=0;k<this._labels.length;k++)m=this._labels[k],m.position<this.viewportMinimum||(h=m.textBlock.width*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+m.textBlock.height*Math.abs(Math.sin(Math.PI/180*this.labelAngle)),c+=h);c>this.lineCoordinates.width*
|
|
734
|
+
e&&this.labelAutoFit&&(g=!0)}if("left"===this._position||"right"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],n,l=this.viewportMaximum,s=this.lineCoordinates.height/Math.log(this.range),k=this._labels.length-1;0<=k;k--){m=this._labels[k];if(m.position<this.viewportMinimum)break;m.position>this.viewportMaximum||!(k===this._labels.length-1||n<Math.log(l/m.position)*s)||(c.push(m),l=m.position,n=m.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+
|
|
735
|
+
m.textBlock.width*Math.abs(Math.sin(Math.PI/180*this.labelAngle)))}this._labels=c}else{for(k=0;k<this._labels.length;k++)m=this._labels[k],m.position<this.viewportMinimum||(n=m.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+m.textBlock.width*Math.abs(Math.sin(Math.PI/180*this.labelAngle)),b+=n);b>this.lineCoordinates.height*e&&this.labelAutoFit&&(g=!0)}}this.logarithmic&&(!this.equidistantInterval&&this.labelAutoFit)&&this._labels.sort(function(a,b){return a.position-b.position});
|
|
736
|
+
var k=0,m,q;if("bottom"===this._position){for(k=0;k<this._labels.length;k++)m=this._labels[k],m.position<this.viewportMinimum||m.position>this.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(m.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(q.x<<0)+0.5:q.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,q.y<<0),this.ctx.lineTo(b,q.y+this.tickLength<<0),this.ctx.stroke()),g&&0!==d++%2&&this.labelAutoFit||
|
|
737
|
+
(0===m.textBlock.angle?(q.x-=m.textBlock.width/2,q.y="inside"===this.labelPlacement?q.y-(("inside"===this.tickPlacement?this.tickLength:0)+m.textBlock.height-m.textBlock._lineHeight/2+2):q.y+("inside"===this.tickPlacement?0:this.tickLength)+m.textBlock._lineHeight/2+5):0>this.labelAngle?(q.x=q.x-("inside"===this.labelPlacement?0:m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+m.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),q.y="inside"===this.labelPlacement?q.y-("inside"===this.tickPlacement?
|
|
738
|
+
this.tickLength:0)-2-(m.textBlock.height-m.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle):q.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-m.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle))):(q.x=q.x-("inside"===this.labelPlacement?m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+m.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),q.y="inside"===this.labelPlacement?q.y-("inside"===
|
|
739
|
+
this.tickPlacement?this.tickLength:0)-2-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-(m.textBlock.height-m.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle):q.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(m.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle))),m.textBlock.x=q.x,m.textBlock.y=q.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(m=a._labels[k],!(m.position<
|
|
740
|
+
a.viewportMinimum||m.position>a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.x<<0)+0.5:q.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,q.y<<0);a.ctx.lineTo(b,q.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/
|
|
741
|
+
2,this._titleTextBlock.y=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++)m=this._labels[k],m.position<this.viewportMinimum||m.position>this.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(m.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,
|
|
742
|
+
b=1===this.ctx.lineWidth%2?(q.x<<0)+0.5:q.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,q.y<<0),this.ctx.lineTo(b,q.y-this.tickLength<<0),this.ctx.stroke()),g&&0!==d++%2&&this.labelAutoFit||(0===m.textBlock.angle?(q.x-=m.textBlock.width/2,q.y="inside"===this.labelPlacement?q.y+m.textBlock._lineHeight/2+("inside"===this.tickPlacement?this.tickLength:0)+5:q.y-(("inside"===this.tickPlacement?0:this.tickLength)+m.textBlock.height-m.textBlock._lineHeight/2)-2):0>this.labelAngle?(q.x=q.x-("inside"===this.labelPlacement?
|
|
743
|
+
m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+m.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),q.y="inside"===this.labelPlacement?q.y+("inside"===this.tickPlacement?this.tickLength:0)+5-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)+m.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle):q.y-("inside"===this.tickPlacement?0:this.tickLength)-2-(m.textBlock.height-m.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)):(q.x=q.x-("inside"===this.labelPlacement?
|
|
744
|
+
0:m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+m.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),q.y="inside"===this.labelPlacement?q.y+("inside"===this.tickPlacement?this.tickLength:0)+5+m.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle):q.y-("inside"===this.tickPlacement?0:this.tickLength)-2-((m.textBlock.height-m.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)+m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))),m.textBlock.x=q.x,m.textBlock.y=
|
|
745
|
+
q.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(m=a._labels[k],!(m.position<a.viewportMinimum||m.position>a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.x<<0)+0.5:q.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,q.y<<0);a.ctx.lineTo(b,q.y+a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},
|
|
746
|
+
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.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++)m=this._labels[k],m.position<this.viewportMinimum||m.position>this.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(m.position),
|
|
747
|
+
this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0,this.ctx.beginPath(),this.ctx.moveTo(q.x<<0,b),this.ctx.lineTo(q.x-this.tickLength<<0,b),this.ctx.stroke()),g&&0!==d++%2&&this.labelAutoFit||(0===this.labelAngle?(m.textBlock.y=q.y-m.textBlock.topPadding,m.textBlock.x="inside"===this.labelPlacement?q.x+("inside"===this.tickPlacement?this.tickLength:0)+5:q.x-m.textBlock.width*Math.cos(Math.PI/
|
|
748
|
+
180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):0>this.labelAngle?(m.textBlock.y=("inside"===this.labelPlacement?q.y:q.y-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-m.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x-m.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(m.textBlock.height-
|
|
749
|
+
m.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):(m.textBlock.y=("inside"===this.labelPlacement?q.y:q.y-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-m.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x+(m.textBlock.height-m.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:q.x-m.textBlock.width*Math.cos(Math.PI/
|
|
750
|
+
180*this.labelAngle)-m.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(m=a._labels[k],!(m.position<a.viewportMinimum||m.position>a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.y<<
|
|
751
|
+
0)+0.5:q.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(q.x<<0,b);a.ctx.lineTo(q.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++)m=
|
|
752
|
+
this._labels[k],m.position<this.viewportMinimum||m.position>this.viewportMaximum||(q=this.getPixelCoordinatesOnAxis(m.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0,this.ctx.beginPath(),this.ctx.moveTo(q.x<<0,b),this.ctx.lineTo(q.x+this.tickLength<<0,b),this.ctx.stroke()),g&&0!==d++%2&&this.labelAutoFit||(0===this.labelAngle?(m.textBlock.y=q.y-m.textBlock.topPadding,
|
|
753
|
+
m.textBlock.x="inside"===this.labelPlacement?q.x-m.textBlock.width-("inside"===this.tickPlacement?this.tickLength:0)-5:q.x+("inside"===this.tickPlacement?0:this.tickLength)+5):0>this.labelAngle?(m.textBlock.y=("inside"===this.labelPlacement?q.y-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):q.y)-m.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(m.textBlock.height-m.textBlock.fontSize/
|
|
754
|
+
2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:q.x-m.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5):(m.textBlock.y=("inside"===this.labelPlacement?q.y-m.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):q.y)-m.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),m.textBlock.x="inside"===this.labelPlacement?q.x-m.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-m.textBlock.fontSize/
|
|
755
|
+
2*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:q.x+(m.textBlock.height-m.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(m=a._labels[k],!(m.position<a.viewportMinimum||m.position>a.viewportMaximum)&&(q=a.getPixelCoordinatesOnAxis(m.position),a.tickThickness)){a.ctx.lineWidth=
|
|
756
|
+
a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(q.y<<0)+0.5:q.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(q.x<<0,b);a.ctx.lineTo(q.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))}d=
|
|
757
|
+
0;if("inside"===this.labelPlacement)this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)m=a._labels[k],m.position<a.viewportMinimum||(m.position>a.viewportMaximum||g&&0!==d++%2&&a.labelAutoFit)||(a.ctx.save(),a.ctx.beginPath(),m.textBlock.render(!0),a.ctx.restore())},this);else for(k=0;k<this._labels.length;k++)m=this._labels[k],m.position<this.viewportMinimum||(m.position>this.viewportMaximum||g&&0!==d++%2&&this.labelAutoFit)||m.textBlock.render(!0)};
|
|
758
|
+
y.prototype.renderInterlacedColors=function(){var a=this.chart.plotArea.ctx,g,c,b=this.chart.plotArea,e=0;g=!0;if(("bottom"===this._position||"top"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,e=0;e<this._labels.length;e++)g?(g=this.getPixelCoordinatesOnAxis(this._labels[e].position),c=e+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[e+1].position),a.fillRect(Math.min(c.x,g.x),b.y1,Math.abs(c.x-
|
|
759
|
+
g.x),Math.abs(b.y1-b.y2)),g=!1):g=!0;else if(("left"===this._position||"right"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,e=0;e<this._labels.length;e++)g?(c=this.getPixelCoordinatesOnAxis(this._labels[e].position),g=e+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[e+1].position),a.fillRect(b.x1,Math.min(c.y,g.y),Math.abs(b.x1-b.x2),Math.abs(g.y-c.y)),g=!1):g=!0;a.beginPath()};y.prototype.renderStripLinesOfThicknessType=
|
|
760
|
+
function(a){if(this.stripLines&&0<this.stripLines.length&&a){var g=this,c,b,e=0,d=0,h=!1;b=!1;for(var r=[],s=[],k=!1,n,e=0;e<this.stripLines.length;e++){var m=this.stripLines[e];m._thicknessType===a&&("pixel"===a&&(m.value<this.viewportMinimum||m.value>this.viewportMaximum||l(m.value)||isNaN(this.range))||"value"===a&&(m.startValue<=this.viewportMinimum&&m.endValue<=this.viewportMinimum||m.startValue>=this.viewportMaximum&&m.endValue>=this.viewportMaximum||l(m.startValue)||l(m.endValue)||isNaN(this.range))||
|
|
761
|
+
r.push(m))}for(e=0;e<this._stripLineLabels.length;e++)if(m=this.stripLines[e],c=this._stripLineLabels[e],!(c.position<this.viewportMinimum||c.position>this.viewportMaximum||isNaN(this.range)))if(b=this.getPixelCoordinatesOnAxis(c.position),"outside"===c.stripLine.labelPlacement){m&&(this.ctx.strokeStyle=m.tickColor?m.tickColor:m.color,this.ctx.lineWidth=m.tickThickness=l(m.tickThickness)?"pixel"===m._thicknessType?m.thickness:this.thickness:m.tickThickness,l(m.opacity)||"pixel"!==m._thicknessType||
|
|
762
|
+
(n=m.ctx.globalAlpha,m.ctx.globalAlpha=m.opacity));if("bottom"===this._position){var q=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0;0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(q,b.y<<0),this.ctx.lineTo(q,b.y+m.tickLength<<0),this.ctx.stroke());0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y+=m.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+=m.tickLength+
|
|
763
|
+
5+(0>this.labelAngle?Math.abs(c.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-c.textBlock.fontSize/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?(q=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0,0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(q,b.y<<0),this.ctx.lineTo(q,b.y-m.tickLength<<0),this.ctx.stroke()),0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y-=m.tickLength+c.textBlock.height-
|
|
764
|
+
c.textBlock.fontSize/2):(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-=m.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?(q=1===this.ctx.lineWidth%2?(b.y<<0)+0.5:b.y<<
|
|
765
|
+
0,0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,q),this.ctx.lineTo(b.x-m.tickLength<<0,q),this.ctx.stroke()),0===this.labelAngle?(b.x=b.x-c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-m.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-=m.tickLength+5+(0<this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+c.textBlock.fontSize/2*Math.sin(Math.PI/
|
|
766
|
+
180*this.labelAngle):c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-(c.textBlock.height-c.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)))):"right"===this._position&&(q=1===this.ctx.lineWidth%2?(b.y<<0)+0.5:b.y<<0,0<m.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,q),this.ctx.lineTo(b.x+m.tickLength<<0,q),this.ctx.stroke()),0===this.labelAngle?(b.x=b.x+m.tickLength+5,b.y-=c.textBlock.topPadding):(b.y-=c.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),
|
|
767
|
+
b.x=m.tickLength+5+(0<this.labelAngle?b.x+(c.textBlock.height-c.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle):b.x-c.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle))));n&&(m.ctx.globalAlpha=n);c.textBlock.x=b.x;c.textBlock.y=b.y;s.push(c)}else m._thicknessType===a&&(c.textBlock.angle=-90,"bottom"===this._position?(c.textBlock.maxWidth=this.options.stripLines[e].labelMaxWidth?this.options.stripLines[e].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-
|
|
768
|
+
c.textBlock.height-m.thickness/2>this.chart.plotArea.x1?l(m.startValue)?b.x-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/2:(c.textBlock.angle=90,l(m.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.x+=c.textBlock.height/2-c.textBlock.fontSize/2),b.y=-90===c.textBlock.angle?"near"===c.stripLine.labelAlign?this.chart.plotArea.y2-3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1+c.textBlock.width)/
|
|
769
|
+
2:this.chart.plotArea.y1+c.textBlock.width+3:"near"===c.stripLine.labelAlign?this.chart.plotArea.y2-c.textBlock.width-3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-c.textBlock.width)/2:this.chart.plotArea.y1+3):"top"===this._position?(c.textBlock.maxWidth=this.options.stripLines[e].labelMaxWidth?this.options.stripLines[e].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-m.thickness/2>this.chart.plotArea.x1?l(m.startValue)?
|
|
770
|
+
b.x-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/2:(c.textBlock.angle=90,l(m.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.x+=c.textBlock.height/2-c.textBlock.fontSize/2),b.y=-90===c.textBlock.angle?"near"===c.stripLine.labelAlign?this.chart.plotArea.y1+c.textBlock.width+3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1+c.textBlock.width)/2:this.chart.plotArea.y2-3:"near"===c.stripLine.labelAlign?
|
|
771
|
+
this.chart.plotArea.y1+3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-c.textBlock.width)/2:this.chart.plotArea.y2-c.textBlock.width-3):"left"===this._position?(c.textBlock.maxWidth=this.options.stripLines[e].labelMaxWidth?this.options.stripLines[e].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-m.thickness/2>this.chart.plotArea.y1?l(m.startValue)?b.y-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/
|
|
772
|
+
2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2:l(m.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.y+=c.textBlock.height/2-c.textBlock.fontSize+3,b.x="near"===c.stripLine.labelAlign?this.chart.plotArea.x1+3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.x2+this.chart.plotArea.x1)/2-c.textBlock.width/2:this.chart.plotArea.x2-c.textBlock.width-3):"right"===this._position&&(c.textBlock.maxWidth=this.options.stripLines[e].labelMaxWidth?this.options.stripLines[e].labelMaxWidth:
|
|
773
|
+
this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-m.thickness/2>this.chart.plotArea.y1?l(m.startValue)?b.y-=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2:l(m.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+m.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2+3,b.x="near"===c.stripLine.labelAlign?this.chart.plotArea.x2-c.textBlock.width-3:"center"===c.stripLine.labelAlign?
|
|
774
|
+
(this.chart.plotArea.x2+this.chart.plotArea.x1)/2-c.textBlock.width/2:this.chart.plotArea.x1+3),c.textBlock.x=b.x,c.textBlock.y=b.y,s.push(c));if(!k){b=!1;this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(e=0;e<r.length;e++)m=r[e],m.showOnTop?h||(h=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,
|
|
775
|
+
this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(d=0;d<r.length;d++)m=r[d],m.showOnTop&&m.render();this.ctx.restore()},m)):m.render();for(e=0;e<s.length;e++)c=s[e],c.stripLine.showOnTop?b||(b=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){for(d=0;d<s.length;d++)c=s[d],"inside"===c.stripLine.labelPlacement&&c.stripLine.showOnTop&&(g.ctx.save(),g.ctx.beginPath(),g.ctx.rect(g.chart.plotArea.x1,g.chart.plotArea.y1,g.chart.plotArea.width,
|
|
776
|
+
g.chart.plotArea.height),g.ctx.clip(),c.textBlock.render(!0),g.ctx.restore())},c.textBlock)):"inside"===c.stripLine.labelPlacement&&c.textBlock.render(!0);this.ctx.restore();k=!0}if(k)for(b=!1,e=0;e<s.length;e++)c=s[e],"outside"===c.stripLine.labelPlacement&&c.textBlock.render(!0)}};y.prototype.renderBreaksBackground=function(){this.chart._breaksCanvas&&(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length&&this.maskCanvas)&&(this.chart._breaksCanvasCtx.save(),this.chart._breaksCanvasCtx.beginPath(),
|
|
777
|
+
this.chart._breaksCanvasCtx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height),this.chart._breaksCanvasCtx.clip(),this.chart._breaksCanvasCtx.drawImage(this.maskCanvas,0,0,this.chart.width,this.chart.height),this.chart._breaksCanvasCtx.restore())};y.prototype.createMask=function(){if(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length){var a=this.scaleBreaks._appliedBreaks;v?(this.maskCanvas=wa(this.chart.width,this.chart.height),this.maskCtx=
|
|
778
|
+
this.maskCanvas.getContext("2d")):(this.maskCanvas=this.chart.plotArea.canvas,this.maskCtx=this.chart.plotArea.ctx);this.maskCtx.save();this.maskCtx.beginPath();this.maskCtx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.maskCtx.clip();for(var g=0;g<a.length;g++)a[g].endValue<this.viewportMinimum||(a[g].startValue>this.viewportMaximum||isNaN(this.range))||a[g].render(this.maskCtx);this.maskCtx.restore()}};y.prototype.renderCrosshair=function(a,
|
|
779
|
+
g){isFinite(this.minimum)&&isFinite(this.maximum)&&this.crosshair.render(a,g)};y.prototype.showCrosshair=function(a){l(a)||(a<this.viewportMinimum||a>this.viewportMaximum)||("top"===this._position||"bottom"===this._position?this.crosshair.render(this.convertValueToPixel(a),null,a):this.crosshair.render(null,this.convertValueToPixel(a),a))};y.prototype.renderGrid=function(){if(this.gridThickness&&0<this.gridThickness){var a=this.chart.ctx;a.save();var g,c=this.chart.plotArea;a.lineWidth=this.gridThickness;
|
|
780
|
+
a.strokeStyle=this.gridColor;a.setLineDash&&a.setLineDash(H(this.gridDashType,this.gridThickness));if("bottom"===this._position||"top"===this._position)for(b=0;b<this._labels.length;b++)this._labels[b].position<this.viewportMinimum||(this._labels[b].position>this.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),g=this.getPixelCoordinatesOnAxis(this._labels[b].position),g=1===a.lineWidth%2?(g.x<<0)+0.5:g.x<<0,a.moveTo(g,c.y1<<0),a.lineTo(g,c.y2<<0),a.stroke());else if("left"===this._position||
|
|
781
|
+
"right"===this._position)for(var b=0;b<this._labels.length;b++)this._labels[b].position<this.viewportMinimum||(this._labels[b].position>this.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),g=this.getPixelCoordinatesOnAxis(this._labels[b].position),g=1===a.lineWidth%2?(g.y<<0)+0.5:g.y<<0,a.moveTo(c.x1<<0,g),a.lineTo(c.x2<<0,g),a.stroke());a.restore()}};y.prototype.renderAxisLine=function(){var a=this.chart.ctx,g=v?this.chart._preRenderCtx:a,c=Math.ceil(this.tickThickness/(this.reversed?
|
|
782
|
+
-2:2)),b=Math.ceil(this.tickThickness/(this.reversed?2:-2)),e,d;g.save();if("bottom"===this._position||"top"===this._position){if(this.lineThickness){this.reversed?(e=this.lineCoordinates.x2,d=this.lineCoordinates.x1):(e=this.lineCoordinates.x1,d=this.lineCoordinates.x2);g.lineWidth=this.lineThickness;g.strokeStyle=this.lineColor?this.lineColor:"black";g.setLineDash&&g.setLineDash(H(this.lineDashType,this.lineThickness));var h=1===this.lineThickness%2?(this.lineCoordinates.y1<<0)+0.5:this.lineCoordinates.y1<<
|
|
783
|
+
0;g.beginPath();if(this.scaleBreaks&&!l(this.scaleBreaks.firstBreakIndex))if(l(this.scaleBreaks.lastBreakIndex))e=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+b;else for(var r=this.scaleBreaks.firstBreakIndex;r<=this.scaleBreaks.lastBreakIndex;r++)g.moveTo(e,h),g.lineTo(this.scaleBreaks._appliedBreaks[r].startPixel+c,h),e=this.scaleBreaks._appliedBreaks[r].endPixel+b;e&&(g.moveTo(e,h),g.lineTo(d,h));g.stroke()}}else if(("left"===this._position||"right"===this._position)&&
|
|
784
|
+
this.lineThickness){this.reversed?(e=this.lineCoordinates.y1,d=this.lineCoordinates.y2):(e=this.lineCoordinates.y2,d=this.lineCoordinates.y1);g.lineWidth=this.lineThickness;g.strokeStyle=this.lineColor;g.setLineDash&&g.setLineDash(H(this.lineDashType,this.lineThickness));h=1===this.lineThickness%2?(this.lineCoordinates.x1<<0)+0.5:this.lineCoordinates.x1<<0;g.beginPath();if(this.scaleBreaks&&!l(this.scaleBreaks.firstBreakIndex))if(l(this.scaleBreaks.lastBreakIndex))e=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+
|
|
785
|
+
c;else for(r=this.scaleBreaks.firstBreakIndex;r<=this.scaleBreaks.lastBreakIndex;r++)g.moveTo(h,e),g.lineTo(h,this.scaleBreaks._appliedBreaks[r].startPixel+b),e=this.scaleBreaks._appliedBreaks[r].endPixel+c;e&&(g.moveTo(h,e),g.lineTo(h,d));g.stroke()}v&&(a.drawImage(this.chart._preRenderCanvas,0,0,this.chart.width,this.chart.height),this.chart._breaksCanvasCtx&&this.chart._breaksCanvasCtx.drawImage(this.chart._preRenderCanvas,0,0,this.chart.width,this.chart.height),g.clearRect(0,0,this.chart.width,
|
|
786
|
+
this.chart.height));g.restore()};y.prototype.getPixelCoordinatesOnAxis=function(a){var g={};if("bottom"===this._position||"top"===this._position)g.x=this.convertValueToPixel(a),g.y=this.lineCoordinates.y1;if("left"===this._position||"right"===this._position)g.y=this.convertValueToPixel(a),g.x=this.lineCoordinates.x2;return g};y.prototype.convertPixelToValue=function(a){if("undefined"===typeof a)return null;var g=0,c=0,b,g=!0,e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c="number"===typeof a?
|
|
787
|
+
a:"left"===this._position||"right"===this._position?a.y:a.x;if(this.logarithmic){a=b=Math.pow(this.logarithmBase,(c-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit);if(c<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed)for(c=0;c<e.length;c++){if(!(e[c].endValue<this.conversionParameters.minimum))if(g)if(e[c].startValue<this.conversionParameters.minimum){if(1<e[c].size&&this.conversionParameters.minimum*Math.pow(e[c].endValue/
|
|
788
|
+
e[c].startValue,Math.log(b)/Math.log(e[c].size))<e[c].endValue){a=Math.pow(e[c].endValue/e[c].startValue,Math.log(b)/Math.log(e[c].size));break}else a*=e[c].endValue/this.conversionParameters.minimum/Math.pow(e[c].size,Math.log(e[c].endValue/this.conversionParameters.minimum)/Math.log(e[c].endValue/e[c].startValue)),b/=Math.pow(e[c].size,Math.log(e[c].endValue/this.conversionParameters.minimum)/Math.log(e[c].endValue/e[c].startValue));g=!1}else if(b>e[c].startValue/this.conversionParameters.minimum){b/=
|
|
789
|
+
e[c].startValue/this.conversionParameters.minimum;if(b<e[c].size){a*=Math.pow(e[c].endValue/e[c].startValue,1===e[c].size?1:Math.log(b)/Math.log(e[c].size))/b;break}else a*=e[c].endValue/e[c].startValue/e[c].size;b/=e[c].size;g=!1}else break;else if(b>e[c].startValue/e[c-1].endValue){b/=e[c].startValue/e[c-1].endValue;if(b<e[c].size){a*=Math.pow(e[c].endValue/e[c].startValue,1===e[c].size?1:Math.log(b)/Math.log(e[c].size))/b;break}else a*=e[c].endValue/e[c].startValue/e[c].size;b/=e[c].size}else break}else for(c=
|
|
790
|
+
e.length-1;0<=c;c--)if(!(e[c].startValue>this.conversionParameters.minimum))if(g)if(e[c].endValue>this.conversionParameters.minimum){if(1<e[c].size&&this.conversionParameters.minimum*Math.pow(e[c].endValue/e[c].startValue,Math.log(b)/Math.log(e[c].size))>e[c].startValue){a=Math.pow(e[c].endValue/e[c].startValue,Math.log(b)/Math.log(e[c].size));break}else a*=e[c].startValue/this.conversionParameters.minimum*Math.pow(e[c].size,Math.log(e[c].startValue/this.conversionParameters.minimum)/Math.log(e[c].endValue/
|
|
791
|
+
e[c].startValue))*b,b*=Math.pow(e[c].size,Math.log(this.conversionParameters.minimum/e[c].startValue)/Math.log(e[c].endValue/e[c].startValue));g=!1}else if(b<e[c].endValue/this.conversionParameters.minimum){b/=e[c].endValue/this.conversionParameters.minimum;if(b>1/e[c].size){a*=Math.pow(e[c].endValue/e[c].startValue,1>=e[c].size?1:Math.log(b)/Math.log(e[c].size))*b;break}else a/=e[c].endValue/e[c].startValue/e[c].size;b*=e[c].size;g=!1}else break;else if(b<e[c].endValue/e[c+1].startValue){b/=e[c].endValue/
|
|
792
|
+
e[c+1].startValue;if(b>1/e[c].size){a*=Math.pow(e[c].endValue/e[c].startValue,1>=e[c].size?1:Math.log(b)/Math.log(e[c].size))*b;break}else a/=e[c].endValue/e[c].startValue/e[c].size;b*=e[c].size}else break;g=a*this.viewportMinimum}else{a=b=(c-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit;if(c<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed)for(c=0;c<e.length;c++){if(!(e[c].endValue<this.conversionParameters.minimum))if(g)if(e[c].startValue<
|
|
793
|
+
this.conversionParameters.minimum){if(e[c].size&&this.conversionParameters.minimum+b*(e[c].endValue-e[c].startValue)/e[c].size<e[c].endValue){a=0>=e[c].size?0:b*(e[c].endValue-e[c].startValue)/e[c].size;break}else a+=e[c].endValue-this.conversionParameters.minimum-e[c].size*(e[c].endValue-this.conversionParameters.minimum)/(e[c].endValue-e[c].startValue),b-=e[c].size*(e[c].endValue-this.conversionParameters.minimum)/(e[c].endValue-e[c].startValue);g=!1}else if(b>e[c].startValue-this.conversionParameters.minimum){b-=
|
|
794
|
+
e[c].startValue-this.conversionParameters.minimum;if(b<e[c].size){a+=(e[c].endValue-e[c].startValue)*(0===e[c].size?1:b/e[c].size)-b;break}else a+=e[c].endValue-e[c].startValue-e[c].size;b-=e[c].size;g=!1}else break;else if(b>e[c].startValue-e[c-1].endValue){b-=e[c].startValue-e[c-1].endValue;if(b<e[c].size){a+=(e[c].endValue-e[c].startValue)*(0===e[c].size?1:b/e[c].size)-b;break}else a+=e[c].endValue-e[c].startValue-e[c].size;b-=e[c].size}else break}else for(c=e.length-1;0<=c;c--)if(!(e[c].startValue>
|
|
795
|
+
this.conversionParameters.minimum))if(g)if(e[c].endValue>this.conversionParameters.minimum)if(e[c].size&&this.conversionParameters.minimum+b*(e[c].endValue-e[c].startValue)/e[c].size>e[c].startValue){a=0>=e[c].size?0:b*(e[c].endValue-e[c].startValue)/e[c].size;break}else a+=e[c].startValue-this.conversionParameters.minimum+e[c].size*(this.conversionParameters.minimum-e[c].startValue)/(e[c].endValue-e[c].startValue),b+=e[c].size*(this.conversionParameters.minimum-e[c].startValue)/(e[c].endValue-e[c].startValue),
|
|
796
|
+
g=!1;else if(b<e[c].endValue-this.conversionParameters.minimum){b-=e[c].endValue-this.conversionParameters.minimum;if(b>-1*e[c].size){a+=(e[c].endValue-e[c].startValue)*(0===e[c].size?1:b/e[c].size)+b;break}else a-=e[c].endValue-e[c].startValue-e[c].size;b+=e[c].size;g=!1}else break;else if(b<e[c].endValue-e[c+1].startValue){b-=e[c].endValue-e[c+1].startValue;if(b>-1*e[c].size){a+=(e[c].endValue-e[c].startValue)*(0===e[c].size?1:b/e[c].size)+b;break}else a-=e[c].endValue-e[c].startValue-e[c].size;
|
|
797
|
+
b+=e[c].size}else break;g=this.conversionParameters.minimum+a}return g};y.prototype.convertValueToPixel=function(a){a=this.getApparentDifference(this.conversionParameters.minimum,a,a);return this.logarithmic?this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*Math.log(a/this.conversionParameters.minimum)/this.conversionParameters.lnLogarithmBase+0.5<<0:"axisX"===this.type?this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(a-this.conversionParameters.minimum)+
|
|
798
|
+
0.5<<0:this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(a-this.conversionParameters.minimum)+0.5};y.prototype.getApparentDifference=function(a,g,c,b){var e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];if(this.logarithmic){c=l(c)?g/a:c;for(var d=0;d<e.length&&!(g<e[d].startValue);d++)a>e[d].endValue||(a<=e[d].startValue&&g>=e[d].endValue?c=c/e[d].endValue*e[d].startValue*e[d].size:a>=e[d].startValue&&g>=e[d].endValue?c=c/e[d].endValue*a*Math.pow(e[d].size,Math.log(e[d].endValue/
|
|
799
|
+
a)/Math.log(e[d].endValue/e[d].startValue)):a<=e[d].startValue&&g<=e[d].endValue?c=c/g*e[d].startValue*Math.pow(e[d].size,Math.log(g/e[d].startValue)/Math.log(e[d].endValue/e[d].startValue)):!b&&(a>e[d].startValue&&g<e[d].endValue)&&(c=a*Math.pow(e[d].size,Math.log(g/a)/Math.log(e[d].endValue/e[d].startValue))))}else for(c=l(c)?Math.abs(g-a):c,d=0;d<e.length&&!(g<e[d].startValue);d++)a>e[d].endValue||(a<=e[d].startValue&&g>=e[d].endValue?c=c-e[d].endValue+e[d].startValue+e[d].size:a>e[d].startValue&&
|
|
800
|
+
g>=e[d].endValue?c=c-e[d].endValue+a+e[d].size*(e[d].endValue-a)/(e[d].endValue-e[d].startValue):a<=e[d].startValue&&g<e[d].endValue?c=c-g+e[d].startValue+e[d].size*(g-e[d].startValue)/(e[d].endValue-e[d].startValue):!b&&(a>e[d].startValue&&g<e[d].endValue)&&(c=a+e[d].size*(g-a)/(e[d].endValue-e[d].startValue)));return c};y.prototype.setViewPortRange=function(a,g){this.sessionVariables.newViewportMinimum=this.viewportMinimum=Math.min(a,g);this.sessionVariables.newViewportMaximum=this.viewportMaximum=
|
|
801
|
+
Math.max(a,g)};y.prototype.getXValueAt=function(a){if(!a)return null;var g=null;"left"===this._position?g=this.convertPixelToValue(a.y):"bottom"===this._position&&(g=this.convertPixelToValue(a.x));return g};y.prototype.calculateValueToPixelConversionParameters=function(a){a=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];var g={pixelPerUnit:null,minimum:null,reference:null},c=this.lineCoordinates.width,b=this.lineCoordinates.height,c="bottom"===this._position||"top"===this._position?c:b,b=Math.abs(this.range);
|
|
802
|
+
if(this.logarithmic)for(var e=0;e<a.length&&!(this.viewportMaximum<a[e].startValue);e++)this.viewportMinimum>a[e].endValue||(this.viewportMinimum>=a[e].startValue&&this.viewportMaximum<=a[e].endValue?c=0:this.viewportMinimum<=a[e].startValue&&this.viewportMaximum>=a[e].endValue?(b=b/a[e].endValue*a[e].startValue,c=0<a[e].spacing.toString().indexOf("%")?c*(1-parseFloat(a[e].spacing)/100):c-Math.min(a[e].spacing,0.1*c)):this.viewportMinimum>a[e].startValue&&this.viewportMaximum>=a[e].endValue?(b=b/
|
|
803
|
+
a[e].endValue*this.viewportMinimum,c=0<a[e].spacing.toString().indexOf("%")?c*(1-parseFloat(a[e].spacing)/100*Math.log(a[e].endValue/this.viewportMinimum)/Math.log(a[e].endValue/a[e].startValue)):c-Math.min(a[e].spacing,0.1*c)*Math.log(a[e].endValue/this.viewportMinimum)/Math.log(a[e].endValue/a[e].startValue)):this.viewportMinimum<=a[e].startValue&&this.viewportMaximum<a[e].endValue&&(b=b/this.viewportMaximum*a[e].startValue,c=0<a[e].spacing.toString().indexOf("%")?c*(1-parseFloat(a[e].spacing)/
|
|
804
|
+
100*Math.log(this.viewportMaximum/a[e].startValue)/Math.log(a[e].endValue/a[e].startValue)):c-Math.min(a[e].spacing,0.1*c)*Math.log(this.viewportMaximum/a[e].startValue)/Math.log(a[e].endValue/a[e].startValue)));else for(e=0;e<a.length&&!(this.viewportMaximum<a[e].startValue);e++)this.viewportMinimum>a[e].endValue||(this.viewportMinimum>=a[e].startValue&&this.viewportMaximum<=a[e].endValue?c=0:this.viewportMinimum<=a[e].startValue&&this.viewportMaximum>=a[e].endValue?(b=b-a[e].endValue+a[e].startValue,
|
|
805
|
+
c=0<a[e].spacing.toString().indexOf("%")?c*(1-parseFloat(a[e].spacing)/100):c-Math.min(a[e].spacing,0.1*c)):this.viewportMinimum>a[e].startValue&&this.viewportMaximum>=a[e].endValue?(b=b-a[e].endValue+this.viewportMinimum,c=0<a[e].spacing.toString().indexOf("%")?c*(1-parseFloat(a[e].spacing)/100*(a[e].endValue-this.viewportMinimum)/(a[e].endValue-a[e].startValue)):c-Math.min(a[e].spacing,0.1*c)*(a[e].endValue-this.viewportMinimum)/(a[e].endValue-a[e].startValue)):this.viewportMinimum<=a[e].startValue&&
|
|
806
|
+
this.viewportMaximum<a[e].endValue&&(b=b-this.viewportMaximum+a[e].startValue,c=0<a[e].spacing.toString().indexOf("%")?c*(1-parseFloat(a[e].spacing)/100*(this.viewportMaximum-a[e].startValue)/(a[e].endValue-a[e].startValue)):c-Math.min(a[e].spacing,0.1*c)*(this.viewportMaximum-a[e].startValue)/(a[e].endValue-a[e].startValue)));g.minimum=this.viewportMinimum;g.maximum=this.viewportMaximum;g.range=b;if("bottom"===this._position||"top"===this._position)this.logarithmic?(g.lnLogarithmBase=Math.log(this.logarithmBase),
|
|
807
|
+
g.pixelPerUnit=(this.reversed?-1:1)*c*g.lnLogarithmBase/Math.log(Math.abs(b))):g.pixelPerUnit=(this.reversed?-1:1)*c/Math.abs(b),g.reference=this.reversed?this.lineCoordinates.x2:this.lineCoordinates.x1;if("left"===this._position||"right"===this._position)this.logarithmic?(g.lnLogarithmBase=Math.log(this.logarithmBase),g.pixelPerUnit=(this.reversed?1:-1)*c*g.lnLogarithmBase/Math.log(Math.abs(b))):g.pixelPerUnit=(this.reversed?1:-1)*c/Math.abs(b),g.reference=this.reversed?this.lineCoordinates.y1:this.lineCoordinates.y2;
|
|
808
|
+
this.conversionParameters=g};y.prototype.calculateAxisParameters=function(){if(this.logarithmic)this.calculateLogarithmicAxisParameters();else{var a=this.chart.layoutManager.getFreeSpace(),g=!1,c=!1;"bottom"===this._position||"top"===this._position?(this.maxWidth=a.width,this.maxHeight=a.height):(this.maxWidth=a.height,this.maxHeight=a.width);var a="axisX"===this.type?"xySwapped"===this.chart.plotInfo.axisPlacement?62:70:"xySwapped"===this.chart.plotInfo.axisPlacement?50:40,b=4;"axisX"===this.type&&
|
|
809
|
+
(b=600>this.maxWidth?8:6);var a=Math.max(b,Math.floor(this.maxWidth/a)),e,d,h,b=0;!l(this.options.viewportMinimum)&&(!l(this.options.viewportMaximum)&&this.options.viewportMinimum>=this.options.viewportMaximum)&&(this.viewportMinimum=this.viewportMaximum=null);if(l(this.options.viewportMinimum)&&!l(this.sessionVariables.newViewportMinimum)&&!isNaN(this.sessionVariables.newViewportMinimum))this.viewportMinimum=this.sessionVariables.newViewportMinimum;else if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=
|
|
810
|
+
this.minimum;if(l(this.options.viewportMaximum)&&!l(this.sessionVariables.newViewportMaximum)&&!isNaN(this.sessionVariables.newViewportMaximum))this.viewportMaximum=this.sessionVariables.newViewportMaximum;else if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;!l(this.minimum)&&this.viewportMinimum<this.minimum&&(this.viewportMinimum=this.minimum);!l(this.maximum)&&this.viewportMaximum>this.maximum&&(this.viewportMaximum=this.maximum);if(this.scaleBreaks)for(b=
|
|
811
|
+
0;b<this.scaleBreaks._appliedBreaks.length;b++)if((!l(this.sessionVariables.newViewportMinimum)&&this.sessionVariables.newViewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue||!l(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[b].startValue||!l(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue)&&(!l(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[b].endValue||
|
|
812
|
+
!l(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[b].endValue||!l(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[b].endValue)){this.scaleBreaks._appliedBreaks.splice(b,1);break}if("axisX"===this.type){if(this.dataSeries&&0<this.dataSeries.length)for(e=0;e<this.dataSeries.length;e++)"dateTime"===this.dataSeries[e].xValueType&&(c=!0);e=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin;d=null!==this.viewportMaximum?
|
|
813
|
+
this.viewportMaximum:this.dataInfo.viewPortMax;0===d-e&&(b="undefined"===typeof this.options.interval?0.4:this.options.interval,d+=b,e-=b);Infinity!==this.dataInfo.minDiff?h=this.dataInfo.minDiff:1<d-e?h=0.5*Math.abs(d-e):(h=1,c&&(g=!0))}else"axisY"===this.type&&(e=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,h=Math.pow(2,50),isFinite(e)||isFinite(d)?isFinite(e)?isFinite(d)||(d=e):e=d:(d="undefined"===
|
|
814
|
+
typeof this.options.interval?-Infinity:this.options.interval,e="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),0===e&&0===d?(d+=9,e=0):0===d-e?(b=Math.min(Math.abs(0.01*Math.abs(d)),5),d+=b,e-=b):e>d?(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,e,null,!0)),5),0<=d?e=d-b:d=isFinite(e)?e+b:0):(e>=h||d>=h||e<=-h||d<=-h)&&10>d-e?d+=9:(b=Math.min(0.01*Math.abs(this.getApparentDifference(e,d,null,!0)),0.05),0!==d&&(d+=b),0!==e&&(e-=b)),h=Infinity!==this.dataInfo.minDiff?
|
|
815
|
+
this.dataInfo.minDiff:1<d-e?0.5*Math.abs(d-e):1,this.includeZero&&(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&0<e&&(e=0),this.includeZero&&(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&0>d&&(d=0));b=this.getApparentDifference(isNaN(this.viewportMinimum)||null===this.viewportMinimum?e:this.viewportMinimum,isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum,null,!0);if("axisX"===this.type&&c){this.valueType="dateTime";this.intervalType||(b/1<=
|
|
816
|
+
a?(this.interval=1,this.intervalType="millisecond"):b/2<=a?(this.interval=2,this.intervalType="millisecond"):b/5<=a?(this.interval=5,this.intervalType="millisecond"):b/10<=a?(this.interval=10,this.intervalType="millisecond"):b/20<=a?(this.interval=20,this.intervalType="millisecond"):b/50<=a?(this.interval=50,this.intervalType="millisecond"):b/100<=a?(this.interval=100,this.intervalType="millisecond"):b/200<=a?(this.interval=200,this.intervalType="millisecond"):b/250<=a?(this.interval=250,this.intervalType=
|
|
817
|
+
"millisecond"):b/300<=a?(this.interval=300,this.intervalType="millisecond"):b/400<=a?(this.interval=400,this.intervalType="millisecond"):b/500<=a?(this.interval=500,this.intervalType="millisecond"):b/(1*F.secondDuration)<=a?(this.interval=1,this.intervalType="second"):b/(2*F.secondDuration)<=a?(this.interval=2,this.intervalType="second"):b/(5*F.secondDuration)<=a?(this.interval=5,this.intervalType="second"):b/(10*F.secondDuration)<=a?(this.interval=10,this.intervalType="second"):b/(15*F.secondDuration)<=
|
|
818
|
+
a?(this.interval=15,this.intervalType="second"):b/(20*F.secondDuration)<=a?(this.interval=20,this.intervalType="second"):b/(30*F.secondDuration)<=a?(this.interval=30,this.intervalType="second"):b/(1*F.minuteDuration)<=a?(this.interval=1,this.intervalType="minute"):b/(2*F.minuteDuration)<=a?(this.interval=2,this.intervalType="minute"):b/(5*F.minuteDuration)<=a?(this.interval=5,this.intervalType="minute"):b/(10*F.minuteDuration)<=a?(this.interval=10,this.intervalType="minute"):b/(15*F.minuteDuration)<=
|
|
819
|
+
a?(this.interval=15,this.intervalType="minute"):b/(20*F.minuteDuration)<=a?(this.interval=20,this.intervalType="minute"):b/(30*F.minuteDuration)<=a?(this.interval=30,this.intervalType="minute"):b/(1*F.hourDuration)<=a?(this.interval=1,this.intervalType="hour"):b/(2*F.hourDuration)<=a?(this.interval=2,this.intervalType="hour"):b/(3*F.hourDuration)<=a?(this.interval=3,this.intervalType="hour"):b/(6*F.hourDuration)<=a?(this.interval=6,this.intervalType="hour"):b/(1*F.dayDuration)<=a?(this.interval=1,
|
|
820
|
+
this.intervalType="day"):b/(2*F.dayDuration)<=a?(this.interval=2,this.intervalType="day"):b/(4*F.dayDuration)<=a?(this.interval=4,this.intervalType="day"):b/(1*F.weekDuration)<=a?(this.interval=1,this.intervalType="week"):b/(2*F.weekDuration)<=a?(this.interval=2,this.intervalType="week"):b/(3*F.weekDuration)<=a?(this.interval=3,this.intervalType="week"):b/(1*F.monthDuration)<=a?(this.interval=1,this.intervalType="month"):b/(2*F.monthDuration)<=a?(this.interval=2,this.intervalType="month"):b/(3*F.monthDuration)<=
|
|
821
|
+
a?(this.interval=3,this.intervalType="month"):b/(6*F.monthDuration)<=a?(this.interval=6,this.intervalType="month"):(this.interval=b/(1*F.yearDuration)<=a?1:b/(2*F.yearDuration)<=a?2:b/(4*F.yearDuration)<=a?4:Math.floor(y.getNiceNumber(b/(a-1),!0)/F.yearDuration),this.intervalType="year"));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=e-h/2;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=d+h/2;g?this.autoValueFormatString="MMM DD YYYY HH:mm":
|
|
822
|
+
"year"===this.intervalType?this.autoValueFormatString="YYYY":"month"===this.intervalType?this.autoValueFormatString="MMM YYYY":"week"===this.intervalType?this.autoValueFormatString="MMM DD YYYY":"day"===this.intervalType?this.autoValueFormatString="MMM DD YYYY":"hour"===this.intervalType?this.autoValueFormatString="hh:mm TT":"minute"===this.intervalType?this.autoValueFormatString="hh:mm TT":"second"===this.intervalType?this.autoValueFormatString="hh:mm:ss TT":"millisecond"===this.intervalType&&(this.autoValueFormatString=
|
|
823
|
+
"fff'ms'");this.valueFormatString||(this.valueFormatString=this.autoValueFormatString)}else{this.intervalType="number";b=y.getNiceNumber(b,!1);this.interval=this.options&&0<this.options.interval?this.options.interval:y.getNiceNumber(b/(a-1),!0);if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?e-h/2:Math.floor(e/this.interval)*this.interval;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum="axisX"===this.type?d+h/2:
|
|
824
|
+
Math.ceil(d/this.interval)*this.interval;0===this.viewportMaximum&&0===this.viewportMinimum&&(0===this.options.viewportMinimum?this.viewportMaximum+=10:0===this.options.viewportMaximum&&(this.viewportMinimum-=10),this.options&&"undefined"===typeof this.options.interval&&(this.interval=y.getNiceNumber((this.viewportMaximum-this.viewportMinimum)/(a-1),!0)))}if(null===this.minimum||null===this.maximum)if("axisX"===this.type?(e=null!==this.minimum?this.minimum:this.dataInfo.min,d=null!==this.maximum?
|
|
825
|
+
this.maximum:this.dataInfo.max,0===d-e&&(b="undefined"===typeof this.options.interval?0.4:this.options.interval,d+=b,e-=b),h=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<d-e?0.5*Math.abs(d-e):1):"axisY"===this.type&&(e=null!==this.minimum?this.minimum:this.dataInfo.min,d=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(e)||isFinite(d)?0===e&&0===d?(d+=9,e=0):0===d-e?(b=Math.min(Math.abs(0.01*Math.abs(d)),5),d+=b,e-=b):e>d?(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,
|
|
826
|
+
e,null,!0)),5),0<=d?e=d-b:d=isFinite(e)?e+b:0):(b=Math.min(0.01*Math.abs(this.getApparentDifference(e,d,null,!0)),0.05),0!==d&&(d+=b),0!==e&&(e-=b)):(d="undefined"===typeof this.options.interval?-Infinity:this.options.interval,e="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),h=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<d-e?0.5*Math.abs(d-e):1,this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&0<e&&(e=0),this.includeZero&&(null===this.maximum||
|
|
827
|
+
isNaN(this.maximum))&&0>d&&(d=0)),Math.abs(this.getApparentDifference(e,d,null,!0)),"axisX"===this.type&&c){this.valueType="dateTime";if(null===this.minimum||isNaN(this.minimum))this.minimum=e-h/2,this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?Infinity:this.sessionVariables.viewportMinimum);if(null===this.maximum||isNaN(this.maximum))this.maximum=d+h/2,this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||
|
|
828
|
+
isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum)}else this.intervalType=this.valueType="number",null===this.minimum&&(this.minimum="axisX"===this.type?e-h/2:Math.floor(e/this.interval)*this.interval,this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?Infinity:this.sessionVariables.viewportMinimum)),null===this.maximum&&(this.maximum="axisX"===this.type?d+h/2:Math.ceil(d/this.interval)*
|
|
829
|
+
this.interval,this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum)),0===this.maximum&&0===this.minimum&&(0===this.options.minimum?this.maximum+=10:0===this.options.maximum&&(this.minimum-=10));l(this.sessionVariables.newViewportMinimum)&&(this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum));l(this.sessionVariables.newViewportMaximum)&&(this.viewportMaximum=Math.min(this.viewportMaximum,
|
|
830
|
+
this.maximum));this.range=this.viewportMaximum-this.viewportMinimum;this.intervalStartPosition="axisX"===this.type&&c?this.getLabelStartPoint(new Date(this.viewportMinimum),this.intervalType,this.interval):Math.floor((this.viewportMinimum+0.2*this.interval)/this.interval)*this.interval;this.valueFormatString||(this.valueFormatString=y.generateValueFormatString(this.range,2))}};y.prototype.calculateLogarithmicAxisParameters=function(){var a=this.chart.layoutManager.getFreeSpace(),g=Math.log(this.logarithmBase),
|
|
831
|
+
c;"bottom"===this._position||"top"===this._position?(this.maxWidth=a.width,this.maxHeight=a.height):(this.maxWidth=a.height,this.maxHeight=a.width);var a="axisX"===this.type?500>this.maxWidth?7:Math.max(7,Math.floor(this.maxWidth/100)):Math.max(Math.floor(this.maxWidth/50),3),b,e,d,h;h=1;if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=this.minimum;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;if(this.scaleBreaks)for(h=
|
|
832
|
+
0;h<this.scaleBreaks._appliedBreaks.length;h++)if((!l(this.sessionVariables.newViewportMinimum)&&this.sessionVariables.newViewportMinimum>=this.scaleBreaks._appliedBreaks[h].startValue||!l(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[h].startValue||!l(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[h].startValue)&&(!l(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[h].endValue||
|
|
833
|
+
!l(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[h].endValue||!l(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[h].endValue)){this.scaleBreaks._appliedBreaks.splice(h,1);break}"axisX"===this.type?(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,e=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,1===e/b&&(h=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?
|
|
834
|
+
0.4:this.options.interval),e*=h,b/=h),d=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:e/b>this.logarithmBase?e/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,e=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,0>=b&&!isFinite(e)?(e="undefined"===typeof this.options.interval?0:this.options.interval,b=1):0>=b?b=e:isFinite(e)||(e=b),1===b&&1===e?(e*=this.logarithmBase-
|
|
835
|
+
1/this.logarithmBase,b=1):1===e/b?(h=Math.min(e*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),e*=h,b/=h):b>e?(h=Math.min(b/e*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),1<=e?b=e/h:e=b*h):(h=Math.min(e/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==e&&(e*=h),1!==b&&(b/=h)),d=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:e/b>this.logarithmBase?e/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,this.includeZero&&(null===
|
|
836
|
+
this.viewportMinimum||isNaN(this.viewportMinimum))&&1<b&&(b=1),this.includeZero&&(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&1>e&&(e=1));h=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?e:this.viewportMaximum)/(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);var r=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?e:this.viewportMaximum)-(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);this.intervalType=
|
|
837
|
+
"number";h=Math.pow(this.logarithmBase,y.getNiceNumber(Math.abs(Math.log(h)/g),!1));this.options&&0<this.options.interval?this.interval=this.options.interval:(this.interval=y.getNiceExponent(Math.log(h)/g/(a-1),!0),c=y.getNiceNumber(r/(a-1),!0));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?b/Math.sqrt(d):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/g/this.interval));if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=
|
|
838
|
+
"axisX"===this.type?e*Math.sqrt(d):Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(e)/g/this.interval));1===this.viewportMaximum&&1===this.viewportMinimum&&(1===this.options.viewportMinimum?this.viewportMaximum*=this.logarithmBase-1/this.logarithmBase:1===this.options.viewportMaximum&&(this.viewportMinimum/=this.logarithmBase-1/this.logarithmBase),this.options&&"undefined"===typeof this.options.interval&&(this.interval=y.getNiceExponent(Math.ceil(Math.log(h)/g)/(a-1)),c=y.getNiceNumber((this.viewportMaximum-
|
|
839
|
+
this.viewportMinimum)/(a-1),!0)));if(null===this.minimum||null===this.maximum)"axisX"===this.type?(b=null!==this.minimum?this.minimum:this.dataInfo.min,e=null!==this.maximum?this.maximum:this.dataInfo.max,1===e/b&&(h=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?0.4:this.options.interval),e*=h,b/=h),d=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:e/b>this.logarithmBase?e/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.minimum?
|
|
840
|
+
this.minimum:this.dataInfo.min,e=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(b)||isFinite(e)?1===b&&1===e?(e*=this.logarithmBase,b/=this.logarithmBase):1===e/b?(h=Math.pow(this.logarithmBase,this.interval),e*=h,b/=h):b>e?(h=Math.min(0.01*(b/e),5),1<=e?b=e/h:e=b*h):(h=Math.min(e/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==e&&(e*=h),1!==b&&(b/=h)):(e="undefined"===typeof this.options.interval?0:this.options.interval,b=1),d=Infinity!==this.dataInfo.minDiff?
|
|
841
|
+
this.dataInfo.minDiff:e/b>this.logarithmBase?e/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&1<b&&(b=1),this.includeZero&&(null===this.maximum||isNaN(this.maximum))&&1>e&&(e=1)),this.intervalType="number",null===this.minimum&&(this.minimum="axisX"===this.type?b/Math.sqrt(d):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/g/this.interval)),l(null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?
|
|
842
|
+
"undefined"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:this.sessionVariables.viewportMinimum)||(this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?"undefined"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:this.sessionVariables.viewportMinimum))),null===this.maximum&&(this.maximum="axisX"===this.type?e*Math.sqrt(d):
|
|
843
|
+
Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(e)/g/this.interval)),l(null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?"undefined"===typeof this.sessionVariables.newViewportMaximum?0:this.sessionVariables.newViewportMaximum:this.sessionVariables.viewportMaximum)||(this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?"undefined"===typeof this.sessionVariables.newViewportMaximum?
|
|
844
|
+
0:this.sessionVariables.newViewportMaximum:this.sessionVariables.viewportMaximum))),1===this.maximum&&1===this.minimum&&(1===this.options.minimum?this.maximum*=this.logarithmBase-1/this.logarithmBase:1===this.options.maximum&&(this.minimum/=this.logarithmBase-1/this.logarithmBase));this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum);this.viewportMaximum=Math.min(this.viewportMaximum,this.maximum);this.viewportMinimum>this.viewportMaximum&&(!this.options.viewportMinimum&&!this.options.minimum||
|
|
845
|
+
this.options.viewportMaximum||this.options.maximum?this.options.viewportMinimum||this.options.minimum||!this.options.viewportMaximum&&!this.options.maximum||(this.viewportMinimum=this.minimum=(this.options.viewportMaximum||this.options.maximum)/Math.pow(this.logarithmBase,2*Math.ceil(this.interval))):this.viewportMaximum=this.maximum=this.options.viewportMinimum||this.options.minimum);b=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(g*this.interval)+0.2)*this.interval);this.range=
|
|
846
|
+
this.viewportMaximum/this.viewportMinimum;this.noTicks=a;if(!this.options.interval&&this.range<Math.pow(this.logarithmBase,8>this.viewportMaximum||3>a?2:3)){for(g=Math.floor(this.viewportMinimum/c+0.5)*c;g<this.viewportMinimum;)g+=c;this.equidistantInterval=!1;this.intervalStartPosition=g;this.interval=c}else this.options.interval||(c=Math.ceil(this.interval),this.range>this.interval&&(this.interval=c,b=Math.pow(this.logarithmBase,Math.floor(Math.log(this.viewportMinimum)/(g*this.interval)+0.2)*this.interval))),
|
|
847
|
+
this.equidistantInterval=!0,this.intervalStartPosition=b;if(!this.valueFormatString&&(this.valueFormatString="#,##0.##",1>this.viewportMinimum)){g=Math.floor(Math.abs(Math.log(this.viewportMinimum)/Math.LN10))+2;if(isNaN(g)||!isFinite(g))g=2;if(2<g)for(h=0;h<g-2;h++)this.valueFormatString+="#"}};y.generateValueFormatString=function(a,g){var c="#,##0.",b=g;1>a&&(b+=Math.floor(Math.abs(Math.log(a)/Math.LN10)),isNaN(b)||!isFinite(b))&&(b=g);for(var e=0;e<b;e++)c+="#";return c};y.getNiceExponent=function(a,
|
|
848
|
+
g){var c=Math.floor(Math.log(a)/Math.LN10),b=a/Math.pow(10,c),b=0>c?1>=b?1:5>=b?5:10:Math.max(Math.floor(b),1);return-20>c?Number(b*Math.pow(10,c)):Number((b*Math.pow(10,c)).toFixed(20))};y.getNiceNumber=function(a,g){var c=Math.floor(Math.log(a)/Math.LN10),b=a/Math.pow(10,c),b=g?1.5>b?1:3>b?2:7>b?5:10:1>=b?1:2>=b?2:5>=b?5:10;return-20>c?Number(b*Math.pow(10,c)):Number((b*Math.pow(10,c)).toFixed(20))};y.prototype.getLabelStartPoint=function(){var a=F[this.intervalType+"Duration"]*this.interval,a=
|
|
849
|
+
new Date(Math.floor(this.viewportMinimum/a)*a);if("millisecond"!==this.intervalType)if("second"===this.intervalType)0<a.getMilliseconds()&&(a.setSeconds(a.getSeconds()+1),a.setMilliseconds(0));else if("minute"===this.intervalType){if(0<a.getSeconds()||0<a.getMilliseconds())a.setMinutes(a.getMinutes()+1),a.setSeconds(0),a.setMilliseconds(0)}else if("hour"===this.intervalType){if(0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())a.setHours(a.getHours()+1),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else if("day"===
|
|
850
|
+
this.intervalType){if(0<a.getHours()||0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())a.setDate(a.getDate()+1),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else if("week"===this.intervalType){if(0<a.getDay()||0<a.getHours()||0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())a.setDate(a.getDate()+(7-a.getDay())),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else if("month"===this.intervalType){if(1<a.getDate()||0<a.getHours()||0<a.getMinutes()||
|
|
851
|
+
0<a.getSeconds()||0<a.getMilliseconds())a.setMonth(a.getMonth()+1),a.setDate(1),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0)}else"year"===this.intervalType&&(0<a.getMonth()||1<a.getDate()||0<a.getHours()||0<a.getMinutes()||0<a.getSeconds()||0<a.getMilliseconds())&&(a.setFullYear(a.getFullYear()+1),a.setMonth(0),a.setDate(1),a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0));return a};ra(aa,S);ra(Y,S);Y.prototype.createUserOptions=function(a){if("undefined"!==
|
|
852
|
+
typeof a||this.options._isPlaceholder){var g=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Fa(this.parent[this.optionsName]),g=this.parent.options[this.optionsName].indexOf(this.options));this.options="undefined"===typeof a?{}:a;this.parent.options[this.optionsName][g]=this.options}};Y.prototype.render=function(a){if(0!==this.spacing||0!==this.options.lineThickness&&("undefined"!==typeof this.options.lineThickness||0!==this.parent.lineThickness)){var g=
|
|
853
|
+
this.ctx,c=this.ctx.globalAlpha;this.ctx=a||this.ctx;this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();var b=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.startValue),e=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.endValue);this.ctx.strokeStyle=this.lineColor;this.ctx.fillStyle=this.color;this.ctx.beginPath();this.ctx.globalAlpha=1;W(this.id);var d,h,l,s,k,n;a=Math.max(this.spacing,
|
|
854
|
+
3);var m=Math.max(0,this.lineThickness);this.ctx.lineWidth=m;this.ctx.setLineDash&&this.ctx.setLineDash(H(this.lineDashType,m));if("bottom"===this.scaleBreaks.parent._position||"top"===this.scaleBreaks.parent._position)if(b=1===m%2?(b.x<<0)+0.5:b.x<<0,h=1===m%2?(e.x<<0)+0.5:e.x<<0,"top"===this.scaleBreaks.parent._position?(e=this.chart.plotArea.y1,l=this.chart.plotArea.y2+m/2+0.5<<0):(e=this.chart.plotArea.y2,l=this.chart.plotArea.y1-m/2+0.5<<0,a*=-1),this.bounds={x1:b-m/2,y1:e,x2:h+m/2,y2:l},this.ctx.moveTo(b,
|
|
855
|
+
e),"straight"===this.type||"top"===this.scaleBreaks.parent._position&&0>=a||"bottom"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(b,l),this.ctx.lineTo(h,l),this.ctx.lineTo(h,e);else if("wavy"===this.type){s=b;k=e;d=0.5;n=(l-k)/a/3;for(var q=0;q<n;q++)this.ctx.bezierCurveTo(s+d*a,k+a,s+d*a,k+2*a,s,k+3*a),k+=3*a,d*=-1;this.ctx.bezierCurveTo(s+d*a,k+a,s+d*a,k+2*a,s,k+3*a);s=h;d*=-1;this.ctx.lineTo(s,k);for(q=0;q<n;q++)this.ctx.bezierCurveTo(s+d*a,k-a,s+d*a,k-2*a,s,k-3*a),k-=3*a,d*=-1}else{if("zigzag"===
|
|
856
|
+
this.type){d=-1;k=e+a;s=b+a;n=(l-k)/a/2;for(q=0;q<n;q++)this.ctx.lineTo(s,k),s+=2*d*a,k+=2*a,d*=-1;this.ctx.lineTo(s,k);s+=h-b;for(q=0;q<n+1;q++)this.ctx.lineTo(s,k),s+=2*d*a,k-=2*a,d*=-1;this.ctx.lineTo(s+d*a,k+a)}}else if("left"===this.scaleBreaks.parent._position||"right"===this.scaleBreaks.parent._position)if(e=1===m%2?(e.y<<0)+0.5:e.y<<0,l=1===m%2?(b.y<<0)+0.5:b.y<<0,"left"===this.scaleBreaks.parent._position?(b=this.chart.plotArea.x1,h=this.chart.plotArea.x2+m/2+0.5<<0):(b=this.chart.plotArea.x2,
|
|
857
|
+
h=this.chart.plotArea.x1-m/2+0.5<<0,a*=-1),this.bounds={x1:b,y1:e-m/2,x2:h,y2:l+m/2},this.ctx.moveTo(b,e),"straight"===this.type||"left"===this.scaleBreaks.parent._position&&0>=a||"right"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(h,e),this.ctx.lineTo(h,l),this.ctx.lineTo(b,l);else if("wavy"===this.type){s=b;k=e;d=0.5;n=(h-s)/a/3;for(q=0;q<n;q++)this.ctx.bezierCurveTo(s+a,k+d*a,s+2*a,k+d*a,s+3*a,k),s+=3*a,d*=-1;this.ctx.bezierCurveTo(s+a,k+d*a,s+2*a,k+d*a,s+3*a,k);k=l;d*=-1;this.ctx.lineTo(s,
|
|
858
|
+
k);for(q=0;q<n;q++)this.ctx.bezierCurveTo(s-a,k+d*a,s-2*a,k+d*a,s-3*a,k),s-=3*a,d*=-1}else if("zigzag"===this.type){d=1;k=e-a;s=b+a;n=(h-s)/a/2;for(q=0;q<n;q++)this.ctx.lineTo(s,k),k+=2*d*a,s+=2*a,d*=-1;this.ctx.lineTo(s,k);k+=l-e;for(q=0;q<n+1;q++)this.ctx.lineTo(s,k),k+=2*d*a,s-=2*a,d*=-1;this.ctx.lineTo(s+a,k+d*a)}0<m&&this.ctx.stroke();this.ctx.closePath();this.ctx.globalAlpha=this.fillOpacity;this.ctx.globalCompositeOperation="destination-over";this.ctx.fill();this.ctx.restore();this.ctx.globalAlpha=
|
|
859
|
+
c;this.ctx=g}};ra(ia,S);ia.prototype.createUserOptions=function(a){if("undefined"!==typeof a||this.options._isPlaceholder){var g=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Fa(this.parent.stripLines),g=this.parent.options.stripLines.indexOf(this.options));this.options="undefined"===typeof a?{}:a;this.parent.options.stripLines[g]=this.options}};ia.prototype.render=function(){this.ctx.save();var a=this.parent.getPixelCoordinatesOnAxis(this.value),
|
|
860
|
+
g=Math.abs("pixel"===this._thicknessType?this.thickness:Math.abs(this.parent.convertValueToPixel(this.endValue)-this.parent.convertValueToPixel(this.startValue)));if(0<g){var c=null===this.opacity?1:this.opacity;this.ctx.strokeStyle=this.color;this.ctx.beginPath();var b=this.ctx.globalAlpha;this.ctx.globalAlpha=c;W(this.id);var e,d,h,l;this.ctx.lineWidth=g;this.ctx.setLineDash&&this.ctx.setLineDash(H(this.lineDashType,g));if("bottom"===this.parent._position||"top"===this.parent._position)a="pixel"===
|
|
861
|
+
this._thicknessType?a.x:(this.parent.convertValueToPixel(this.endValue)+this.parent.convertValueToPixel(this.startValue))/2,e=d=1===this.ctx.lineWidth%2?(a<<0)+0.5:a<<0,h=this.chart.plotArea.y1,l=this.chart.plotArea.y2,this.bounds={x1:e-g/2,y1:h,x2:d+g/2,y2:l};else if("left"===this.parent._position||"right"===this.parent._position)a="pixel"===this._thicknessType?a.y:(this.parent.convertValueToPixel(this.endValue)+this.parent.convertValueToPixel(this.startValue))/2,h=l=1===this.ctx.lineWidth%2?(a<<
|
|
862
|
+
0)+0.5:a<<0,e=this.chart.plotArea.x1,d=this.chart.plotArea.x2,this.bounds={x1:e,y1:h-g/2,x2:d,y2:l+g/2};this.ctx.moveTo(e,h);this.ctx.lineTo(d,l);this.ctx.stroke();this.ctx.globalAlpha=b}this.ctx.restore()};ra(ga,S);ga.prototype.showAt=function(a){if(!this.enabled)return!1;var g=this.chart,c=!1;g.resetOverlayedCanvas();g.clearedOverlayedCanvas=this.parent.type;this.chart.renderCrosshairs(this.parent,!1);var b,e="xySwapped"===g.plotInfo.axisPlacement;"bottom"===this.parent._position?b=e?g.axisY:g.axisX:
|
|
863
|
+
"top"===this.parent._position?b=e?g.axisY2:g.axisX2:"left"===this.parent._position?b=e?g.axisX:g.axisY:"right"===this.parent._position&&(b=e?g.axisX2:g.axisY2);if(b)for(e=0;e<b.length;e++)this.parent===b[e]&&(b[e]._crosshairValue=a>=b[e].viewportMinimum&&a<=b[e].viewportMaximum?a:null);b=["axisX","axisX2","axisY","axisY2"];for(e=0;e<b.length;e++)for(var d=b[e],h=0;h<g[d].length;h++){var r=g[d][h],s=r._crosshairValue;r.crosshair&&r.crosshair.enabled&&(this.parent===r&&(r.sessionVariables.crosshairShownByPixel=
|
|
864
|
+
!1,r.sessionVariables.crosshairValue=r.crosshair._updatedValue=s||a),!l(s)&&s>=r.viewportMinimum&&s<=r.viewportMaximum?(r.showCrosshair(s),this===r.crosshair&&(c=!0)):void 0!==s&&(r.sessionVariables.crosshairValue=null,r.crosshair._updatedValue=null))}this.chart.toolTip&&(this.chart.toolTip._entries&&this.chart.sessionVariables._dataHighlighted)&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);return c};ga.prototype.hide=function(){this.chart.resetOverlayedCanvas();this.chart.toolTip&&
|
|
865
|
+
(this.chart.toolTip._entries&&this.chart.sessionVariables._dataHighlighted)&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);this.chart.renderCrosshairs(this.parent,!1);this.parent.sessionVariables._crosshairHidden=this._hidden=!0};ga.prototype.render=function(a,g,c){var b,e,d,h,r=null,s=null,k=null,n="";this.valueFormatString||("dateTime"===this.parent.valueType?this.valueFormatString=this.parent.valueFormatString:(k=0,k="xySwapped"===this.chart.plotInfo.axisPlacement?50<this.parent.range?
|
|
866
|
+
0:500<this.chart.width&&25>this.parent.range?2:Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0):50<this.parent.range?0:Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0),this.valueFormatString=y.generateValueFormatString(this.parent.range,k)));var m=null===this.opacity?1:this.opacity,q=Math.abs("pixel"===this._thicknessType?this.thickness:this.parent.conversionParameters.pixelPerUnit*
|
|
867
|
+
this.thickness),f=this.chart.overlaidCanvasCtx,v=f.globalAlpha;f.beginPath();f.strokeStyle=this.color;f.lineWidth=q;f.save();this.labelFontSize=Math.abs(l(this.options.labelFontSize)?this.parent.labelFontSize:this.labelFontSize);this.labelMaxWidth=l(this.options.labelMaxWidth)?0.3*this.chart.width:this.labelMaxWidth;this.labelMaxHeight=l(this.options.labelWrap)||this.labelWrap?0.3*this.chart.height:1.5*this.labelFontSize+("object"===typeof this.labelPadding?(this.labelPadding.top||0)+(this.labelPadding.bottom||
|
|
868
|
+
0):2*this.labelPadding);k=new ka(f,{x:0,y:0,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,maxWidth:this.labelMaxWidth,maxHeight:this.labelMaxHeight,angle:this.labelAngle,text:n,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,padding:this.labelPadding,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle"});
|
|
869
|
+
if(this.snapToDataPoint){var u=0,n=[];if("xySwapped"===this.chart.plotInfo.axisPlacement){var z=null;if("bottom"===this.parent._position||"top"===this.parent._position)u=this.parent.dataSeries[0].axisX.convertPixelToValue({y:this.parent.sessionVariables.crosshairShownByPixel?this.chart.sessionVariables.mouseY:g});else if("left"===this.parent._position||"right"===this.parent._position)u=this.parent.convertPixelToValue({y:g});for(var t=0;t<this.parent.dataSeries.length;t++)(z=this.parent.dataSeries[t].getDataPointAtX(u,
|
|
870
|
+
!0,!0))&&0<=z.index&&(z.dataSeries=this.parent.dataSeries[t],null!==z.dataPoint.y&&z.dataSeries.visible&&n.push(z));z=null;if(0===n.length)return;n.sort(function(a,b){return a.distance-b.distance});var x=z=0;yPercent=cumulativeY=0;for(var u=Infinity,w,t=0;t<n.length;t++){if("rangeBar"===n[t].dataSeries.type||"error"===n[t].dataSeries.type){if(n[t].dataPoint.y)for(var D=0;D<n[t].dataPoint.y.length;D++)x=Math.abs(a-this.parent.convertValueToPixel(n[t].dataPoint.y[D])),x<=u&&(u=x,z=t)}else"stackedBar"===
|
|
871
|
+
n[t].dataSeries.type?(cumulativeY=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=Math.abs(a-this.parent.convertValueToPixel(cumulativeY)),x<=u&&(u=x,z=t)):"stackedBar100"===n[t].dataSeries.type?(x=n[0].dataPoint.x.getTime?n[0].dataPoint.x.getTime():n[0].dataPoint.x,l(w)&&(w=Math.abs(a-this.parent.convertValueToPixel(100*(n[0].dataSeries.dataPointEOs[n[0].index].cumulativeY/n[0].dataSeries.plotUnit.dataPointYSums[x])))),cumulativeY=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=n[t].dataPoint.x.getTime?
|
|
872
|
+
n[t].dataPoint.x.getTime():n[t].dataPoint.x,yPercent=100*(cumulativeY/n[t].dataSeries.plotUnit.dataPointYSums[x]),x=Math.abs(a-this.parent.convertValueToPixel(yPercent)),x<=w&&(w=x,z=t)):(x=Math.abs(a-this.parent.convertValueToPixel(n[t].dataPoint.y)),x<=u&&(u=x,z=t));l(w)||(u=Math.min(u,w))}w=n[z];t=0;if("bottom"===this.parent._position||"top"===this.parent._position){if("rangeBar"===w.dataSeries.type||"error"===w.dataSeries.type){u=Math.abs(a-this.parent.convertValueToPixel(w.dataPoint.y[0]));for(n=
|
|
873
|
+
0;n<w.dataPoint.y.length;n++)x=Math.abs(a-this.parent.convertValueToPixel(w.dataPoint.y[n])),x<u&&(u=x,t=n);r=1===f.lineWidth%2?(this.parent.convertValueToPixel(w.dataPoint.y[t])<<0)+0.5:this.parent.convertValueToPixel(w.dataPoint.y[t])<<0;this.value=w.dataPoint.y[t];0!==w.dataPoint.y[t]%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?
|
|
874
|
+
1:0)));k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataPoint.y[t]}):l(this.options.label)?ha(w.dataPoint.y[t],this.valueFormatString,this.chart._cultureInfo):this.label}else"stackedBar"===w.dataSeries.type?(u=Math.abs(a-this.parent.convertValueToPixel(n[0].dataPoint.y)),cumulativeY=w.dataSeries.dataPointEOs[w.index].cumulativeY,r=1===f.lineWidth%2?(this.parent.convertValueToPixel(cumulativeY)<<0)+0.5:this.parent.convertValueToPixel(cumulativeY)<<
|
|
875
|
+
0,this.value=cumulativeY,0!==cumulativeY%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:cumulativeY}):l(this.options.label)?ha(cumulativeY,this.valueFormatString,this.chart._cultureInfo):this.label):"stackedBar100"===
|
|
876
|
+
w.dataSeries.type?(u=Math.abs(a-this.parent.convertValueToPixel(n[0].dataPoint.y)),cumulativeY=w.dataSeries.dataPointEOs[w.index].cumulativeY,x=w.dataPoint.x.getTime?w.dataPoint.x.getTime():w.dataPoint.x,yPercent=100*(cumulativeY/w.dataSeries.plotUnit.dataPointYSums[x]),r=1===f.lineWidth%2?(this.parent.convertValueToPixel(yPercent)<<0)+0.5:this.parent.convertValueToPixel(yPercent)<<0,this.value=yPercent,0!==yPercent%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,
|
|
877
|
+
Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:yPercent}):l(this.options.label)?ha(yPercent,this.valueFormatString,this.chart._cultureInfo):this.label):(r=1===f.lineWidth%2?(this.parent.convertValueToPixel(w.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(w.dataPoint.y)<<0,this.value=w.dataPoint.y,0!==w.dataPoint.y%
|
|
878
|
+
1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataPoint.y}):l(this.options.label)?ha(w.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):this.label);b=e=r;d=this.chart.plotArea.y1;h=this.chart.plotArea.y2;
|
|
879
|
+
this.bounds={x1:b-q/2,y1:d,x2:e+q/2,y2:h};k.x=b-k.measureText().width/2;k.x+k.width>this.chart.bounds.x2?k.x=this.chart.bounds.x2-k.width:k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1);k.y=this.parent.lineCoordinates.y2+("top"===this.parent._position?-k.height+this.parent.tickLength:k.fontSize/2)+2;k.y+k.height>this.chart.bounds.y2?k.y=this.chart.bounds.y2-k.height:k.y<this.chart.bounds.y1&&(k.y=this.chart.bounds.y1)}else if("left"===this.parent._position||"right"===this.parent._position){d=
|
|
880
|
+
h=s=1===f.lineWidth%2?(this.parent.convertValueToPixel(w.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(w.dataPoint.x)<<0;b=this.chart.plotArea.x1;e=this.chart.plotArea.x2;this.bounds={x1:b,y1:d-q/2,x2:e,y2:h+q/2};t=!1;if(this.parent.labels)for(u=Math.ceil(this.parent.interval),n=0;n<this.parent.viewportMaximum;n+=u)if(this.parent.labels[n])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(u=this.parent.convertPixelToValue({y:g}),z=null,t=0;t<this.parent.dataSeries.length;t++)(z=
|
|
881
|
+
this.parent.dataSeries[t].getDataPointAtX(u,!0,!0))&&0<=z.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataPoint.x}):l(this.options.label)?z.dataPoint.label:this.label)}else"dateTime"!==this.parent.valueType||this.parent.logarithmic?(0!==w.dataPoint.x%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+
|
|
882
|
+
(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataPoint.x}):l(this.options.label)?ha(w.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label):k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataPoint.x}):l(this.options.label)?Ea(w.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):
|
|
883
|
+
this.label;this.value=w.dataPoint.x;k.y=h+k.fontSize/2-k.measureText().height/2+2;k.y-k.fontSize/2<this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2+2:k.y+k.measureText().height-k.fontSize/2>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2);"left"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}}else if("bottom"===this.parent._position||"top"===this.parent._position){u=
|
|
884
|
+
this.parent.convertPixelToValue({x:a});for(t=0;t<this.parent.dataSeries.length;t++)(z=this.parent.dataSeries[t].getDataPointAtX(u,!0,!0))&&0<=z.index&&(z.dataSeries=this.parent.dataSeries[t],null!==z.dataPoint.y&&z.dataSeries.visible&&n.push(z));if(0===n.length)return;n.sort(function(a,b){return a.distance-b.distance});w=n[0];b=e=r=1===f.lineWidth%2?(this.parent.convertValueToPixel(w.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(w.dataPoint.x)<<0;d=this.chart.plotArea.y1;h=this.chart.plotArea.y2;
|
|
885
|
+
this.bounds={x1:b-q/2,y1:d,x2:e+q/2,y2:h};t=!1;if(this.parent.labels)for(u=Math.ceil(this.parent.interval),n=0;n<this.parent.viewportMaximum;n+=u)if(this.parent.labels[n])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(u=this.parent.convertPixelToValue({x:a}),z=null,t=0;t<this.parent.dataSeries.length;t++)(z=this.parent.dataSeries[t].getDataPointAtX(u,!0,!0))&&0<=z.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,
|
|
886
|
+
value:w.dataPoint.x}):l(this.options.label)?z.dataPoint.label:this.label)}else"dateTime"!==this.parent.valueType||this.parent.logarithmic?(0!==w%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataPoint.x}):l(this.options.label)?
|
|
887
|
+
ha(w.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label):k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataPoint.x}):l(this.options.label)?Ea(w.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=w.dataPoint.x;k.x=b-k.measureText().width/2;k.x+k.width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.width);k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1);"bottom"===this.parent._position?
|
|
888
|
+
k.y=this.parent.lineCoordinates.y2+k.fontSize/2+2:"top"===this.parent._position&&(k.y=this.parent.lineCoordinates.y1-k.height+k.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position){!l(this.parent.dataSeries)&&0<this.parent.dataSeries.length&&(u=this.parent.dataSeries[0].axisX.convertPixelToValue({x:this.parent.sessionVariables.crosshairShownByPixel?this.chart.sessionVariables.mouseX:a}));for(t=0;t<this.parent.dataSeries.length;t++)(z=this.parent.dataSeries[t].getDataPointAtX(u,
|
|
889
|
+
!0,!0))&&0<=z.index&&(z.dataSeries=this.parent.dataSeries[t],null!==z.dataPoint.y&&z.dataSeries.visible&&n.push(z));if(0===n.length)return;n.sort(function(a,b){return a.distance-b.distance});x=z=0;u=Infinity;for(t=0;t<n.length;t++){if("rangeColumn"===n[t].dataSeries.type||"rangeArea"===n[t].dataSeries.type||"error"===n[t].dataSeries.type||"rangeSplineArea"===n[t].dataSeries.type||"candlestick"===n[t].dataSeries.type||"ohlc"===n[t].dataSeries.type||"boxAndWhisker"===n[t].dataSeries.type){if(n[t].dataPoint.y)for(D=
|
|
890
|
+
0;D<n[t].dataPoint.y.length;D++)x=Math.abs(g-this.parent.convertValueToPixel(n[t].dataPoint.y[D])),x<=u&&(u=x,z=t)}else"stackedColumn"===n[t].dataSeries.type?(a=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=Math.abs(g-this.parent.convertValueToPixel(a)),x<=u&&(u=x,z=t)):"stackedArea"===n[t].dataSeries.type?(a=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=Math.abs(g-this.parent.convertValueToPixel(a)),x<=u&&(u=x,z=t)):"stackedColumn100"===n[t].dataSeries.type||"stackedArea100"===
|
|
891
|
+
n[t].dataSeries.type?(x=n[0].dataPoint.x.getTime?n[0].dataPoint.x.getTime():n[0].dataPoint.x,l(w)&&(w=Math.abs(g-this.parent.convertValueToPixel(100*(n[0].dataSeries.dataPointEOs[n[0].index].cumulativeY/n[0].dataSeries.plotUnit.dataPointYSums[x])))),"stackedColumn100"===n[t].dataSeries.type?(s=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=n[t].dataPoint.x.getTime?n[t].dataPoint.x.getTime():n[t].dataPoint.x,a=100*(s/n[t].dataSeries.plotUnit.dataPointYSums[x]),x=Math.abs(g-this.parent.convertValueToPixel(a)),
|
|
892
|
+
x<=w&&(w=x,z=t)):"stackedArea100"===n[t].dataSeries.type&&(s=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=n[t].dataPoint.x.getTime?n[t].dataPoint.x.getTime():n[t].dataPoint.x,a=100*(s/n[t].dataSeries.plotUnit.dataPointYSums[x]),x=Math.abs(g-this.parent.convertValueToPixel(a)),x<=w&&(w=x,z=t))):"waterfall"===n[t].dataSeries.type?(x=Math.abs(g-this.parent.convertValueToPixel(n[t].dataSeries.dataPointEOs[n[t].index].cumulativeSum)),x<=u&&(w=u=x,z=t)):(x=Math.abs(g-this.parent.convertValueToPixel(n[t].dataPoint.y)),
|
|
893
|
+
x<=u&&(u=x,z=t));l(w)||(u=Math.min(u,w))}w=n[z];t=0;if("rangeColumn"===w.dataSeries.type||"rangeArea"===w.dataSeries.type||"error"===w.dataSeries.type||"rangeSplineArea"===w.dataSeries.type||"candlestick"===w.dataSeries.type||"ohlc"===w.dataSeries.type||"boxAndWhisker"===w.dataSeries.type){u=Math.abs(g-this.parent.convertValueToPixel(w.dataPoint.y[0]));for(n=0;n<w.dataPoint.y.length;n++)x=Math.abs(g-this.parent.convertValueToPixel(w.dataPoint.y[n])),x<u&&(u=x,t=n);s=1===f.lineWidth%2?(this.parent.convertValueToPixel(w.dataPoint.y[t])<<
|
|
894
|
+
0)+0.5:this.parent.convertValueToPixel(w.dataPoint.y[t])<<0;0!==w.dataPoint.y[t]%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0)));k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataPoint.y[t]}):l(this.options.label)?ha(w.dataPoint.y[t],this.valueFormatString,
|
|
895
|
+
this.chart._cultureInfo):this.label;this.value=w.dataPoint.y[t]}else"stackedColumn"===w.dataSeries.type?(a=w.dataSeries.dataPointEOs[w.index].cumulativeY,s=1===f.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?
|
|
896
|
+
this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:a}):l(this.options.label)?ha(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedArea"===w.dataSeries.type?(a=w.dataSeries.dataPointEOs[w.index].cumulativeY,s=1===f.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/
|
|
897
|
+
Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:a}):l(this.options.label)?ha(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedColumn100"===w.dataSeries.type?(s=w.dataSeries.dataPointEOs[w.index].cumulativeY,x=w.dataPoint.x.getTime?w.dataPoint.x.getTime():w.dataPoint.x,a=100*(s/w.dataSeries.plotUnit.dataPointYSums[x]),s=1===f.lineWidth%
|
|
898
|
+
2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:a}):l(this.options.label)?ha(a,this.valueFormatString,this.chart._cultureInfo):
|
|
899
|
+
this.label,this.value=a):"stackedArea100"===w.dataSeries.type?(s=w.dataSeries.dataPointEOs[w.index].cumulativeY,x=w.dataPoint.x.getTime?w.dataPoint.x.getTime():w.dataPoint.x,a=100*(s/w.dataSeries.plotUnit.dataPointYSums[x]),s=1===f.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>
|
|
900
|
+
this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:a}):l(this.options.label)?ha(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"waterfall"===w.dataSeries.type?(s=1===f.lineWidth%2?(this.parent.convertValueToPixel(w.dataSeries.dataPointEOs[w.index].cumulativeSum)<<0)+0.5:this.parent.convertValueToPixel(w.dataSeries.dataPointEOs[w.index].cumulativeSum)<<0,0!==
|
|
901
|
+
w.dataSeries.dataPointEOs[w.index].cumulativeSum%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataSeries.dataPointEOs[w.index].cumulativeSum}):l(this.options.label)?ha(w.dataSeries.dataPointEOs[w.index].cumulativeSum,
|
|
901
902
|
this.valueFormatString,this.chart._cultureInfo):this.label,this.value=w.dataSeries.dataPointEOs[w.index].cumulativeSum):(s=1===f.lineWidth%2?(this.parent.convertValueToPixel(w.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(w.dataPoint.y)<<0,0!==w.dataPoint.y%1&&l(this.options.valueFormatString)&&(this.valueFormatString=y.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?
|
|
902
903
|
this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:w.dataPoint.y}):l(this.options.label)?ha(w.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=w.dataPoint.y);d=h=s;b=this.chart.plotArea.x1;e=this.chart.plotArea.x2;this.bounds={x1:b,y1:d-q/2,x2:e,y2:h+q/2};k.y=h+k.fontSize/2-k.measureText().height/2+2;k.y-k.fontSize/2<this.chart.bounds.y1?k.y=this.chart.bounds.y1+k.fontSize/2+2:k.y+k.measureText().height-k.fontSize/2>this.chart.bounds.y2&&
|
|
903
904
|
(k.y=this.chart.bounds.y2-k.measureText().height+k.fontSize/2);"left"===this.parent._position?k.x=this.parent.lineCoordinates.x2-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}n=null;f.globalAlpha=m;0<q&&f.setLineDash&&f.setLineDash(H(this.lineDashType,q));if("bottom"===this.parent._position||"top"===this.parent._position)"top"===this.parent._position&&k.y-k.fontSize/2<this.chart.bounds.y1&&(k.y=this.chart.bounds.y1+k.fontSize/2),"bottom"===this.parent._position&&
|
|
@@ -988,7 +989,7 @@ onComplete:b});for(a=[];0<this.animations.length;)if(g=this.animations.shift(),c
|
|
|
988
989
|
ma)}},xClipAnimation:function(a,g){if(0!==a){var c=g.dest,b=g.source.canvas;c.save();0<a&&c.drawImage(b,0,0,b.width*a,b.height,0,0,b.width*a/ma,b.height/ma);c.restore()}},fadeInAnimation:function(a,g){if(0!==a){var c=g.dest,b=g.source.canvas;c.save();c.globalAlpha=a;c.drawImage(b,0,0,b.width,b.height,0,0,c.canvas.width/ma,c.canvas.height/ma);c.restore()}},easing:{linear:function(a,g,c,b){return c*a/b+g},easeOutQuad:function(a,g,c,b){return-c*(a/=b)*(a-2)+g},easeOutQuart:function(a,g,c,b){return-c*
|
|
989
990
|
((a=a/b-1)*a*a*a-1)+g},easeInQuad:function(a,g,c,b){return c*(a/=b)*a+g},easeInQuart:function(a,g,c,b){return c*(a/=b)*a*a*a+g}}},X={drawMarker:function(a,g,c,b,e,d,h,l){if(c){var s=1;c.fillStyle=d?d:"#000000";c.strokeStyle=h?h:"#000000";c.lineWidth=l?l:0;c.setLineDash&&c.setLineDash(H("solid",l));"circle"===b?(c.moveTo(a,g),c.beginPath(),c.arc(a,g,e/2,0,2*Math.PI,!1),d&&c.fill(),l&&(h?c.stroke():(s=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=s))):"square"===b?
|
|
990
991
|
(c.beginPath(),c.rect(a-e/2,g-e/2,e,e),d&&c.fill(),l&&(h?c.stroke():(s=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=s))):"triangle"===b?(c.beginPath(),c.moveTo(a-e/2,g+e/2),c.lineTo(a+e/2,g+e/2),c.lineTo(a,g-e/2),c.closePath(),d&&c.fill(),l&&(h?c.stroke():(s=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=s)),c.beginPath()):"cross"===b&&(c.strokeStyle=d,c.lineWidth=e/4,c.beginPath(),c.moveTo(a-e/2,g-e/2),c.lineTo(a+e/2,g+e/2),c.stroke(),
|
|
991
|
-
c.moveTo(a+e/2,g-e/2),c.lineTo(a-e/2,g+e/2),c.stroke())}},drawMarkers:function(a){for(var g=0;g<a.length;g++){var c=a[g];X.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return u}();s.version="v3.14.
|
|
992
|
+
c.moveTo(a+e/2,g-e/2),c.lineTo(a-e/2,g+e/2),c.stroke())}},drawMarkers:function(a){for(var g=0;g<a.length;g++){var c=a[g];X.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return u}();s.version="v3.14.7 GA";window.CanvasJS&&(s&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=s)})();
|
|
992
993
|
|
|
993
994
|
/*
|
|
994
995
|
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.
|