@canvasjs/charts 3.15.18 → 3.15.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/LICENSE +1 -1
  2. package/canvasjs.min.js +400 -400
  3. package/package.json +1 -1
package/canvasjs.min.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- CanvasJS Chart - v3.15.18 GA - https://canvasjs.com/
2
+ CanvasJS Chart - v3.15.19 GA - https://canvasjs.com/
3
3
  Copyright 2026 fenopix
4
4
 
5
5
  --------------------- License Information --------------------
@@ -598,407 +598,407 @@ p,q);r={markerType:r,markerColor:s,text:g,textBlock:null,chartType:p.type,marker
598
598
  p.legendText:this.itemTextFormatter?this.itemTextFormatter({chart:this.chart,legend:this.options,dataSeries:p,dataPoint:v}):v.name?v.name:"DataPoint: "+(w+1),s=v.legendMarkerColor?v.legendMarkerColor:p.legendMarkerColor?p.legendMarkerColor:v.color?v.color:p.color?p.color:p._colorSet[w%p._colorSet.length],u=0.75*this.lineHeight,y=v.legendMarkerBorderColor?v.legendMarkerBorderColor:p.legendMarkerBorderColor?p.legendMarkerBorderColor:v.markerBorderColor?v.markerBorderColor:p.markerBorderColor,t=v.legendMarkerBorderThickness?
599
599
  v.legendMarkerBorderThickness:p.legendMarkerBorderThickness?p.legendMarkerBorderThickness:v.markerBorderThickness||p.markerBorderThickness?Math.max(1,Math.round(0.2*u)):0,g=this.chart.replaceKeywordsWithValue(g,v,p,w),r={markerType:r,markerColor:s,text:g,textBlock:null,chartType:p.type,markerSize:u,dataSeriesIndex:q,dataPointIndex:w,markerBorderColor:y,markerBorderThickness:t};(v.showInLegend||p.showInLegend&&!1!==v.showInLegend)&&h.push(r)}}m(p.legendText)&&(p.legendText=p.name)}}!0===this.reversed&&
600
600
  h.reverse();if(0<h.length){p=null;g=v=w=0;v=null!==this.itemWidth?null!==this.itemMaxWidth?this.itemWidth=Math.min(this.itemWidth,this.itemMaxWidth,f):this.itemMaxWidth=Math.min(this.itemWidth,f):null!==this.itemMaxWidth?Math.min(this.itemMaxWidth,f):this.itemMaxWidth=f;u=0===u?0.75*this.lineHeight:u;v-=u+l;for(q=0;q<h.length;q++){r=h[q];s=v;if("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType)s-=2*0.1*this.lineHeight;if(!(0>=n||"undefined"===typeof n||0>=s||"undefined"===typeof s))if("horizontal"===
601
- this.orientation){r.textBlock=new ma(this.ctx,{x:0,y:0,maxWidth:s,maxHeight:this.itemWrap?n:this.lineHeight,angle:0,text:r.text,textAlign:this.itemTextAlign,fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"});r.textBlock.measureText();null!==this.itemWidth&&(r.textBlock.width=this.itemWidth-(u+l+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:0)));if(!p||
602
- p.width+Math.round(r.textBlock.width+u+l+(0===p.width?0:this.horizontalSpacing)+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:0))>f)p={items:[],width:0},k.push(p),this.height+=g,g=0;g=Math.max(g,r.textBlock.height?r.textBlock.height:this.lineHeight);r.textBlock.x=p.width;r.textBlock.y=0;p.width+=Math.round(r.textBlock.width+u+l+(0===p.width?0:this.horizontalSpacing)+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:
603
- 0));p.items.push(r);this.width=Math.max(p.width,this.width)}else r.textBlock=new ma(this.ctx,{x:0,y:0,maxWidth:v,maxHeight:!0===this.itemWrap?n:1.5*this.fontSize,angle:0,text:r.text,textAlign:this.itemTextAlign,fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"}),r.textBlock.measureText(),null!==this.itemWidth&&(r.textBlock.width=this.itemWidth-(u+l+("line"===r.chartType||"spline"===r.chartType||"stepLine"===
604
- r.chartType?2*0.1*this.lineHeight:0))),this.height<n-this.lineHeight?(p={items:[],width:0},k.push(p)):(p=k[w],w=(w+1)%k.length),p&&(this.height+=r.textBlock.height?r.textBlock.height:this.lineHeight,r.textBlock.x=p.width,r.textBlock.y=0,p.width+=Math.round(r.textBlock.width+u+l+(0===p.width?0:this.horizontalSpacing)+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:0)),p.items.push(r),this.width=Math.max(p.width,this.width))}this.height=!1===this.itemWrap?
605
- k.length*this.lineHeight:this.height+g;this.height=Math.min(n,this.height)>=this.lineHeight?Math.min(n,this.height):0;this.width=Math.min(f,this.width)}"top"===this.verticalAlign?(d="left"===this.horizontalAlign?e.x1:"right"===this.horizontalAlign?e.x2-this.width-2:e.x1+e.width/2-this.width/2,b=e.y1):"center"===this.verticalAlign?(d="left"===this.horizontalAlign?e.x1:"right"===this.horizontalAlign?e.x2-this.width-2:e.x1+e.width/2-this.width/2,b=e.y1+e.height/2-this.height/2):"bottom"===this.verticalAlign&&
606
- (d="left"===this.horizontalAlign?e.x1:"right"===this.horizontalAlign?e.x2-this.width-2:e.x1+e.width/2-this.width/2,b=e.y2-this.height);this.items=h;for(q=0;q<this.items.length;q++)r=h[q],r.id=++this.chart._eventManager.lastObjectId,this.chart._eventManager.objectMap[r.id]={id:r.id,objectType:"legendItem",legendItemIndex:q,dataSeriesIndex:r.dataSeriesIndex,dataPointIndex:r.dataPointIndex};this.markerSize=u;this.rows=k;0<h.length&&0<this.height&&a.layoutManager.registerSpace(c,{width:this.width+2+2,
607
- height:this.height+5+5});this.bounds={x1:d,y1:b,x2:d+this.width,y2:b+this.height}};F.prototype.render=function(){var a=this.bounds.x1,e=this.bounds.y1,c=this.markerMargin,b=this.maxWidth,d=this.maxHeight,f=this.markerSize,n=this.rows;(0<this.borderThickness&&this.borderColor||this.backgroundColor)&&this.ctx.roundRect(a,e,this.width,this.height,this.cornerRadius,this.borderThickness,this.backgroundColor,this.borderColor);for(var l=0,m=0;m<n.length;m++){for(var k=n[m],h=0,p=0;p<k.items.length;p++){var r=
608
- k.items[p],g=r.textBlock.x+a+(0===p?0.2*f:this.horizontalSpacing),s=e+l,u=g;this.chart.data[r.dataSeriesIndex].visible||(this.ctx.globalAlpha=0.5);this.ctx.save();this.ctx.beginPath();this.ctx.rect(a,e,b,Math.max(d-d%this.lineHeight,0));this.ctx.clip();if("line"===r.chartType||"stepLine"===r.chartType||"spline"===r.chartType)this.ctx.strokeStyle=r.lineColor,this.ctx.lineWidth=Math.ceil(this.lineHeight/8),this.ctx.beginPath(),this.ctx.moveTo(g-0.1*this.lineHeight,s+this.lineHeight/2),this.ctx.lineTo(g+
609
- 0.85*this.lineHeight,s+this.lineHeight/2),this.ctx.stroke(),u-=0.1*this.lineHeight;if("error"===r.chartType){this.ctx.strokeStyle=this.errorMarkerColor[0];this.ctx.lineWidth=f/8;this.ctx.beginPath();var y=g-0.08*this.lineHeight+0.1*this.lineHeight,t=s+0.15*this.lineHeight,w=0.7*this.lineHeight,v=w+0.02*this.lineHeight;this.ctx.moveTo(y,t);this.ctx.lineTo(y+w,t);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(y+w/2,t);this.ctx.lineTo(y+w/2,t+v);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(y,
610
- t+v);this.ctx.lineTo(y+w,t+v);this.ctx.stroke();this.errorMarkerColor.shift()}Y.drawMarker(g+f/2,s+this.lineHeight/2,this.ctx,r.markerType,"error"===r.chartType||"line"===r.chartType||"spline"===r.chartType?r.markerSize/2:r.markerSize,r.markerColor,r.markerBorderColor,r.markerBorderThickness);r.textBlock.x=g+c+f;if("line"===r.chartType||"stepLine"===r.chartType||"spline"===r.chartType)r.textBlock.x+=0.1*this.lineHeight;r.textBlock.y=Math.round(s+this.lineHeight/2);r.textBlock.render(!0);this.ctx.restore();
611
- h=0<p?Math.max(h,r.textBlock.height?r.textBlock.height:this.lineHeight):r.textBlock.height?r.textBlock.height:this.lineHeight;this.chart.data[r.dataSeriesIndex].visible||(this.ctx.globalAlpha=1);g=X(r.id);this.ghostCtx.fillStyle=g;this.ghostCtx.beginPath();this.ghostCtx.fillRect(u,r.textBlock.y-this.lineHeight/2,r.textBlock.x+r.textBlock.width-u,r.textBlock.height?r.textBlock.height:this.lineHeight);r.x1=this.chart._eventManager.objectMap[r.id].x1=u;r.y1=this.chart._eventManager.objectMap[r.id].y1=
612
- r.textBlock.y-this.lineHeight/2;r.x2=this.chart._eventManager.objectMap[r.id].x2=r.textBlock.x+r.textBlock.width;r.y2=this.chart._eventManager.objectMap[r.id].y2=r.textBlock.y+(r.textBlock.height?r.textBlock.height:this.lineHeight)-this.lineHeight/2}l+=h}};ra(U,T);U.prototype.getDefaultAxisPlacement=function(){var a=this.type;if("column"===a||"line"===a||"stepLine"===a||"spline"===a||"area"===a||"stepArea"===a||"splineArea"===a||"stackedColumn"===a||"stackedLine"===a||"bubble"===a||"scatter"===a||
613
- "stackedArea"===a||"stackedColumn100"===a||"stackedLine100"===a||"stackedArea100"===a||"candlestick"===a||"ohlc"===a||"rangeColumn"===a||"rangeArea"===a||"rangeSplineArea"===a||"boxAndWhisker"===a||"waterfall"===a)return"normal";if("bar"===a||"stackedBar"===a||"stackedBar100"===a||"rangeBar"===a)return"xySwapped";if("pie"===a||"doughnut"===a||"funnel"===a||"pyramid"===a)return"none";"error"!==a&&window.console.log("Unknown Chart Type: "+a);return null};U.getDefaultLegendMarker=function(a){if("column"===
614
- a||"stackedColumn"===a||"stackedLine"===a||"bar"===a||"stackedBar"===a||"stackedBar100"===a||"bubble"===a||"scatter"===a||"stackedColumn100"===a||"stackedLine100"===a||"stepArea"===a||"candlestick"===a||"ohlc"===a||"rangeColumn"===a||"rangeBar"===a||"rangeArea"===a||"rangeSplineArea"===a||"boxAndWhisker"===a||"waterfall"===a)return"square";if("line"===a||"stepLine"===a||"spline"===a||"pie"===a||"doughnut"===a)return"circle";if("area"===a||"splineArea"===a||"stackedArea"===a||"stackedArea100"===a||
615
- "funnel"===a||"pyramid"===a)return"triangle";if("error"===a)return"none";window.console.log("Unknown Chart Type: "+a);return null};U.prototype.getDataPointAtX=function(a,e,c){if(!this.dataPoints||0===this.dataPoints.length)return null;var b={dataPoint:null,distance:Infinity,index:NaN},d=null,f=0,n=0,l=1,h=Infinity,k=0,q=0,p=0;"none"!==this.chart.plotInfo.axisPlacement&&(this.axisX.logarithmic?(p=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x),p=1<p?Math.min(Math.max((this.dataPoints.length-
616
- 1)/p*Math.log(a/this.dataPoints[0].x)>>0,0),this.dataPoints.length):0):(p=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0<p?Math.min(Math.max((this.dataPoints.length-1)/p*(a-this.dataPoints[0].x)>>0,0),this.dataPoints.length):0));for(;;){n=0<l?p+f:p-f;if(0<=n&&n<this.dataPoints.length){var d=this.dataPoints[n],r=this.axisX&&this.axisX.logarithmic?d.x>a?d.x/a:a/d.x:Math.abs(d.x-a);r<b.distance&&(m(c)||c&&!m(d.y))&&(b.dataPoint=d,b.distance=r,b.index=n);d=r;d<=h?h=d:0<l?k++:q++;
617
- if(1E3<k&&1E3<q)break}else if(0>p-f&&p+f>=this.dataPoints.length)break;-1===l?(f++,l=1):l=-1}return e||(b.dataPoint.x.getTime?b.dataPoint.x.getTime():b.dataPoint.x)!==(a.getTime?a.getTime():a)?e&&null!==b.dataPoint?b:null:b};U.prototype.getDataPointAtXY=function(a,e,c){if(!this.dataPoints||0===this.dataPoints.length||a<this.chart.plotArea.x1||a>this.chart.plotArea.x2||e<this.chart.plotArea.y1||e>this.chart.plotArea.y2)return null;c=c||!1;var b=[],d=0,f=0,n=1,l=!1,h=Infinity,k=0,q=0,p=0;if("none"!==
618
- this.chart.plotInfo.axisPlacement)if(p=(this.chart.axisX[0]?this.chart.axisX[0]:this.chart.axisX2[0]).getXValueAt({x:a,y:e}),this.axisX.logarithmic)var r=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x),p=1<r?Math.min(Math.max((this.dataPoints.length-1)/r*Math.log(p/this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;else r=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0<r?Math.min(Math.max((this.dataPoints.length-1)/r*(p-this.dataPoints[0].x)>>0,0),
619
- this.dataPoints.length):0;for(;;){f=0<n?p+d:p-d;if(0<=f&&f<this.dataPoints.length){var r=this.chart._eventManager.objectMap[this.dataPointIds[f]],g=this.dataPoints[f],s=null;if(r){switch(this.type){case "column":case "stackedColumn":case "stackedColumn100":case "bar":case "stackedBar":case "stackedBar100":case "rangeColumn":case "rangeBar":case "waterfall":case "error":a>=r.x1&&(a<=r.x2&&e>=r.y1&&e<=r.y2)&&(b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(r.x1-a),Math.abs(r.x2-
620
- a),Math.abs(r.y1-e),Math.abs(r.y2-e))}),l=!0);break;case "line":case "stepLine":case "spline":case "area":case "stepArea":case "stackedArea":case "stackedArea100":case "splineArea":case "scatter":var u=W("markerSize",g,this)||4,y=c?20:u,s=Math.sqrt(Math.pow(r.x1-a,2)+Math.pow(r.y1-e,2));s<=y&&b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:s});r=Math.abs(r.x1-a);r<=h?h=r:0<n?k++:q++;s<=u/2&&(l=!0);break;case "rangeArea":case "rangeSplineArea":u=W("markerSize",g,this)||4;y=c?20:u;s=Math.min(Math.sqrt(Math.pow(r.x1-
621
- a,2)+Math.pow(r.y1-e,2)),Math.sqrt(Math.pow(r.x1-a,2)+Math.pow(r.y2-e,2)));s<=y&&b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:s});r=Math.abs(r.x1-a);r<=h?h=r:0<n?k++:q++;s<=u/2&&(l=!0);break;case "bubble":u=r.size;s=Math.sqrt(Math.pow(r.x1-a,2)+Math.pow(r.y1-e,2));s<=u/2&&(b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:s}),l=!0);break;case "pie":case "doughnut":u=r.center;y="doughnut"===this.type?r.percentInnerRadius*r.radius:0;s=Math.sqrt(Math.pow(u.x-a,2)+Math.pow(u.y-
622
- e,2));s<r.radius&&s>y&&(s=Math.atan2(e-u.y,a-u.x),0>s&&(s+=2*Math.PI),s=Number(((180*(s/Math.PI)%360+360)%360).toFixed(12)),u=Number(((180*(r.startAngle/Math.PI)%360+360)%360).toFixed(12)),y=Number(((180*(r.endAngle/Math.PI)%360+360)%360).toFixed(12)),0===y&&1<r.endAngle&&(y=360),u>=y&&(0!==g.y&&!m(g.y))&&(y+=360,s<u&&(s+=360)),s>u&&s<y&&(b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:0}),l=!0));break;case "funnel":case "pyramid":s=r.funnelSection;e>=s.y1&&e<s.y4&&(s.y6?e>=s.y6?(f=
623
- s.x6+(s.x5-s.x6)/(s.y5-s.y6)*(e-s.y6),s=s.x3+(s.x4-s.x3)/(s.y4-s.y3)*(e-s.y3)):(f=s.x1+(s.x6-s.x1)/(s.y6-s.y1)*(e-s.y1),s=s.x2+(s.x3-s.x2)/(s.y3-s.y2)*(e-s.y2)):(f=s.x1+(s.x4-s.x1)/(s.y4-s.y1)*(e-s.y1),s=s.x2+(s.x3-s.x2)/(s.y3-s.y2)*(e-s.y2)),a>f&&a<s&&(b.push({dataPoint:g,dataPointIndex:r.dataPointIndex,dataSeries:this,distance:0}),l=!0));break;case "boxAndWhisker":if(a>=r.x1-r.borderThickness/2&&a<=r.x2+r.borderThickness/2&&e>=r.y4-r.borderThickness/2&&e<=r.y1+r.borderThickness/2||Math.abs(r.x2-
624
- a+r.x1-a)<r.borderThickness&&e>=r.y1&&e<=r.y4)b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(r.x1-a),Math.abs(r.x2-a),Math.abs(r.y2-e),Math.abs(r.y3-e))}),l=!0;break;case "candlestick":if(a>=r.x1-r.borderThickness/2&&a<=r.x2+r.borderThickness/2&&e>=r.y2-r.borderThickness/2&&e<=r.y3+r.borderThickness/2||Math.abs(r.x2-a+r.x1-a)<r.borderThickness&&e>=r.y1&&e<=r.y4)b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(r.x1-a),Math.abs(r.x2-a),
625
- Math.abs(r.y2-e),Math.abs(r.y3-e))}),l=!0;break;case "ohlc":if(Math.abs(r.x2-a+r.x1-a)<r.borderThickness&&e>=r.y2&&e<=r.y3||a>=r.x1&&a<=(r.x2+r.x1)/2&&e>=r.y1-r.borderThickness/2&&e<=r.y1+r.borderThickness/2||a>=(r.x1+r.x2)/2&&a<=r.x2&&e>=r.y4-r.borderThickness/2&&e<=r.y4+r.borderThickness/2)b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(r.x1-a),Math.abs(r.x2-a),Math.abs(r.y2-e),Math.abs(r.y3-e))}),l=!0}if(l||1E3<k&&1E3<q)break}}else if(0>p-d&&p+d>=this.dataPoints.length)break;
626
- -1===n?(d++,n=1):n=-1}a=null;for(e=0;e<b.length;e++)a?b[e].distance<=a.distance&&(a=b[e]):a=b[e];return a};U.prototype.getMarkerProperties=function(a,e,c,b){var d=this.dataPoints,f=d[a].markerColor?d[a].markerColor:this.markerColor?this.markerColor:d[a].color?d[a].color:this.color?this.color:this._colorSet[a%this._colorSet.length],n=d[a].markerBorderColor?d[a].markerBorderColor:this.markerBorderColor?this.markerBorderColor:null,l=m(d[a].markerBorderThickness)?this.markerBorderThickness?this.markerBorderThickness:
627
- null:d[a].markerBorderThickness,h=d[a].markerType?d[a].markerType:this.markerType;a=m(d[a].markerSize)?this.markerSize:d[a].markerSize;return{x:e,y:c,ctx:b,type:h,size:a,color:f,borderColor:n,borderThickness:l}};ra(A,T);A.prototype.createExtraLabelsForLog=function(a){a=(a||0)+1;if(!(5<a)){var e=this.logLabelValues[0]||this.intervalStartPosition;if(Math.log(this.range)/Math.log(e/this.viewportMinimum)<this.noTicks-1){for(var c=A.getNiceNumber((e-this.viewportMinimum)/Math.min(Math.max(2,this.noTicks-
628
- this.logLabelValues.length),3),!0),b=Math.ceil(this.viewportMinimum/c)*c;b<e;b+=c)b<this.viewportMinimum||this.logLabelValues.push(b);this.logLabelValues.sort(Ua);this.createExtraLabelsForLog(a)}}};A.prototype.createLabels=function(){var a,e,c=0,b=0,d,f=0,n=0,l=0,b=this.interval,h=0,k,q=0.6*this.chart.height,p;a=!1;var r=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],g=r.length?m(this.scaleBreaks.firstBreakIndex)?0:this.scaleBreaks.firstBreakIndex:0;if("axisX"!==this.type||"dateTime"!==this.valueType||
629
- this.logarithmic){d=this.viewportMaximum;if(this.labels&&m(this.options.interval)){a=Math.ceil(b);l=Math.ceil(this.intervalStartPosition);b=!1;for(c=l;c<this.viewportMaximum;c+=a)if(this.labels[c])b=!0;else{b=!1;break}b&&(this.interval=a,this.intervalStartPosition=l)}if(this.logarithmic&&!this.equidistantInterval)for(this.logLabelValues||(this.logLabelValues=[],this.createExtraLabelsForLog()),b=0,l=g;b<this.logLabelValues.length;b++)if(c=this.logLabelValues[b],c<this.viewportMinimum)b++;else{for(;l<
630
- r.length&&c>r[l].endValue;l++);a=l<r.length&&c>=r[l].startValue&&c<=r[l].endValue;p=c;a||(a=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:p,label:this.labels[p]?this.labels[p]:null}):"axisX"===this.type&&this.labels[p]?this.labels[p]:fa(p,this.valueFormatString,this.chart._cultureInfo),a=new ma(this.ctx,{x:0,y:0,maxWidth:f,maxHeight:n,angle:this.labelAngle,text:this.prefix+a+this.suffix,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,
631
- cornerRadius:this.labelCornerRadius,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle",borderThickness:this.labelBorderThickness,padding:this.labelPadding}),this._labels.push({position:p,textBlock:a,effectiveHeight:null}))}l=g;for(c=this.intervalStartPosition;c<=d;c=parseFloat(this.logarithmic&&this.equidistantInterval?1E-12>c*Math.pow(this.logarithmBase,
632
- this.interval)?c*Math.pow(this.logarithmBase,this.interval):(c*Math.pow(this.logarithmBase,this.interval)).toFixed(12):1E-12>this.interval?c+this.interval:(c+this.interval).toFixed(12))){for(;l<r.length&&c>r[l].endValue;l++);a=l<r.length&&c>=r[l].startValue&&c<=r[l].endValue;p=c;a?(a=Math.floor((r[l].endValue-c)/this.interval),c=parseFloat(1E-12>this.interval?this.logarithmic&&this.equidistantInterval?c*Math.pow(this.logarithmBase,this.interval*a):c+this.interval*a:(this.logarithmic&&this.equidistantInterval?
633
- c*Math.pow(this.logarithmBase,this.interval*a):c+this.interval*a).toFixed(12))):(a=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:p,label:this.labels[p]?this.labels[p]:null}):"axisX"===this.type&&this.labels[p]?this.labels[p]:fa(p,this.valueFormatString,this.chart._cultureInfo),a=new ma(this.ctx,{x:0,y:0,maxWidth:f,maxHeight:n,angle:this.labelAngle,text:this.prefix+a+this.suffix,textAlign:this.labelTextAlign,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,
634
- borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle",padding:this.labelPadding}),this._labels.push({position:p,textBlock:a,effectiveHeight:null}))}}else for(this.intervalStartPosition=this.getLabelStartPoint(new Date(this.viewportMinimum),this.intervalType,this.interval),d=Ta(new Date(this.viewportMaximum),
635
- this.interval,this.intervalType),l=g,c=this.intervalStartPosition;c<d;Ta(c,b,this.intervalType)){for(g=c.getTime();l<r.length&&g>r[l].endValue;l++);p=g;(a=l<r.length&&g>=r[l].startValue&&g<=r[l].endValue)?(a=b,0<=Ba("second minute hour day week month year".split(" ")).indexOf(this.intervalType)&&(a*=R[this.intervalType+"Duration"]),Ta(c,a*Math.floor((r[l].endValue-g)/a),"millisecond")):(a=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:new Date(p),label:this.labels[p]?
636
- this.labels[p]:null}):"axisX"===this.type&&this.labels[p]?this.labels[p]:Ea(p,this.valueFormatString,this.chart._cultureInfo),a=new ma(this.ctx,{x:0,y:0,maxWidth:f,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,maxHeight:n,angle:this.labelAngle,text:this.prefix+a+this.suffix,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,
637
- fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle",padding:this.labelPadding}),this._labels.push({position:p,textBlock:a,effectiveHeight:null,breaksLabelType:void 0}))}if("bottom"===this._position||"top"===this._position)m(this.conversionParameters)&&this.calculateValueToPixelConversionParameters(),c=this.conversionParameters&&this.conversionParameters.range?this.conversionParameters.range:this.range,h=this.logarithmic&&!this.equidistantInterval&&2<=this._labels.length?
638
- 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(c)/Math.log(this.logarithmBase):Math.abs(c))*R[this.intervalType+"Duration"]*this.interval,f="undefined"===typeof this.options.labelMaxWidth?0.5*this.chart.width>>0:this.options.labelMaxWidth,this.chart.panEnabled||
639
- (n="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&&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/
640
- 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))*R[this.intervalType+"Duration"]*this.interval,this.chart.panEnabled||(f="undefined"===typeof this.options.labelMaxWidth?0.3*this.chart.width>>0:this.options.labelMaxWidth),n="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=
641
- this._labels[b].textBlock;!this.labelAutoFit&&0>=f&&(f="undefined"===typeof this.options.labelMaxWidth?0.5*this.chart.width>>0:this.options.labelMaxWidth);a.maxWidth=f;!this.labelAutoFit&&0>=n&&(n="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));a.maxHeight=n;var s=a.measureText();k=s.height}d=[];b=r=0;if(this.labelAutoFit||
642
- this.options.labelAutoFit)if(m(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(f=Math.floor(0.9*h),g=0,!this.chart.panEnabled&&1<=this._labels.length){this.sessionVariables.labelFontSize=this.labelFontSize;this.sessionVariables.labelMaxWidth=f;this.sessionVariables.labelMaxHeight=n;this.sessionVariables.labelAngle=
643
- 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 x,l=a.text.split(" "),b=0;b<l.length;b++)p=l[b],this.ctx.font=a.fontStyle+" "+a.fontWeight+" "+a.fontSize+"px "+a.fontFamily,p=this.ctx.measureText(p),p.width>g&&(x=c,g=p.width)}c=0;for(c=this.intervalStartPosition<this.viewportMinimum?1:0;c<this._labels.length;c++)if(!this._labels[c].breaksLabelType){a=this._labels[c].textBlock;
644
- s=a.measureText();for(l=c+1;l<this._labels.length;l++)if(!this._labels[l].breaksLabelType){e=this._labels[l].textBlock;e=e.measureText();break}d.push(a.height);this.sessionVariables.labelMaxHeight=Math.max.apply(Math,d);Math.cos(Math.PI/180*Math.abs(this.labelAngle));Math.sin(Math.PI/180*Math.abs(this.labelAngle));l=f*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(n-a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle));if(m(this.options.labelAngle)&&isNaN(this.options.labelAngle)&&0!==this.options.labelAngle)if(this.sessionVariables.labelMaxHeight=
645
- 0===this.labelAngle?n:Math.min((l-f*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)),l),p=(q-(k+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(-25)))/Math.sin(Math.PI/180*Math.abs(-25)),!m(this.options.labelWrap))this.labelWrap?m(this.options.labelMaxWidth)?(this.sessionVariables.labelMaxWidth=Math.min(Math.max(f,g),p),this.sessionVariables.labelWrap=this.labelWrap,e&&s.width+e.width>>0>2*f&&(this.sessionVariables.labelAngle=-25)):(this.sessionVariables.labelWrap=
646
- this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>f?-25:this.sessionVariables.labelAngle):m(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelMaxWidth=f,e&&s.width+e.width>>0>2*f&&(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=p)):(this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>
647
- f?-25:this.sessionVariables.labelAngle,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelWrap=this.labelWrap);else{if(m(this.options.labelWrap))if(!m(this.options.labelMaxWidth))this.options.labelMaxWidth<f?(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=l):(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=
648
- n);else if(!m(e))if(l=s.width+e.width>>0,b=this.labelFontSize,g<f)l-2*f>r&&(r=l-2*f,l>=2*f&&l<2.2*f?(this.sessionVariables.labelMaxWidth=f,m(this.options.labelFontSize)&&12<b&&(b=Math.floor(12/13*b),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?b:this.options.labelFontSize,this.sessionVariables.labelAngle=this.labelAngle):l>=2.2*f&&l<2.8*f?(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=p,this.sessionVariables.labelFontSize=b):l>=2.8*
649
- f&&l<3.2*f?(this.sessionVariables.labelMaxWidth=Math.max(f,g),this.sessionVariables.labelWrap=!0,m(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?b:this.options.labelFontSize,this.sessionVariables.labelAngle=this.labelAngle):l>=3.2*f&&l<3.6*f?(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=p,this.sessionVariables.labelFontSize=
650
- this.labelFontSize):l>3.6*f&&l<5*f?(m(this.options.labelFontSize)&&12<b&&(b=Math.floor(12/13*b),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?b:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=p):l>5*f&&(this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=f,this.sessionVariables.labelFontSize=b,this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelAngle=
651
- this.labelAngle));else if(x===c&&(0===x&&g+this._labels[x+1].textBlock.measureText().width-2*f>r||x===this._labels.length-1&&g+this._labels[x-1].textBlock.measureText().width-2*f>r||0<x&&x<this._labels.length-1&&g+this._labels[x+1].textBlock.measureText().width-2*f>r&&g+this._labels[x-1].textBlock.measureText().width-2*f>r))r=0===x?g+this._labels[x+1].textBlock.measureText().width-2*f:g+this._labels[x-1].textBlock.measureText().width-2*f,this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?
652
- b:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=p;else if(0===r)for(this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?b:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,b=0;b<this._labels.length;b++)a=this._labels[b].textBlock,a.maxWidth=this.sessionVariables.labelMaxWidth=Math.min(Math.max(f,g),p),s=a.measureText(),b<this._labels.length-1&&(l=b+1,e=this._labels[l].textBlock,e.maxWidth=
653
- this.sessionVariables.labelMaxWidth=Math.min(Math.max(f,g),p),e=e.measureText(),s.width+e.width>>0>2*f&&(this.sessionVariables.labelAngle=-25))}else(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxHeight=0===this.labelAngle?n:Math.min((l-f*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)),l),p=0!=this.labelAngle?(q-(k+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)):
654
- f,this.sessionVariables.labelMaxHeight=this.labelWrap?(q-p*Math.sin(Math.PI/180*Math.abs(this.labelAngle)))/Math.cos(Math.PI/180*Math.abs(this.labelAngle)):1.5*this.labelFontSize,m(this.options.labelWrap))?m(this.options.labelWrap)&&(this.labelWrap&&!m(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:p,this.sessionVariables.labelMaxHeight=n):(this.sessionVariables.labelAngle=this.labelAngle,
655
- this.sessionVariables.labelMaxWidth=p,this.sessionVariables.labelMaxHeight=Math.max(l,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:p):(m(this.options.labelMaxWidth),this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:p,this.sessionVariables.labelWrap=this.labelWrap),this.sessionVariables.labelMaxHeight=
656
- n)}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=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=
657
- this._labels[c].textBlock,a.maxWidth=this.labelMaxWidth=m(this.options.labelMaxWidth)?m(this.sessionVariables.labelMaxWidth)?this.sessionVariables.labelMaxWidth=f:this.sessionVariables.labelMaxWidth:this.options.labelMaxWidth,a.fontSize=this.labelFontSize=m(this.options.labelFontSize)?m(this.sessionVariables.labelFontSize)?this.sessionVariables.labelFontSize=this.labelFontSize:this.sessionVariables.labelFontSize:this.options.labelFontSize,a.angle=this.labelAngle=m(this.options.labelAngle)?m(this.sessionVariables.labelAngle)?
658
- this.sessionVariables.labelAngle=this.labelAngle:this.sessionVariables.labelAngle:this.labelAngle,a.wrap=this.labelWrap=m(this.options.labelWrap)?m(this.sessionVariables.labelWrap)?this.sessionVariables.labelWrap=this.labelWrap:this.sessionVariables.labelWrap:this.options.labelWrap,a.maxHeight=m(this.sessionVariables.labelMaxHeight)?this.sessionVariables.labelMaxHeight=n:this.sessionVariables.labelMaxHeight,a.measureText();else if("left"===this._position||"right"===this._position)if(f=m(this.options.labelMaxWidth)?
659
- 0.3*this.chart.width>>0:this.options.labelMaxWidth,n="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=f;this.sessionVariables.labelMaxHeight=n;this.sessionVariables.labelAngle=m(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle;this.sessionVariables.labelWrap=this.labelWrap;for(c=0;c<
660
- this._labels.length;c++)if(!this._labels[c].breaksLabelType){a=this._labels[c].textBlock;s=a.measureText();for(l=c+1;l<this._labels.length;l++)if(!this._labels[l].breaksLabelType){e=this._labels[l].textBlock;e=e.measureText();break}d.push(a.height);this.sessionVariables.labelMaxHeight=Math.max.apply(Math,d);l=f*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(n-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));
661
- m(this.options.labelAngle)&&isNaN(this.options.labelAngle)&&0!==this.options.labelAngle?m(this.options.labelWrap)?m(this.options.labelWrap)&&(m(this.options.labelMaxWidth)?m(e)||(k=s.height+e.height>>0,k-2*n>b&&(b=k-2*n,k>=2*n&&k<2.4*n?(m(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize):
662
- k>=2.4*n&&k<2.8*n?(this.sessionVariables.labelMaxHeight=l,this.sessionVariables.labelFontSize=this.labelFontSize,this.sessionVariables.labelWrap=!0):k>=2.8*n&&k<3.2*n?(this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelWrap=!0,m(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelAngle=
663
- m(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle):k>=3.2*n&&k<3.6*n?(this.sessionVariables.labelMaxHeight=l,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelFontSize=this.labelFontSize):k>3.6*n&&k<10*n?(m(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelMaxWidth=
664
- f,this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelAngle=m(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle):k>10*n&&k<50*n&&(m(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelMaxWidth=f,this.sessionVariables.labelAngle=
665
- m(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle))):(this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth)):(this.sessionVariables.labelMaxWidth=this.labelWrap?this.options.labelMaxWidth?this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth:this.labelMaxWidth?this.options.labelMaxWidth?this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth:f,this.sessionVariables.labelMaxHeight=
666
- n):(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxWidth=0===this.labelAngle?f:Math.min((l-n*Math.sin(Math.PI/180*Math.abs(this.labelAngle)))/Math.cos(Math.PI/180*Math.abs(this.labelAngle)),n),m(this.options.labelWrap))?m(this.options.labelWrap)&&(this.labelWrap&&!m(this.options.labelMaxWidth)?(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth,this.sessionVariables.labelWrap=this.labelWrap,
667
- this.sessionVariables.labelMaxHeight=l):(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:f,this.sessionVariables.labelMaxHeight=0===this.labelAngle?n:l,m(this.options.labelMaxWidth)&&(this.sessionVariables.labelAngle=this.labelAngle))):this.options.labelWrap?(this.sessionVariables.labelMaxHeight=0===this.labelAngle?n:l,this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=f):(this.sessionVariables.labelMaxHeight=n,m(this.options.labelMaxWidth),
668
- 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,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,
669
- a.measureText()}else for(m(this.chart.stockChart)||this.chart.isNavigator||(this.sessionVariables.labelMaxHeight=n),c=0;c<this._labels.length;c++)a=this._labels[c].textBlock,a.maxWidth=this.labelMaxWidth=m(this.options.labelMaxWidth)?m(this.sessionVariables.labelMaxWidth)?this.sessionVariables.labelMaxWidth=f:this.sessionVariables.labelMaxWidth:this.options.labelMaxWidth,a.fontSize=this.labelFontSize=m(this.options.labelFontSize)?m(this.sessionVariables.labelFontSize)?this.sessionVariables.labelFontSize=
670
- this.labelFontSize:this.sessionVariables.labelFontSize:this.options.labelFontSize,a.angle=this.labelAngle=m(this.options.labelAngle)?m(this.sessionVariables.labelAngle)?this.sessionVariables.labelAngle=this.labelAngle:this.sessionVariables.labelAngle:this.labelAngle,a.wrap=this.labelWrap=m(this.options.labelWrap)?m(this.sessionVariables.labelWrap)?this.sessionVariables.labelWrap=this.labelWrap:this.sessionVariables.labelWrap:this.options.labelWrap,a.maxHeight=m(this.sessionVariables.labelMaxHeight)?
671
- this.sessionVariables.labelMaxHeight=n:this.sessionVariables.labelMaxHeight,a.measureText();for(c=0;c<this.stripLines.length;c++){var n=this.stripLines[c],y;n.labelFontSize="outside"===n.labelPlacement&&m(n.options.labelFontSize)?this.labelFontSize:n.labelFontSize;n.labelFontFamily="outside"===n.labelPlacement&&m(n.options.labelFontFamily)?this.labelFontFamily:n.labelFontFamily;n.labelFontWeight="outside"===n.labelPlacement&&m(n.options.labelFontWeight)?this.labelFontWeight:n.labelFontWeight;n.labelFontStyle=
672
- "outside"===n.labelPlacement&&m(n.options.labelFontStyle)?this.labelFontStyle:n.labelFontStyle;if("outside"===n.labelPlacement){e=this.sessionVariables.labelMaxWidth;if("bottom"===this._position||"top"===this._position)m(n.options.labelWrap)&&!m(this.sessionVariables.stripLineLabelMaxHeight)?y=this.sessionVariables.stripLineLabelMaxHeight:this.sessionVariables.stripLineLabelMaxHeight=y=n.labelWrap?0.8*this.chart.height>>0:1.5*n.labelFontSize+("object"===typeof n.labelPadding?(n.labelPadding.top||
673
- 0)+(n.labelPadding.bottom||0):2*n.labelPadding);if("left"===this._position||"right"===this._position)m(n.options.labelWrap)&&!m(this.sessionVariables.stripLineLabelMaxHeight)?y=this.sessionVariables.stripLineLabelMaxHeight:this.sessionVariables.stripLineLabelMaxHeight=y=n.labelWrap?0.8*this.chart.width>>0:1.5*n.labelFontSize+("object"===typeof n.labelPadding?(n.labelPadding.top||0)+(n.labelPadding.bottom||0):2*n.labelPadding);m(n.labelBackgroundColor)&&(n.labelBackgroundColor="#EEEEEE")}else e="bottom"===
674
- this._position||"top"===this._position?0.9*this.chart.width>>0:0.9*this.chart.height>>0,y=m(n.options.labelWrap)||n.labelWrap?"bottom"===this._position||"top"===this._position?0.8*this.chart.width>>0:0.8*this.chart.height>>0:1.5*n.labelFontSize+("object"===typeof n.labelPadding?(n.labelPadding.top||0)+(n.labelPadding.bottom||0):2*n.labelPadding),m(n.labelBackgroundColor)&&(m(n.startValue)&&0!==n.startValue?n.labelBackgroundColor=u?"transparent":null:n.labelBackgroundColor="#EEEEEE");a=new ma(this.ctx,
675
- {x:0,y:0,backgroundColor:n.labelBackgroundColor,borderColor:n.labelBorderColor,borderThickness:n.labelBorderThickness,cornerRadius:n.labelCornerRadius,maxWidth:n.options.labelMaxWidth?n.options.labelMaxWidth:e,maxHeight:y,angle:this.labelAngle,text:n.labelFormatter?n.labelFormatter({chart:this.chart,axis:this,stripLine:n.options}):n.label,textAlign:n.labelTextAlign,fontSize:n.labelFontSize,fontFamily:n.labelFontFamily,fontWeight:n.labelFontWeight,fontColor:n.labelFontColor||n.color,fontStyle:n.labelFontStyle,
676
- textBaseline:"middle",padding:n.labelPadding});this._stripLineLabels.push({position:n.value,textBlock:a,effectiveHeight:null,stripLine:n})}};A.prototype.createLabelsAndCalculateWidth=function(){var a=0,e=0;this._labels=[];this._stripLineLabels=[];var c=0,b=[],d=this.chart.isNavigator?0:5;this.labelEffectiveWidth=m(this.labelEffectiveWidth)?0:this.labelEffectiveWidth;if("left"===this._position||"right"===this._position){this.createLabels();for(e=0;e<this._labels.length;e++)if(!(this._labels[e].position<
677
- this.viewportMinimum||this._labels[e].position>this.viewportMaximum)){var f=this._labels[e].textBlock,f=f.measureText(),n=0,n=0===this.labelAngle?f.width:f.width*Math.cos(Math.PI/180*Math.abs(this.labelAngle))+f.height*Math.sin(Math.PI/180*Math.abs(this.labelAngle));a<=n&&(this.labelEffectiveWidth=a=n);this._labels[e].effectiveWidth=n}for(e=0;e<this._stripLineLabels.length;e++)"outside"===this._stripLineLabels[e].stripLine.labelPlacement&&(this._stripLineLabels[e].stripLine.value>=this.viewportMinimum&&
678
- this._stripLineLabels[e].stripLine.value<=this.viewportMaximum)&&(f=this._stripLineLabels[e].textBlock,f=f.measureText(),n=0===this.labelAngle?f.width:f.width*Math.cos(Math.PI/180*Math.abs(this.labelAngle))+f.height*Math.sin(Math.PI/180*Math.abs(this.labelAngle)),c=Math.max(c,this._stripLineLabels[e].stripLine.tickLength),"inside"===this.labelPlacement&&(a-=0<b.length?Math.max.apply(null,b):0,a+=Math.max(n,0<b.length?Math.max.apply(null,b):n)),a<=n&&(a=n),this.stripLineLabelEffectiveWidth=this._stripLineLabels[e].effectiveWidth=
679
- n,b.push(n));"inside"===this.labelPlacement&&(a+=d)}return(this.title?this._titleTextBlock.measureText().height+2:0)+a+("inside"===this.tickPlacement?c+this.tickLength:Math.max(c,this.tickLength))+d};A.prototype.createLabelsAndCalculateHeight=function(){var a=0;this._labels=[];this._stripLineLabels=[];var e=0,c,b=0,d=this.chart.isNavigator?0:"bottom"===this._position&&"inside"===this.labelPlacement||"top"===this._position&&"outside"===this.labelPlacement?2:5;this.labelEffectiveHeight=m(this.labelEffectiveHeight)?
680
- 0:this.labelEffectiveHeight;var f=[];if("bottom"===this._position||"top"===this._position){this.createLabels();for(b=0;b<this._labels.length;b++)if(!(this._labels[b].position<this.viewportMinimum||this._labels[b].position>this.viewportMaximum)){c=this._labels[b].textBlock;c=c.measureText();var n=0,n=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<=n&&(this.labelEffectiveHeight=a=n);this._labels[b].effectiveHeight=
681
- n}for(b=0;b<this._stripLineLabels.length;b++)"outside"===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(),n=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)),e=Math.max(e,this._stripLineLabels[b].stripLine.tickLength),"inside"===
682
- this.labelPlacement&&(a-=0<f.length?Math.max.apply(null,f):0,a+=Math.max(n,0<f.length?Math.max.apply(null,f):n)),a<=n&&(a=n),this.stripLineLabelEffectiveHeight=this._stripLineLabels[b].effectiveHeight=n,f.push(n));"inside"===this.labelPlacement&&(a+=d)}return(this.title?this._titleTextBlock.measureText().height+2:0)+a+("inside"===this.tickPlacement?e+this.tickLength:Math.max(e,this.tickLength))+d};A.setLayout=function(a,e,c,b,d,f){var n,l,h,k,q=a[0]?a[0].chart:e[0].chart,p=q.isNavigator?0:10,r=q._axes;
683
- if(a&&0<a.length)for(var g=0;g<a.length;g++)a[g]&&a[g].calculateAxisParameters();if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateAxisParameters();if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].calculateAxisParameters();if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].calculateAxisParameters();for(g=0;g<r.length;g++)if(r[g]&&r[g].scaleBreaks&&r[g].scaleBreaks._appliedBreaks.length)for(var s=r[g].scaleBreaks._appliedBreaks,u=0;u<s.length&&!(s[u].startValue>r[g].viewportMaximum);u++)s[u].endValue<r[g].viewportMinimum||
684
- (m(r[g].scaleBreaks.firstBreakIndex)&&(r[g].scaleBreaks.firstBreakIndex=u),s[u].startValue>=r[g].viewPortMinimum&&(r[g].scaleBreaks.lastBreakIndex=u));for(var y=u=0,t=0,w=0,v=0,x=0,z=0,A,B,E=l=0,F,J,M,s=F=J=M=!1,g=0;g<r.length;g++)r[g]&&r[g].title&&(r[g]._titleTextBlock=new ma(r[g].ctx,{text:r[g].title,fontSize:r[g].titleFontSize,fontFamily:r[g].titleFontFamily,fontWeight:r[g].titleFontWeight,fontColor:r[g].titleFontColor,fontStyle:r[g].titleFontStyle,borderColor:r[g].titleBorderColor,borderThickness:r[g].titleBorderThickness,
685
- backgroundColor:r[g].titleBackgroundColor,cornerRadius:r[g].titleCornerRadius,textBaseline:"middle",textAlign:r[g].titleTextAlign,padding:r[g].titlePadding}));for(g=0;g<r.length;g++)if(r[g].title){var K=1.5*r[g].titleFontSize+("object"===typeof r[g].titlePadding?(r[g].titlePadding.top||0)+(r[g].titlePadding.bottom||0):2*r[g].titlePadding);r[g]._titleTextBlock.maxWidth=r[g].titleMaxWidth||f.height;r[g]._titleTextBlock.maxHeight=r[g].titleWrap?0.8*f.width:Math.min(K,0.8*f.width);switch(r[g]._position){case "left":r[g]._titleTextBlock.angle=
686
- -90;break;case "right":r[g]._titleTextBlock.angle=90;break;default:r[g]._titleTextBlock.maxWidth=r[g].titleMaxWidth||f.width,r[g]._titleTextBlock.maxHeight=r[g].titleWrap?0.8*f.height:Math.min(K,0.8*f.height),r[g]._titleTextBlock.angle=0}}if("normal"===d){for(var w=[],v=[],x=[],z=[],Q=[],R=[],T=[],G=[];4>u;){var X=0,V=0,S=0,U=0,$=K=d=0,aa=0,W=0,Y=0,ca=n=0;if(c&&0<c.length)for(x=[],g=n=0;g<c.length;g++)x.push(Math.ceil(c[g]?c[g].createLabelsAndCalculateWidth():0)),n+=x[g],$+=c[g]&&!q.isNavigator?c[g].margin:
687
- 0;else x.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateWidth():0));T.push(x);if(b&&0<b.length)for(z=[],g=ca=0;g<b.length;g++)z.push(Math.ceil(b[g]?b[g].createLabelsAndCalculateWidth():0)),ca+=z[g],aa+=b[g]?b[g].margin:0;else z.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateWidth():0));G.push(z);n=Math.round(f.x1+n+$-(c[0]?("inside"===c[0].labelPlacement?c[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===c[0].tickPlacement?c[0].tickLength:0):0))+(!c.length||"inside"!==c[c.length-1].labelPlacement||
688
- c[c.length-1].title||c[c.length-1].stripLineLabelEffectiveWidth||q.isNavigator?0:5);h=Math.round(Math.min(f.x2-ca-aa+(b[0]?("inside"===b[0].labelPlacement?b[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===b[0].tickPlacement?b[0].tickLength:0):0),q.width-p));if(a&&0<a.length)for(w=[],g=W=0;g<a.length;g++)a[g]&&(a[g].lineCoordinates={}),a[g].lineCoordinates.width=Math.abs(h-n),a[g].title&&(a[g]._titleTextBlock.maxWidth=0<a[g].titleMaxWidth&&a[g].titleMaxWidth<a[g].lineCoordinates.width?a[g].titleMaxWidth:
689
- a[g].lineCoordinates.width),w.push(Math.ceil(a[g]?a[g].createLabelsAndCalculateHeight():0)),W+=w[g],d+=a[g]&&!q.isNavigator?a[g].margin:0;else w.push(Math.ceil(a[0]?a[0].createLabelsAndCalculateHeight():0));Q.push(w);if(e&&0<e.length)for(v=[],g=Y=0;g<e.length;g++)e[g]&&(e[g].lineCoordinates={}),e[g].lineCoordinates.width=Math.abs(h-n),e[g].title&&(e[g]._titleTextBlock.maxWidth=0<e[g].titleMaxWidth&&e[g].titleMaxWidth<e[g].lineCoordinates.width?e[g].titleMaxWidth:e[g].lineCoordinates.width),v.push(Math.ceil(e[g]?
690
- e[g].createLabelsAndCalculateHeight():0)),Y+=v[g],K+=e[g]&&!q.isNavigator?e[g].margin:0;else v.push(Math.ceil(e[0]?e[0].createLabelsAndCalculateHeight():0));R.push(v);if(a&&0<a.length){for(g=0;g<a.length;g++){if(a[g]){a[g].lineCoordinates.x1=n;h=Math.round(Math.min(f.x2-ca-aa+(b[0]?("inside"===b[0].labelPlacement?b[0].labelEffectiveWidth+(q.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-
691
- 1].stripLineLabelEffectiveWidth||q.isNavigator?0:5),q.width-p));if(a[g]._labels&&1<a[g]._labels.length){var I=l=0;l=a[g]._labels[1];I="dateTime"===a[g].valueType?a[g]._labels[a[g]._labels.length-2]:a[g]._labels[a[g]._labels.length-1];y=l.textBlock.width*Math.cos(Math.PI/180*Math.abs(l.textBlock.angle))+(l.textBlock.height-l.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(l.textBlock.angle));t=I.textBlock.width*Math.cos(Math.PI/180*Math.abs(I.textBlock.angle))+I.textBlock.height*Math.sin(Math.PI/
692
- 180*Math.abs(I.textBlock.angle))}!a[g]||(!a[g].labelAutoFit||m(A)||m(B)||q.isNavigator||q.stockChart)||(l=0,0<a[g].labelAngle?(k=t-(I.textBlock.height-I.textBlock._lineHeight/2)*Math.sin(Math.PI/180*I.textBlock.angle),B+k>h&&(a[g].convertPixelToValue(B)>=a[g].viewportMinimum&&a[g].convertPixelToValue(B)<=a[g].viewportMaximum)&&(l+=B+k-h-ca)):0>a[g].labelAngle?A-y<n&&A-y<a[g].viewportMinimum&&(E=n-($+a[g].tickLength+x+A-y+a[g].labelFontSize/2)):0===a[g].labelAngle&&(B+t>h&&(a[g].convertPixelToValue(B)>=
693
- a[g].viewportMinimum&&a[g].convertPixelToValue(B)<=a[g].viewportMaximum)&&(l=B+t/2-h-ca),A-y<n&&A-y<a[g].viewportMinimum&&(E=n-$-a[g].tickLength-x-A+y/2)),a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0<a[g].labelAngle&&0<l?h-=l:a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0>a[g].labelAngle&&0<E?n+=E:a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0===a[g].labelAngle&&(0<E&&(n+=E),0<l&&(h-=l)));q.panEnabled?W=m(q.sessionVariables.axisX.height)||
694
- q.stockChart?q.sessionVariables.axisX.height=W:q.sessionVariables.axisX.height:q.sessionVariables.axisX.height=W;l=Math.round(f.y2-W-d+X)-("inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5);k=Math.round(f.y2)-("inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5);a[g].lineCoordinates.x2=h;a[g].lineCoordinates.width=h-n;a[g].lineCoordinates.y1=l;a[g].lineCoordinates.y2=
695
- l;a[g].bounds={x1:n,y1:l,x2:h,y2:k-(W+d-w[g]-X),width:h-n};a[g].bounds.height=a[g].bounds.y2-a[g].bounds.y1;"inside"===a[g].labelPlacement&&(a[g].lineCoordinates.y1=a[0].bounds.y1+X+(a[g].labelEffectiveHeight||0)+(q.isNavigator?0:2),a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2);"inside"===a[g].tickPlacement&&(a[g].lineCoordinates.y1+=a[g].tickLength,a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2)}X+=w[g]+a[g].margin}$=0===a[0].dataSeries.length;if(!$)for(g=
696
- 0;g<a[0].dataSeries.length;g++){if(a[0].dataSeries[g].dataPoints){$=!1;break}$=!0}if($)for($=!1,g=1;g<a.length;g++)0!==a[g].dataSeries.length&&($?a[g].lineCoordinates.x2>a[0].lineCoordinates.x2&&(a[0].lineCoordinates.x2=a[g].lineCoordinates.x2):(a[0].lineCoordinates.x2=a[g].lineCoordinates.x2,$=!0),a[0].lineCoordinates.width=a[0].lineCoordinates.x2-a[0].lineCoordinates.x1)}if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].lineCoordinates.x1=n,e[g].lineCoordinates.x2=h,e[g].lineCoordinates.width=Math.abs(h-
697
- n),e[g]._labels&&1<e[g]._labels.length&&(l=e[g]._labels[1],I="dateTime"===e[g].valueType?e[g]._labels[e[g]._labels.length-2]:e[g]._labels[e[g]._labels.length-1],y=l.textBlock.width*Math.cos(Math.PI/180*Math.abs(l.textBlock.angle))+(l.textBlock.height-I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(l.textBlock.angle)),t=I.textBlock.width*Math.cos(Math.PI/180*Math.abs(I.textBlock.angle))+(I.textBlock.height-I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(I.textBlock.angle))),q.panEnabled?
698
- Y=m(q.sessionVariables.axisX2.height)||q.stockChart?q.sessionVariables.axisX2.height=Y:q.sessionVariables.axisX2.height:q.sessionVariables.axisX2.height=Y,l=Math.round(f.y1)+("inside"!==e[e.length-1].labelPlacement||e[e.length-1].title||e[e.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),k=e[g].lineCoordinates.y1=l+Y+K-V,e[g].lineCoordinates.y2=l,e[g].bounds={x1:n,y1:l+(Y+K-v[g]-V),x2:h,y2:k,width:h-n},e[g].bounds.height=e[g].bounds.y2-e[g].bounds.y1,"inside"===e[g].labelPlacement&&(e[g].lineCoordinates.y1=
699
- e[0].bounds.y2-V-(e[g].labelEffectiveHeight||0)-5),"inside"===e[g].tickPlacement&&(e[g].lineCoordinates.y1-=e[g].tickLength),V+=v[g]+e[g].margin;if(c&&0<c.length)for(g=0;g<c.length;g++)$=q.isNavigator?0:10,c[g]&&(n=h=Math.round((a[0]?a[0].lineCoordinates.x1:e[0].lineCoordinates.x1)+(c[0]?("inside"===c[0].labelPlacement?c[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===c[0].tickPlacement?c[0].tickLength:0):0)),$=Math.max(c[g]._labels&&0<c[g]._labels.length?c[g]._labels[c[g]._labels.length-
700
- 1].textBlock._lineHeight/2:p,p),l=Math.round(Math.max(f.y1+Y+K-(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveHeight+5:0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0),0<e.length?0:$))+(!e.length||"inside"!==e[e.length-1].labelPlacement||e[e.length-1].title||e[e.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),$=0<a.length?0:c[g]._labels&&0<c[g]._labels.length?c[g]._labels[0].textBlock.height/2:p,k=Math.round(f.y2-W+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveHeight+
701
- (q.isNavigator?0:2):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0)-d-$)-(!a.length||"inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),c[g].lineCoordinates={x1:n-S,y1:l,x2:h-S,y2:k,height:Math.abs(k-l)},c[g].bounds={x1:n-(x[g]+S),y1:l,x2:h-S,y2:k,height:k-l},c[g].bounds.width=c[g].bounds.x2-c[g].bounds.x1,"inside"===c[g].labelPlacement&&(c[g].lineCoordinates.x1=Math.round(c[0].bounds.x1+x[0]-S-(c[g].labelEffectiveWidth||
702
- 0)-5),c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),"inside"===c[g].tickPlacement&&(c[g].lineCoordinates.x1-=c[g].tickLength,c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.height?c[g].titleMaxWidth:c[g].lineCoordinates.height),S+=x[g]+c[g].margin);if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&(n=h=Math.round((a[0]?a[0].lineCoordinates.x2:e[0].lineCoordinates.x2)-
703
- (b[0]?("inside"===b[0].labelPlacement?b[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===b[0].tickPlacement?b[0].tickLength:0):0)),$=Math.max(b[g]._labels&&0<b[g]._labels.length?b[g]._labels[b[g]._labels.length-1].textBlock.height/2:0,p),l=Math.round(Math.max(f.y1+Y+K-(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveHeight+(q.isNavigator?0:5):0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0)+(!e.length||"inside"!==e[e.length-1].labelPlacement||e[e.length-1].title||e[e.length-
704
- 1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),0<e.length?0:$)),$=0<a.length?0:b[g]._labels&&0<b[g]._labels.length?b[g]._labels[0].textBlock.height/2:0,k=Math.round(f.y2-(W+d+$)+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveHeight+(q.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||q.isNavigator?0:5),b[g].lineCoordinates={x1:n+U,y1:l,x2:n+
705
- U,y2:k,height:Math.abs(k-l)},b[g].bounds={x1:n+U,y1:l,x2:h+z[g]+U,y2:k,height:k-l},b[g].bounds.width=b[g].bounds.x2-b[g].bounds.x1,"inside"===b[g].labelPlacement&&(b[g].lineCoordinates.x1=Math.round(b[0].bounds.x1+U+(b[g].labelEffectiveWidth||0)+(q.isNavigator?0:5)),b[g].lineCoordinates.x2=b[g].lineCoordinates.x1+b[g].lineThickness/2),"inside"===b[g].tickPlacement&&(b[g].lineCoordinates.x1+=b[g].tickLength,b[g].lineCoordinates.x2=b[g].lineCoordinates.x1+b[g].lineThickness/2),b[g].title&&(b[g]._titleTextBlock.maxWidth=
706
- 0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.height?b[g].titleMaxWidth:b[g].lineCoordinates.height),U+=z[g]+b[g].margin);if(a&&0<a.length)for(g=0;g<a.length;g++)a[g]&&(a[g].calculateValueToPixelConversionParameters(),a[g].calculateBreaksSizeInValues(),a[g]._labels&&1<a[g]._labels.length&&(A=(a[g].logarithmic?Math.log(a[g]._labels[1].position/a[g].viewportMinimum)/a[g].conversionParameters.lnLogarithmBase:a[g]._labels[1].position-a[g].viewportMinimum)*Math.abs(a[g].conversionParameters.pixelPerUnit)+
707
- a[g].lineCoordinates.x1,n=a[g]._labels[a[g]._labels.length-("dateTime"===a[g].valueType?2:1)].position,n=a[g].getApparentDifference(a[g].viewportMinimum,n),B=a[g].logarithmic?(1<n?Math.log(n)/a[g].conversionParameters.lnLogarithmBase*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1:(0<n?n*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1));if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateValueToPixelConversionParameters(),e[g].calculateBreaksSizeInValues(),
708
- e[g]._labels&&1<e[g]._labels.length&&(A=(e[g].logarithmic?Math.log(e[g]._labels[1].position/e[g].viewportMinimum)/e[g].conversionParameters.lnLogarithmBase:e[g]._labels[1].position-e[g].viewportMinimum)*Math.abs(e[g].conversionParameters.pixelPerUnit)+e[g].lineCoordinates.x1,n=e[g]._labels[e[g]._labels.length-("dateTime"===e[g].valueType?2:1)].position,n=e[g].getApparentDifference(e[g].viewportMinimum,n),B=e[g].logarithmic?(1<n?Math.log(n)/e[g].conversionParameters.lnLogarithmBase*Math.abs(e[g].conversionParameters.pixelPerUnit):
709
- 0)+e[g].lineCoordinates.x1:(0<n?n*Math.abs(e[g].conversionParameters.pixelPerUnit):0)+e[g].lineCoordinates.x1);for(g=0;g<r.length;g++)"axisY"===r[g].type&&(r[g].calculateValueToPixelConversionParameters(),r[g].calculateBreaksSizeInValues());if(0<u){if(a&&0<a.length)for(g=0;g<a.length;g++)s=Q[u-1][g]===Q[u][g]?!0:!1;else s=!0;if(e&&0<e.length)for(g=0;g<e.length;g++)F=R[u-1][g]===R[u][g]?!0:!1;else F=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)J=T[u-1][g]===T[u][g]?!0:!1;else J=!0;if(b&&0<b.length)for(g=
710
- 0;g<b.length;g++)M=G[u-1][g]===G[u][g]?!0:!1;else M=!0}if(s&&F&&J&&M)break;u++}if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),a[g].calculateBreaksInPixels();if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateStripLinesThicknessInValues(),e[g].calculateBreaksInPixels();if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].calculateStripLinesThicknessInValues(),c[g].calculateBreaksInPixels();if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].calculateStripLinesThicknessInValues(),
711
- b[g].calculateBreaksInPixels()}else{p=[];A=[];E=[];y=[];t=[];B=[];Q=[];for(R=[];4>u;){W=U=S=aa=$=K=d=G=T=V=Y=0;if(a&&0<a.length)for(E=[],g=U=0;g<a.length;g++)E.push(Math.ceil(a[g]?a[g].createLabelsAndCalculateWidth():0)),U+=E[g],d+=a[g]&&!q.isNavigator?a[g].margin:0;else E.push(Math.ceil(a[0]?a[0].createLabelsAndCalculateWidth():0));Q.push(E);if(e&&0<e.length)for(y=[],g=W=0;g<e.length;g++)y.push(Math.ceil(e[g]?e[g].createLabelsAndCalculateWidth():0)),W+=y[g],K+=e[g]?e[g].margin:0;else y.push(Math.ceil(e[0]?
712
- e[0].createLabelsAndCalculateWidth():0));R.push(y);if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].lineCoordinates={},n=Math.round(f.x1+U+d-(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(q.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||q.isNavigator?0:5),h=Math.round(Math.min(f.x2-W-K+(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveWidth+
713
- (q.isNavigator?0:5):0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0)-(!e.length||"inside"!==e[e.length-1].labelPlacement||e[e.length-1].title||e[e.length-1].stripLineLabelEffectiveWidth||q.isNavigator?0:5),q.width-10)),c[g].labelAutoFit&&!m(w)&&(0<!a.length&&(n=0>c[g].labelAngle?Math.max(n,w):0===c[g].labelAngle?Math.max(n,w/2):n),0<!e.length&&(h=0<c[g].labelAngle?h-v/2:0===c[g].labelAngle?h-v/2:h)),c[g].lineCoordinates.x1=n,c[g].lineCoordinates.x2=h,c[g].lineCoordinates.width=Math.abs(h-n),
714
- c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.width?c[g].titleMaxWidth:c[g].lineCoordinates.width);if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].lineCoordinates={},n=Math.round(f.x1+U+d-(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(q.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||
715
- q.isNavigator?0:5),h=Math.round(Math.min(f.x2-W-K+(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0)-(!e.length||"inside"!==e[e.length-1].labelPlacement||e[e.length-1].title||e[e.length-1].stripLineLabelEffectiveWidth||q.isNavigator?0:5),b[g].chart.width-10)),b[g]&&b[g].labelAutoFit&&!m(x)&&(0<!a.length&&(n=0<b[g].labelAngle?Math.max(n,x):0===b[g].labelAngle?Math.max(n,x/2):n),0<!e.length&&(h-=z/2)),b[g].lineCoordinates.x1=
716
- n,b[g].lineCoordinates.x2=h,b[g].lineCoordinates.width=Math.abs(h-n),b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.width?b[g].titleMaxWidth:b[g].lineCoordinates.width);if(c&&0<c.length)for(p=[],g=S=0;g<c.length;g++)p.push(Math.ceil(c[g]?c[g].createLabelsAndCalculateHeight():0)),S+=p[g]+c[g].margin,$+=c[g].margin;else p.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateHeight():0));t.push(p);if(b&&0<b.length)for(A=[],g=0;g<b.length;g++)A.push(Math.ceil(b[g]?
717
- b[g].createLabelsAndCalculateHeight():0)),aa+=b[g].margin;else A.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateHeight():0));B.push(A);if(c&&0<c.length)for(g=0;g<c.length;g++)0<c[g]._labels.length&&(l=c[g]._labels[0],I=c[g]._labels[c[g]._labels.length-1],w=l.textBlock.width*Math.cos(Math.PI/180*Math.abs(l.textBlock.angle))+(l.textBlock.height-I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(l.textBlock.angle)),v=I.textBlock.width*Math.cos(Math.PI/180*Math.abs(I.textBlock.angle))+(I.textBlock.height-
718
- I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(I.textBlock.angle)));if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&0<b[g]._labels.length&&(l=b[g]._labels[0],I=b[g]._labels[b[g]._labels.length-1],x=l.textBlock.width*Math.cos(Math.PI/180*Math.abs(l.textBlock.angle))+(l.textBlock.height-I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(l.textBlock.angle)),z=I.textBlock.width*Math.cos(Math.PI/180*Math.abs(I.textBlock.angle))+(I.textBlock.height-I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(I.textBlock.angle)));
719
- if(q.panEnabled)for(g=0;g<c.length;g++)p[g]=m(q.sessionVariables.axisY[g].height)?q.sessionVariables.axisY[g].height=p[g]:q.sessionVariables.axisY[g].height;else for(g=0;g<c.length;g++)q.sessionVariables.axisY[g].height=p[g];if(c&&0<c.length)for(g=c.length-1;0<=g;g--)l=Math.round(f.y2)-("inside"!==c[c.length-1].labelPlacement||c[c.length-1].title||c[c.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),k=Math.round(f.y2>c[g].chart.height?c[g].chart.height:f.y2)-("inside"!==c[c.length-1].labelPlacement||
720
- c[c.length-1].title||c[c.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),c[g].lineCoordinates.y1=l-(p[g]+c[g].margin+Y),c[g].lineCoordinates.y2=l-(p[g]+c[g].margin+Y),"inside"===c[g].labelPlacement&&(c[g].lineCoordinates.y1=c[g].lineCoordinates.y1+c[g].labelEffectiveHeight+(q.isNavigator?0:2),c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/2),"inside"===c[g].tickPlacement&&(c[g].lineCoordinates.y1+=c[g].tickLength,c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/
721
- 2),c[g].bounds={x1:n,y1:l-(p[g]+Y+c[g].margin),x2:h,y2:k-(Y+c[g].margin),width:h-n,height:p[g]},c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.width?c[g].titleMaxWidth:c[g].lineCoordinates.width),Y+=p[g]+c[g].margin;if(b&&0<b.length)for(g=b.length-1;0<=g;g--)b[g]&&(l=Math.round(f.y1)+("inside"!==b[b.length-1].labelPlacement||b[b.length-1].title||b[b.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),k=Math.round(f.y1+(A[g]+b[g].margin+
722
- V))+("inside"!==b[b.length-1].labelPlacement||b[b.length-1].title||b[b.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),b[g].lineCoordinates.y1=k,b[g].lineCoordinates.y2=k,"inside"===b[g].labelPlacement&&(b[g].lineCoordinates.y1=k-b[g].labelEffectiveHeight-5,b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),"inside"===b[g].tickPlacement&&(b[g].lineCoordinates.y1-=b[g].tickLength,b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),b[g].bounds={x1:n,
723
- y1:l+(b[g].margin+V),x2:h,y2:k,width:h-n},b[g].bounds.height=b[g].bounds.y2-b[g].bounds.y1,b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.width?b[g].titleMaxWidth:b[g].lineCoordinates.width),V+=A[g]+b[g].margin);if(a&&0<a.length)for(g=0;g<a.length;g++){$=a[g]._labels&&0<a[g]._labels.length?a[g]._labels[0].textBlock.fontSize/2:0;n=Math.round(f.x1+d);l=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:f.y1<Math.max($,10)?Math.max($,10):f.y1):
724
- f.y1<Math.max($,10)?Math.max($,10):f.y1;h=Math.round(f.x1+U+d);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:f.y2-S>q.height-Math.max($,10)?q.height-Math.max($,10):f.y2-S):f.y2>q.height-Math.max($,10)?q.height-Math.max($,10):f.y2;if(c&&0<c.length)for(I=0;I<c.length;I++)c[I]&&c[I].labelAutoFit&&(h=c[I].lineCoordinates.x1+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0),n=0>c[I].labelAngle||0===c[I].labelAngle?
725
- h-U:n);if(b&&0<b.length)for(I=0;I<b.length;I++)b[I]&&b[I].labelAutoFit&&(h=b[I].lineCoordinates.x1+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0),n=h-U);a[g].lineCoordinates={x1:h-T,y1:l,x2:h-T,y2:k,height:Math.abs(k-l)};"inside"===a[g].labelPlacement&&(a[g].lineCoordinates.x1=a[g].lineCoordinates.x1-a[g].labelEffectiveWidth-5,a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);"inside"===
726
- a[g].tickPlacement&&(a[g].lineCoordinates.x1-=a[g].tickLength,a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);a[g].bounds={x1:h-(E[g]+T),y1:l,x2:h-T,y2:k,height:k-l};a[g].bounds.width=a[g].bounds.x2-a[g].bounds.x1;a[g].title&&(a[g]._titleTextBlock.maxWidth=0<a[g].titleMaxWidth&&a[g].titleMaxWidth<a[g].lineCoordinates.height?a[g].titleMaxWidth:a[g].lineCoordinates.height);a[g].calculateValueToPixelConversionParameters();a[g].calculateBreaksSizeInValues();T+=E[g]+a[g].margin}if(e&&
727
- 0<e.length)for(g=0;g<e.length;g++){$=e[g]._labels&&0<e[g]._labels.length?e[g]._labels[0].textBlock.fontSize/2:0;h=Math.round(f.x1-K);l=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:f.y1<Math.max($,10)?Math.max($,10):f.y1):f.y1<Math.max($,10)?Math.max($,10):f.y1;n=Math.round(f.x2-W-K);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:f.y2-S>q.height-Math.max($,10)?q.height-Math.max($,10):f.y2-S):f.y2>q.height-Math.max($,10)?q.height-Math.max($,10):f.y2;if(c&&0<c.length)for(I=0;I<c.length;I++)c[I]&&
728
- c[I].labelAutoFit&&(n=c[I].lineCoordinates.x2-(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0),h=0>c[I].labelAngle||0===c[I].labelAngle?n+W:n);if(b&&0<b.length)for(I=0;I<b.length;I++)b[I]&&b[I].labelAutoFit&&(n=b[I].lineCoordinates.x2-(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0),h=n+W);e[g].lineCoordinates={x1:n+G,y1:l,
729
- x2:n+G,y2:k,height:Math.abs(k-l)};"inside"===e[g].labelPlacement&&(e[g].lineCoordinates.x1=e[g].lineCoordinates.x1+e[g].labelEffectiveWidth+(q.isNavigator?0:5),e[g].lineCoordinates.x2=e[g].lineCoordinates.x1+e[g].lineThickness/2);"inside"===e[g].tickPlacement&&(e[g].lineCoordinates.x1+=e[g].tickLength,e[g].lineCoordinates.x2=e[g].lineCoordinates.x1+e[g].lineThickness/2);e[g].bounds={x1:n+G,y1:l,x2:n+y[g]+G,y2:k,height:k-l};e[g].bounds.width=e[g].bounds.x2-e[g].bounds.x1;e[g].title&&(e[g]._titleTextBlock.maxWidth=
730
- 0<e[g].titleMaxWidth&&e[g].titleMaxWidth<e[g].lineCoordinates.height?e[g].titleMaxWidth:e[g].lineCoordinates.height);e[g].calculateValueToPixelConversionParameters();e[g].calculateBreaksSizeInValues();G+=y[g]+e[g].margin}for(g=0;g<r.length;g++)"axisY"===r[g].type&&(r[g].calculateValueToPixelConversionParameters(),r[g].calculateBreaksSizeInValues());if(0<u){if(a&&0<a.length)for(g=0;g<a.length;g++)s=Q[u-1][g]===Q[u][g]?!0:!1;else s=!0;if(e&&0<e.length)for(g=0;g<e.length;g++)F=R[u-1][g]===R[u][g]?!0:
731
- !1;else F=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)J=t[u-1][g]===t[u][g]?!0:!1;else J=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)M=B[u-1][g]===B[u][g]?!0:!1;else M=!0}if(s&&F&&J&&M)break;u++}if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].calculateStripLinesThicknessInValues(),c[g].calculateBreaksInPixels();if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].calculateStripLinesThicknessInValues(),b[g].calculateBreaksInPixels();if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),
732
- a[g].calculateBreaksInPixels();if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateStripLinesThicknessInValues(),e[g].calculateBreaksInPixels()}for(g=0;g<r.length;g++)r[g]&&m(r[g].options.titleMaxWidth)&&(r[g].titleMaxWidth="left"===r[g]._position||"right"===r[g]._position?r[g].bounds.height:r[g].bounds.width,r[g].title&&(r[g]._titleTextBlock.maxWidth=r[g].titleMaxWidth||f.height))};A.render=function(a,e,c,b,d){var f=a[0]?a[0].chart:e[0].chart,n=f.ctx,l=[];l.push.apply(l,a);l.push.apply(l,e);l.push.apply(l,
733
- c);l.push.apply(l,b);f.alignVerticalAxes&&f.alignVerticalAxes();n.save();"normal"===d&&(n.beginPath(),a&&a.length&&n.rect(2,a[0].bounds.y1,a[0].chart.width-4,a[a.length-1].bounds.y2),e&&e.length&&n.rect(2,e[e.length-1].bounds.y1,e[0].chart.width-4,e[0].bounds.y2),n.clip());if(a&&0<a.length)for(d=0;d<a.length;d++)a[d].renderLabelsTicksAndTitle();if(e&&0<e.length)for(d=0;d<e.length;d++)e[d].renderLabelsTicksAndTitle();n.restore();if(c&&0<c.length)for(d=0;d<c.length;d++)c[d].renderLabelsTicksAndTitle();
734
- if(b&&0<b.length)for(d=0;d<b.length;d++)b[d].renderLabelsTicksAndTitle();f.preparePlotArea();a=f.plotArea;n.save();n.beginPath();n.rect(a.x1,a.y1,Math.abs(a.x2-a.x1),Math.abs(a.y2-a.y1));n.clip();if(l&&0<l.length){for(d=0;d<l.length;d++)l[d].renderStripLinesOfThicknessType("value");for(d=0;d<l.length;d++)l[d].renderInterlacedColors()}n.restore();n=!1;if(l&&0<l.length){for(d=0;d<l.length;d++)l[d].renderGrid(),u&&(l[d].createMask(),l[d].renderBreaksBackground());for(d=0;d<l.length;d++)l[d].renderAxisLine();
735
- for(d=0;d<l.length;d++)l[d].renderStripLinesOfThicknessType("pixel"),l[d].crosshair&&l[d].crosshair.enabled&&(n=!0,f.clearedOverlayedCanvas=l[d].type)}if(n||!n&&f.clearedOverlayedCanvas&&0<=f.clearedOverlayedCanvas.indexOf("axis"))f.resetOverlayedCanvas(),f.renderCrosshairs(null,!0)};A.prototype.calculateStripLinesThicknessInValues=function(){for(var a=0;a<this.stripLines.length;a++)if(null!==this.stripLines[a].startValue&&null!==this.stripLines[a].endValue){var e=Math.min(this.stripLines[a].startValue,
736
- this.stripLines[a].endValue),c=Math.max(this.stripLines[a].startValue,this.stripLines[a].endValue),b=this.getApparentDifference(e,c);this.stripLines[a].value=this.convertPixelToValue((this.convertValueToPixel(e)+this.convertValueToPixel(c))/2);this.stripLines[a].thickness=b;this.stripLines[a]._thicknessType="value"}};A.prototype.calculateBreaksSizeInValues=function(){for(var a="left"===this._position||"right"===this._position?this.lineCoordinates.height||this.chart.height:this.lineCoordinates.width||
737
- this.chart.width,e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c=this.conversionParameters.pixelPerUnit||a/(this.logarithmic?this.conversionParameters.maximum/this.conversionParameters.minimum:this.conversionParameters.maximum-this.conversionParameters.minimum),b=this.scaleBreaks&&!m(this.scaleBreaks.options.spacing),d,f=0;f<e.length;f++)d=b||!m(e[f].options.spacing),e[f].spacing=Wa(e[f].spacing,a,8,d?0.1*a:8,d?0:3)<<0,e[f].size=0>e[f].spacing?0:Math.abs(e[f].spacing/c),this.logarithmic&&
738
- (e[f].size=Math.pow(this.logarithmBase,e[f].size))};A.prototype.calculateBreaksInPixels=function(){if(!(this.scaleBreaks&&0>=this.scaleBreaks._appliedBreaks.length)){var a=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];a.length&&(this.scaleBreaks.firstBreakIndex=this.scaleBreaks.lastBreakIndex=null);for(var e=0;e<a.length&&!(a[e].startValue>this.conversionParameters.maximum);e++)a[e].endValue<this.conversionParameters.minimum||(m(this.scaleBreaks.firstBreakIndex)&&(this.scaleBreaks.firstBreakIndex=
739
- e),a[e].startValue>=this.conversionParameters.minimum&&(a[e].startPixel=this.convertValueToPixel(a[e].startValue),this.scaleBreaks.lastBreakIndex=e),a[e].endValue<=this.conversionParameters.maximum&&(a[e].endPixel=this.convertValueToPixel(a[e].endValue)))}};A.prototype.renderLabelsTicksAndTitle=function(){var a=this,e=!1,c=0,b=0,d=1,f=0;0!==this.labelAngle&&360!==this.labelAngle&&(d=1.2);if("undefined"===typeof this.options.interval){if("bottom"===this._position||"top"===this._position)if(this.logarithmic&&
740
- !this.equidistantInterval&&this.labelAutoFit){for(var c=[],d=0!==this.labelAngle&&360!==this.labelAngle?1:1.2,n,l=this.viewportMaximum,h=this.lineCoordinates.width/Math.log(this.range),k=this._labels.length-1;0<=k;k--){p=this._labels[k];if(p.position<this.viewportMinimum)break;p.position>this.viewportMaximum||!(k===this._labels.length-1||n<Math.log(l/p.position)*h/d)||(c.push(p),l=p.position,n=p.textBlock.width*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.height*Math.abs(Math.sin(Math.PI/
741
- 180*this.labelAngle)))}this._labels=c}else{for(k=0;k<this._labels.length;k++)p=this._labels[k],p.position<this.viewportMinimum||(n=p.textBlock.width*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.height*Math.abs(Math.sin(Math.PI/180*this.labelAngle)),c+=n);c>this.lineCoordinates.width*d&&this.labelAutoFit&&(e=!0)}if("left"===this._position||"right"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],m,l=this.viewportMaximum,h=this.lineCoordinates.height/
742
- Math.log(this.range),k=this._labels.length-1;0<=k;k--){p=this._labels[k];if(p.position<this.viewportMinimum)break;p.position>this.viewportMaximum||!(k===this._labels.length-1||m<Math.log(l/p.position)*h)||(c.push(p),l=p.position,m=p.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.width*Math.abs(Math.sin(Math.PI/180*this.labelAngle)))}this._labels=c}else{for(k=0;k<this._labels.length;k++)p=this._labels[k],p.position<this.viewportMinimum||(m=p.textBlock.height*Math.abs(Math.cos(Math.PI/
743
- 180*this.labelAngle))+p.textBlock.width*Math.abs(Math.sin(Math.PI/180*this.labelAngle)),b+=m);b>this.lineCoordinates.height*d&&this.labelAutoFit&&(e=!0)}}this.logarithmic&&(!this.equidistantInterval&&this.labelAutoFit)&&this._labels.sort(function(a,b){return a.position-b.position});var k=0,p,r;if("bottom"===this._position){for(k=0;k<this._labels.length;k++)p=this._labels[k],p.position<this.viewportMinimum||p.position>this.viewportMaximum||(r=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&
744
- "inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(r.x<<0)+0.5:r.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,r.y<<0),this.ctx.lineTo(b,r.y+this.tickLength<<0),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===p.textBlock.angle?(r.x-=p.textBlock.width/2,r.y="inside"===this.labelPlacement?r.y-(("inside"===this.tickPlacement?this.tickLength:0)+p.textBlock.height-p.textBlock._lineHeight/2+2):r.y+("inside"===this.tickPlacement?
745
- 0:this.tickLength)+p.textBlock._lineHeight/2+5):0>this.labelAngle?(r.x=r.x-("inside"===this.labelPlacement?0:p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),r.y="inside"===this.labelPlacement?r.y-("inside"===this.tickPlacement?this.tickLength:0)-2-(p.textBlock.height-p.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle):r.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(p.textBlock.width*Math.sin(Math.PI/
746
- 180*this.labelAngle)-p.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle))):(r.x=r.x-("inside"===this.labelPlacement?p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+p.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),r.y="inside"===this.labelPlacement?r.y-("inside"===this.tickPlacement?this.tickLength:0)-2-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-(p.textBlock.height-p.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle):r.y+("inside"===this.tickPlacement?
747
- 0:this.tickLength)+5+Math.abs(p.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle))),p.textBlock.x=r.x,p.textBlock.y=r.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(p=a._labels[k],!(p.position<a.viewportMinimum||p.position>a.viewportMaximum)&&(r=a.getPixelCoordinatesOnAxis(p.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(r.x<<
748
- 0)+0.5:r.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,r.y<<0);a.ctx.lineTo(b,r.y-a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+this.lineCoordinates.width/2-this._titleTextBlock.width/2,this._titleTextBlock.y=this.bounds.y2-this._titleTextBlock.height+this._titleTextBlock._lineHeight/2-1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("top"===this._position){for(k=
749
- 0;k<this._labels.length;k++)p=this._labels[k],p.position<this.viewportMinimum||p.position>this.viewportMaximum||(r=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(r.x<<0)+0.5:r.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,r.y<<0),this.ctx.lineTo(b,r.y-this.tickLength<<0),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===p.textBlock.angle?(r.x-=p.textBlock.width/
750
- 2,r.y="inside"===this.labelPlacement?r.y+p.textBlock._lineHeight/2+("inside"===this.tickPlacement?this.tickLength:0)+5:r.y-(("inside"===this.tickPlacement?0:this.tickLength)+p.textBlock.height-p.textBlock._lineHeight/2)-2):0>this.labelAngle?(r.x=r.x-("inside"===this.labelPlacement?p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+p.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),r.y="inside"===this.labelPlacement?r.y+("inside"===this.tickPlacement?this.tickLength:0)+5-p.textBlock.width*
751
- Math.sin(Math.PI/180*this.labelAngle)+p.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle):r.y-("inside"===this.tickPlacement?0:this.tickLength)-2-(p.textBlock.height-p.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)):(r.x=r.x-("inside"===this.labelPlacement?0:p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),r.y="inside"===this.labelPlacement?r.y+("inside"===this.tickPlacement?this.tickLength:0)+5+p.textBlock._lineHeight/
752
- 2*Math.cos(Math.PI/180*this.labelAngle):r.y-("inside"===this.tickPlacement?0:this.tickLength)-2-((p.textBlock.height-p.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)+p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))),p.textBlock.x=r.x,p.textBlock.y=r.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(p=a._labels[k],!(p.position<a.viewportMinimum||p.position>a.viewportMaximum)&&(r=a.getPixelCoordinatesOnAxis(p.position),
753
- a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(r.x<<0)+0.5:r.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,r.y<<0);a.ctx.lineTo(b,r.y+a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+this.lineCoordinates.width/2-this._titleTextBlock.width/2,this._titleTextBlock.y=this.bounds.y1+this._titleTextBlock._lineHeight/2+1,this.titleMaxWidth=
754
- this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("left"===this._position){for(k=0;k<this._labels.length;k++)p=this._labels[k],p.position<this.viewportMinimum||p.position>this.viewportMaximum||(r=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(r.y<<0)+0.5:r.y<<0,this.ctx.beginPath(),this.ctx.moveTo(r.x<<0,b),this.ctx.lineTo(r.x-this.tickLength<<
755
- 0,b),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===this.labelAngle?(p.textBlock.y=r.y-p.textBlock.topPadding,p.textBlock.x="inside"===this.labelPlacement?r.x+("inside"===this.tickPlacement?this.tickLength:0)+5:r.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):0>this.labelAngle?(p.textBlock.y=("inside"===this.labelPlacement?r.y:r.y-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-p.textBlock.topPadding*Math.cos(Math.PI/
756
- 180*this.labelAngle),p.textBlock.x="inside"===this.labelPlacement?r.x-p.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:r.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(p.textBlock.height-p.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):(p.textBlock.y=("inside"===this.labelPlacement?r.y:r.y-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-p.textBlock.topPadding*
757
- Math.cos(Math.PI/180*this.labelAngle),p.textBlock.x="inside"===this.labelPlacement?r.x+(p.textBlock.height-p.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:r.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-p.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=
758
- 0;k<a._labels.length;k++)if(p=a._labels[k],!(p.position<a.viewportMinimum||p.position>a.viewportMaximum)&&(r=a.getPixelCoordinatesOnAxis(p.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(r.y<<0)+0.5:r.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(r.x<<0,b);a.ctx.lineTo(r.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/
759
- 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++)p=this._labels[k],p.position<this.viewportMinimum||p.position>this.viewportMaximum||(r=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,
760
- b=1===this.ctx.lineWidth%2?(r.y<<0)+0.5:r.y<<0,this.ctx.beginPath(),this.ctx.moveTo(r.x<<0,b),this.ctx.lineTo(r.x+this.tickLength<<0,b),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===this.labelAngle?(p.textBlock.y=r.y-p.textBlock.topPadding,p.textBlock.x="inside"===this.labelPlacement?r.x-p.textBlock.width-("inside"===this.tickPlacement?this.tickLength:0)-5:r.x+("inside"===this.tickPlacement?0:this.tickLength)+5):0>this.labelAngle?(p.textBlock.y=("inside"===this.labelPlacement?r.y-p.textBlock.width*
761
- Math.sin(Math.PI/180*this.labelAngle):r.y)-p.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),p.textBlock.x="inside"===this.labelPlacement?r.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(p.textBlock.height-p.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:r.x-p.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5):(p.textBlock.y=("inside"===this.labelPlacement?
762
- r.y-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):r.y)-p.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),p.textBlock.x="inside"===this.labelPlacement?r.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-p.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?this.tickLength:0)-5:r.x+(p.textBlock.height-p.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5)));"inside"===this.tickPlacement&&
763
- this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(p=a._labels[k],!(p.position<a.viewportMinimum||p.position>a.viewportMaximum)&&(r=a.getPixelCoordinatesOnAxis(p.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(r.y<<0)+0.5:r.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(r.x<<0,b);a.ctx.lineTo(r.x-a.tickLength<<0,b);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),
764
- 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))}f=0;if("inside"===this.labelPlacement)this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)p=a._labels[k],p.position<a.viewportMinimum||(p.position>a.viewportMaximum||e&&0!==f++%2&&a.labelAutoFit)||
765
- (a.ctx.save(),a.ctx.beginPath(),p.textBlock.render(!0),a.ctx.restore())},this);else for(k=0;k<this._labels.length;k++)p=this._labels[k],p.position<this.viewportMinimum||(p.position>this.viewportMaximum||e&&0!==f++%2&&this.labelAutoFit)||p.textBlock.render(!0)};A.prototype.renderInterlacedColors=function(){var a=this.chart.plotArea.ctx,e,c,b=this.chart.plotArea,d=0;e=!0;if(("bottom"===this._position||"top"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?
766
- (e=this.getPixelCoordinatesOnAxis(this._labels[d].position),c=d+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(Math.min(c.x,e.x),b.y1,Math.abs(c.x-e.x),Math.abs(b.y1-b.y2)),e=!1):e=!0;else if(("left"===this._position||"right"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?(c=this.getPixelCoordinatesOnAxis(this._labels[d].position),e=d+1>
767
- this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(b.x1,Math.min(c.y,e.y),Math.abs(b.x1-b.x2),Math.abs(e.y-c.y)),e=!1):e=!0;a.beginPath()};A.prototype.renderStripLinesOfThicknessType=function(a){if(this.stripLines&&0<this.stripLines.length&&a){var e=this,c,b,d=0,f=0,n=!1;b=!1;for(var l=[],h=[],k=!1,q,d=0;d<this.stripLines.length;d++){var p=this.stripLines[d];p._thicknessType===a&&("pixel"===a&&(p.value<this.viewportMinimum||
768
- p.value>this.viewportMaximum||m(p.value)||isNaN(this.range))||"value"===a&&(p.startValue<=this.viewportMinimum&&p.endValue<=this.viewportMinimum||p.startValue>=this.viewportMaximum&&p.endValue>=this.viewportMaximum||m(p.startValue)||m(p.endValue)||isNaN(this.range))||l.push(p))}for(d=0;d<this._stripLineLabels.length;d++)if(p=this.stripLines[d],c=this._stripLineLabels[d],!(c.position<this.viewportMinimum||c.position>this.viewportMaximum||isNaN(this.range)))if(b=this.getPixelCoordinatesOnAxis(c.position),
769
- "outside"===c.stripLine.labelPlacement){p&&(this.ctx.strokeStyle=p.tickColor?p.tickColor:p.color,this.ctx.lineWidth=p.tickThickness=m(p.tickThickness)?"pixel"===p._thicknessType?p.thickness:this.thickness:p.tickThickness,m(p.opacity)||"pixel"!==p._thicknessType||(q=p.ctx.globalAlpha,p.ctx.globalAlpha=p.opacity),m(p.opacity)&&(p.opacity=p.ctx.globalAlpha));if("bottom"===this._position){var r=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0;0<p.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(r,b.y<<
770
- 0),this.ctx.lineTo(r,b.y+p.tickLength<<0),this.ctx.stroke());0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y+=p.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+=p.tickLength+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/
771
- 180*this.labelAngle))))}else"top"===this._position?(r=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0,0<p.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(r,b.y<<0),this.ctx.lineTo(r,b.y-p.tickLength<<0),this.ctx.stroke()),0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y-=p.tickLength+c.textBlock.height-c.textBlock.fontSize/2):(b.x-=(0<this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)-c.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),b.y-=p.tickLength+2+(0<this.labelAngle?
772
- (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?(r=1===this.ctx.lineWidth%2?(b.y<<0)+0.5:b.y<<0,0<p.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,r),this.ctx.lineTo(b.x-p.tickLength<<0,r),this.ctx.stroke()),0===this.labelAngle?(b.x=b.x-c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-
773
- p.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-=p.tickLength+5+(0<this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+c.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle):c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-(c.textBlock.height-c.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)))):"right"===this._position&&(r=1===this.ctx.lineWidth%
774
- 2?(b.y<<0)+0.5:b.y<<0,0<p.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,r),this.ctx.lineTo(b.x+p.tickLength<<0,r),this.ctx.stroke()),0===this.labelAngle?(b.x=b.x+p.tickLength+5,b.y-=c.textBlock.topPadding):(b.y-=c.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),b.x=p.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))));q&&(p.ctx.globalAlpha=
775
- q);c.textBlock.x=b.x;c.textBlock.y=b.y;h.push(c)}else p._thicknessType===a&&(m(p.opacity)&&(p.opacity=p.ctx.globalAlpha),c.textBlock.angle=-90,"bottom"===this._position?(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-p.thickness/2>this.chart.plotArea.x1?m(p.startValue)?b.x-=c.textBlock.height-c.textBlock.fontSize/2+p.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/
776
- 2:(c.textBlock.angle=90,m(p.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/2+p.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)/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+
777
- this.chart.plotArea.y1-c.textBlock.width)/2:this.chart.plotArea.y1+3):"top"===this._position?(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-p.thickness/2>this.chart.plotArea.x1?m(p.startValue)?b.x-=c.textBlock.height-c.textBlock.fontSize/2+p.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/2:(c.textBlock.angle=90,m(p.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/
778
- 2+p.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?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"===
779
- this._position?(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-p.thickness/2>this.chart.plotArea.y1?m(p.startValue)?b.y-=c.textBlock.height-c.textBlock.fontSize/2+p.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2:m(p.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+p.thickness/2:b.y+=c.textBlock.height/2-c.textBlock.fontSize+
780
- 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[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-p.thickness/2>this.chart.plotArea.y1?m(p.startValue)?b.y-=c.textBlock.height-
781
- c.textBlock.fontSize/2+p.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2:m(p.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+p.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?(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,h.push(c));if(!k){b=!1;this.ctx.save();this.ctx.beginPath();
782
- this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(d=0;d<l.length;d++)p=l[d],p.showOnTop?n||(n=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){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(f=0;f<l.length;f++)p=l[f],p.showOnTop&&p.render();this.ctx.restore()},p)):p.render();
783
- for(d=0;d<h.length;d++)c=h[d],c.stripLine.showOnTop?b||(b=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){for(f=0;f<h.length;f++)c=h[f],"inside"===c.stripLine.labelPlacement&&c.stripLine.showOnTop&&(e.ctx.save(),e.ctx.beginPath(),e.ctx.rect(e.chart.plotArea.x1,e.chart.plotArea.y1,e.chart.plotArea.width,e.chart.plotArea.height),e.ctx.clip(),c.textBlock.render(!0),e.ctx.restore())},c.textBlock)):"inside"===c.stripLine.labelPlacement&&c.textBlock.render(!0);this.ctx.restore();k=
784
- !0}if(k)for(b=!1,d=0;d<h.length;d++)c=h[d],"outside"===c.stripLine.labelPlacement&&c.textBlock.render(!0)}};A.prototype.renderBreaksBackground=function(){this.chart._breaksCanvas&&(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length&&this.maskCanvas)&&(this.chart._breaksCanvasCtx.save(),this.chart._breaksCanvasCtx.beginPath(),this.chart._breaksCanvasCtx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height),this.chart._breaksCanvasCtx.clip(),
785
- this.chart._breaksCanvasCtx.drawImage(this.maskCanvas,0,0,this.chart.width,this.chart.height),this.chart._breaksCanvasCtx.restore())};A.prototype.createMask=function(){if(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length){var a=this.scaleBreaks._appliedBreaks;u?(this.maskCanvas=xa(this.chart.width,this.chart.height),this.maskCtx=this.maskCanvas.getContext("2d")):(this.maskCanvas=this.chart.plotArea.canvas,this.maskCtx=this.chart.plotArea.ctx);this.maskCtx.save();this.maskCtx.beginPath();
786
- this.maskCtx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.maskCtx.clip();for(var e=0;e<a.length;e++)a[e].endValue<this.viewportMinimum||(a[e].startValue>this.viewportMaximum||isNaN(this.range))||a[e].render(this.maskCtx);this.maskCtx.restore()}};A.prototype.renderCrosshair=function(a,e){isFinite(this.minimum)&&isFinite(this.maximum)&&this.crosshair.render(a,e)};A.prototype.showCrosshair=function(a){m(a)||(a<this.viewportMinimum||a>this.viewportMaximum)||
787
- ("top"===this._position||"bottom"===this._position?this.crosshair.render(this.convertValueToPixel(a),null,a):this.crosshair.render(null,this.convertValueToPixel(a),a))};A.prototype.renderGrid=function(){if(this.gridThickness&&0<this.gridThickness){var a=this.chart.ctx;a.save();var e,c=this.chart.plotArea;a.lineWidth=this.gridThickness;a.strokeStyle=this.gridColor;a.setLineDash&&a.setLineDash(J(this.gridDashType,this.gridThickness));if("bottom"===this._position||"top"===this._position)for(b=0;b<this._labels.length;b++)this._labels[b].position<
788
- this.viewportMinimum||(this._labels[b].position>this.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.x<<0)+0.5:e.x<<0,a.moveTo(e,c.y1<<0),a.lineTo(e,c.y2<<0),a.stroke());else if("left"===this._position||"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(),
789
- e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.y<<0)+0.5:e.y<<0,a.moveTo(c.x1<<0,e),a.lineTo(c.x2<<0,e),a.stroke());a.restore()}};A.prototype.renderAxisLine=function(){var a=this.chart.ctx,e=u?this.chart._preRenderCtx:a,c=Math.ceil(this.tickThickness/(this.reversed?-2:2)),b=Math.ceil(this.tickThickness/(this.reversed?2:-2)),d,f;e.save();if("bottom"===this._position||"top"===this._position){if(this.lineThickness){this.reversed?(d=this.lineCoordinates.x2,f=this.lineCoordinates.x1):
790
- (d=this.lineCoordinates.x1,f=this.lineCoordinates.x2);e.lineWidth=this.lineThickness;e.strokeStyle=this.lineColor?this.lineColor:"black";e.setLineDash&&e.setLineDash(J(this.lineDashType,this.lineThickness));var n=1===this.lineThickness%2?(this.lineCoordinates.y1<<0)+0.5:this.lineCoordinates.y1<<0;e.beginPath();if(this.scaleBreaks&&!m(this.scaleBreaks.firstBreakIndex))if(m(this.scaleBreaks.lastBreakIndex))d=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+b;else for(var l=
791
- this.scaleBreaks.firstBreakIndex;l<=this.scaleBreaks.lastBreakIndex;l++)e.moveTo(d,n),e.lineTo(this.scaleBreaks._appliedBreaks[l].startPixel+c,n),d=this.scaleBreaks._appliedBreaks[l].endPixel+b;d&&(e.moveTo(d,n),e.lineTo(f,n));e.stroke()}}else if(("left"===this._position||"right"===this._position)&&this.lineThickness){this.reversed?(d=this.lineCoordinates.y1,f=this.lineCoordinates.y2):(d=this.lineCoordinates.y2,f=this.lineCoordinates.y1);e.lineWidth=this.lineThickness;e.strokeStyle=this.lineColor;
792
- e.setLineDash&&e.setLineDash(J(this.lineDashType,this.lineThickness));n=1===this.lineThickness%2?(this.lineCoordinates.x1<<0)+0.5:this.lineCoordinates.x1<<0;e.beginPath();if(this.scaleBreaks&&!m(this.scaleBreaks.firstBreakIndex))if(m(this.scaleBreaks.lastBreakIndex))d=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+c;else for(l=this.scaleBreaks.firstBreakIndex;l<=this.scaleBreaks.lastBreakIndex;l++)e.moveTo(n,d),e.lineTo(n,this.scaleBreaks._appliedBreaks[l].startPixel+b),
793
- d=this.scaleBreaks._appliedBreaks[l].endPixel+c;d&&(e.moveTo(n,d),e.lineTo(n,f));e.stroke()}u&&(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),e.clearRect(0,0,this.chart.width,this.chart.height));e.restore()};A.prototype.getPixelCoordinatesOnAxis=function(a){var e={};if("bottom"===this._position||"top"===this._position)e.x=this.convertValueToPixel(a),
794
- e.y=this.lineCoordinates.y1;if("left"===this._position||"right"===this._position)e.y=this.convertValueToPixel(a),e.x=this.lineCoordinates.x2;return e};A.prototype.convertPixelToValue=function(a){if("undefined"===typeof a)return null;var e=0,c=0,b,e=!0,d=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c="number"===typeof a?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);
795
- if(c<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed)for(c=0;c<d.length;c++){if(!(d[c].endValue<this.conversionParameters.minimum))if(e)if(d[c].startValue<this.conversionParameters.minimum){if(1<d[c].size&&this.conversionParameters.minimum*Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size))<d[c].endValue){a=Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size));break}else a*=d[c].endValue/this.conversionParameters.minimum/
796
- Math.pow(d[c].size,Math.log(d[c].endValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue)),b/=Math.pow(d[c].size,Math.log(d[c].endValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue));e=!1}else if(b>d[c].startValue/this.conversionParameters.minimum){b/=d[c].startValue/this.conversionParameters.minimum;if(b<d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1===d[c].size?1:Math.log(b)/Math.log(d[c].size))/b;break}else a*=d[c].endValue/d[c].startValue/
797
- d[c].size;b/=d[c].size;e=!1}else break;else if(b>d[c].startValue/d[c-1].endValue){b/=d[c].startValue/d[c-1].endValue;if(b<d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1===d[c].size?1:Math.log(b)/Math.log(d[c].size))/b;break}else a*=d[c].endValue/d[c].startValue/d[c].size;b/=d[c].size}else break}else for(c=d.length-1;0<=c;c--)if(!(d[c].startValue>this.conversionParameters.minimum))if(e)if(d[c].endValue>this.conversionParameters.minimum){if(1<d[c].size&&this.conversionParameters.minimum*Math.pow(d[c].endValue/
798
- d[c].startValue,Math.log(b)/Math.log(d[c].size))>d[c].startValue){a=Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size));break}else a*=d[c].startValue/this.conversionParameters.minimum*Math.pow(d[c].size,Math.log(d[c].startValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue))*b,b*=Math.pow(d[c].size,Math.log(this.conversionParameters.minimum/d[c].startValue)/Math.log(d[c].endValue/d[c].startValue));e=!1}else if(b<d[c].endValue/this.conversionParameters.minimum){b/=
799
- d[c].endValue/this.conversionParameters.minimum;if(b>1/d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1>=d[c].size?1:Math.log(b)/Math.log(d[c].size))*b;break}else a/=d[c].endValue/d[c].startValue/d[c].size;b*=d[c].size;e=!1}else break;else if(b<d[c].endValue/d[c+1].startValue){b/=d[c].endValue/d[c+1].startValue;if(b>1/d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1>=d[c].size?1:Math.log(b)/Math.log(d[c].size))*b;break}else a/=d[c].endValue/d[c].startValue/d[c].size;b*=d[c].size}else break;
800
- e=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<d.length;c++){if(!(d[c].endValue<this.conversionParameters.minimum))if(e)if(d[c].startValue<this.conversionParameters.minimum){if(d[c].size&&this.conversionParameters.minimum+b*(d[c].endValue-d[c].startValue)/d[c].size<d[c].endValue){a=0>=d[c].size?0:b*(d[c].endValue-
801
- d[c].startValue)/d[c].size;break}else a+=d[c].endValue-this.conversionParameters.minimum-d[c].size*(d[c].endValue-this.conversionParameters.minimum)/(d[c].endValue-d[c].startValue),b-=d[c].size*(d[c].endValue-this.conversionParameters.minimum)/(d[c].endValue-d[c].startValue);e=!1}else if(b>d[c].startValue-this.conversionParameters.minimum){b-=d[c].startValue-this.conversionParameters.minimum;if(b<d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)-b;break}else a+=d[c].endValue-
802
- d[c].startValue-d[c].size;b-=d[c].size;e=!1}else break;else if(b>d[c].startValue-d[c-1].endValue){b-=d[c].startValue-d[c-1].endValue;if(b<d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)-b;break}else a+=d[c].endValue-d[c].startValue-d[c].size;b-=d[c].size}else break}else for(c=d.length-1;0<=c;c--)if(!(d[c].startValue>this.conversionParameters.minimum))if(e)if(d[c].endValue>this.conversionParameters.minimum)if(d[c].size&&this.conversionParameters.minimum+b*(d[c].endValue-
803
- d[c].startValue)/d[c].size>d[c].startValue){a=0>=d[c].size?0:b*(d[c].endValue-d[c].startValue)/d[c].size;break}else a+=d[c].startValue-this.conversionParameters.minimum+d[c].size*(this.conversionParameters.minimum-d[c].startValue)/(d[c].endValue-d[c].startValue),b+=d[c].size*(this.conversionParameters.minimum-d[c].startValue)/(d[c].endValue-d[c].startValue),e=!1;else if(b<d[c].endValue-this.conversionParameters.minimum){b-=d[c].endValue-this.conversionParameters.minimum;if(b>-1*d[c].size){a+=(d[c].endValue-
804
- d[c].startValue)*(0===d[c].size?1:b/d[c].size)+b;break}else a-=d[c].endValue-d[c].startValue-d[c].size;b+=d[c].size;e=!1}else break;else if(b<d[c].endValue-d[c+1].startValue){b-=d[c].endValue-d[c+1].startValue;if(b>-1*d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)+b;break}else a-=d[c].endValue-d[c].startValue-d[c].size;b+=d[c].size}else break;e=this.conversionParameters.minimum+a}return e};A.prototype.convertValueToPixel=function(a){a=this.getApparentDifference(this.conversionParameters.minimum,
805
- 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)+0.5<<0:this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(a-this.conversionParameters.minimum)+0.5};A.prototype.getApparentDifference=function(a,
806
- e,c,b){var d=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];if(this.logarithmic){c=m(c)?e/a:c;for(var f=0;f<d.length&&!(e<d[f].startValue);f++)a>d[f].endValue||(a<=d[f].startValue&&e>=d[f].endValue?c=c/d[f].endValue*d[f].startValue*d[f].size:a>=d[f].startValue&&e>=d[f].endValue?c=c/d[f].endValue*a*Math.pow(d[f].size,Math.log(d[f].endValue/a)/Math.log(d[f].endValue/d[f].startValue)):a<=d[f].startValue&&e<=d[f].endValue?c=c/e*d[f].startValue*Math.pow(d[f].size,Math.log(e/d[f].startValue)/Math.log(d[f].endValue/
807
- d[f].startValue)):!b&&(a>d[f].startValue&&e<d[f].endValue)&&(c=a*Math.pow(d[f].size,Math.log(e/a)/Math.log(d[f].endValue/d[f].startValue))))}else for(c=m(c)?Math.abs(e-a):c,f=0;f<d.length&&!(e<d[f].startValue);f++)a>d[f].endValue||(a<=d[f].startValue&&e>=d[f].endValue?c=c-d[f].endValue+d[f].startValue+d[f].size:a>d[f].startValue&&e>=d[f].endValue?c=c-d[f].endValue+a+d[f].size*(d[f].endValue-a)/(d[f].endValue-d[f].startValue):a<=d[f].startValue&&e<d[f].endValue?c=c-e+d[f].startValue+d[f].size*(e-d[f].startValue)/
808
- (d[f].endValue-d[f].startValue):!b&&(a>d[f].startValue&&e<d[f].endValue)&&(c=a+d[f].size*(e-a)/(d[f].endValue-d[f].startValue)));return c};A.prototype.setViewPortRange=function(a,e){for(var c=!1,b=0;b<this.dataSeries.length;b++)if(this.dataSeries[b].visible){c=!0;break}this.sessionVariables.newViewportMinimum=this.viewportMinimum=c?Math.min(a,e):null;this.sessionVariables.newViewportMaximum=this.viewportMaximum=c?Math.max(a,e):null};A.prototype.getXValueAt=function(a){if(!a)return null;var e=null;
809
- "left"===this._position?e=this.convertPixelToValue(a.y):"bottom"===this._position&&(e=this.convertPixelToValue(a.x));return e};A.prototype.calculateValueToPixelConversionParameters=function(a){a=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];var e={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);if(this.logarithmic)for(var d=0;d<a.length&&!(this.viewportMaximum<
810
- a[d].startValue);d++)this.viewportMinimum>a[d].endValue||(this.viewportMinimum>=a[d].startValue&&this.viewportMaximum<=a[d].endValue?c=0:this.viewportMinimum<=a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b/a[d].endValue*a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100):c-Math.min(a[d].spacing,0.1*c)):this.viewportMinimum>a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b/a[d].endValue*this.viewportMinimum,c=0<a[d].spacing.toString().indexOf("%")?
811
- c*(1-parseFloat(a[d].spacing)/100*Math.log(a[d].endValue/this.viewportMinimum)/Math.log(a[d].endValue/a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*Math.log(a[d].endValue/this.viewportMinimum)/Math.log(a[d].endValue/a[d].startValue)):this.viewportMinimum<=a[d].startValue&&this.viewportMaximum<a[d].endValue&&(b=b/this.viewportMaximum*a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*Math.log(this.viewportMaximum/a[d].startValue)/Math.log(a[d].endValue/a[d].startValue)):
812
- c-Math.min(a[d].spacing,0.1*c)*Math.log(this.viewportMaximum/a[d].startValue)/Math.log(a[d].endValue/a[d].startValue)));else for(d=0;d<a.length&&!(this.viewportMaximum<a[d].startValue);d++)this.viewportMinimum>a[d].endValue||(this.viewportMinimum>=a[d].startValue&&this.viewportMaximum<=a[d].endValue?c=0:this.viewportMinimum<=a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b-a[d].endValue+a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100):c-Math.min(a[d].spacing,
813
- 0.1*c)):this.viewportMinimum>a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b-a[d].endValue+this.viewportMinimum,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*(a[d].endValue-this.viewportMinimum)/(a[d].endValue-a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*(a[d].endValue-this.viewportMinimum)/(a[d].endValue-a[d].startValue)):this.viewportMinimum<=a[d].startValue&&this.viewportMaximum<a[d].endValue&&(b=b-this.viewportMaximum+a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?
814
- c*(1-parseFloat(a[d].spacing)/100*(this.viewportMaximum-a[d].startValue)/(a[d].endValue-a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*(this.viewportMaximum-a[d].startValue)/(a[d].endValue-a[d].startValue)));e.minimum=this.viewportMinimum;e.maximum=this.viewportMaximum;e.range=b;if("bottom"===this._position||"top"===this._position)this.logarithmic?(e.lnLogarithmBase=Math.log(this.logarithmBase),e.pixelPerUnit=(this.reversed?-1:1)*c*e.lnLogarithmBase/Math.log(Math.abs(b))):e.pixelPerUnit=(this.reversed?
815
- -1:1)*c/Math.abs(b),e.reference=this.reversed?this.lineCoordinates.x2:this.lineCoordinates.x1;if("left"===this._position||"right"===this._position)this.logarithmic?(e.lnLogarithmBase=Math.log(this.logarithmBase),e.pixelPerUnit=(this.reversed?1:-1)*c*e.lnLogarithmBase/Math.log(Math.abs(b))):e.pixelPerUnit=(this.reversed?1:-1)*c/Math.abs(b),e.reference=this.reversed?this.lineCoordinates.y1:this.lineCoordinates.y2;this.conversionParameters=e};A.prototype.calculateAxisParameters=function(){if(this.logarithmic)this.calculateLogarithmicAxisParameters();
816
- else{var a=this.chart.layoutManager.getFreeSpace(),e=!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&&(b=600>this.maxWidth?8:6);var a=Math.max(b,Math.floor(this.maxWidth/a)),d,f,n,b=0;!m(this.minimum)&&(!m(this.maximum)&&this.minimum>this.maximum)&&
817
- (this.minimum=this.maximum=null);!m(this.viewportMinimum)&&(!m(this.viewportMaximum)&&this.viewportMinimum>=this.viewportMaximum)&&(this.viewportMinimum=this.viewportMaximum=null);if(m(this.options.viewportMinimum)&&!m(this.sessionVariables.newViewportMinimum)&&!isNaN(this.sessionVariables.newViewportMinimum))this.viewportMinimum=this.sessionVariables.newViewportMinimum;else if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=this.minimum;if(m(this.options.viewportMaximum)&&
818
- !m(this.sessionVariables.newViewportMaximum)&&!isNaN(this.sessionVariables.newViewportMaximum))this.viewportMaximum=this.sessionVariables.newViewportMaximum;else if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;!m(this.minimum)&&this.viewportMinimum<this.minimum&&(this.viewportMinimum=this.minimum);!m(this.maximum)&&this.viewportMaximum>this.maximum&&(this.viewportMaximum=this.maximum);if(this.scaleBreaks)for(b=0;b<this.scaleBreaks._appliedBreaks.length;b++)if((!m(this.sessionVariables.newViewportMinimum)&&
819
- this.sessionVariables.newViewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue||!m(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[b].startValue||!m(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue)&&(!m(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[b].endValue||!m(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[b].endValue||
820
- !m(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(d=0;d<this.dataSeries.length;d++)"dateTime"===this.dataSeries[d].xValueType&&(c=!0);d=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin;f=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax;0===f-d&&(b="undefined"===typeof this.options.interval?
821
- 0.4:this.options.interval,f+=b,d-=b);Infinity!==this.dataInfo.minDiff?n=this.dataInfo.minDiff:1<f-d?n=0.5*Math.abs(f-d):(n=this.dataInfo.min===this.dataInfo.max?1:Math.abs(this.dataInfo.max-this.dataInfo.min),c&&(e=!0))}else"axisY"===this.type&&(d=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,f=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,n=Math.pow(2,50),isFinite(d)||isFinite(f)?isFinite(d)?isFinite(f)||(f=d):d=f:(f="undefined"===typeof this.options.interval?
822
- -Infinity:this.options.interval,d="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),0===d&&0===f?(f+=9,d=0):0===f-d?(b=Math.min(Math.abs(0.01*Math.abs(f)),5),f+=b,d-=b):d>f?(b=Math.min(0.01*Math.abs(this.getApparentDifference(f,d,null,!0)),5),0<=f?d=f-b:f=isFinite(d)?d+b:0):(d>=n||f>=n||d<=-n||f<=-n)&&10>f-d?f+=9:(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,f,null,!0)),0.05),0!==f&&(f+=b),0!==d&&(d-=b)),n=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:
823
- 1<f-d?0.5*Math.abs(f-d):1,this.includeZero&&(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&0<d&&(d=0),this.includeZero&&(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&0>f&&(f=0));b=this.getApparentDifference(isNaN(this.viewportMinimum)||null===this.viewportMinimum?d:this.viewportMinimum,isNaN(this.viewportMaximum)||null===this.viewportMaximum?f:this.viewportMaximum,null,!0);if("axisX"===this.type&&c){this.valueType="dateTime";this.intervalType||(b/1<=a?(this.interval=1,this.intervalType=
824
- "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="millisecond"):b/300<=a?(this.interval=
825
- 300,this.intervalType="millisecond"):b/400<=a?(this.interval=400,this.intervalType="millisecond"):b/500<=a?(this.interval=500,this.intervalType="millisecond"):b/(1*R.secondDuration)<=a?(this.interval=1,this.intervalType="second"):b/(2*R.secondDuration)<=a?(this.interval=2,this.intervalType="second"):b/(5*R.secondDuration)<=a?(this.interval=5,this.intervalType="second"):b/(10*R.secondDuration)<=a?(this.interval=10,this.intervalType="second"):b/(15*R.secondDuration)<=a?(this.interval=15,this.intervalType=
826
- "second"):b/(20*R.secondDuration)<=a?(this.interval=20,this.intervalType="second"):b/(30*R.secondDuration)<=a?(this.interval=30,this.intervalType="second"):b/(1*R.minuteDuration)<=a?(this.interval=1,this.intervalType="minute"):b/(2*R.minuteDuration)<=a?(this.interval=2,this.intervalType="minute"):b/(5*R.minuteDuration)<=a?(this.interval=5,this.intervalType="minute"):b/(10*R.minuteDuration)<=a?(this.interval=10,this.intervalType="minute"):b/(15*R.minuteDuration)<=a?(this.interval=15,this.intervalType=
827
- "minute"):b/(20*R.minuteDuration)<=a?(this.interval=20,this.intervalType="minute"):b/(30*R.minuteDuration)<=a?(this.interval=30,this.intervalType="minute"):b/(1*R.hourDuration)<=a?(this.interval=1,this.intervalType="hour"):b/(2*R.hourDuration)<=a?(this.interval=2,this.intervalType="hour"):b/(3*R.hourDuration)<=a?(this.interval=3,this.intervalType="hour"):b/(6*R.hourDuration)<=a?(this.interval=6,this.intervalType="hour"):b/(1*R.dayDuration)<=a?(this.interval=1,this.intervalType="day"):b/(2*R.dayDuration)<=
828
- a?(this.interval=2,this.intervalType="day"):b/(4*R.dayDuration)<=a?(this.interval=4,this.intervalType="day"):b/(1*R.weekDuration)<=a?(this.interval=1,this.intervalType="week"):b/(2*R.weekDuration)<=a?(this.interval=2,this.intervalType="week"):b/(3*R.weekDuration)<=a?(this.interval=3,this.intervalType="week"):b/(1*R.monthDuration)<=a?(this.interval=1,this.intervalType="month"):b/(2*R.monthDuration)<=a?(this.interval=2,this.intervalType="month"):b/(3*R.monthDuration)<=a?(this.interval=3,this.intervalType=
829
- "month"):b/(6*R.monthDuration)<=a?(this.interval=6,this.intervalType="month"):(this.interval=b/(1*R.yearDuration)<=a?1:b/(2*R.yearDuration)<=a?2:b/(4*R.yearDuration)<=a?4:Math.floor(A.getNiceNumber(b/(a-1),!0)/R.yearDuration),this.intervalType="year"));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=d-n/2;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=f+n/2;e?this.autoValueFormatString="MMM DD YYYY HH:mm":"year"===this.intervalType?
830
- 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="fff'ms'");
831
- this.valueFormatString||(this.valueFormatString=this.autoValueFormatString)}else{this.intervalType="number";b=A.getNiceNumber(b,!1);this.interval=this.options&&0<this.options.interval?this.options.interval:A.getNiceNumber(b/(a-1),!0);if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?d-n/2:Math.floor(d/this.interval)*this.interval;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum="axisX"===this.type?f+n/2:Math.ceil(f/
832
- 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=A.getNiceNumber((this.viewportMaximum-this.viewportMinimum)/(a-1),!0)))}if(null===this.minimum||null===this.maximum)if("axisX"===this.type?(d=null!==this.minimum?this.minimum:this.dataInfo.min,f=null!==this.maximum?this.maximum:
833
- this.dataInfo.max,0===f-d&&(b="undefined"===typeof this.options.interval?0.4:this.options.interval,f+=b,d-=b),n=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<f-d?0.5*Math.abs(f-d):1):"axisY"===this.type&&(d=null!==this.minimum?this.minimum:this.dataInfo.min,f=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(d)||isFinite(f)?0===d&&0===f?(f+=9,d=0):0===f-d?(b=Math.min(Math.abs(0.01*Math.abs(f)),5),f+=b,d-=b):d>f?(b=Math.min(0.01*Math.abs(this.getApparentDifference(f,d,null,!0)),
834
- 5),0<=f?d=f-b:f=isFinite(d)?d+b:0):(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,f,null,!0)),0.05),0!==f&&(f+=b),0!==d&&(d-=b)):(f="undefined"===typeof this.options.interval?-Infinity:this.options.interval,d="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),n=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<f-d?0.5*Math.abs(f-d):1,this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&0<d&&(d=0),this.includeZero&&(null===this.maximum||
835
- isNaN(this.maximum))&&0>f&&(f=0)),Math.abs(this.getApparentDifference(d,f,null,!0)),"axisX"===this.type&&c){this.valueType="dateTime";if(null===this.minimum||isNaN(this.minimum))this.minimum=d-n/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=f+n/2,this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||
836
- isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum)}else this.intervalType=this.valueType="number",null===this.minimum&&(this.minimum="axisX"===this.type?d-n/2:Math.floor(d/this.interval)*this.interval,this.minimum=Math.min(this.minimum,m(this.sessionVariables.newViewportMinimum)||isNaN(this.sessionVariables.newViewportMinimum)?m(this.sessionVariables.viewportMinimum)||isNaN(this.sessionVariables.viewportMinimum)?Infinity:this.sessionVariables.viewportMinimum:
837
- this.sessionVariables.newViewportMinimum)),null===this.maximum&&(this.maximum="axisX"===this.type?f+n/2:Math.ceil(f/this.interval)*this.interval,this.maximum=Math.max(this.maximum,m(this.sessionVariables.newViewportMaximum)||isNaN(this.sessionVariables.newViewportMaximum)?m(this.sessionVariables.viewportMaximum)||isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum:this.sessionVariables.newViewportMaximum)),0===this.maximum&&0===this.minimum&&(0===this.options.minimum?
838
- this.maximum+=10:0===this.options.maximum&&(this.minimum-=10));m(this.sessionVariables.newViewportMinimum)&&(this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum));m(this.sessionVariables.newViewportMaximum)&&(this.viewportMaximum=Math.min(this.viewportMaximum,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+
839
- 0.2*this.interval)/this.interval)*this.interval;this.valueFormatString||(this.valueFormatString=A.generateValueFormatString(this.range,2))}};A.prototype.calculateLogarithmicAxisParameters=function(){var a=this.chart.layoutManager.getFreeSpace(),e=Math.log(this.logarithmBase),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/
840
- 100)):Math.max(Math.floor(this.maxWidth/50),3),b,d,f,n;n=1;!m(this.minimum)&&(!m(this.maximum)&&this.minimum>this.maximum)&&(this.minimum=this.maximum=null);!m(this.viewportMinimum)&&(!m(this.viewportMaximum)&&this.viewportMinimum>=this.viewportMaximum)&&(this.viewportMinimum=this.viewportMaximum=null);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(n=
841
- 0;n<this.scaleBreaks._appliedBreaks.length;n++)if((!m(this.sessionVariables.newViewportMinimum)&&this.sessionVariables.newViewportMinimum>=this.scaleBreaks._appliedBreaks[n].startValue||!m(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[n].startValue||!m(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[n].startValue)&&(!m(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[n].endValue||
842
- !m(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[n].endValue||!m(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[n].endValue)){this.scaleBreaks._appliedBreaks.splice(n,1);break}"axisX"===this.type?(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,1===d/b&&(n=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?
843
- 0.4:this.options.interval),d*=n,b/=n),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,0>=b&&!isFinite(d)?(d="undefined"===typeof this.options.interval?0:this.options.interval,b=1):0>=b?b=d:isFinite(d)||(d=b),1===b&&1===d?(d*=this.logarithmBase-
844
- 1/this.logarithmBase,b=1):1===d/b?(n=Math.min(d*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),d*=n,b/=n):b>d?(n=Math.min(b/d*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),1<=d?b=d/n:d=b*n):(n=Math.min(d/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==d&&(d*=n),1!==b&&(b/=n)),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,this.includeZero&&(null===
845
- this.viewportMinimum||isNaN(this.viewportMinimum))&&1<b&&(b=1),this.includeZero&&(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&1>d&&(d=1));n=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)/(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);var l=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)-(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);this.intervalType=
846
- "number";n=Math.pow(this.logarithmBase,A.getNiceNumber(Math.abs(Math.log(n)/e),!1));this.options&&0<this.options.interval?this.interval=this.options.interval:(this.interval=A.getNiceExponent(Math.log(n)/e/(a-1),!0),c=A.getNiceNumber(l/(a-1),!0));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?b/Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/e/this.interval));if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=
847
- "axisX"===this.type?d*Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(d)/e/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=A.getNiceExponent(Math.ceil(Math.log(n)/e)/(a-1)),c=A.getNiceNumber((this.viewportMaximum-
848
- this.viewportMinimum)/(a-1),!0)));if(null===this.minimum||null===this.maximum)"axisX"===this.type?(b=null!==this.minimum?this.minimum:this.dataInfo.min,d=null!==this.maximum?this.maximum:this.dataInfo.max,1===d/b&&(n=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?0.4:this.options.interval),d*=n,b/=n),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.minimum?
849
- this.minimum:this.dataInfo.min,d=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(b)||isFinite(d)?1===b&&1===d?(d*=this.logarithmBase,b/=this.logarithmBase):1===d/b?(n=Math.pow(this.logarithmBase,this.interval),d*=n,b/=n):b>d?(n=Math.min(0.01*(b/d),5),1<=d?b=d/n:d=b*n):(n=Math.min(d/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==d&&(d*=n),1!==b&&(b/=n)):(d="undefined"===typeof this.options.interval?0:this.options.interval,b=1),f=Infinity!==this.dataInfo.minDiff?
850
- this.dataInfo.minDiff:d/b>this.logarithmBase?d/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>d&&(d=1)),this.intervalType="number",null===this.minimum&&(this.minimum="axisX"===this.type?b/Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/e/this.interval)),m(null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?
851
- "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?d*Math.sqrt(f):
852
- Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(d)/e/this.interval)),m(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?
853
- 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||
854
- 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)/(e*this.interval)+0.2)*this.interval);this.range=
855
- 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(e=Math.floor(this.viewportMinimum/c+0.5)*c;e<this.viewportMinimum;)e+=c;this.equidistantInterval=!1;this.intervalStartPosition=e;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)/(e*this.interval)+0.2)*this.interval))),
856
- this.equidistantInterval=!0,this.intervalStartPosition=b;if(!this.valueFormatString&&(this.valueFormatString="#,##0.##",1>this.viewportMinimum)){e=Math.floor(Math.abs(Math.log(this.viewportMinimum)/Math.LN10))+2;if(isNaN(e)||!isFinite(e))e=2;if(2<e)for(n=0;n<e-2;n++)this.valueFormatString+="#"}};A.generateValueFormatString=function(a,e){var c="#,##0.",b=e;1>a&&(b+=Math.floor(Math.abs(Math.log(a)/Math.LN10)),isNaN(b)||!isFinite(b))&&(b=e);for(var d=0;d<b;d++)c+="#";return c};A.getNiceExponent=function(a,
857
- e){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))};A.getNiceNumber=function(a,e){var c=Math.floor(Math.log(a)/Math.LN10),b=a/Math.pow(10,c),b=e?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))};A.prototype.getLabelStartPoint=function(){var a=R[this.intervalType+"Duration"]*this.interval,a=
858
- 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"===
859
- 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()||
860
- 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(ga,T);ra(ca,T);ca.prototype.createUserOptions=function(a){if("undefined"!==
861
- typeof a||this.options._isPlaceholder){var e=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Ba(this.parent[this.optionsName]),e=this.parent.options[this.optionsName].indexOf(this.options));this.options="undefined"===typeof a?{}:a;this.parent.options[this.optionsName][e]=this.options}};ca.prototype.render=function(a){if(0!==this.spacing||0!==this.options.lineThickness&&("undefined"!==typeof this.options.lineThickness||0!==this.parent.lineThickness)){var e=
862
- 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),d=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.endValue);this.ctx.strokeStyle=this.lineColor;this.ctx.fillStyle=this.color;this.ctx.beginPath();this.ctx.globalAlpha=1;X(this.id);var f,n,l,h,k,m;a=Math.max(this.spacing,
863
- 3);var p=Math.max(0,this.lineThickness);this.ctx.lineWidth=p;this.ctx.setLineDash&&this.ctx.setLineDash(J(this.lineDashType,p));if("bottom"===this.scaleBreaks.parent._position||"top"===this.scaleBreaks.parent._position)if(b=1===p%2?(b.x<<0)+0.5:b.x<<0,n=1===p%2?(d.x<<0)+0.5:d.x<<0,"top"===this.scaleBreaks.parent._position?(d=this.chart.plotArea.y1,l=this.chart.plotArea.y2+p/2+0.5<<0):(d=this.chart.plotArea.y2,l=this.chart.plotArea.y1-p/2+0.5<<0,a*=-1),this.bounds={x1:b-p/2,y1:d,x2:n+p/2,y2:l},this.ctx.moveTo(b,
864
- d),"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(n,l),this.ctx.lineTo(n,d);else if("wavy"===this.type){h=b;k=d;f=0.5;m=(l-k)/a/3;for(var r=0;r<m;r++)this.ctx.bezierCurveTo(h+f*a,k+a,h+f*a,k+2*a,h,k+3*a),k+=3*a,f*=-1;this.ctx.bezierCurveTo(h+f*a,k+a,h+f*a,k+2*a,h,k+3*a);h=n;f*=-1;this.ctx.lineTo(h,k);for(r=0;r<m;r++)this.ctx.bezierCurveTo(h+f*a,k-a,h+f*a,k-2*a,h,k-3*a),k-=3*a,f*=-1}else{if("zigzag"===
865
- this.type){f=-1;k=d+a;h=b+a;m=(l-k)/a/2;for(r=0;r<m;r++)this.ctx.lineTo(h,k),h+=2*f*a,k+=2*a,f*=-1;this.ctx.lineTo(h,k);h+=n-b;for(r=0;r<m+1;r++)this.ctx.lineTo(h,k),h+=2*f*a,k-=2*a,f*=-1;this.ctx.lineTo(h+f*a,k+a)}}else if("left"===this.scaleBreaks.parent._position||"right"===this.scaleBreaks.parent._position)if(d=1===p%2?(d.y<<0)+0.5:d.y<<0,l=1===p%2?(b.y<<0)+0.5:b.y<<0,"left"===this.scaleBreaks.parent._position?(b=this.chart.plotArea.x1,n=this.chart.plotArea.x2+p/2+0.5<<0):(b=this.chart.plotArea.x2,
866
- n=this.chart.plotArea.x1-p/2+0.5<<0,a*=-1),this.bounds={x1:b,y1:d-p/2,x2:n,y2:l+p/2},this.ctx.moveTo(b,d),"straight"===this.type||"left"===this.scaleBreaks.parent._position&&0>=a||"right"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(n,d),this.ctx.lineTo(n,l),this.ctx.lineTo(b,l);else if("wavy"===this.type){h=b;k=d;f=0.5;m=(n-h)/a/3;for(r=0;r<m;r++)this.ctx.bezierCurveTo(h+a,k+f*a,h+2*a,k+f*a,h+3*a,k),h+=3*a,f*=-1;this.ctx.bezierCurveTo(h+a,k+f*a,h+2*a,k+f*a,h+3*a,k);k=l;f*=-1;this.ctx.lineTo(h,
867
- k);for(r=0;r<m;r++)this.ctx.bezierCurveTo(h-a,k+f*a,h-2*a,k+f*a,h-3*a,k),h-=3*a,f*=-1}else if("zigzag"===this.type){f=1;k=d-a;h=b+a;m=(n-h)/a/2;for(r=0;r<m;r++)this.ctx.lineTo(h,k),k+=2*f*a,h+=2*a,f*=-1;this.ctx.lineTo(h,k);k+=l-d;for(r=0;r<m+1;r++)this.ctx.lineTo(h,k),k+=2*f*a,h-=2*a,f*=-1;this.ctx.lineTo(h+a,k+f*a)}0<p&&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=
868
- c;this.ctx=e}};ra(ia,T);ia.prototype.createUserOptions=function(a){if("undefined"!==typeof a||this.options._isPlaceholder){var e=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Ba(this.parent.stripLines),e=this.parent.options.stripLines.indexOf(this.options));this.options="undefined"===typeof a?{}:a;this.parent.options.stripLines[e]=this.options}};ia.prototype.render=function(){this.ctx.save();var a=this.parent.getPixelCoordinatesOnAxis(this.value),
869
- e=Math.abs("pixel"===this._thicknessType?this.thickness:Math.abs(this.parent.convertValueToPixel(this.endValue)-this.parent.convertValueToPixel(this.startValue)));if(0<e){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;X(this.id);var d,f,h,l;this.ctx.lineWidth=e;this.ctx.setLineDash&&this.ctx.setLineDash(J(this.lineDashType,e));if("bottom"===this.parent._position||"top"===this.parent._position)a="pixel"===
870
- this._thicknessType?a.x:(this.parent.convertValueToPixel(this.endValue)+this.parent.convertValueToPixel(this.startValue))/2,d=f=1===this.ctx.lineWidth%2?(a<<0)+0.5:a<<0,h=this.chart.plotArea.y1,l=this.chart.plotArea.y2,this.bounds={x1:d-e/2,y1:h,x2:f+e/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<<
871
- 0)+0.5:a<<0,d=this.chart.plotArea.x1,f=this.chart.plotArea.x2,this.bounds={x1:d,y1:h-e/2,x2:f,y2:l+e/2};this.ctx.moveTo(d,h);this.ctx.lineTo(f,l);this.ctx.stroke();this.ctx.globalAlpha=b}this.ctx.restore()};ra(ea,T);ea.prototype.showAt=function(a){if(!this.enabled)return!1;var e=this.chart,c=!1;e.resetOverlayedCanvas();e.clearedOverlayedCanvas=this.parent.type;this.chart.renderCrosshairs(this.parent,!1);var b,d="xySwapped"===e.plotInfo.axisPlacement;"bottom"===this.parent._position?b=d?e.axisY:e.axisX:
872
- "top"===this.parent._position?b=d?e.axisY2:e.axisX2:"left"===this.parent._position?b=d?e.axisX:e.axisY:"right"===this.parent._position&&(b=d?e.axisX2:e.axisY2);if(b)for(d=0;d<b.length;d++)this.parent===b[d]&&(b[d]._crosshairValue=a>=b[d].viewportMinimum&&a<=b[d].viewportMaximum?a:null);b=["axisX","axisX2","axisY","axisY2"];for(d=0;d<b.length;d++)for(var f=b[d],h=0;h<e[f].length;h++){var l=e[f][h],s=l._crosshairValue;l.crosshair&&l.crosshair.enabled&&(this.parent===l&&(l.sessionVariables.crosshairShownByPixel=
873
- !1,l.sessionVariables.crosshairValue=l.crosshair._updatedValue=s||a),!m(s)&&s>=l.viewportMinimum&&s<=l.viewportMaximum?(l.showCrosshair(s),this===l.crosshair&&(c=!0)):void 0!==s&&(l.sessionVariables.crosshairValue=null,l.crosshair._updatedValue=null))}this.chart.toolTip&&(this.chart.toolTip._entries&&this.chart.sessionVariables._dataHighlighted)&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);return c};ea.prototype.hide=function(){this.chart.resetOverlayedCanvas();this.chart.toolTip&&
874
- (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};ea.prototype.render=function(a,e,c){var b,d,f,h,l=null,s=null,k=null,q="";this.valueFormatString||("dateTime"===this.parent.valueType?this.valueFormatString=this.parent.valueFormatString:(k=0,k="xySwapped"===this.chart.plotInfo.axisPlacement?50<this.parent.range?
875
- 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=A.generateValueFormatString(this.parent.range,k)));var p=null===this.opacity?1:this.opacity,r=Math.abs("pixel"===this._thicknessType?this.thickness:this.parent.conversionParameters.pixelPerUnit*
876
- this.thickness),g=this.chart.overlaidCanvasCtx,u=g.globalAlpha;g.beginPath();g.strokeStyle=this.color;g.lineWidth=r;g.save();this.labelFontSize=Math.abs(m(this.options.labelFontSize)?this.parent.labelFontSize:this.labelFontSize);this.labelMaxWidth=m(this.options.labelMaxWidth)?0.3*this.chart.width:this.labelMaxWidth;this.labelMaxHeight=m(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||
877
- 0):2*this.labelPadding);k=new ma(g,{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:q,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,padding:this.labelPadding,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle"});
878
- if(this.snapToDataPoint){var x=0,q=[];if("xySwapped"===this.chart.plotInfo.axisPlacement){var y=null;if("bottom"===this.parent._position||"top"===this.parent._position)x=this.parent.dataSeries[0].axisX.convertPixelToValue({y:this.parent.sessionVariables.crosshairShownByPixel?this.chart.sessionVariables.mouseY:e});else if("left"===this.parent._position||"right"===this.parent._position)x=this.parent.convertPixelToValue({y:e});for(var t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,
879
- !0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[t],null!==y.dataPoint.y&&y.dataSeries.visible&&q.push(y));y=null;if(0===q.length)return;q.sort(function(a,b){return a.distance-b.distance});var w=y=0;yPercent=cumulativeY=0;for(var x=Infinity,v,t=0;t<q.length;t++){if("rangeBar"===q[t].dataSeries.type||"error"===q[t].dataSeries.type){if(q[t].dataPoint.y)for(var B=0;B<q[t].dataPoint.y.length;B++)w=Math.abs(a-this.parent.convertValueToPixel(q[t].dataPoint.y[B])),w<=x&&(x=w,y=t)}else"stackedBar"===
880
- q[t].dataSeries.type?(cumulativeY=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=Math.abs(a-this.parent.convertValueToPixel(cumulativeY)),w<=x&&(x=w,y=t)):"stackedBar100"===q[t].dataSeries.type?(w=q[0].dataPoint.x.getTime?q[0].dataPoint.x.getTime():q[0].dataPoint.x,m(v)&&(v=Math.abs(a-this.parent.convertValueToPixel(100*(q[0].dataSeries.dataPointEOs[q[0].index].cumulativeY/q[0].dataSeries.plotUnit.dataPointYSums[w])))),cumulativeY=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=q[t].dataPoint.x.getTime?
881
- q[t].dataPoint.x.getTime():q[t].dataPoint.x,yPercent=100*(cumulativeY/q[t].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(a-this.parent.convertValueToPixel(yPercent)),w<=v&&(v=w,y=t)):(w=Math.abs(a-this.parent.convertValueToPixel(q[t].dataPoint.y)),w<=x&&(x=w,y=t));m(v)||(x=Math.min(x,v))}v=q[y];t=0;if("bottom"===this.parent._position||"top"===this.parent._position){if("rangeBar"===v.dataSeries.type||"error"===v.dataSeries.type){x=Math.abs(a-this.parent.convertValueToPixel(v.dataPoint.y[0]));for(q=
882
- 0;q<v.dataPoint.y.length;q++)w=Math.abs(a-this.parent.convertValueToPixel(v.dataPoint.y[q])),w<x&&(x=w,t=q);l=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y[t])<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y[t])<<0;this.value=v.dataPoint.y[t];0!==v.dataPoint.y[t]%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?
883
- 1:0)));k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.y[t]}):m(this.options.label)?fa(v.dataPoint.y[t],this.valueFormatString,this.chart._cultureInfo):this.label}else"stackedBar"===v.dataSeries.type?(x=Math.abs(a-this.parent.convertValueToPixel(q[0].dataPoint.y)),cumulativeY=v.dataSeries.dataPointEOs[v.index].cumulativeY,l=1===g.lineWidth%2?(this.parent.convertValueToPixel(cumulativeY)<<0)+0.5:this.parent.convertValueToPixel(cumulativeY)<<
884
- 0,this.value=cumulativeY,0!==cumulativeY%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:cumulativeY}):m(this.options.label)?fa(cumulativeY,this.valueFormatString,this.chart._cultureInfo):this.label):"stackedBar100"===v.dataSeries.type?
885
- (x=Math.abs(a-this.parent.convertValueToPixel(q[0].dataPoint.y)),cumulativeY=v.dataSeries.dataPointEOs[v.index].cumulativeY,w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,yPercent=100*(cumulativeY/v.dataSeries.plotUnit.dataPointYSums[w]),l=1===g.lineWidth%2?(this.parent.convertValueToPixel(yPercent)<<0)+0.5:this.parent.convertValueToPixel(yPercent)<<0,this.value=yPercent,0!==yPercent%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,
886
- 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,crosshair:this.options,value:yPercent}):m(this.options.label)?fa(yPercent,this.valueFormatString,this.chart._cultureInfo):this.label):(l=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y)<<0,this.value=v.dataPoint.y,0!==v.dataPoint.y%1&&m(this.options.valueFormatString)&&
887
- (this.valueFormatString=A.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,crosshair:this.options,value:v.dataPoint.y}):m(this.options.label)?fa(v.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):this.label);b=d=l;f=this.chart.plotArea.y1;h=this.chart.plotArea.y2;this.bounds={x1:b-r/2,y1:f,x2:d+r/2,y2:h};
888
- 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){f=h=s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.x)<<
889
- 0)+0.5:this.parent.convertValueToPixel(v.dataPoint.x)<<0;b=this.chart.plotArea.x1;d=this.chart.plotArea.x2;this.bounds={x1:b,y1:f-r/2,x2:d,y2:h+r/2};t=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),q=0;q<this.parent.viewportMaximum;q+=x)if(this.parent.labels[q])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({y:e}),y=null,t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0,!0))&&0<=y.index&&(k.text=
890
- this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?y.dataPoint.label:this.label)}else"dateTime"!==this.parent.valueType||this.parent.logarithmic?(0!==v.dataPoint.x%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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?
891
- this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?fa(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label):k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?Ea(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.dataPoint.x;k.y=h+k.fontSize/2-k.measureText().height/2+2;k.y-k.fontSize/
892
- 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){x=this.parent.convertPixelToValue({x:a});for(t=0;t<this.parent.dataSeries.length;t++)(y=
893
- this.parent.dataSeries[t].getDataPointAtX(x,!0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[t],null!==y.dataPoint.y&&y.dataSeries.visible&&q.push(y));if(0===q.length)return;q.sort(function(a,b){return a.distance-b.distance});v=q[0];b=d=l=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.x)<<0;f=this.chart.plotArea.y1;h=this.chart.plotArea.y2;this.bounds={x1:b-r/2,y1:f,x2:d+r/2,y2:h};t=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),
894
- q=0;q<this.parent.viewportMaximum;q+=x)if(this.parent.labels[q])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({x:a}),y=null,t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0,!0))&&0<=y.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?y.dataPoint.label:this.label)}else"dateTime"!==this.parent.valueType||
895
- this.parent.logarithmic?(0!==v%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?fa(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label):k.text=this.labelFormatter?
896
- this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?Ea(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.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?k.y=this.parent.lineCoordinates.y2+k.fontSize/2+2:"top"===this.parent._position&&(k.y=this.parent.lineCoordinates.y1-
897
- k.height+k.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position){!m(this.parent.dataSeries)&&0<this.parent.dataSeries.length&&(x=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++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[t],null!==y.dataPoint.y&&y.dataSeries.visible&&
898
- q.push(y));if(0===q.length)return;q.sort(function(a,b){return a.distance-b.distance});w=y=0;x=Infinity;for(t=0;t<q.length;t++){if("rangeColumn"===q[t].dataSeries.type||"rangeArea"===q[t].dataSeries.type||"error"===q[t].dataSeries.type||"rangeSplineArea"===q[t].dataSeries.type||"candlestick"===q[t].dataSeries.type||"ohlc"===q[t].dataSeries.type||"boxAndWhisker"===q[t].dataSeries.type){if(q[t].dataPoint.y)for(B=0;B<q[t].dataPoint.y.length;B++)w=Math.abs(e-this.parent.convertValueToPixel(q[t].dataPoint.y[B])),
899
- w<=x&&(x=w,y=t)}else"stackedColumn"===q[t].dataSeries.type?(a=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=x&&(x=w,y=t)):"stackedArea"===q[t].dataSeries.type?(a=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=x&&(x=w,y=t)):"stackedColumn100"===q[t].dataSeries.type||"stackedArea100"===q[t].dataSeries.type?(w=q[0].dataPoint.x.getTime?q[0].dataPoint.x.getTime():q[0].dataPoint.x,m(v)&&
900
- (v=Math.abs(e-this.parent.convertValueToPixel(100*(q[0].dataSeries.dataPointEOs[q[0].index].cumulativeY/q[0].dataSeries.plotUnit.dataPointYSums[w])))),"stackedColumn100"===q[t].dataSeries.type?(s=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=q[t].dataPoint.x.getTime?q[t].dataPoint.x.getTime():q[t].dataPoint.x,a=100*(s/q[t].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=v&&(v=w,y=t)):"stackedArea100"===q[t].dataSeries.type&&(s=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,
901
- w=q[t].dataPoint.x.getTime?q[t].dataPoint.x.getTime():q[t].dataPoint.x,a=100*(s/q[t].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=v&&(v=w,y=t))):"waterfall"===q[t].dataSeries.type?(w=Math.abs(e-this.parent.convertValueToPixel(q[t].dataSeries.dataPointEOs[q[t].index].cumulativeSum)),w<=x&&(v=x=w,y=t)):(w=Math.abs(e-this.parent.convertValueToPixel(q[t].dataPoint.y)),w<=x&&(x=w,y=t));m(v)||(x=Math.min(x,v))}v=q[y];t=0;if("rangeColumn"===v.dataSeries.type||
902
- "rangeArea"===v.dataSeries.type||"error"===v.dataSeries.type||"rangeSplineArea"===v.dataSeries.type||"candlestick"===v.dataSeries.type||"ohlc"===v.dataSeries.type||"boxAndWhisker"===v.dataSeries.type){x=Math.abs(e-this.parent.convertValueToPixel(v.dataPoint.y[0]));for(q=0;q<v.dataPoint.y.length;q++)w=Math.abs(e-this.parent.convertValueToPixel(v.dataPoint.y[q])),w<x&&(x=w,t=q);s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y[t])<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y[t])<<
903
- 0;0!==v.dataPoint.y[t]%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:v.dataPoint.y[t]}):m(this.options.label)?fa(v.dataPoint.y[t],this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.dataPoint.y[t]}else"stackedColumn"===
904
- v.dataSeries.type?(a=v.dataSeries.dataPointEOs[v.index].cumulativeY,s=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:a}):
905
- m(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedArea"===v.dataSeries.type?(a=v.dataSeries.dataPointEOs[v.index].cumulativeY,s=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?
906
- 1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:a}):m(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedColumn100"===v.dataSeries.type?(s=v.dataSeries.dataPointEOs[v.index].cumulativeY,w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,a=100*(s/v.dataSeries.plotUnit.dataPointYSums[w]),s=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<
907
- 0,0!==a%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:a}):m(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedArea100"===v.dataSeries.type?(s=v.dataSeries.dataPointEOs[v.index].cumulativeY,
908
- w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,a=100*(s/v.dataSeries.plotUnit.dataPointYSums[w]),s=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,
909
- axis:this.parent,crosshair:this.options,value:a}):m(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"waterfall"===v.dataSeries.type?(s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataSeries.dataPointEOs[v.index].cumulativeSum)<<0)+0.5:this.parent.convertValueToPixel(v.dataSeries.dataPointEOs[v.index].cumulativeSum)<<0,0!==v.dataSeries.dataPointEOs[v.index].cumulativeSum%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,
910
- 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,crosshair:this.options,value:v.dataSeries.dataPointEOs[v.index].cumulativeSum}):m(this.options.label)?fa(v.dataSeries.dataPointEOs[v.index].cumulativeSum,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=v.dataSeries.dataPointEOs[v.index].cumulativeSum):(s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y)<<
911
- 0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y)<<0,0!==v.dataPoint.y%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:v.dataPoint.y}):m(this.options.label)?fa(v.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):
912
- this.label,this.value=v.dataPoint.y);f=h=s;b=this.chart.plotArea.x1;d=this.chart.plotArea.x2;this.bounds={x1:b,y1:f-r/2,x2:d,y2:h+r/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&&(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&&
913
- (k.x=this.parent.lineCoordinates.x2)}q=null;g.globalAlpha=p;0<r&&g.setLineDash&&g.setLineDash(J(this.lineDashType,r));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&&this.parent.lineCoordinates.y2+k.measureText().height>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.height+k.fontSize/2+2),this.value>=Math.min(this.parent.viewportMinimum,
914
- this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<r&&(g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=this._hidden=!1);if("left"===this.parent._position||"right"===this.parent._position)"left"===this.parent._position&&k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1),"right"===this.parent._position&&k.x+k.measureText().width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.measureText().width),this.value>=
915
- Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<r&&(g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=this._hidden=!1)}else{if("bottom"===this.parent._position||"top"===this.parent._position)b=d=l=1===g.lineWidth%2?(a<<0)+0.5:a<<0,f=this.chart.plotArea.y1,h=this.chart.plotArea.y2,this.bounds={x1:b-r/2,y1:f,x2:d+r/2,y2:h};else if("left"===this.parent._position||"right"===
916
- this.parent._position)f=h=s=1===g.lineWidth%2?(e<<0)+0.5:e<<0,b=this.chart.plotArea.x1,d=this.chart.plotArea.x2,this.bounds={x1:b,y1:f-r/2,x2:d,y2:h+r/2};if("xySwapped"===this.chart.plotInfo.axisPlacement)if("left"===this.parent._position||"right"===this.parent._position){t=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),q=0;q<this.parent.viewportMaximum;q+=x)if(this.parent.labels[q])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({y:e}),
917
- y=null,t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0))&&0<=y.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(a):c}):m(this.options.label)?y.dataPoint.label:this.label)}else k.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?
918
- this.parent.convertPixelToValue(e):c}):m(this.options.label)?fa(m(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(e):c}):m(this.options.label)?Ea(m(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label;k.y=e+k.fontSize/2-k.measureText().height/2+2;k.y-k.fontSize/2<
919
- 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.x1-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}else{if("bottom"===this.parent._position||"top"===this.parent._position)k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,
920
- value:m(c)?this.parent.convertPixelToValue(a):c}):m(this.options.label)?fa(m(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label,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?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("bottom"===
921
- this.parent._position||"top"===this.parent._position){t=!1;q="";if(this.parent.labels)for(x=Math.ceil(this.parent.interval),q=0;q<this.parent.viewportMaximum;q+=x)if(this.parent.labels[q])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({x:a}),y=null,t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0))&&0<=y.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,
922
- value:m(c)?this.parent.convertPixelToValue(a):c}):m(this.options.label)?m(c)?y.dataPoint.label:c:this.label)}else k.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?0<this.parent.dataSeries.length?this.parent.convertPixelToValue(a):"":c}):m(this.options.label)?fa(m(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?
923
- this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(a):c}):m(this.options.label)?Ea(m(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label;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?k.y=this.parent.lineCoordinates.y2+k.fontSize/2+2:"top"===this.parent._position&&
924
- (k.y=this.parent.lineCoordinates.y1-k.height+k.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position)k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(e):c}):m(this.options.label)?fa(m(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label,k.y=e+k.fontSize/2-k.measureText().height/2+2,k.y-k.fontSize/2<this.chart.bounds.y1?k.y=
925
- 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);"left"===this.parent._position&&k.x<this.chart.bounds.x1?k.x=this.chart.bounds.x1:"right"===this.parent._position&&k.x+k.measureText().width>this.chart.bounds.x2?k.x=this.chart.bounds.x2-
926
- k.measureText().width:"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&&this.parent.lineCoordinates.y2+k.measureText().height>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.height+k.fontSize/2+2);g.globalAlpha=p;0<r&&("bottom"!==this.parent._position||d<=this.parent.lineCoordinates.x2)&&(g.setLineDash&&g.setLineDash(J(this.lineDashType,r)),g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=
927
- this._hidden=!1);this.value="bottom"===this.parent._position||"top"===this.parent._position?this.parent.convertPixelToValue(a):this.parent.convertPixelToValue(e)}if("bottom"===this.parent._position||"top"===this.parent._position)this.parent.sessionVariables.crosshairValue=this._updatedValue=this.parent.convertPixelToValue(l);if("left"===this.parent._position||"right"===this.parent._position)this.parent.sessionVariables.crosshairValue=this._updatedValue=this.parent.convertPixelToValue(s);this._textBlock=
928
- k;this._label=c;m(c)||this.renderLabel();g.restore();g.globalAlpha=u};ea.prototype.renderLabel=function(){this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&(m(this._textBlock)||(m(this._textBlock.text)||!("number"===typeof this._textBlock.text.valueOf()||0<this._textBlock.text.length)||this._hidden)||this._textBlock.render(!0),m(this._label)&&this.dispatchEvent("updated",{chart:this.chart,crosshair:this.options,
929
- axis:this.parent,value:this.value},this.parent))};ra(oa,T);oa.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("shared");this.updateOption("animationEnabled");this.updateOption("content");this.updateOption("contentFormatter");this.updateOption("reversed");this.updateOption("backgroundColor");this.updateOption("borderColor");this.updateOption("borderThickness");this.updateOption("cornerRadius");this.updateOption("fontSize");this.updateOption("fontColor");this.updateOption("fontFamily");
930
- this.updateOption("fontWeight");this.updateOption("fontStyle")};oa.prototype._initialize=function(){this.updateOption("updated");this.updateOption("hidden");if(this.enabled){this.container=document.createElement("div");this.container.setAttribute("class","canvasjs-chart-tooltip");this.container.style.position="absolute";this.container.style.height="auto";this.container.style.boxShadow="1px 1px 2px 2px rgba(0,0,0,0.1)";this.container.style.zIndex="1000";this.container.style.pointerEvents="none";this.container.style.display=
931
- "none";var a=document.createElement("div");a.style.width="auto";a.style.height="auto";a.style.minWidth="50px";a.style.lineHeight="normal";a.style.margin="0px 0px 0px 0px";a.style.padding="5px";a.style.fontFamily="Calibri, Arial, Georgia, serif";a.style.fontWeight="normal";a.style.fontStyle=u?"italic":"normal";a.style.fontSize="14px";a.style.color="#000000";a.style.textShadow="1px 1px 1px rgba(0, 0, 0, 0.1)";a.style.textAlign="left";a.style.border="2px solid gray";a.style.background=u?"rgba(255,255,255,.9)":
932
- "rgb(255,255,255)";a.style.textIndent="0px";a.style.whiteSpace="nowrap";a.style.borderRadius="5px";a.style.MozUserSelect="none";a.style.WebkitUserSelect="none";a.style.msUserSelect="none";a.style.userSelect="none";u||(a.style.filter="alpha(opacity = 90)",a.style.filter="progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color='#666666')");a.innerText="Sample Tooltip";this.container.appendChild(a);this.contentDiv=this.container.firstChild;this.container.style.borderRadius=this.contentDiv.style.borderRadius;
933
- this.chart._canvasJSContainer.appendChild(this.container)}};oa.prototype.mouseMoveHandler=function(a,e){this._lastUpdated&&4>(new Date).getTime()-this._lastUpdated||(this._lastUpdated=(new Date).getTime(),this.chart.resetOverlayedCanvas(),this._updateToolTip(a,e),this.enabled&&this._updatedEventParameters&&!isNaN(this._prevX)&&!isNaN(this._prevY)&&this.container&&this.container.style&&this.dispatchEvent("none"===this.container.style.display?"hidden":"updated",this._updatedEventParameters,this))};
934
- oa.prototype._updateToolTip=function(a,e,c){c="undefined"===typeof c?!0:c;this._updateOptions();this.container||this._initialize();this.enabled||this.hide();if(!this.chart.disableToolTip){if("undefined"===typeof a||"undefined"===typeof e){if(isNaN(this._prevX)||isNaN(this._prevY))return;a=this._prevX;e=this._prevY}else this._prevX=a,this._prevY=e;var b=null,d=null,f=[],h=0;if(this.shared&&this.enabled&&"none"!==this.chart.plotInfo.axisPlacement){var l=[];if(this.chart.axisX)for(var s=0;s<this.chart.axisX.length;s++){for(var h=
935
- "xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX[s].convertPixelToValue({y:e}):this.chart.axisX[s].convertPixelToValue({x:a}),k=null,b=0;b<this.chart.axisX[s].dataSeries.length;b++)(k=this.chart.axisX[s].dataSeries[b].getDataPointAtX(h,c,!0))&&0<=k.index&&(k.dataSeries=this.chart.axisX[s].dataSeries[b],null!==k.dataPoint.y&&k.dataSeries.visible&&l.push(k));k=null}if(this.chart.axisX2)for(s=0;s<this.chart.axisX2.length;s++){h="xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX2[s].convertPixelToValue({y:e}):
936
- this.chart.axisX2[s].convertPixelToValue({x:a});k=null;for(b=0;b<this.chart.axisX2[s].dataSeries.length;b++)(k=this.chart.axisX2[s].dataSeries[b].getDataPointAtX(h,c,!0))&&0<=k.index&&(k.dataSeries=this.chart.axisX2[s].dataSeries[b],null!==k.dataPoint.y&&k.dataSeries.visible&&l.push(k));k=null}if(0===l.length)return;l.sort(function(a,b){return a.dataSeries.axisX.logarithmic||b.dataSeries.axisX.logarithmic?a.distance-b.distance:a.distance/a.dataSeries.axisX.range-b.distance/b.dataSeries.axisX.range});
937
- c=l[0];for(b=0;b<l.length;b++)l[b].dataPoint.x.valueOf()===c.dataPoint.x.valueOf()&&f.push(l[b]);l=null}else{if(b=this.chart.getDataPointAtXY(a,e,c))this.currentDataPointIndex=b.dataPointIndex,this.currentSeriesIndex=b.dataSeries.index;else if(u)if(b=bb(a,e,this.chart._eventManager.ghostCtx),0<b&&"undefined"!==typeof this.chart._eventManager.objectMap[b]){b=this.chart._eventManager.objectMap[b];if("legendItem"===b.objectType)return;this.currentSeriesIndex=b.dataSeriesIndex;this.currentDataPointIndex=
938
- 0<=b.dataPointIndex?b.dataPointIndex:-1}else this.currentDataPointIndex=-1;else this.currentDataPointIndex=-1;if(0<=this.currentSeriesIndex){d=this.chart.data[this.currentSeriesIndex];k={};if(0<=this.currentDataPointIndex)b=d.dataPoints[this.currentDataPointIndex],k.dataSeries=d,k.dataPoint=b,k.index=this.currentDataPointIndex,k.distance=Math.abs(b.x-h),"waterfall"===d.type&&(k.cumulativeSumYStartValue=d.dataPointEOs[this.currentDataPointIndex].cumulativeSumYStartValue,k.cumulativeSum=d.dataPointEOs[this.currentDataPointIndex].cumulativeSum);
939
- else if(this.enabled&&d&&("line"===d.type||"stepLine"===d.type||"spline"===d.type||"area"===d.type||"stepArea"===d.type||"splineArea"===d.type||"stackedArea"===d.type||"stackedArea100"===d.type||"rangeArea"===d.type||"rangeSplineArea"===d.type||"candlestick"===d.type||"ohlc"===d.type||"boxAndWhisker"===d.type))h=d.axisX.convertPixelToValue({x:a}),k=d.getDataPointAtX(h,c,!0),m(k)||(k.dataSeries=d,this.currentDataPointIndex=k.index,b=k.dataPoint);else{"toolTip"===this.chart.clearedOverlayedCanvas&&
940
- (this.chart.resetOverlayedCanvas(),this.chart.clearedOverlayedCanvas=null,this.chart.sessionVariables._dataHighlighted=!1,this.container&&(this.container.style.display="none"));return}if(!m(k)&&!m(k.dataPoint)&&!m(k.dataPoint.y))if(k.dataSeries.axisY)if(0<k.dataPoint.y.length){for(b=c=0;b<k.dataPoint.y.length;b++)k.dataPoint.y[b]<k.dataSeries.axisY.viewportMinimum?c--:k.dataPoint.y[b]>k.dataSeries.axisY.viewportMaximum&&c++;c<k.dataPoint.y.length&&c>-k.dataPoint.y.length&&f.push(k)}else"column"===
941
- d.type||"bar"===d.type?0>k.dataPoint.y?0>k.dataSeries.axisY.viewportMinimum&&k.dataSeries.axisY.viewportMaximum>=k.dataPoint.y&&f.push(k):k.dataSeries.axisY.viewportMinimum<=k.dataPoint.y&&0<=k.dataSeries.axisY.viewportMaximum&&f.push(k):"bubble"===d.type?(c=this.chart._eventManager.objectMap[d.dataPointIds[k.index]].size/2,k.dataPoint.y>=k.dataSeries.axisY.viewportMinimum-c&&k.dataPoint.y<=k.dataSeries.axisY.viewportMaximum+c&&f.push(k)):"waterfall"===d.type?(c=0,k.cumulativeSumYStartValue<k.dataSeries.axisY.viewportMinimum?
942
- c--:k.cumulativeSumYStartValue>k.dataSeries.axisY.viewportMaximum&&c++,k.cumulativeSum<k.dataSeries.axisY.viewportMinimum?c--:k.cumulativeSum>k.dataSeries.axisY.viewportMaximum&&c++,2>c&&-2<c&&f.push(k)):(0<=k.dataSeries.type.indexOf("100")||"stackedColumn"===d.type||"stackedBar"===d.type||"stackedArea"===d.type||k.dataPoint.y>=k.dataSeries.axisY.viewportMinimum&&k.dataPoint.y<=k.dataSeries.axisY.viewportMaximum)&&f.push(k);else f.push(k)}}if(0<f.length){if(this._entries=f,this.highlightObjects(f),
943
- this.enabled){c="";c=this.getToolTipInnerHTML({entries:f});if(null!==c){this.contentDiv.innerHTML=c;if(this.isToolTipDefinedInData&&m(this.options.content)&&m(this.options.contentFormatter))for(h=this.contentDiv.getElementsByTagName("span"),b=0;b<h.length;b++)h[b]&&(h[b].style.color=h[b].getAttribute("data-color"));h=!1;"none"===this.container.style.display&&(h=!0,this.container.style.display="block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:u?"rgba(255,255,255,.9)":
601
+ this.orientation){r.textBlock=new ma(this.ctx,{x:0,y:0,maxWidth:s,maxHeight:this.itemWrap?n:this.lineHeight,angle:0,text:r.text,textAlign:this.itemTextAlign,fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"});r.textBlock.measureText();null!==this.itemWidth?r.textBlock.width=this.itemWidth-(u+l+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:0)):q===h.length-
602
+ 1&&(this.itemWidth=r.textBlock.width+(u+l+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:0)));if(!p||p.width+Math.round(r.textBlock.width+u+l+(0===p.width?0:this.horizontalSpacing)+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:0))>f)p={items:[],width:0},k.push(p),this.height+=g,g=0;g=Math.max(g,r.textBlock.height?r.textBlock.height:this.lineHeight);r.textBlock.x=p.width;r.textBlock.y=0;p.width+=Math.round(r.textBlock.width+
603
+ u+l+(0===p.width?0:this.horizontalSpacing)+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:0));p.items.push(r);this.width=Math.max(p.width,this.width)}else r.textBlock=new ma(this.ctx,{x:0,y:0,maxWidth:v,maxHeight:!0===this.itemWrap?n:1.5*this.fontSize,angle:0,text:r.text,textAlign:this.itemTextAlign,fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"}),r.textBlock.measureText(),
604
+ null!==this.itemWidth?r.textBlock.width=this.itemWidth-(u+l+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:0)):q===h.length-1&&(this.itemWidth=r.textBlock.width+(u+l+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:0))),this.height<n-this.lineHeight?(p={items:[],width:0},k.push(p)):(p=k[w],w=(w+1)%k.length),p&&(this.height+=r.textBlock.height?r.textBlock.height:this.lineHeight,r.textBlock.x=p.width,r.textBlock.y=
605
+ 0,p.width+=Math.round(r.textBlock.width+u+l+(0===p.width?0:this.horizontalSpacing)+("line"===r.chartType||"spline"===r.chartType||"stepLine"===r.chartType?2*0.1*this.lineHeight:0)),p.items.push(r),this.width=Math.max(p.width,this.width))}this.height=!1===this.itemWrap?k.length*this.lineHeight:this.height+g;this.height=Math.min(n,this.height)>=this.lineHeight?Math.min(n,this.height):0;this.width=Math.min(f,this.width)}"top"===this.verticalAlign?(d="left"===this.horizontalAlign?e.x1:"right"===this.horizontalAlign?
606
+ e.x2-this.width-2:e.x1+e.width/2-this.width/2,b=e.y1):"center"===this.verticalAlign?(d="left"===this.horizontalAlign?e.x1:"right"===this.horizontalAlign?e.x2-this.width-2:e.x1+e.width/2-this.width/2,b=e.y1+e.height/2-this.height/2):"bottom"===this.verticalAlign&&(d="left"===this.horizontalAlign?e.x1:"right"===this.horizontalAlign?e.x2-this.width-2:e.x1+e.width/2-this.width/2,b=e.y2-this.height);this.items=h;for(q=0;q<this.items.length;q++)r=h[q],r.id=++this.chart._eventManager.lastObjectId,this.chart._eventManager.objectMap[r.id]=
607
+ {id:r.id,objectType:"legendItem",legendItemIndex:q,dataSeriesIndex:r.dataSeriesIndex,dataPointIndex:r.dataPointIndex};this.markerSize=u;this.rows=k;0<h.length&&0<this.height&&a.layoutManager.registerSpace(c,{width:this.width+2+2,height:this.height+5+5});this.bounds={x1:d,y1:b,x2:d+this.width,y2:b+this.height}};F.prototype.render=function(){var a=this.bounds.x1,e=this.bounds.y1,c=this.markerMargin,b=this.maxWidth,d=this.maxHeight,f=this.markerSize,n=this.rows;(0<this.borderThickness&&this.borderColor||
608
+ this.backgroundColor)&&this.ctx.roundRect(a,e,this.width,this.height,this.cornerRadius,this.borderThickness,this.backgroundColor,this.borderColor);for(var l=0,m=0;m<n.length;m++){for(var k=n[m],h=0,p=0;p<k.items.length;p++){var r=k.items[p],g=r.textBlock.x+a+(0===p?0.2*f:this.horizontalSpacing),s=e+l,u=g;this.chart.data[r.dataSeriesIndex].visible||(this.ctx.globalAlpha=0.5);this.ctx.save();this.ctx.beginPath();this.ctx.rect(a,e,b,Math.max(d-d%this.lineHeight,0));this.ctx.clip();if("line"===r.chartType||
609
+ "stepLine"===r.chartType||"spline"===r.chartType)this.ctx.strokeStyle=r.lineColor,this.ctx.lineWidth=Math.ceil(this.lineHeight/8),this.ctx.beginPath(),this.ctx.moveTo(g-0.1*this.lineHeight,s+this.lineHeight/2),this.ctx.lineTo(g+0.85*this.lineHeight,s+this.lineHeight/2),this.ctx.stroke(),u-=0.1*this.lineHeight;if("error"===r.chartType){this.ctx.strokeStyle=this.errorMarkerColor[0];this.ctx.lineWidth=f/8;this.ctx.beginPath();var y=g-0.08*this.lineHeight+0.1*this.lineHeight,t=s+0.15*this.lineHeight,
610
+ w=0.7*this.lineHeight,v=w+0.02*this.lineHeight;this.ctx.moveTo(y,t);this.ctx.lineTo(y+w,t);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(y+w/2,t);this.ctx.lineTo(y+w/2,t+v);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(y,t+v);this.ctx.lineTo(y+w,t+v);this.ctx.stroke();this.errorMarkerColor.shift()}Y.drawMarker(g+f/2,s+this.lineHeight/2,this.ctx,r.markerType,"error"===r.chartType||"line"===r.chartType||"spline"===r.chartType?r.markerSize/2:r.markerSize,r.markerColor,r.markerBorderColor,
611
+ r.markerBorderThickness);r.textBlock.x=g+c+f;if("line"===r.chartType||"stepLine"===r.chartType||"spline"===r.chartType)r.textBlock.x+=0.1*this.lineHeight;r.textBlock.y=Math.round(s+this.lineHeight/2);r.textBlock.render(!0);this.ctx.restore();h=0<p?Math.max(h,r.textBlock.height?r.textBlock.height:this.lineHeight):r.textBlock.height?r.textBlock.height:this.lineHeight;this.chart.data[r.dataSeriesIndex].visible||(this.ctx.globalAlpha=1);g=X(r.id);this.ghostCtx.fillStyle=g;this.ghostCtx.beginPath();this.ghostCtx.fillRect(u,
612
+ r.textBlock.y-this.lineHeight/2,r.textBlock.x+r.textBlock.width-u,r.textBlock.height?r.textBlock.height:this.lineHeight);r.x1=this.chart._eventManager.objectMap[r.id].x1=u;r.y1=this.chart._eventManager.objectMap[r.id].y1=r.textBlock.y-this.lineHeight/2;r.x2=this.chart._eventManager.objectMap[r.id].x2=r.textBlock.x+r.textBlock.width;r.y2=this.chart._eventManager.objectMap[r.id].y2=r.textBlock.y+(r.textBlock.height?r.textBlock.height:this.lineHeight)-this.lineHeight/2}l+=h}};ra(U,T);U.prototype.getDefaultAxisPlacement=
613
+ function(){var a=this.type;if("column"===a||"line"===a||"stepLine"===a||"spline"===a||"area"===a||"stepArea"===a||"splineArea"===a||"stackedColumn"===a||"stackedLine"===a||"bubble"===a||"scatter"===a||"stackedArea"===a||"stackedColumn100"===a||"stackedLine100"===a||"stackedArea100"===a||"candlestick"===a||"ohlc"===a||"rangeColumn"===a||"rangeArea"===a||"rangeSplineArea"===a||"boxAndWhisker"===a||"waterfall"===a)return"normal";if("bar"===a||"stackedBar"===a||"stackedBar100"===a||"rangeBar"===a)return"xySwapped";
614
+ if("pie"===a||"doughnut"===a||"funnel"===a||"pyramid"===a)return"none";"error"!==a&&window.console.log("Unknown Chart Type: "+a);return null};U.getDefaultLegendMarker=function(a){if("column"===a||"stackedColumn"===a||"stackedLine"===a||"bar"===a||"stackedBar"===a||"stackedBar100"===a||"bubble"===a||"scatter"===a||"stackedColumn100"===a||"stackedLine100"===a||"stepArea"===a||"candlestick"===a||"ohlc"===a||"rangeColumn"===a||"rangeBar"===a||"rangeArea"===a||"rangeSplineArea"===a||"boxAndWhisker"===
615
+ a||"waterfall"===a)return"square";if("line"===a||"stepLine"===a||"spline"===a||"pie"===a||"doughnut"===a)return"circle";if("area"===a||"splineArea"===a||"stackedArea"===a||"stackedArea100"===a||"funnel"===a||"pyramid"===a)return"triangle";if("error"===a)return"none";window.console.log("Unknown Chart Type: "+a);return null};U.prototype.getDataPointAtX=function(a,e,c){if(!this.dataPoints||0===this.dataPoints.length)return null;var b={dataPoint:null,distance:Infinity,index:NaN},d=null,f=0,n=0,l=1,h=
616
+ Infinity,k=0,q=0,p=0;"none"!==this.chart.plotInfo.axisPlacement&&(this.axisX.logarithmic?(p=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x),p=1<p?Math.min(Math.max((this.dataPoints.length-1)/p*Math.log(a/this.dataPoints[0].x)>>0,0),this.dataPoints.length):0):(p=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0<p?Math.min(Math.max((this.dataPoints.length-1)/p*(a-this.dataPoints[0].x)>>0,0),this.dataPoints.length):0));for(;;){n=0<l?p+f:p-f;if(0<=n&&n<this.dataPoints.length){var d=
617
+ this.dataPoints[n],r=this.axisX&&this.axisX.logarithmic?d.x>a?d.x/a:a/d.x:Math.abs(d.x-a);r<b.distance&&(m(c)||c&&!m(d.y))&&(b.dataPoint=d,b.distance=r,b.index=n);d=r;d<=h?h=d:0<l?k++:q++;if(1E3<k&&1E3<q)break}else if(0>p-f&&p+f>=this.dataPoints.length)break;-1===l?(f++,l=1):l=-1}return e||(b.dataPoint.x.getTime?b.dataPoint.x.getTime():b.dataPoint.x)!==(a.getTime?a.getTime():a)?e&&null!==b.dataPoint?b:null:b};U.prototype.getDataPointAtXY=function(a,e,c){if(!this.dataPoints||0===this.dataPoints.length||
618
+ a<this.chart.plotArea.x1||a>this.chart.plotArea.x2||e<this.chart.plotArea.y1||e>this.chart.plotArea.y2)return null;c=c||!1;var b=[],d=0,f=0,n=1,l=!1,h=Infinity,k=0,q=0,p=0;if("none"!==this.chart.plotInfo.axisPlacement)if(p=(this.chart.axisX[0]?this.chart.axisX[0]:this.chart.axisX2[0]).getXValueAt({x:a,y:e}),this.axisX.logarithmic)var r=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x),p=1<r?Math.min(Math.max((this.dataPoints.length-1)/r*Math.log(p/this.dataPoints[0].x)>>0,
619
+ 0),this.dataPoints.length):0;else r=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0<r?Math.min(Math.max((this.dataPoints.length-1)/r*(p-this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;for(;;){f=0<n?p+d:p-d;if(0<=f&&f<this.dataPoints.length){var r=this.chart._eventManager.objectMap[this.dataPointIds[f]],g=this.dataPoints[f],s=null;if(r){switch(this.type){case "column":case "stackedColumn":case "stackedColumn100":case "bar":case "stackedBar":case "stackedBar100":case "rangeColumn":case "rangeBar":case "waterfall":case "error":a>=
620
+ r.x1&&(a<=r.x2&&e>=r.y1&&e<=r.y2)&&(b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(r.x1-a),Math.abs(r.x2-a),Math.abs(r.y1-e),Math.abs(r.y2-e))}),l=!0);break;case "line":case "stepLine":case "spline":case "area":case "stepArea":case "stackedArea":case "stackedArea100":case "splineArea":case "scatter":var u=W("markerSize",g,this)||4,y=c?20:u,s=Math.sqrt(Math.pow(r.x1-a,2)+Math.pow(r.y1-e,2));s<=y&&b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:s});r=Math.abs(r.x1-
621
+ a);r<=h?h=r:0<n?k++:q++;s<=u/2&&(l=!0);break;case "rangeArea":case "rangeSplineArea":u=W("markerSize",g,this)||4;y=c?20:u;s=Math.min(Math.sqrt(Math.pow(r.x1-a,2)+Math.pow(r.y1-e,2)),Math.sqrt(Math.pow(r.x1-a,2)+Math.pow(r.y2-e,2)));s<=y&&b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:s});r=Math.abs(r.x1-a);r<=h?h=r:0<n?k++:q++;s<=u/2&&(l=!0);break;case "bubble":u=r.size;s=Math.sqrt(Math.pow(r.x1-a,2)+Math.pow(r.y1-e,2));s<=u/2&&(b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,
622
+ distance:s}),l=!0);break;case "pie":case "doughnut":u=r.center;y="doughnut"===this.type?r.percentInnerRadius*r.radius:0;s=Math.sqrt(Math.pow(u.x-a,2)+Math.pow(u.y-e,2));s<r.radius&&s>y&&(s=Math.atan2(e-u.y,a-u.x),0>s&&(s+=2*Math.PI),s=Number(((180*(s/Math.PI)%360+360)%360).toFixed(12)),u=Number(((180*(r.startAngle/Math.PI)%360+360)%360).toFixed(12)),y=Number(((180*(r.endAngle/Math.PI)%360+360)%360).toFixed(12)),0===y&&1<r.endAngle&&(y=360),u>=y&&(0!==g.y&&!m(g.y))&&(y+=360,s<u&&(s+=360)),s>u&&s<y&&
623
+ (b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:0}),l=!0));break;case "funnel":case "pyramid":s=r.funnelSection;e>=s.y1&&e<s.y4&&(s.y6?e>=s.y6?(f=s.x6+(s.x5-s.x6)/(s.y5-s.y6)*(e-s.y6),s=s.x3+(s.x4-s.x3)/(s.y4-s.y3)*(e-s.y3)):(f=s.x1+(s.x6-s.x1)/(s.y6-s.y1)*(e-s.y1),s=s.x2+(s.x3-s.x2)/(s.y3-s.y2)*(e-s.y2)):(f=s.x1+(s.x4-s.x1)/(s.y4-s.y1)*(e-s.y1),s=s.x2+(s.x3-s.x2)/(s.y3-s.y2)*(e-s.y2)),a>f&&a<s&&(b.push({dataPoint:g,dataPointIndex:r.dataPointIndex,dataSeries:this,distance:0}),l=!0));
624
+ break;case "boxAndWhisker":if(a>=r.x1-r.borderThickness/2&&a<=r.x2+r.borderThickness/2&&e>=r.y4-r.borderThickness/2&&e<=r.y1+r.borderThickness/2||Math.abs(r.x2-a+r.x1-a)<r.borderThickness&&e>=r.y1&&e<=r.y4)b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(r.x1-a),Math.abs(r.x2-a),Math.abs(r.y2-e),Math.abs(r.y3-e))}),l=!0;break;case "candlestick":if(a>=r.x1-r.borderThickness/2&&a<=r.x2+r.borderThickness/2&&e>=r.y2-r.borderThickness/2&&e<=r.y3+r.borderThickness/2||Math.abs(r.x2-
625
+ a+r.x1-a)<r.borderThickness&&e>=r.y1&&e<=r.y4)b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(r.x1-a),Math.abs(r.x2-a),Math.abs(r.y2-e),Math.abs(r.y3-e))}),l=!0;break;case "ohlc":if(Math.abs(r.x2-a+r.x1-a)<r.borderThickness&&e>=r.y2&&e<=r.y3||a>=r.x1&&a<=(r.x2+r.x1)/2&&e>=r.y1-r.borderThickness/2&&e<=r.y1+r.borderThickness/2||a>=(r.x1+r.x2)/2&&a<=r.x2&&e>=r.y4-r.borderThickness/2&&e<=r.y4+r.borderThickness/2)b.push({dataPoint:g,dataPointIndex:f,dataSeries:this,distance:Math.min(Math.abs(r.x1-
626
+ a),Math.abs(r.x2-a),Math.abs(r.y2-e),Math.abs(r.y3-e))}),l=!0}if(l||1E3<k&&1E3<q)break}}else if(0>p-d&&p+d>=this.dataPoints.length)break;-1===n?(d++,n=1):n=-1}a=null;for(e=0;e<b.length;e++)a?b[e].distance<=a.distance&&(a=b[e]):a=b[e];return a};U.prototype.getMarkerProperties=function(a,e,c,b){var d=this.dataPoints,f=d[a].markerColor?d[a].markerColor:this.markerColor?this.markerColor:d[a].color?d[a].color:this.color?this.color:this._colorSet[a%this._colorSet.length],n=d[a].markerBorderColor?d[a].markerBorderColor:
627
+ this.markerBorderColor?this.markerBorderColor:null,l=m(d[a].markerBorderThickness)?this.markerBorderThickness?this.markerBorderThickness:null:d[a].markerBorderThickness,h=d[a].markerType?d[a].markerType:this.markerType;a=m(d[a].markerSize)?this.markerSize:d[a].markerSize;return{x:e,y:c,ctx:b,type:h,size:a,color:f,borderColor:n,borderThickness:l}};ra(A,T);A.prototype.createExtraLabelsForLog=function(a){a=(a||0)+1;if(!(5<a)){var e=this.logLabelValues[0]||this.intervalStartPosition;if(Math.log(this.range)/
628
+ Math.log(e/this.viewportMinimum)<this.noTicks-1){for(var c=A.getNiceNumber((e-this.viewportMinimum)/Math.min(Math.max(2,this.noTicks-this.logLabelValues.length),3),!0),b=Math.ceil(this.viewportMinimum/c)*c;b<e;b+=c)b<this.viewportMinimum||this.logLabelValues.push(b);this.logLabelValues.sort(Ua);this.createExtraLabelsForLog(a)}}};A.prototype.createLabels=function(){var a,e,c=0,b=0,d,f=0,n=0,l=0,b=this.interval,h=0,k,q=0.6*this.chart.height,p;a=!1;var r=this.scaleBreaks?this.scaleBreaks._appliedBreaks:
629
+ [],g=r.length?m(this.scaleBreaks.firstBreakIndex)?0:this.scaleBreaks.firstBreakIndex:0;if("axisX"!==this.type||"dateTime"!==this.valueType||this.logarithmic){d=this.viewportMaximum;if(this.labels&&m(this.options.interval)){a=Math.ceil(b);l=Math.ceil(this.intervalStartPosition);b=!1;for(c=l;c<this.viewportMaximum;c+=a)if(this.labels[c])b=!0;else{b=!1;break}b&&(this.interval=a,this.intervalStartPosition=l)}if(this.logarithmic&&!this.equidistantInterval)for(this.logLabelValues||(this.logLabelValues=
630
+ [],this.createExtraLabelsForLog()),b=0,l=g;b<this.logLabelValues.length;b++)if(c=this.logLabelValues[b],c<this.viewportMinimum)b++;else{for(;l<r.length&&c>r[l].endValue;l++);a=l<r.length&&c>=r[l].startValue&&c<=r[l].endValue;p=c;a||(a=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:p,label:this.labels[p]?this.labels[p]:null}):"axisX"===this.type&&this.labels[p]?this.labels[p]:fa(p,this.valueFormatString,this.chart._cultureInfo),a=new ma(this.ctx,{x:0,y:0,maxWidth:f,
631
+ maxHeight:n,angle:this.labelAngle,text:this.prefix+a+this.suffix,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,cornerRadius:this.labelCornerRadius,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle",borderThickness:this.labelBorderThickness,padding:this.labelPadding}),this._labels.push({position:p,textBlock:a,effectiveHeight:null}))}l=
632
+ g;for(c=this.intervalStartPosition;c<=d;c=parseFloat(this.logarithmic&&this.equidistantInterval?1E-12>c*Math.pow(this.logarithmBase,this.interval)?c*Math.pow(this.logarithmBase,this.interval):(c*Math.pow(this.logarithmBase,this.interval)).toFixed(12):1E-12>this.interval?c+this.interval:(c+this.interval).toFixed(12))){for(;l<r.length&&c>r[l].endValue;l++);a=l<r.length&&c>=r[l].startValue&&c<=r[l].endValue;p=c;a?(a=Math.floor((r[l].endValue-c)/this.interval),c=parseFloat(1E-12>this.interval?this.logarithmic&&
633
+ this.equidistantInterval?c*Math.pow(this.logarithmBase,this.interval*a):c+this.interval*a:(this.logarithmic&&this.equidistantInterval?c*Math.pow(this.logarithmBase,this.interval*a):c+this.interval*a).toFixed(12))):(a=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:p,label:this.labels[p]?this.labels[p]:null}):"axisX"===this.type&&this.labels[p]?this.labels[p]:fa(p,this.valueFormatString,this.chart._cultureInfo),a=new ma(this.ctx,{x:0,y:0,maxWidth:f,maxHeight:n,angle:this.labelAngle,
634
+ text:this.prefix+a+this.suffix,textAlign:this.labelTextAlign,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle",padding:this.labelPadding}),this._labels.push({position:p,textBlock:a,effectiveHeight:null}))}}else for(this.intervalStartPosition=
635
+ this.getLabelStartPoint(new Date(this.viewportMinimum),this.intervalType,this.interval),d=Ta(new Date(this.viewportMaximum),this.interval,this.intervalType),l=g,c=this.intervalStartPosition;c<d;Ta(c,b,this.intervalType)){for(g=c.getTime();l<r.length&&g>r[l].endValue;l++);p=g;(a=l<r.length&&g>=r[l].startValue&&g<=r[l].endValue)?(a=b,0<=Ba("second minute hour day week month year".split(" ")).indexOf(this.intervalType)&&(a*=R[this.intervalType+"Duration"]),Ta(c,a*Math.floor((r[l].endValue-g)/a),"millisecond")):
636
+ (a=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:new Date(p),label:this.labels[p]?this.labels[p]:null}):"axisX"===this.type&&this.labels[p]?this.labels[p]:Ea(p,this.valueFormatString,this.chart._cultureInfo),a=new ma(this.ctx,{x:0,y:0,maxWidth:f,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,maxHeight:n,angle:this.labelAngle,text:this.prefix+a+this.suffix,
637
+ textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle",padding:this.labelPadding}),this._labels.push({position:p,textBlock:a,effectiveHeight:null,breaksLabelType:void 0}))}if("bottom"===this._position||"top"===this._position)m(this.conversionParameters)&&this.calculateValueToPixelConversionParameters(),c=this.conversionParameters&&this.conversionParameters.range?
638
+ this.conversionParameters.range:this.range,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(c)/Math.log(this.logarithmBase):Math.abs(c))*R[this.intervalType+"Duration"]*this.interval,f="undefined"===
639
+ typeof this.options.labelMaxWidth?0.5*this.chart.width>>0:this.options.labelMaxWidth,this.chart.panEnabled||(n="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&&2<=this._labels.length?this.lineCoordinates.height*Math.log(Math.min(this._labels[this._labels.length-
640
+ 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))*R[this.intervalType+"Duration"]*this.interval,this.chart.panEnabled||(f="undefined"===typeof this.options.labelMaxWidth?0.3*this.chart.width>>0:this.options.labelMaxWidth),n="undefined"===typeof this.options.labelWrap||this.labelWrap?
641
+ 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>=f&&(f="undefined"===typeof this.options.labelMaxWidth?0.5*this.chart.width>>0:this.options.labelMaxWidth);a.maxWidth=f;!this.labelAutoFit&&0>=n&&(n="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));
642
+ a.maxHeight=n;var s=a.measureText();k=s.height}d=[];b=r=0;if(this.labelAutoFit||this.options.labelAutoFit)if(m(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(f=Math.floor(0.9*h),g=0,!this.chart.panEnabled&&1<=this._labels.length){this.sessionVariables.labelFontSize=this.labelFontSize;this.sessionVariables.labelMaxWidth=
643
+ f;this.sessionVariables.labelMaxHeight=n;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 x,l=a.text.split(" "),b=0;b<l.length;b++)p=l[b],this.ctx.font=a.fontStyle+" "+a.fontWeight+" "+a.fontSize+"px "+a.fontFamily,p=this.ctx.measureText(p),p.width>g&&(x=c,g=p.width)}c=0;for(c=this.intervalStartPosition<this.viewportMinimum?1:0;c<this._labels.length;c++)if(!this._labels[c].breaksLabelType){a=
644
+ this._labels[c].textBlock;s=a.measureText();for(l=c+1;l<this._labels.length;l++)if(!this._labels[l].breaksLabelType){e=this._labels[l].textBlock;e=e.measureText();break}d.push(a.height);this.sessionVariables.labelMaxHeight=Math.max.apply(Math,d);Math.cos(Math.PI/180*Math.abs(this.labelAngle));Math.sin(Math.PI/180*Math.abs(this.labelAngle));l=f*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(n-a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle));if(m(this.options.labelAngle)&&isNaN(this.options.labelAngle)&&
645
+ 0!==this.options.labelAngle)if(this.sessionVariables.labelMaxHeight=0===this.labelAngle?n:Math.min((l-f*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)),l),p=(q-(k+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(-25)))/Math.sin(Math.PI/180*Math.abs(-25)),!m(this.options.labelWrap))this.labelWrap?m(this.options.labelMaxWidth)?(this.sessionVariables.labelMaxWidth=Math.min(Math.max(f,g),p),this.sessionVariables.labelWrap=this.labelWrap,e&&s.width+e.width>>
646
+ 0>2*f&&(this.sessionVariables.labelAngle=-25)):(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>f?-25:this.sessionVariables.labelAngle):m(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelMaxWidth=f,e&&s.width+e.width>>0>2*f&&(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=
647
+ p)):(this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>f?-25:this.sessionVariables.labelAngle,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelWrap=this.labelWrap);else{if(m(this.options.labelWrap))if(!m(this.options.labelMaxWidth))this.options.labelMaxWidth<f?(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=l):(this.sessionVariables.labelAngle=-25,
648
+ this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=n);else if(!m(e))if(l=s.width+e.width>>0,b=this.labelFontSize,g<f)l-2*f>r&&(r=l-2*f,l>=2*f&&l<2.2*f?(this.sessionVariables.labelMaxWidth=f,m(this.options.labelFontSize)&&12<b&&(b=Math.floor(12/13*b),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?b:this.options.labelFontSize,this.sessionVariables.labelAngle=this.labelAngle):l>=2.2*f&&l<2.8*f?(this.sessionVariables.labelAngle=
649
+ -25,this.sessionVariables.labelMaxWidth=p,this.sessionVariables.labelFontSize=b):l>=2.8*f&&l<3.2*f?(this.sessionVariables.labelMaxWidth=Math.max(f,g),this.sessionVariables.labelWrap=!0,m(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?b:this.options.labelFontSize,this.sessionVariables.labelAngle=this.labelAngle):l>=3.2*f&&l<3.6*f?(this.sessionVariables.labelAngle=
650
+ -25,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=p,this.sessionVariables.labelFontSize=this.labelFontSize):l>3.6*f&&l<5*f?(m(this.options.labelFontSize)&&12<b&&(b=Math.floor(12/13*b),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?b:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=p):l>5*f&&(this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=
651
+ f,this.sessionVariables.labelFontSize=b,this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelAngle=this.labelAngle));else if(x===c&&(0===x&&g+this._labels[x+1].textBlock.measureText().width-2*f>r||x===this._labels.length-1&&g+this._labels[x-1].textBlock.measureText().width-2*f>r||0<x&&x<this._labels.length-1&&g+this._labels[x+1].textBlock.measureText().width-2*f>r&&g+this._labels[x-1].textBlock.measureText().width-2*f>r))r=0===x?g+this._labels[x+1].textBlock.measureText().width-2*f:g+
652
+ this._labels[x-1].textBlock.measureText().width-2*f,this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?b:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=p;else if(0===r)for(this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?b:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,b=0;b<this._labels.length;b++)a=this._labels[b].textBlock,a.maxWidth=this.sessionVariables.labelMaxWidth=
653
+ Math.min(Math.max(f,g),p),s=a.measureText(),b<this._labels.length-1&&(l=b+1,e=this._labels[l].textBlock,e.maxWidth=this.sessionVariables.labelMaxWidth=Math.min(Math.max(f,g),p),e=e.measureText(),s.width+e.width>>0>2*f&&(this.sessionVariables.labelAngle=-25))}else(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxHeight=0===this.labelAngle?n:Math.min((l-f*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)),l),p=0!=this.labelAngle?
654
+ (q-(k+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)):f,this.sessionVariables.labelMaxHeight=this.labelWrap?(q-p*Math.sin(Math.PI/180*Math.abs(this.labelAngle)))/Math.cos(Math.PI/180*Math.abs(this.labelAngle)):1.5*this.labelFontSize,m(this.options.labelWrap))?m(this.options.labelWrap)&&(this.labelWrap&&!m(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?
655
+ this.options.labelMaxWidth:p,this.sessionVariables.labelMaxHeight=n):(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxWidth=p,this.sessionVariables.labelMaxHeight=Math.max(l,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:p):(m(this.options.labelMaxWidth),this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?
656
+ this.options.labelMaxWidth:p,this.sessionVariables.labelWrap=this.labelWrap),this.sessionVariables.labelMaxHeight=n)}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=this.labelAngle=this.sessionVariables.labelAngle,a.wrap=this.labelWrap=this.sessionVariables.labelWrap,
657
+ 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=m(this.options.labelMaxWidth)?m(this.sessionVariables.labelMaxWidth)?this.sessionVariables.labelMaxWidth=f:this.sessionVariables.labelMaxWidth:this.options.labelMaxWidth,a.fontSize=this.labelFontSize=m(this.options.labelFontSize)?m(this.sessionVariables.labelFontSize)?this.sessionVariables.labelFontSize=this.labelFontSize:this.sessionVariables.labelFontSize:
658
+ this.options.labelFontSize,a.angle=this.labelAngle=m(this.options.labelAngle)?m(this.sessionVariables.labelAngle)?this.sessionVariables.labelAngle=this.labelAngle:this.sessionVariables.labelAngle:this.labelAngle,a.wrap=this.labelWrap=m(this.options.labelWrap)?m(this.sessionVariables.labelWrap)?this.sessionVariables.labelWrap=this.labelWrap:this.sessionVariables.labelWrap:this.options.labelWrap,a.maxHeight=m(this.sessionVariables.labelMaxHeight)?this.sessionVariables.labelMaxHeight=n:this.sessionVariables.labelMaxHeight,
659
+ a.measureText();else if("left"===this._position||"right"===this._position)if(f=m(this.options.labelMaxWidth)?0.3*this.chart.width>>0:this.options.labelMaxWidth,n="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=f;this.sessionVariables.labelMaxHeight=n;this.sessionVariables.labelAngle=m(this.sessionVariables.labelAngle)?
660
+ 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;s=a.measureText();for(l=c+1;l<this._labels.length;l++)if(!this._labels[l].breaksLabelType){e=this._labels[l].textBlock;e=e.measureText();break}d.push(a.height);this.sessionVariables.labelMaxHeight=Math.max.apply(Math,d);l=f*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(n-a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle));
661
+ Math.cos(Math.PI/180*Math.abs(this.labelAngle));Math.sin(Math.PI/180*Math.abs(this.labelAngle));m(this.options.labelAngle)&&isNaN(this.options.labelAngle)&&0!==this.options.labelAngle?m(this.options.labelWrap)?m(this.options.labelWrap)&&(m(this.options.labelMaxWidth)?m(e)||(k=s.height+e.height>>0,k-2*n>b&&(b=k-2*n,k>=2*n&&k<2.4*n?(m(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelFontSize=
662
+ m(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize):k>=2.4*n&&k<2.8*n?(this.sessionVariables.labelMaxHeight=l,this.sessionVariables.labelFontSize=this.labelFontSize,this.sessionVariables.labelWrap=!0):k>=2.8*n&&k<3.2*n?(this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelWrap=!0,m(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?
663
+ this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelAngle=m(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle):k>=3.2*n&&k<3.6*n?(this.sessionVariables.labelMaxHeight=l,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelFontSize=this.labelFontSize):k>3.6*n&&k<10*n?(m(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?
664
+ this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelMaxWidth=f,this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelAngle=m(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle):k>10*n&&k<50*n&&(m(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=m(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelMaxHeight=
665
+ n,this.sessionVariables.labelMaxWidth=f,this.sessionVariables.labelAngle=m(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle))):(this.sessionVariables.labelMaxHeight=n,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth)):(this.sessionVariables.labelMaxWidth=this.labelWrap?this.options.labelMaxWidth?this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth:this.labelMaxWidth?this.options.labelMaxWidth?
666
+ this.options.labelMaxWidth:this.sessionVariables.labelMaxWidth:f,this.sessionVariables.labelMaxHeight=n):(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxWidth=0===this.labelAngle?f:Math.min((l-n*Math.sin(Math.PI/180*Math.abs(this.labelAngle)))/Math.cos(Math.PI/180*Math.abs(this.labelAngle)),n),m(this.options.labelWrap))?m(this.options.labelWrap)&&(this.labelWrap&&!m(this.options.labelMaxWidth)?(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:
667
+ this.sessionVariables.labelMaxWidth,this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxHeight=l):(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:f,this.sessionVariables.labelMaxHeight=0===this.labelAngle?n:l,m(this.options.labelMaxWidth)&&(this.sessionVariables.labelAngle=this.labelAngle))):this.options.labelWrap?(this.sessionVariables.labelMaxHeight=0===this.labelAngle?n:l,this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=
668
+ f):(this.sessionVariables.labelMaxHeight=n,m(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,a.fontSize=this.labelFontSize=this.sessionVariables.labelFontSize,a.angle=this.labelAngle=this.sessionVariables.labelAngle,a.wrap=
669
+ this.labelWrap=this.sessionVariables.labelWrap,a.maxHeight=this.sessionVariables.labelMaxHeight,a.measureText()}else for(m(this.chart.stockChart)||this.chart.isNavigator||(this.sessionVariables.labelMaxHeight=n),c=0;c<this._labels.length;c++)a=this._labels[c].textBlock,a.maxWidth=this.labelMaxWidth=m(this.options.labelMaxWidth)?m(this.sessionVariables.labelMaxWidth)?this.sessionVariables.labelMaxWidth=f:this.sessionVariables.labelMaxWidth:this.options.labelMaxWidth,a.fontSize=this.labelFontSize=m(this.options.labelFontSize)?
670
+ m(this.sessionVariables.labelFontSize)?this.sessionVariables.labelFontSize=this.labelFontSize:this.sessionVariables.labelFontSize:this.options.labelFontSize,a.angle=this.labelAngle=m(this.options.labelAngle)?m(this.sessionVariables.labelAngle)?this.sessionVariables.labelAngle=this.labelAngle:this.sessionVariables.labelAngle:this.labelAngle,a.wrap=this.labelWrap=m(this.options.labelWrap)?m(this.sessionVariables.labelWrap)?this.sessionVariables.labelWrap=this.labelWrap:this.sessionVariables.labelWrap:
671
+ this.options.labelWrap,a.maxHeight=m(this.sessionVariables.labelMaxHeight)?this.sessionVariables.labelMaxHeight=n:this.sessionVariables.labelMaxHeight,a.measureText();for(c=0;c<this.stripLines.length;c++){var n=this.stripLines[c],y;n.labelFontSize="outside"===n.labelPlacement&&m(n.options.labelFontSize)?this.labelFontSize:n.labelFontSize;n.labelFontFamily="outside"===n.labelPlacement&&m(n.options.labelFontFamily)?this.labelFontFamily:n.labelFontFamily;n.labelFontWeight="outside"===n.labelPlacement&&
672
+ m(n.options.labelFontWeight)?this.labelFontWeight:n.labelFontWeight;n.labelFontStyle="outside"===n.labelPlacement&&m(n.options.labelFontStyle)?this.labelFontStyle:n.labelFontStyle;if("outside"===n.labelPlacement){e=this.sessionVariables.labelMaxWidth;if("bottom"===this._position||"top"===this._position)m(n.options.labelWrap)&&!m(this.sessionVariables.stripLineLabelMaxHeight)?y=this.sessionVariables.stripLineLabelMaxHeight:this.sessionVariables.stripLineLabelMaxHeight=y=n.labelWrap?0.8*this.chart.height>>
673
+ 0:1.5*n.labelFontSize+("object"===typeof n.labelPadding?(n.labelPadding.top||0)+(n.labelPadding.bottom||0):2*n.labelPadding);if("left"===this._position||"right"===this._position)m(n.options.labelWrap)&&!m(this.sessionVariables.stripLineLabelMaxHeight)?y=this.sessionVariables.stripLineLabelMaxHeight:this.sessionVariables.stripLineLabelMaxHeight=y=n.labelWrap?0.8*this.chart.width>>0:1.5*n.labelFontSize+("object"===typeof n.labelPadding?(n.labelPadding.top||0)+(n.labelPadding.bottom||0):2*n.labelPadding);
674
+ m(n.labelBackgroundColor)&&(n.labelBackgroundColor="#EEEEEE")}else e="bottom"===this._position||"top"===this._position?0.9*this.chart.width>>0:0.9*this.chart.height>>0,y=m(n.options.labelWrap)||n.labelWrap?"bottom"===this._position||"top"===this._position?0.8*this.chart.width>>0:0.8*this.chart.height>>0:1.5*n.labelFontSize+("object"===typeof n.labelPadding?(n.labelPadding.top||0)+(n.labelPadding.bottom||0):2*n.labelPadding),m(n.labelBackgroundColor)&&(m(n.startValue)&&0!==n.startValue?n.labelBackgroundColor=
675
+ u?"transparent":null:n.labelBackgroundColor="#EEEEEE");a=new ma(this.ctx,{x:0,y:0,backgroundColor:n.labelBackgroundColor,borderColor:n.labelBorderColor,borderThickness:n.labelBorderThickness,cornerRadius:n.labelCornerRadius,maxWidth:n.options.labelMaxWidth?n.options.labelMaxWidth:e,maxHeight:y,angle:this.labelAngle,text:n.labelFormatter?n.labelFormatter({chart:this.chart,axis:this,stripLine:n.options}):n.label,textAlign:n.labelTextAlign,fontSize:n.labelFontSize,fontFamily:n.labelFontFamily,fontWeight:n.labelFontWeight,
676
+ fontColor:n.labelFontColor||n.color,fontStyle:n.labelFontStyle,textBaseline:"middle",padding:n.labelPadding});this._stripLineLabels.push({position:n.value,textBlock:a,effectiveHeight:null,stripLine:n})}};A.prototype.createLabelsAndCalculateWidth=function(){var a=0,e=0;this._labels=[];this._stripLineLabels=[];var c=0,b=[],d=this.chart.isNavigator?0:5;this.labelEffectiveWidth=m(this.labelEffectiveWidth)?0:this.labelEffectiveWidth;if("left"===this._position||"right"===this._position){this.createLabels();
677
+ for(e=0;e<this._labels.length;e++)if(!(this._labels[e].position<this.viewportMinimum||this._labels[e].position>this.viewportMaximum)){var f=this._labels[e].textBlock,f=f.measureText(),n=0,n=0===this.labelAngle?f.width:f.width*Math.cos(Math.PI/180*Math.abs(this.labelAngle))+f.height*Math.sin(Math.PI/180*Math.abs(this.labelAngle));a<=n&&(this.labelEffectiveWidth=a=n);this._labels[e].effectiveWidth=n}for(e=0;e<this._stripLineLabels.length;e++)"outside"===this._stripLineLabels[e].stripLine.labelPlacement&&
678
+ (this._stripLineLabels[e].stripLine.value>=this.viewportMinimum&&this._stripLineLabels[e].stripLine.value<=this.viewportMaximum)&&(f=this._stripLineLabels[e].textBlock,f=f.measureText(),n=0===this.labelAngle?f.width:f.width*Math.cos(Math.PI/180*Math.abs(this.labelAngle))+f.height*Math.sin(Math.PI/180*Math.abs(this.labelAngle)),c=Math.max(c,this._stripLineLabels[e].stripLine.tickLength),"inside"===this.labelPlacement&&(a-=0<b.length?Math.max.apply(null,b):0,a+=Math.max(n,0<b.length?Math.max.apply(null,
679
+ b):n)),a<=n&&(a=n),this.stripLineLabelEffectiveWidth=this._stripLineLabels[e].effectiveWidth=n,b.push(n));"inside"===this.labelPlacement&&(a+=d)}return(this.title?this._titleTextBlock.measureText().height+2:0)+a+("inside"===this.tickPlacement?c+this.tickLength:Math.max(c,this.tickLength))+d};A.prototype.createLabelsAndCalculateHeight=function(){var a=0;this._labels=[];this._stripLineLabels=[];var e=0,c,b=0,d=this.chart.isNavigator?0:"bottom"===this._position&&"inside"===this.labelPlacement||"top"===
680
+ this._position&&"outside"===this.labelPlacement?2:5;this.labelEffectiveHeight=m(this.labelEffectiveHeight)?0:this.labelEffectiveHeight;var f=[];if("bottom"===this._position||"top"===this._position){this.createLabels();for(b=0;b<this._labels.length;b++)if(!(this._labels[b].position<this.viewportMinimum||this._labels[b].position>this.viewportMaximum)){c=this._labels[b].textBlock;c=c.measureText();var n=0,n=0===this.labelAngle?c.height:c.width*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+c.height*
681
+ Math.cos(Math.PI/180*Math.abs(this.labelAngle));a<=n&&(this.labelEffectiveHeight=a=n);this._labels[b].effectiveHeight=n}for(b=0;b<this._stripLineLabels.length;b++)"outside"===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(),n=0===this.labelAngle?c.height:c.width*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+c.height*
682
+ Math.cos(Math.PI/180*Math.abs(this.labelAngle)),e=Math.max(e,this._stripLineLabels[b].stripLine.tickLength),"inside"===this.labelPlacement&&(a-=0<f.length?Math.max.apply(null,f):0,a+=Math.max(n,0<f.length?Math.max.apply(null,f):n)),a<=n&&(a=n),this.stripLineLabelEffectiveHeight=this._stripLineLabels[b].effectiveHeight=n,f.push(n));"inside"===this.labelPlacement&&(a+=d)}return(this.title?this._titleTextBlock.measureText().height+2:0)+a+("inside"===this.tickPlacement?e+this.tickLength:Math.max(e,this.tickLength))+
683
+ d};A.setLayout=function(a,e,c,b,d,f){var n,l,h,k,q=a[0]?a[0].chart:e[0].chart,p=q.isNavigator?0:10,r=q._axes;if(a&&0<a.length)for(var g=0;g<a.length;g++)a[g]&&a[g].calculateAxisParameters();if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateAxisParameters();if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].calculateAxisParameters();if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].calculateAxisParameters();for(g=0;g<r.length;g++)if(r[g]&&r[g].scaleBreaks&&r[g].scaleBreaks._appliedBreaks.length)for(var s=
684
+ r[g].scaleBreaks._appliedBreaks,u=0;u<s.length&&!(s[u].startValue>r[g].viewportMaximum);u++)s[u].endValue<r[g].viewportMinimum||(m(r[g].scaleBreaks.firstBreakIndex)&&(r[g].scaleBreaks.firstBreakIndex=u),s[u].startValue>=r[g].viewPortMinimum&&(r[g].scaleBreaks.lastBreakIndex=u));for(var y=u=0,t=0,w=0,v=0,x=0,z=0,A,B,E=l=0,F,J,M,s=F=J=M=!1,g=0;g<r.length;g++)r[g]&&r[g].title&&(r[g]._titleTextBlock=new ma(r[g].ctx,{text:r[g].title,fontSize:r[g].titleFontSize,fontFamily:r[g].titleFontFamily,fontWeight:r[g].titleFontWeight,
685
+ fontColor:r[g].titleFontColor,fontStyle:r[g].titleFontStyle,borderColor:r[g].titleBorderColor,borderThickness:r[g].titleBorderThickness,backgroundColor:r[g].titleBackgroundColor,cornerRadius:r[g].titleCornerRadius,textBaseline:"middle",textAlign:r[g].titleTextAlign,padding:r[g].titlePadding}));for(g=0;g<r.length;g++)if(r[g].title){var K=1.5*r[g].titleFontSize+("object"===typeof r[g].titlePadding?(r[g].titlePadding.top||0)+(r[g].titlePadding.bottom||0):2*r[g].titlePadding);r[g]._titleTextBlock.maxWidth=
686
+ r[g].titleMaxWidth||f.height;r[g]._titleTextBlock.maxHeight=r[g].titleWrap?0.8*f.width:Math.min(K,0.8*f.width);switch(r[g]._position){case "left":r[g]._titleTextBlock.angle=-90;break;case "right":r[g]._titleTextBlock.angle=90;break;default:r[g]._titleTextBlock.maxWidth=r[g].titleMaxWidth||f.width,r[g]._titleTextBlock.maxHeight=r[g].titleWrap?0.8*f.height:Math.min(K,0.8*f.height),r[g]._titleTextBlock.angle=0}}if("normal"===d){for(var w=[],v=[],x=[],z=[],Q=[],R=[],T=[],G=[];4>u;){var X=0,V=0,S=0,U=
687
+ 0,$=K=d=0,aa=0,W=0,Y=0,ca=n=0;if(c&&0<c.length)for(x=[],g=n=0;g<c.length;g++)x.push(Math.ceil(c[g]?c[g].createLabelsAndCalculateWidth():0)),n+=x[g],$+=c[g]&&!q.isNavigator?c[g].margin:0;else x.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateWidth():0));T.push(x);if(b&&0<b.length)for(z=[],g=ca=0;g<b.length;g++)z.push(Math.ceil(b[g]?b[g].createLabelsAndCalculateWidth():0)),ca+=z[g],aa+=b[g]?b[g].margin:0;else z.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateWidth():0));G.push(z);n=Math.round(f.x1+
688
+ n+$-(c[0]?("inside"===c[0].labelPlacement?c[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===c[0].tickPlacement?c[0].tickLength:0):0))+(!c.length||"inside"!==c[c.length-1].labelPlacement||c[c.length-1].title||c[c.length-1].stripLineLabelEffectiveWidth||q.isNavigator?0:5);h=Math.round(Math.min(f.x2-ca-aa+(b[0]?("inside"===b[0].labelPlacement?b[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===b[0].tickPlacement?b[0].tickLength:0):0),q.width-p));if(a&&0<a.length)for(w=[],g=W=0;g<a.length;g++)a[g]&&
689
+ (a[g].lineCoordinates={}),a[g].lineCoordinates.width=Math.abs(h-n),a[g].title&&(a[g]._titleTextBlock.maxWidth=0<a[g].titleMaxWidth&&a[g].titleMaxWidth<a[g].lineCoordinates.width?a[g].titleMaxWidth:a[g].lineCoordinates.width),w.push(Math.ceil(a[g]?a[g].createLabelsAndCalculateHeight():0)),W+=w[g],d+=a[g]&&!q.isNavigator?a[g].margin:0;else w.push(Math.ceil(a[0]?a[0].createLabelsAndCalculateHeight():0));Q.push(w);if(e&&0<e.length)for(v=[],g=Y=0;g<e.length;g++)e[g]&&(e[g].lineCoordinates={}),e[g].lineCoordinates.width=
690
+ Math.abs(h-n),e[g].title&&(e[g]._titleTextBlock.maxWidth=0<e[g].titleMaxWidth&&e[g].titleMaxWidth<e[g].lineCoordinates.width?e[g].titleMaxWidth:e[g].lineCoordinates.width),v.push(Math.ceil(e[g]?e[g].createLabelsAndCalculateHeight():0)),Y+=v[g],K+=e[g]&&!q.isNavigator?e[g].margin:0;else v.push(Math.ceil(e[0]?e[0].createLabelsAndCalculateHeight():0));R.push(v);if(a&&0<a.length){for(g=0;g<a.length;g++){if(a[g]){a[g].lineCoordinates.x1=n;h=Math.round(Math.min(f.x2-ca-aa+(b[0]?("inside"===b[0].labelPlacement?
691
+ b[0].labelEffectiveWidth+(q.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||q.isNavigator?0:5),q.width-p));if(a[g]._labels&&1<a[g]._labels.length){var I=l=0;l=a[g]._labels[1];I="dateTime"===a[g].valueType?a[g]._labels[a[g]._labels.length-2]:a[g]._labels[a[g]._labels.length-1];y=l.textBlock.width*Math.cos(Math.PI/180*Math.abs(l.textBlock.angle))+(l.textBlock.height-
692
+ l.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(l.textBlock.angle));t=I.textBlock.width*Math.cos(Math.PI/180*Math.abs(I.textBlock.angle))+I.textBlock.height*Math.sin(Math.PI/180*Math.abs(I.textBlock.angle))}!a[g]||(!a[g].labelAutoFit||m(A)||m(B)||q.isNavigator||q.stockChart)||(l=0,0<a[g].labelAngle?(k=t-(I.textBlock.height-I.textBlock._lineHeight/2)*Math.sin(Math.PI/180*I.textBlock.angle),B+k>h&&(a[g].convertPixelToValue(B)>=a[g].viewportMinimum&&a[g].convertPixelToValue(B)<=a[g].viewportMaximum)&&
693
+ (l+=B+k-h-ca)):0>a[g].labelAngle?A-y<n&&A-y<a[g].viewportMinimum&&(E=n-($+a[g].tickLength+x+A-y+a[g].labelFontSize/2)):0===a[g].labelAngle&&(B+t>h&&(a[g].convertPixelToValue(B)>=a[g].viewportMinimum&&a[g].convertPixelToValue(B)<=a[g].viewportMaximum)&&(l=B+t/2-h-ca),A-y<n&&A-y<a[g].viewportMinimum&&(E=n-$-a[g].tickLength-x-A+y/2)),a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0<a[g].labelAngle&&0<l?h-=l:a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&
694
+ 0>a[g].labelAngle&&0<E?n+=E:a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0===a[g].labelAngle&&(0<E&&(n+=E),0<l&&(h-=l)));q.panEnabled?W=m(q.sessionVariables.axisX.height)||q.stockChart?q.sessionVariables.axisX.height=W:q.sessionVariables.axisX.height:q.sessionVariables.axisX.height=W;l=Math.round(f.y2-W-d+X)-("inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5);k=Math.round(f.y2)-("inside"!==a[a.length-
695
+ 1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5);a[g].lineCoordinates.x2=h;a[g].lineCoordinates.width=h-n;a[g].lineCoordinates.y1=l;a[g].lineCoordinates.y2=l;a[g].bounds={x1:n,y1:l,x2:h,y2:k-(W+d-w[g]-X),width:h-n};a[g].bounds.height=a[g].bounds.y2-a[g].bounds.y1;"inside"===a[g].labelPlacement&&(a[g].lineCoordinates.y1=a[0].bounds.y1+X+(a[g].labelEffectiveHeight||0)+(q.isNavigator?0:2),a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/
696
+ 2);"inside"===a[g].tickPlacement&&(a[g].lineCoordinates.y1+=a[g].tickLength,a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2)}X+=w[g]+a[g].margin}$=0===a[0].dataSeries.length;if(!$)for(g=0;g<a[0].dataSeries.length;g++){if(a[0].dataSeries[g].dataPoints){$=!1;break}$=!0}if($)for($=!1,g=1;g<a.length;g++)0!==a[g].dataSeries.length&&($?a[g].lineCoordinates.x2>a[0].lineCoordinates.x2&&(a[0].lineCoordinates.x2=a[g].lineCoordinates.x2):(a[0].lineCoordinates.x2=a[g].lineCoordinates.x2,
697
+ $=!0),a[0].lineCoordinates.width=a[0].lineCoordinates.x2-a[0].lineCoordinates.x1)}if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].lineCoordinates.x1=n,e[g].lineCoordinates.x2=h,e[g].lineCoordinates.width=Math.abs(h-n),e[g]._labels&&1<e[g]._labels.length&&(l=e[g]._labels[1],I="dateTime"===e[g].valueType?e[g]._labels[e[g]._labels.length-2]:e[g]._labels[e[g]._labels.length-1],y=l.textBlock.width*Math.cos(Math.PI/180*Math.abs(l.textBlock.angle))+(l.textBlock.height-I.textBlock.fontSize/2)*Math.sin(Math.PI/
698
+ 180*Math.abs(l.textBlock.angle)),t=I.textBlock.width*Math.cos(Math.PI/180*Math.abs(I.textBlock.angle))+(I.textBlock.height-I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(I.textBlock.angle))),q.panEnabled?Y=m(q.sessionVariables.axisX2.height)||q.stockChart?q.sessionVariables.axisX2.height=Y:q.sessionVariables.axisX2.height:q.sessionVariables.axisX2.height=Y,l=Math.round(f.y1)+("inside"!==e[e.length-1].labelPlacement||e[e.length-1].title||e[e.length-1].stripLineLabelEffectiveHeight||q.isNavigator?
699
+ 0:5),k=e[g].lineCoordinates.y1=l+Y+K-V,e[g].lineCoordinates.y2=l,e[g].bounds={x1:n,y1:l+(Y+K-v[g]-V),x2:h,y2:k,width:h-n},e[g].bounds.height=e[g].bounds.y2-e[g].bounds.y1,"inside"===e[g].labelPlacement&&(e[g].lineCoordinates.y1=e[0].bounds.y2-V-(e[g].labelEffectiveHeight||0)-5),"inside"===e[g].tickPlacement&&(e[g].lineCoordinates.y1-=e[g].tickLength),V+=v[g]+e[g].margin;if(c&&0<c.length)for(g=0;g<c.length;g++)$=q.isNavigator?0:10,c[g]&&(n=h=Math.round((a[0]?a[0].lineCoordinates.x1:e[0].lineCoordinates.x1)+
700
+ (c[0]?("inside"===c[0].labelPlacement?c[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===c[0].tickPlacement?c[0].tickLength:0):0)),$=Math.max(c[g]._labels&&0<c[g]._labels.length?c[g]._labels[c[g]._labels.length-1].textBlock._lineHeight/2:p,p),l=Math.round(Math.max(f.y1+Y+K-(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveHeight+5:0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0),0<e.length?0:$))+(!e.length||"inside"!==e[e.length-1].labelPlacement||e[e.length-1].title||e[e.length-
701
+ 1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),$=0<a.length?0:c[g]._labels&&0<c[g]._labels.length?c[g]._labels[0].textBlock.height/2:p,k=Math.round(f.y2-W+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveHeight+(q.isNavigator?0:2):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0)-d-$)-(!a.length||"inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),c[g].lineCoordinates={x1:n-S,y1:l,x2:h-S,y2:k,height:Math.abs(k-
702
+ l)},c[g].bounds={x1:n-(x[g]+S),y1:l,x2:h-S,y2:k,height:k-l},c[g].bounds.width=c[g].bounds.x2-c[g].bounds.x1,"inside"===c[g].labelPlacement&&(c[g].lineCoordinates.x1=Math.round(c[0].bounds.x1+x[0]-S-(c[g].labelEffectiveWidth||0)-5),c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),"inside"===c[g].tickPlacement&&(c[g].lineCoordinates.x1-=c[g].tickLength,c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&
703
+ c[g].titleMaxWidth<c[g].lineCoordinates.height?c[g].titleMaxWidth:c[g].lineCoordinates.height),S+=x[g]+c[g].margin);if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&(n=h=Math.round((a[0]?a[0].lineCoordinates.x2:e[0].lineCoordinates.x2)-(b[0]?("inside"===b[0].labelPlacement?b[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===b[0].tickPlacement?b[0].tickLength:0):0)),$=Math.max(b[g]._labels&&0<b[g]._labels.length?b[g]._labels[b[g]._labels.length-1].textBlock.height/2:0,p),l=Math.round(Math.max(f.y1+
704
+ Y+K-(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveHeight+(q.isNavigator?0:5):0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0)+(!e.length||"inside"!==e[e.length-1].labelPlacement||e[e.length-1].title||e[e.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),0<e.length?0:$)),$=0<a.length?0:b[g]._labels&&0<b[g]._labels.length?b[g]._labels[0].textBlock.height/2:0,k=Math.round(f.y2-(W+d+$)+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveHeight+(q.isNavigator?0:2):0)+("inside"===
705
+ 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||q.isNavigator?0:5),b[g].lineCoordinates={x1:n+U,y1:l,x2:n+U,y2:k,height:Math.abs(k-l)},b[g].bounds={x1:n+U,y1:l,x2:h+z[g]+U,y2:k,height:k-l},b[g].bounds.width=b[g].bounds.x2-b[g].bounds.x1,"inside"===b[g].labelPlacement&&(b[g].lineCoordinates.x1=Math.round(b[0].bounds.x1+U+(b[g].labelEffectiveWidth||0)+(q.isNavigator?0:5)),b[g].lineCoordinates.x2=
706
+ b[g].lineCoordinates.x1+b[g].lineThickness/2),"inside"===b[g].tickPlacement&&(b[g].lineCoordinates.x1+=b[g].tickLength,b[g].lineCoordinates.x2=b[g].lineCoordinates.x1+b[g].lineThickness/2),b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.height?b[g].titleMaxWidth:b[g].lineCoordinates.height),U+=z[g]+b[g].margin);if(a&&0<a.length)for(g=0;g<a.length;g++)a[g]&&(a[g].calculateValueToPixelConversionParameters(),a[g].calculateBreaksSizeInValues(),
707
+ a[g]._labels&&1<a[g]._labels.length&&(A=(a[g].logarithmic?Math.log(a[g]._labels[1].position/a[g].viewportMinimum)/a[g].conversionParameters.lnLogarithmBase:a[g]._labels[1].position-a[g].viewportMinimum)*Math.abs(a[g].conversionParameters.pixelPerUnit)+a[g].lineCoordinates.x1,n=a[g]._labels[a[g]._labels.length-("dateTime"===a[g].valueType?2:1)].position,n=a[g].getApparentDifference(a[g].viewportMinimum,n),B=a[g].logarithmic?(1<n?Math.log(n)/a[g].conversionParameters.lnLogarithmBase*Math.abs(a[g].conversionParameters.pixelPerUnit):
708
+ 0)+a[g].lineCoordinates.x1:(0<n?n*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1));if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateValueToPixelConversionParameters(),e[g].calculateBreaksSizeInValues(),e[g]._labels&&1<e[g]._labels.length&&(A=(e[g].logarithmic?Math.log(e[g]._labels[1].position/e[g].viewportMinimum)/e[g].conversionParameters.lnLogarithmBase:e[g]._labels[1].position-e[g].viewportMinimum)*Math.abs(e[g].conversionParameters.pixelPerUnit)+e[g].lineCoordinates.x1,
709
+ n=e[g]._labels[e[g]._labels.length-("dateTime"===e[g].valueType?2:1)].position,n=e[g].getApparentDifference(e[g].viewportMinimum,n),B=e[g].logarithmic?(1<n?Math.log(n)/e[g].conversionParameters.lnLogarithmBase*Math.abs(e[g].conversionParameters.pixelPerUnit):0)+e[g].lineCoordinates.x1:(0<n?n*Math.abs(e[g].conversionParameters.pixelPerUnit):0)+e[g].lineCoordinates.x1);for(g=0;g<r.length;g++)"axisY"===r[g].type&&(r[g].calculateValueToPixelConversionParameters(),r[g].calculateBreaksSizeInValues());if(0<
710
+ u){if(a&&0<a.length)for(g=0;g<a.length;g++)s=Q[u-1][g]===Q[u][g]?!0:!1;else s=!0;if(e&&0<e.length)for(g=0;g<e.length;g++)F=R[u-1][g]===R[u][g]?!0:!1;else F=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)J=T[u-1][g]===T[u][g]?!0:!1;else J=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)M=G[u-1][g]===G[u][g]?!0:!1;else M=!0}if(s&&F&&J&&M)break;u++}if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),a[g].calculateBreaksInPixels();if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateStripLinesThicknessInValues(),
711
+ e[g].calculateBreaksInPixels();if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].calculateStripLinesThicknessInValues(),c[g].calculateBreaksInPixels();if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].calculateStripLinesThicknessInValues(),b[g].calculateBreaksInPixels()}else{p=[];A=[];E=[];y=[];t=[];B=[];Q=[];for(R=[];4>u;){W=U=S=aa=$=K=d=G=T=V=Y=0;if(a&&0<a.length)for(E=[],g=U=0;g<a.length;g++)E.push(Math.ceil(a[g]?a[g].createLabelsAndCalculateWidth():0)),U+=E[g],d+=a[g]&&!q.isNavigator?a[g].margin:0;else E.push(Math.ceil(a[0]?
712
+ a[0].createLabelsAndCalculateWidth():0));Q.push(E);if(e&&0<e.length)for(y=[],g=W=0;g<e.length;g++)y.push(Math.ceil(e[g]?e[g].createLabelsAndCalculateWidth():0)),W+=y[g],K+=e[g]?e[g].margin:0;else y.push(Math.ceil(e[0]?e[0].createLabelsAndCalculateWidth():0));R.push(y);if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].lineCoordinates={},n=Math.round(f.x1+U+d-(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0))+(!a.length||
713
+ "inside"!==a[a.length-1].labelPlacement||a[a.length-1].title||a[a.length-1].stripLineLabelEffectiveWidth||q.isNavigator?0:5),h=Math.round(Math.min(f.x2-W-K+(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0)-(!e.length||"inside"!==e[e.length-1].labelPlacement||e[e.length-1].title||e[e.length-1].stripLineLabelEffectiveWidth||q.isNavigator?0:5),q.width-10)),c[g].labelAutoFit&&!m(w)&&(0<!a.length&&(n=0>c[g].labelAngle?
714
+ Math.max(n,w):0===c[g].labelAngle?Math.max(n,w/2):n),0<!e.length&&(h=0<c[g].labelAngle?h-v/2:0===c[g].labelAngle?h-v/2:h)),c[g].lineCoordinates.x1=n,c[g].lineCoordinates.x2=h,c[g].lineCoordinates.width=Math.abs(h-n),c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.width?c[g].titleMaxWidth:c[g].lineCoordinates.width);if(b&&0<b.length)for(g=0;g<b.length;g++)b[g].lineCoordinates={},n=Math.round(f.x1+U+d-(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+
715
+ (q.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||q.isNavigator?0:5),h=Math.round(Math.min(f.x2-W-K+(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0)-(!e.length||"inside"!==e[e.length-1].labelPlacement||e[e.length-1].title||e[e.length-1].stripLineLabelEffectiveWidth||
716
+ q.isNavigator?0:5),b[g].chart.width-10)),b[g]&&b[g].labelAutoFit&&!m(x)&&(0<!a.length&&(n=0<b[g].labelAngle?Math.max(n,x):0===b[g].labelAngle?Math.max(n,x/2):n),0<!e.length&&(h-=z/2)),b[g].lineCoordinates.x1=n,b[g].lineCoordinates.x2=h,b[g].lineCoordinates.width=Math.abs(h-n),b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.width?b[g].titleMaxWidth:b[g].lineCoordinates.width);if(c&&0<c.length)for(p=[],g=S=0;g<c.length;g++)p.push(Math.ceil(c[g]?
717
+ c[g].createLabelsAndCalculateHeight():0)),S+=p[g]+c[g].margin,$+=c[g].margin;else p.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateHeight():0));t.push(p);if(b&&0<b.length)for(A=[],g=0;g<b.length;g++)A.push(Math.ceil(b[g]?b[g].createLabelsAndCalculateHeight():0)),aa+=b[g].margin;else A.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateHeight():0));B.push(A);if(c&&0<c.length)for(g=0;g<c.length;g++)0<c[g]._labels.length&&(l=c[g]._labels[0],I=c[g]._labels[c[g]._labels.length-1],w=l.textBlock.width*Math.cos(Math.PI/
718
+ 180*Math.abs(l.textBlock.angle))+(l.textBlock.height-I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(l.textBlock.angle)),v=I.textBlock.width*Math.cos(Math.PI/180*Math.abs(I.textBlock.angle))+(I.textBlock.height-I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(I.textBlock.angle)));if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&0<b[g]._labels.length&&(l=b[g]._labels[0],I=b[g]._labels[b[g]._labels.length-1],x=l.textBlock.width*Math.cos(Math.PI/180*Math.abs(l.textBlock.angle))+(l.textBlock.height-
719
+ I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(l.textBlock.angle)),z=I.textBlock.width*Math.cos(Math.PI/180*Math.abs(I.textBlock.angle))+(I.textBlock.height-I.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(I.textBlock.angle)));if(q.panEnabled)for(g=0;g<c.length;g++)p[g]=m(q.sessionVariables.axisY[g].height)?q.sessionVariables.axisY[g].height=p[g]:q.sessionVariables.axisY[g].height;else for(g=0;g<c.length;g++)q.sessionVariables.axisY[g].height=p[g];if(c&&0<c.length)for(g=c.length-1;0<=
720
+ g;g--)l=Math.round(f.y2)-("inside"!==c[c.length-1].labelPlacement||c[c.length-1].title||c[c.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),k=Math.round(f.y2>c[g].chart.height?c[g].chart.height:f.y2)-("inside"!==c[c.length-1].labelPlacement||c[c.length-1].title||c[c.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),c[g].lineCoordinates.y1=l-(p[g]+c[g].margin+Y),c[g].lineCoordinates.y2=l-(p[g]+c[g].margin+Y),"inside"===c[g].labelPlacement&&(c[g].lineCoordinates.y1=c[g].lineCoordinates.y1+
721
+ c[g].labelEffectiveHeight+(q.isNavigator?0:2),c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/2),"inside"===c[g].tickPlacement&&(c[g].lineCoordinates.y1+=c[g].tickLength,c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/2),c[g].bounds={x1:n,y1:l-(p[g]+Y+c[g].margin),x2:h,y2:k-(Y+c[g].margin),width:h-n,height:p[g]},c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.width?c[g].titleMaxWidth:c[g].lineCoordinates.width),
722
+ Y+=p[g]+c[g].margin;if(b&&0<b.length)for(g=b.length-1;0<=g;g--)b[g]&&(l=Math.round(f.y1)+("inside"!==b[b.length-1].labelPlacement||b[b.length-1].title||b[b.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),k=Math.round(f.y1+(A[g]+b[g].margin+V))+("inside"!==b[b.length-1].labelPlacement||b[b.length-1].title||b[b.length-1].stripLineLabelEffectiveHeight||q.isNavigator?0:5),b[g].lineCoordinates.y1=k,b[g].lineCoordinates.y2=k,"inside"===b[g].labelPlacement&&(b[g].lineCoordinates.y1=k-b[g].labelEffectiveHeight-
723
+ 5,b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),"inside"===b[g].tickPlacement&&(b[g].lineCoordinates.y1-=b[g].tickLength,b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),b[g].bounds={x1:n,y1:l+(b[g].margin+V),x2:h,y2:k,width:h-n},b[g].bounds.height=b[g].bounds.y2-b[g].bounds.y1,b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.width?b[g].titleMaxWidth:b[g].lineCoordinates.width),V+=A[g]+b[g].margin);
724
+ if(a&&0<a.length)for(g=0;g<a.length;g++){$=a[g]._labels&&0<a[g]._labels.length?a[g]._labels[0].textBlock.fontSize/2:0;n=Math.round(f.x1+d);l=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:f.y1<Math.max($,10)?Math.max($,10):f.y1):f.y1<Math.max($,10)?Math.max($,10):f.y1;h=Math.round(f.x1+U+d);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:f.y2-S>q.height-Math.max($,10)?q.height-Math.max($,10):f.y2-S):f.y2>q.height-Math.max($,10)?q.height-Math.max($,10):f.y2;if(c&&0<c.length)for(I=0;I<
725
+ c.length;I++)c[I]&&c[I].labelAutoFit&&(h=c[I].lineCoordinates.x1+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0),n=0>c[I].labelAngle||0===c[I].labelAngle?h-U:n);if(b&&0<b.length)for(I=0;I<b.length;I++)b[I]&&b[I].labelAutoFit&&(h=b[I].lineCoordinates.x1+(a[0]?("inside"===a[0].labelPlacement?a[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===a[0].tickPlacement?a[0].tickLength:0):0),n=h-U);a[g].lineCoordinates=
726
+ {x1:h-T,y1:l,x2:h-T,y2:k,height:Math.abs(k-l)};"inside"===a[g].labelPlacement&&(a[g].lineCoordinates.x1=a[g].lineCoordinates.x1-a[g].labelEffectiveWidth-5,a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);"inside"===a[g].tickPlacement&&(a[g].lineCoordinates.x1-=a[g].tickLength,a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);a[g].bounds={x1:h-(E[g]+T),y1:l,x2:h-T,y2:k,height:k-l};a[g].bounds.width=a[g].bounds.x2-a[g].bounds.x1;a[g].title&&(a[g]._titleTextBlock.maxWidth=
727
+ 0<a[g].titleMaxWidth&&a[g].titleMaxWidth<a[g].lineCoordinates.height?a[g].titleMaxWidth:a[g].lineCoordinates.height);a[g].calculateValueToPixelConversionParameters();a[g].calculateBreaksSizeInValues();T+=E[g]+a[g].margin}if(e&&0<e.length)for(g=0;g<e.length;g++){$=e[g]._labels&&0<e[g]._labels.length?e[g]._labels[0].textBlock.fontSize/2:0;h=Math.round(f.x1-K);l=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:f.y1<Math.max($,10)?Math.max($,10):f.y1):f.y1<Math.max($,10)?Math.max($,10):f.y1;n=Math.round(f.x2-
728
+ W-K);k=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:f.y2-S>q.height-Math.max($,10)?q.height-Math.max($,10):f.y2-S):f.y2>q.height-Math.max($,10)?q.height-Math.max($,10):f.y2;if(c&&0<c.length)for(I=0;I<c.length;I++)c[I]&&c[I].labelAutoFit&&(n=c[I].lineCoordinates.x2-(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0),h=0>c[I].labelAngle||0===c[I].labelAngle?n+W:n);if(b&&0<b.length)for(I=0;I<b.length;I++)b[I]&&
729
+ b[I].labelAutoFit&&(n=b[I].lineCoordinates.x2-(e[0]?("inside"===e[0].labelPlacement?e[0].labelEffectiveWidth+(q.isNavigator?0:5):0)+("inside"===e[0].tickPlacement?e[0].tickLength:0):0),h=n+W);e[g].lineCoordinates={x1:n+G,y1:l,x2:n+G,y2:k,height:Math.abs(k-l)};"inside"===e[g].labelPlacement&&(e[g].lineCoordinates.x1=e[g].lineCoordinates.x1+e[g].labelEffectiveWidth+(q.isNavigator?0:5),e[g].lineCoordinates.x2=e[g].lineCoordinates.x1+e[g].lineThickness/2);"inside"===e[g].tickPlacement&&(e[g].lineCoordinates.x1+=
730
+ e[g].tickLength,e[g].lineCoordinates.x2=e[g].lineCoordinates.x1+e[g].lineThickness/2);e[g].bounds={x1:n+G,y1:l,x2:n+y[g]+G,y2:k,height:k-l};e[g].bounds.width=e[g].bounds.x2-e[g].bounds.x1;e[g].title&&(e[g]._titleTextBlock.maxWidth=0<e[g].titleMaxWidth&&e[g].titleMaxWidth<e[g].lineCoordinates.height?e[g].titleMaxWidth:e[g].lineCoordinates.height);e[g].calculateValueToPixelConversionParameters();e[g].calculateBreaksSizeInValues();G+=y[g]+e[g].margin}for(g=0;g<r.length;g++)"axisY"===r[g].type&&(r[g].calculateValueToPixelConversionParameters(),
731
+ r[g].calculateBreaksSizeInValues());if(0<u){if(a&&0<a.length)for(g=0;g<a.length;g++)s=Q[u-1][g]===Q[u][g]?!0:!1;else s=!0;if(e&&0<e.length)for(g=0;g<e.length;g++)F=R[u-1][g]===R[u][g]?!0:!1;else F=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)J=t[u-1][g]===t[u][g]?!0:!1;else J=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)M=B[u-1][g]===B[u][g]?!0:!1;else M=!0}if(s&&F&&J&&M)break;u++}if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].calculateStripLinesThicknessInValues(),c[g].calculateBreaksInPixels();if(b&&
732
+ 0<b.length)for(g=0;g<b.length;g++)b[g].calculateStripLinesThicknessInValues(),b[g].calculateBreaksInPixels();if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),a[g].calculateBreaksInPixels();if(e&&0<e.length)for(g=0;g<e.length;g++)e[g].calculateStripLinesThicknessInValues(),e[g].calculateBreaksInPixels()}for(g=0;g<r.length;g++)r[g]&&m(r[g].options.titleMaxWidth)&&(r[g].titleMaxWidth="left"===r[g]._position||"right"===r[g]._position?r[g].bounds.height:r[g].bounds.width,
733
+ r[g].title&&(r[g]._titleTextBlock.maxWidth=r[g].titleMaxWidth||f.height))};A.render=function(a,e,c,b,d){var f=a[0]?a[0].chart:e[0].chart,n=f.ctx,l=[];l.push.apply(l,a);l.push.apply(l,e);l.push.apply(l,c);l.push.apply(l,b);f.alignVerticalAxes&&f.alignVerticalAxes();n.save();"normal"===d&&(n.beginPath(),a&&a.length&&n.rect(2,a[0].bounds.y1,a[0].chart.width-4,a[a.length-1].bounds.y2),e&&e.length&&n.rect(2,e[e.length-1].bounds.y1,e[0].chart.width-4,e[0].bounds.y2),n.clip());if(a&&0<a.length)for(d=0;d<
734
+ a.length;d++)a[d].renderLabelsTicksAndTitle();if(e&&0<e.length)for(d=0;d<e.length;d++)e[d].renderLabelsTicksAndTitle();n.restore();if(c&&0<c.length)for(d=0;d<c.length;d++)c[d].renderLabelsTicksAndTitle();if(b&&0<b.length)for(d=0;d<b.length;d++)b[d].renderLabelsTicksAndTitle();f.preparePlotArea();a=f.plotArea;n.save();n.beginPath();n.rect(a.x1,a.y1,Math.abs(a.x2-a.x1),Math.abs(a.y2-a.y1));n.clip();if(l&&0<l.length){for(d=0;d<l.length;d++)l[d].renderStripLinesOfThicknessType("value");for(d=0;d<l.length;d++)l[d].renderInterlacedColors()}n.restore();
735
+ n=!1;if(l&&0<l.length){for(d=0;d<l.length;d++)l[d].renderGrid(),u&&(l[d].createMask(),l[d].renderBreaksBackground());for(d=0;d<l.length;d++)l[d].renderAxisLine();for(d=0;d<l.length;d++)l[d].renderStripLinesOfThicknessType("pixel"),l[d].crosshair&&l[d].crosshair.enabled&&(n=!0,f.clearedOverlayedCanvas=l[d].type)}if(n||!n&&f.clearedOverlayedCanvas&&0<=f.clearedOverlayedCanvas.indexOf("axis"))f.resetOverlayedCanvas(),f.renderCrosshairs(null,!0)};A.prototype.calculateStripLinesThicknessInValues=function(){for(var a=
736
+ 0;a<this.stripLines.length;a++)if(null!==this.stripLines[a].startValue&&null!==this.stripLines[a].endValue){var e=Math.min(this.stripLines[a].startValue,this.stripLines[a].endValue),c=Math.max(this.stripLines[a].startValue,this.stripLines[a].endValue),b=this.getApparentDifference(e,c);this.stripLines[a].value=this.convertPixelToValue((this.convertValueToPixel(e)+this.convertValueToPixel(c))/2);this.stripLines[a].thickness=b;this.stripLines[a]._thicknessType="value"}};A.prototype.calculateBreaksSizeInValues=
737
+ function(){for(var a="left"===this._position||"right"===this._position?this.lineCoordinates.height||this.chart.height:this.lineCoordinates.width||this.chart.width,e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c=this.conversionParameters.pixelPerUnit||a/(this.logarithmic?this.conversionParameters.maximum/this.conversionParameters.minimum:this.conversionParameters.maximum-this.conversionParameters.minimum),b=this.scaleBreaks&&!m(this.scaleBreaks.options.spacing),d,f=0;f<e.length;f++)d=b||!m(e[f].options.spacing),
738
+ e[f].spacing=Wa(e[f].spacing,a,8,d?0.1*a:8,d?0:3)<<0,e[f].size=0>e[f].spacing?0:Math.abs(e[f].spacing/c),this.logarithmic&&(e[f].size=Math.pow(this.logarithmBase,e[f].size))};A.prototype.calculateBreaksInPixels=function(){if(!(this.scaleBreaks&&0>=this.scaleBreaks._appliedBreaks.length)){var a=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];a.length&&(this.scaleBreaks.firstBreakIndex=this.scaleBreaks.lastBreakIndex=null);for(var e=0;e<a.length&&!(a[e].startValue>this.conversionParameters.maximum);e++)a[e].endValue<
739
+ this.conversionParameters.minimum||(m(this.scaleBreaks.firstBreakIndex)&&(this.scaleBreaks.firstBreakIndex=e),a[e].startValue>=this.conversionParameters.minimum&&(a[e].startPixel=this.convertValueToPixel(a[e].startValue),this.scaleBreaks.lastBreakIndex=e),a[e].endValue<=this.conversionParameters.maximum&&(a[e].endPixel=this.convertValueToPixel(a[e].endValue)))}};A.prototype.renderLabelsTicksAndTitle=function(){var a=this,e=!1,c=0,b=0,d=1,f=0;0!==this.labelAngle&&360!==this.labelAngle&&(d=1.2);if("undefined"===
740
+ typeof this.options.interval){if("bottom"===this._position||"top"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],d=0!==this.labelAngle&&360!==this.labelAngle?1:1.2,n,l=this.viewportMaximum,h=this.lineCoordinates.width/Math.log(this.range),k=this._labels.length-1;0<=k;k--){p=this._labels[k];if(p.position<this.viewportMinimum)break;p.position>this.viewportMaximum||!(k===this._labels.length-1||n<Math.log(l/p.position)*h/d)||(c.push(p),l=p.position,n=
741
+ p.textBlock.width*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.height*Math.abs(Math.sin(Math.PI/180*this.labelAngle)))}this._labels=c}else{for(k=0;k<this._labels.length;k++)p=this._labels[k],p.position<this.viewportMinimum||(n=p.textBlock.width*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.height*Math.abs(Math.sin(Math.PI/180*this.labelAngle)),c+=n);c>this.lineCoordinates.width*d&&this.labelAutoFit&&(e=!0)}if("left"===this._position||"right"===this._position)if(this.logarithmic&&
742
+ !this.equidistantInterval&&this.labelAutoFit){for(var c=[],m,l=this.viewportMaximum,h=this.lineCoordinates.height/Math.log(this.range),k=this._labels.length-1;0<=k;k--){p=this._labels[k];if(p.position<this.viewportMinimum)break;p.position>this.viewportMaximum||!(k===this._labels.length-1||m<Math.log(l/p.position)*h)||(c.push(p),l=p.position,m=p.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.width*Math.abs(Math.sin(Math.PI/180*this.labelAngle)))}this._labels=c}else{for(k=
743
+ 0;k<this._labels.length;k++)p=this._labels[k],p.position<this.viewportMinimum||(m=p.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.width*Math.abs(Math.sin(Math.PI/180*this.labelAngle)),b+=m);b>this.lineCoordinates.height*d&&this.labelAutoFit&&(e=!0)}}this.logarithmic&&(!this.equidistantInterval&&this.labelAutoFit)&&this._labels.sort(function(a,b){return a.position-b.position});var k=0,p,r;if("bottom"===this._position){for(k=0;k<this._labels.length;k++)p=this._labels[k],
744
+ p.position<this.viewportMinimum||p.position>this.viewportMaximum||(r=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(r.x<<0)+0.5:r.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,r.y<<0),this.ctx.lineTo(b,r.y+this.tickLength<<0),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===p.textBlock.angle?(r.x-=p.textBlock.width/2,r.y="inside"===this.labelPlacement?
745
+ r.y-(("inside"===this.tickPlacement?this.tickLength:0)+p.textBlock.height-p.textBlock._lineHeight/2+2):r.y+("inside"===this.tickPlacement?0:this.tickLength)+p.textBlock._lineHeight/2+5):0>this.labelAngle?(r.x=r.x-("inside"===this.labelPlacement?0:p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),r.y="inside"===this.labelPlacement?r.y-("inside"===this.tickPlacement?this.tickLength:0)-2-(p.textBlock.height-p.textBlock._lineHeight/2)*
746
+ Math.cos(Math.PI/180*this.labelAngle):r.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-p.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle))):(r.x=r.x-("inside"===this.labelPlacement?p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+p.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),r.y="inside"===this.labelPlacement?r.y-("inside"===this.tickPlacement?this.tickLength:0)-2-p.textBlock.width*Math.sin(Math.PI/
747
+ 180*this.labelAngle)-(p.textBlock.height-p.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle):r.y+("inside"===this.tickPlacement?0:this.tickLength)+5+Math.abs(p.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle))),p.textBlock.x=r.x,p.textBlock.y=r.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)if(p=a._labels[k],!(p.position<a.viewportMinimum||p.position>a.viewportMaximum)&&(r=a.getPixelCoordinatesOnAxis(p.position),
748
+ a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(r.x<<0)+0.5:r.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,r.y<<0);a.ctx.lineTo(b,r.y-a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+this.lineCoordinates.width/2-this._titleTextBlock.width/2,this._titleTextBlock.y=this.bounds.y2-this._titleTextBlock.height+this._titleTextBlock._lineHeight/
749
+ 2-1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("top"===this._position){for(k=0;k<this._labels.length;k++)p=this._labels[k],p.position<this.viewportMinimum||p.position>this.viewportMaximum||(r=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(r.x<<0)+0.5:r.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,r.y<<0),
750
+ this.ctx.lineTo(b,r.y-this.tickLength<<0),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===p.textBlock.angle?(r.x-=p.textBlock.width/2,r.y="inside"===this.labelPlacement?r.y+p.textBlock._lineHeight/2+("inside"===this.tickPlacement?this.tickLength:0)+5:r.y-(("inside"===this.tickPlacement?0:this.tickLength)+p.textBlock.height-p.textBlock._lineHeight/2)-2):0>this.labelAngle?(r.x=r.x-("inside"===this.labelPlacement?p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)+p.textBlock.topPadding*
751
+ Math.sin(Math.PI/180*this.labelAngle),r.y="inside"===this.labelPlacement?r.y+("inside"===this.tickPlacement?this.tickLength:0)+5-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)+p.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle):r.y-("inside"===this.tickPlacement?0:this.tickLength)-2-(p.textBlock.height-p.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)):(r.x=r.x-("inside"===this.labelPlacement?0:p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle))+p.textBlock.topPadding*
752
+ Math.sin(Math.PI/180*this.labelAngle),r.y="inside"===this.labelPlacement?r.y+("inside"===this.tickPlacement?this.tickLength:0)+5+p.textBlock._lineHeight/2*Math.cos(Math.PI/180*this.labelAngle):r.y-("inside"===this.tickPlacement?0:this.tickLength)-2-((p.textBlock.height-p.textBlock._lineHeight/2)*Math.cos(Math.PI/180*this.labelAngle)+p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))),p.textBlock.x=r.x,p.textBlock.y=r.y));"inside"===this.tickPlacement&&this.chart.addEventListener("dataAnimationIterationEnd",
753
+ function(){for(k=0;k<a._labels.length;k++)if(p=a._labels[k],!(p.position<a.viewportMinimum||p.position>a.viewportMaximum)&&(r=a.getPixelCoordinatesOnAxis(p.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(r.x<<0)+0.5:r.x<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(b,r.y<<0);a.ctx.lineTo(b,r.y+a.tickLength<<0);a.ctx.stroke();a.ctx.restore()}},this);this.title&&(this._titleTextBlock.measureText(),this._titleTextBlock.x=this.lineCoordinates.x1+
754
+ 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++)p=this._labels[k],p.position<this.viewportMinimum||p.position>this.viewportMaximum||(r=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,
755
+ this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(r.y<<0)+0.5:r.y<<0,this.ctx.beginPath(),this.ctx.moveTo(r.x<<0,b),this.ctx.lineTo(r.x-this.tickLength<<0,b),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===this.labelAngle?(p.textBlock.y=r.y-p.textBlock.topPadding,p.textBlock.x="inside"===this.labelPlacement?r.x+("inside"===this.tickPlacement?this.tickLength:0)+5:r.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-("inside"===this.tickPlacement?0:this.tickLength)-5):
756
+ 0>this.labelAngle?(p.textBlock.y=("inside"===this.labelPlacement?r.y:r.y-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-p.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),p.textBlock.x="inside"===this.labelPlacement?r.x-p.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:r.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(p.textBlock.height-p.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-("inside"===
757
+ this.tickPlacement?0:this.tickLength)-5):(p.textBlock.y=("inside"===this.labelPlacement?r.y:r.y-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle))-p.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),p.textBlock.x="inside"===this.labelPlacement?r.x+(p.textBlock.height-p.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?this.tickLength:0)+5:r.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-p.textBlock.fontSize/2*Math.sin(Math.PI/180*
758
+ 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(p=a._labels[k],!(p.position<a.viewportMinimum||p.position>a.viewportMaximum)&&(r=a.getPixelCoordinatesOnAxis(p.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=a.tickColor;var b=1===a.ctx.lineWidth%2?(r.y<<0)+0.5:r.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(r.x<<
759
+ 0,b);a.ctx.lineTo(r.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++)p=this._labels[k],p.position<this.viewportMinimum||
760
+ p.position>this.viewportMaximum||(r=this.getPixelCoordinatesOnAxis(p.position),this.tickThickness&&"inside"!=this.tickPlacement&&(this.ctx.lineWidth=this.tickThickness,this.ctx.strokeStyle=this.tickColor,b=1===this.ctx.lineWidth%2?(r.y<<0)+0.5:r.y<<0,this.ctx.beginPath(),this.ctx.moveTo(r.x<<0,b),this.ctx.lineTo(r.x+this.tickLength<<0,b),this.ctx.stroke()),e&&0!==f++%2&&this.labelAutoFit||(0===this.labelAngle?(p.textBlock.y=r.y-p.textBlock.topPadding,p.textBlock.x="inside"===this.labelPlacement?r.x-
761
+ p.textBlock.width-("inside"===this.tickPlacement?this.tickLength:0)-5:r.x+("inside"===this.tickPlacement?0:this.tickLength)+5):0>this.labelAngle?(p.textBlock.y=("inside"===this.labelPlacement?r.y-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):r.y)-p.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),p.textBlock.x="inside"===this.labelPlacement?r.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(p.textBlock.height-p.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-
762
+ ("inside"===this.tickPlacement?this.tickLength:0)-5:r.x-p.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)+("inside"===this.tickPlacement?0:this.tickLength)+5):(p.textBlock.y=("inside"===this.labelPlacement?r.y-p.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):r.y)-p.textBlock.topPadding*Math.cos(Math.PI/180*this.labelAngle),p.textBlock.x="inside"===this.labelPlacement?r.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-p.textBlock.fontSize/2*Math.sin(Math.PI/180*this.labelAngle)-
763
+ ("inside"===this.tickPlacement?this.tickLength:0)-5:r.x+(p.textBlock.height-p.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(p=a._labels[k],!(p.position<a.viewportMinimum||p.position>a.viewportMaximum)&&(r=a.getPixelCoordinatesOnAxis(p.position),a.tickThickness)){a.ctx.lineWidth=a.tickThickness;a.ctx.strokeStyle=
764
+ a.tickColor;var b=1===a.ctx.lineWidth%2?(r.y<<0)+0.5:r.y<<0;a.ctx.save();a.ctx.beginPath();a.ctx.moveTo(r.x<<0,b);a.ctx.lineTo(r.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))}f=0;
765
+ if("inside"===this.labelPlacement)this.chart.addEventListener("dataAnimationIterationEnd",function(){for(k=0;k<a._labels.length;k++)p=a._labels[k],p.position<a.viewportMinimum||(p.position>a.viewportMaximum||e&&0!==f++%2&&a.labelAutoFit)||(a.ctx.save(),a.ctx.beginPath(),p.textBlock.render(!0),a.ctx.restore())},this);else for(k=0;k<this._labels.length;k++)p=this._labels[k],p.position<this.viewportMinimum||(p.position>this.viewportMaximum||e&&0!==f++%2&&this.labelAutoFit)||p.textBlock.render(!0)};A.prototype.renderInterlacedColors=
766
+ function(){var a=this.chart.plotArea.ctx,e,c,b=this.chart.plotArea,d=0;e=!0;if(("bottom"===this._position||"top"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?(e=this.getPixelCoordinatesOnAxis(this._labels[d].position),c=d+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(Math.min(c.x,e.x),b.y1,Math.abs(c.x-e.x),Math.abs(b.y1-b.y2)),e=!1):
767
+ e=!0;else if(("left"===this._position||"right"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,d=0;d<this._labels.length;d++)e?(c=this.getPixelCoordinatesOnAxis(this._labels[d].position),e=d+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[d+1].position),a.fillRect(b.x1,Math.min(c.y,e.y),Math.abs(b.x1-b.x2),Math.abs(e.y-c.y)),e=!1):e=!0;a.beginPath()};A.prototype.renderStripLinesOfThicknessType=function(a){if(this.stripLines&&
768
+ 0<this.stripLines.length&&a){var e=this,c,b,d=0,f=0,n=!1;b=!1;for(var l=[],h=[],k=!1,q,d=0;d<this.stripLines.length;d++){var p=this.stripLines[d];p._thicknessType===a&&("pixel"===a&&(p.value<this.viewportMinimum||p.value>this.viewportMaximum||m(p.value)||isNaN(this.range))||"value"===a&&(p.startValue<=this.viewportMinimum&&p.endValue<=this.viewportMinimum||p.startValue>=this.viewportMaximum&&p.endValue>=this.viewportMaximum||m(p.startValue)||m(p.endValue)||isNaN(this.range))||l.push(p))}for(d=0;d<
769
+ this._stripLineLabels.length;d++)if(p=this.stripLines[d],c=this._stripLineLabels[d],!(c.position<this.viewportMinimum||c.position>this.viewportMaximum||isNaN(this.range)))if(b=this.getPixelCoordinatesOnAxis(c.position),"outside"===c.stripLine.labelPlacement){p&&(this.ctx.strokeStyle=p.tickColor?p.tickColor:p.color,this.ctx.lineWidth=p.tickThickness=m(p.tickThickness)?"pixel"===p._thicknessType?p.thickness:this.thickness:p.tickThickness,m(p.opacity)||"pixel"!==p._thicknessType||(q=p.ctx.globalAlpha,
770
+ p.ctx.globalAlpha=p.opacity),m(p.opacity)&&(p.opacity=p.ctx.globalAlpha));if("bottom"===this._position){var r=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0;0<p.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(r,b.y<<0),this.ctx.lineTo(r,b.y+p.tickLength<<0),this.ctx.stroke());0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y+=p.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),
771
+ b.y+=p.tickLength+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?(r=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0,0<p.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(r,b.y<<0),this.ctx.lineTo(r,b.y-p.tickLength<<0),this.ctx.stroke()),0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y-=p.tickLength+
772
+ c.textBlock.height-c.textBlock.fontSize/2):(b.x-=(0<this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0)-c.textBlock.topPadding*Math.sin(Math.PI/180*this.labelAngle),b.y-=p.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?(r=1===this.ctx.lineWidth%2?
773
+ (b.y<<0)+0.5:b.y<<0,0<p.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,r),this.ctx.lineTo(b.x-p.tickLength<<0,r),this.ctx.stroke()),0===this.labelAngle?(b.x=b.x-c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-p.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-=p.tickLength+5+(0<this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+c.textBlock.fontSize/
774
+ 2*Math.sin(Math.PI/180*this.labelAngle):c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-(c.textBlock.height-c.textBlock.fontSize/2)*Math.sin(Math.PI/180*this.labelAngle)))):"right"===this._position&&(r=1===this.ctx.lineWidth%2?(b.y<<0)+0.5:b.y<<0,0<p.tickThickness&&(this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,r),this.ctx.lineTo(b.x+p.tickLength<<0,r),this.ctx.stroke()),0===this.labelAngle?(b.x=b.x+p.tickLength+5,b.y-=c.textBlock.topPadding):(b.y-=c.textBlock.topPadding*Math.cos(Math.PI/180*
775
+ this.labelAngle),b.x=p.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))));q&&(p.ctx.globalAlpha=q);c.textBlock.x=b.x;c.textBlock.y=b.y;h.push(c)}else p._thicknessType===a&&(m(p.opacity)&&(p.opacity=p.ctx.globalAlpha),c.textBlock.angle=-90,"bottom"===this._position?(c.textBlock.maxWidth=this.options.stripLines[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:
776
+ this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-p.thickness/2>this.chart.plotArea.x1?m(p.startValue)?b.x-=c.textBlock.height-c.textBlock.fontSize/2+p.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/2:(c.textBlock.angle=90,m(p.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/2+p.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?
777
+ (this.chart.plotArea.y2+this.chart.plotArea.y1+c.textBlock.width)/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[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-
778
+ p.thickness/2>this.chart.plotArea.x1?m(p.startValue)?b.x-=c.textBlock.height-c.textBlock.fontSize/2+p.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/2:(c.textBlock.angle=90,m(p.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/2+p.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)/
779
+ 2:this.chart.plotArea.y2-3:"near"===c.stripLine.labelAlign?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[d].labelMaxWidth?this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-p.thickness/2>this.chart.plotArea.y1?m(p.startValue)?
780
+ b.y-=c.textBlock.height-c.textBlock.fontSize/2+p.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2:m(p.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+p.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[d].labelMaxWidth?
781
+ this.options.stripLines[d].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-p.thickness/2>this.chart.plotArea.y1?m(p.startValue)?b.y-=c.textBlock.height-c.textBlock.fontSize/2+p.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2:m(p.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+p.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-
782
+ 3:"center"===c.stripLine.labelAlign?(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,h.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(d=0;d<l.length;d++)p=l[d],p.showOnTop?n||(n=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){this.ctx.save();this.ctx.beginPath();
783
+ this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(f=0;f<l.length;f++)p=l[f],p.showOnTop&&p.render();this.ctx.restore()},p)):p.render();for(d=0;d<h.length;d++)c=h[d],c.stripLine.showOnTop?b||(b=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){for(f=0;f<h.length;f++)c=h[f],"inside"===c.stripLine.labelPlacement&&c.stripLine.showOnTop&&(e.ctx.save(),e.ctx.beginPath(),e.ctx.rect(e.chart.plotArea.x1,
784
+ e.chart.plotArea.y1,e.chart.plotArea.width,e.chart.plotArea.height),e.ctx.clip(),c.textBlock.render(!0),e.ctx.restore())},c.textBlock)):"inside"===c.stripLine.labelPlacement&&c.textBlock.render(!0);this.ctx.restore();k=!0}if(k)for(b=!1,d=0;d<h.length;d++)c=h[d],"outside"===c.stripLine.labelPlacement&&c.textBlock.render(!0)}};A.prototype.renderBreaksBackground=function(){this.chart._breaksCanvas&&(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length&&this.maskCanvas)&&(this.chart._breaksCanvasCtx.save(),
785
+ this.chart._breaksCanvasCtx.beginPath(),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())};A.prototype.createMask=function(){if(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length){var a=this.scaleBreaks._appliedBreaks;u?(this.maskCanvas=xa(this.chart.width,
786
+ this.chart.height),this.maskCtx=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 e=0;e<a.length;e++)a[e].endValue<this.viewportMinimum||(a[e].startValue>this.viewportMaximum||isNaN(this.range))||a[e].render(this.maskCtx);this.maskCtx.restore()}};
787
+ A.prototype.renderCrosshair=function(a,e){isFinite(this.minimum)&&isFinite(this.maximum)&&this.crosshair.render(a,e)};A.prototype.showCrosshair=function(a){m(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))};A.prototype.renderGrid=function(){if(this.gridThickness&&0<this.gridThickness){var a=this.chart.ctx;a.save();var e,c=this.chart.plotArea;
788
+ a.lineWidth=this.gridThickness;a.strokeStyle=this.gridColor;a.setLineDash&&a.setLineDash(J(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(),e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.x<<0)+0.5:e.x<<0,a.moveTo(e,c.y1<<0),a.lineTo(e,c.y2<<0),a.stroke());
789
+ else if("left"===this._position||"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(),e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.y<<0)+0.5:e.y<<0,a.moveTo(c.x1<<0,e),a.lineTo(c.x2<<0,e),a.stroke());a.restore()}};A.prototype.renderAxisLine=function(){var a=this.chart.ctx,e=u?this.chart._preRenderCtx:a,c=Math.ceil(this.tickThickness/
790
+ (this.reversed?-2:2)),b=Math.ceil(this.tickThickness/(this.reversed?2:-2)),d,f;e.save();if("bottom"===this._position||"top"===this._position){if(this.lineThickness){this.reversed?(d=this.lineCoordinates.x2,f=this.lineCoordinates.x1):(d=this.lineCoordinates.x1,f=this.lineCoordinates.x2);e.lineWidth=this.lineThickness;e.strokeStyle=this.lineColor?this.lineColor:"black";e.setLineDash&&e.setLineDash(J(this.lineDashType,this.lineThickness));var n=1===this.lineThickness%2?(this.lineCoordinates.y1<<0)+0.5:
791
+ this.lineCoordinates.y1<<0;e.beginPath();if(this.scaleBreaks&&!m(this.scaleBreaks.firstBreakIndex))if(m(this.scaleBreaks.lastBreakIndex))d=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+b;else for(var l=this.scaleBreaks.firstBreakIndex;l<=this.scaleBreaks.lastBreakIndex;l++)e.moveTo(d,n),e.lineTo(this.scaleBreaks._appliedBreaks[l].startPixel+c,n),d=this.scaleBreaks._appliedBreaks[l].endPixel+b;d&&(e.moveTo(d,n),e.lineTo(f,n));e.stroke()}}else if(("left"===this._position||
792
+ "right"===this._position)&&this.lineThickness){this.reversed?(d=this.lineCoordinates.y1,f=this.lineCoordinates.y2):(d=this.lineCoordinates.y2,f=this.lineCoordinates.y1);e.lineWidth=this.lineThickness;e.strokeStyle=this.lineColor;e.setLineDash&&e.setLineDash(J(this.lineDashType,this.lineThickness));n=1===this.lineThickness%2?(this.lineCoordinates.x1<<0)+0.5:this.lineCoordinates.x1<<0;e.beginPath();if(this.scaleBreaks&&!m(this.scaleBreaks.firstBreakIndex))if(m(this.scaleBreaks.lastBreakIndex))d=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+
793
+ c;else for(l=this.scaleBreaks.firstBreakIndex;l<=this.scaleBreaks.lastBreakIndex;l++)e.moveTo(n,d),e.lineTo(n,this.scaleBreaks._appliedBreaks[l].startPixel+b),d=this.scaleBreaks._appliedBreaks[l].endPixel+c;d&&(e.moveTo(n,d),e.lineTo(n,f));e.stroke()}u&&(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),e.clearRect(0,0,this.chart.width,
794
+ this.chart.height));e.restore()};A.prototype.getPixelCoordinatesOnAxis=function(a){var e={};if("bottom"===this._position||"top"===this._position)e.x=this.convertValueToPixel(a),e.y=this.lineCoordinates.y1;if("left"===this._position||"right"===this._position)e.y=this.convertValueToPixel(a),e.x=this.lineCoordinates.x2;return e};A.prototype.convertPixelToValue=function(a){if("undefined"===typeof a)return null;var e=0,c=0,b,e=!0,d=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c="number"===typeof a?
795
+ 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<d.length;c++){if(!(d[c].endValue<this.conversionParameters.minimum))if(e)if(d[c].startValue<this.conversionParameters.minimum){if(1<d[c].size&&this.conversionParameters.minimum*Math.pow(d[c].endValue/
796
+ d[c].startValue,Math.log(b)/Math.log(d[c].size))<d[c].endValue){a=Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size));break}else a*=d[c].endValue/this.conversionParameters.minimum/Math.pow(d[c].size,Math.log(d[c].endValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue)),b/=Math.pow(d[c].size,Math.log(d[c].endValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/d[c].startValue));e=!1}else if(b>d[c].startValue/this.conversionParameters.minimum){b/=
797
+ d[c].startValue/this.conversionParameters.minimum;if(b<d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1===d[c].size?1:Math.log(b)/Math.log(d[c].size))/b;break}else a*=d[c].endValue/d[c].startValue/d[c].size;b/=d[c].size;e=!1}else break;else if(b>d[c].startValue/d[c-1].endValue){b/=d[c].startValue/d[c-1].endValue;if(b<d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1===d[c].size?1:Math.log(b)/Math.log(d[c].size))/b;break}else a*=d[c].endValue/d[c].startValue/d[c].size;b/=d[c].size}else break}else for(c=
798
+ d.length-1;0<=c;c--)if(!(d[c].startValue>this.conversionParameters.minimum))if(e)if(d[c].endValue>this.conversionParameters.minimum){if(1<d[c].size&&this.conversionParameters.minimum*Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size))>d[c].startValue){a=Math.pow(d[c].endValue/d[c].startValue,Math.log(b)/Math.log(d[c].size));break}else a*=d[c].startValue/this.conversionParameters.minimum*Math.pow(d[c].size,Math.log(d[c].startValue/this.conversionParameters.minimum)/Math.log(d[c].endValue/
799
+ d[c].startValue))*b,b*=Math.pow(d[c].size,Math.log(this.conversionParameters.minimum/d[c].startValue)/Math.log(d[c].endValue/d[c].startValue));e=!1}else if(b<d[c].endValue/this.conversionParameters.minimum){b/=d[c].endValue/this.conversionParameters.minimum;if(b>1/d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1>=d[c].size?1:Math.log(b)/Math.log(d[c].size))*b;break}else a/=d[c].endValue/d[c].startValue/d[c].size;b*=d[c].size;e=!1}else break;else if(b<d[c].endValue/d[c+1].startValue){b/=d[c].endValue/
800
+ d[c+1].startValue;if(b>1/d[c].size){a*=Math.pow(d[c].endValue/d[c].startValue,1>=d[c].size?1:Math.log(b)/Math.log(d[c].size))*b;break}else a/=d[c].endValue/d[c].startValue/d[c].size;b*=d[c].size}else break;e=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<d.length;c++){if(!(d[c].endValue<this.conversionParameters.minimum))if(e)if(d[c].startValue<
801
+ this.conversionParameters.minimum){if(d[c].size&&this.conversionParameters.minimum+b*(d[c].endValue-d[c].startValue)/d[c].size<d[c].endValue){a=0>=d[c].size?0:b*(d[c].endValue-d[c].startValue)/d[c].size;break}else a+=d[c].endValue-this.conversionParameters.minimum-d[c].size*(d[c].endValue-this.conversionParameters.minimum)/(d[c].endValue-d[c].startValue),b-=d[c].size*(d[c].endValue-this.conversionParameters.minimum)/(d[c].endValue-d[c].startValue);e=!1}else if(b>d[c].startValue-this.conversionParameters.minimum){b-=
802
+ d[c].startValue-this.conversionParameters.minimum;if(b<d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)-b;break}else a+=d[c].endValue-d[c].startValue-d[c].size;b-=d[c].size;e=!1}else break;else if(b>d[c].startValue-d[c-1].endValue){b-=d[c].startValue-d[c-1].endValue;if(b<d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)-b;break}else a+=d[c].endValue-d[c].startValue-d[c].size;b-=d[c].size}else break}else for(c=d.length-1;0<=c;c--)if(!(d[c].startValue>
803
+ this.conversionParameters.minimum))if(e)if(d[c].endValue>this.conversionParameters.minimum)if(d[c].size&&this.conversionParameters.minimum+b*(d[c].endValue-d[c].startValue)/d[c].size>d[c].startValue){a=0>=d[c].size?0:b*(d[c].endValue-d[c].startValue)/d[c].size;break}else a+=d[c].startValue-this.conversionParameters.minimum+d[c].size*(this.conversionParameters.minimum-d[c].startValue)/(d[c].endValue-d[c].startValue),b+=d[c].size*(this.conversionParameters.minimum-d[c].startValue)/(d[c].endValue-d[c].startValue),
804
+ e=!1;else if(b<d[c].endValue-this.conversionParameters.minimum){b-=d[c].endValue-this.conversionParameters.minimum;if(b>-1*d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)+b;break}else a-=d[c].endValue-d[c].startValue-d[c].size;b+=d[c].size;e=!1}else break;else if(b<d[c].endValue-d[c+1].startValue){b-=d[c].endValue-d[c+1].startValue;if(b>-1*d[c].size){a+=(d[c].endValue-d[c].startValue)*(0===d[c].size?1:b/d[c].size)+b;break}else a-=d[c].endValue-d[c].startValue-d[c].size;
805
+ b+=d[c].size}else break;e=this.conversionParameters.minimum+a}return e};A.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)+
806
+ 0.5<<0:this.conversionParameters.reference+this.conversionParameters.pixelPerUnit*(a-this.conversionParameters.minimum)+0.5};A.prototype.getApparentDifference=function(a,e,c,b){var d=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];if(this.logarithmic){c=m(c)?e/a:c;for(var f=0;f<d.length&&!(e<d[f].startValue);f++)a>d[f].endValue||(a<=d[f].startValue&&e>=d[f].endValue?c=c/d[f].endValue*d[f].startValue*d[f].size:a>=d[f].startValue&&e>=d[f].endValue?c=c/d[f].endValue*a*Math.pow(d[f].size,Math.log(d[f].endValue/
807
+ a)/Math.log(d[f].endValue/d[f].startValue)):a<=d[f].startValue&&e<=d[f].endValue?c=c/e*d[f].startValue*Math.pow(d[f].size,Math.log(e/d[f].startValue)/Math.log(d[f].endValue/d[f].startValue)):!b&&(a>d[f].startValue&&e<d[f].endValue)&&(c=a*Math.pow(d[f].size,Math.log(e/a)/Math.log(d[f].endValue/d[f].startValue))))}else for(c=m(c)?Math.abs(e-a):c,f=0;f<d.length&&!(e<d[f].startValue);f++)a>d[f].endValue||(a<=d[f].startValue&&e>=d[f].endValue?c=c-d[f].endValue+d[f].startValue+d[f].size:a>d[f].startValue&&
808
+ e>=d[f].endValue?c=c-d[f].endValue+a+d[f].size*(d[f].endValue-a)/(d[f].endValue-d[f].startValue):a<=d[f].startValue&&e<d[f].endValue?c=c-e+d[f].startValue+d[f].size*(e-d[f].startValue)/(d[f].endValue-d[f].startValue):!b&&(a>d[f].startValue&&e<d[f].endValue)&&(c=a+d[f].size*(e-a)/(d[f].endValue-d[f].startValue)));return c};A.prototype.setViewPortRange=function(a,e){for(var c=!1,b=0;b<this.dataSeries.length;b++)if(this.dataSeries[b].visible){c=!0;break}this.sessionVariables.newViewportMinimum=this.viewportMinimum=
809
+ c?Math.min(a,e):null;this.sessionVariables.newViewportMaximum=this.viewportMaximum=c?Math.max(a,e):null};A.prototype.getXValueAt=function(a){if(!a)return null;var e=null;"left"===this._position?e=this.convertPixelToValue(a.y):"bottom"===this._position&&(e=this.convertPixelToValue(a.x));return e};A.prototype.calculateValueToPixelConversionParameters=function(a){a=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[];var e={pixelPerUnit:null,minimum:null,reference:null},c=this.lineCoordinates.width,b=
810
+ this.lineCoordinates.height,c="bottom"===this._position||"top"===this._position?c:b,b=Math.abs(this.range);if(this.logarithmic)for(var d=0;d<a.length&&!(this.viewportMaximum<a[d].startValue);d++)this.viewportMinimum>a[d].endValue||(this.viewportMinimum>=a[d].startValue&&this.viewportMaximum<=a[d].endValue?c=0:this.viewportMinimum<=a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b/a[d].endValue*a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100):c-Math.min(a[d].spacing,
811
+ 0.1*c)):this.viewportMinimum>a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b/a[d].endValue*this.viewportMinimum,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*Math.log(a[d].endValue/this.viewportMinimum)/Math.log(a[d].endValue/a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*Math.log(a[d].endValue/this.viewportMinimum)/Math.log(a[d].endValue/a[d].startValue)):this.viewportMinimum<=a[d].startValue&&this.viewportMaximum<a[d].endValue&&(b=b/this.viewportMaximum*
812
+ a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*Math.log(this.viewportMaximum/a[d].startValue)/Math.log(a[d].endValue/a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*Math.log(this.viewportMaximum/a[d].startValue)/Math.log(a[d].endValue/a[d].startValue)));else for(d=0;d<a.length&&!(this.viewportMaximum<a[d].startValue);d++)this.viewportMinimum>a[d].endValue||(this.viewportMinimum>=a[d].startValue&&this.viewportMaximum<=a[d].endValue?c=0:this.viewportMinimum<=
813
+ a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b-a[d].endValue+a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100):c-Math.min(a[d].spacing,0.1*c)):this.viewportMinimum>a[d].startValue&&this.viewportMaximum>=a[d].endValue?(b=b-a[d].endValue+this.viewportMinimum,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*(a[d].endValue-this.viewportMinimum)/(a[d].endValue-a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*(a[d].endValue-
814
+ this.viewportMinimum)/(a[d].endValue-a[d].startValue)):this.viewportMinimum<=a[d].startValue&&this.viewportMaximum<a[d].endValue&&(b=b-this.viewportMaximum+a[d].startValue,c=0<a[d].spacing.toString().indexOf("%")?c*(1-parseFloat(a[d].spacing)/100*(this.viewportMaximum-a[d].startValue)/(a[d].endValue-a[d].startValue)):c-Math.min(a[d].spacing,0.1*c)*(this.viewportMaximum-a[d].startValue)/(a[d].endValue-a[d].startValue)));e.minimum=this.viewportMinimum;e.maximum=this.viewportMaximum;e.range=b;if("bottom"===
815
+ this._position||"top"===this._position)this.logarithmic?(e.lnLogarithmBase=Math.log(this.logarithmBase),e.pixelPerUnit=(this.reversed?-1:1)*c*e.lnLogarithmBase/Math.log(Math.abs(b))):e.pixelPerUnit=(this.reversed?-1:1)*c/Math.abs(b),e.reference=this.reversed?this.lineCoordinates.x2:this.lineCoordinates.x1;if("left"===this._position||"right"===this._position)this.logarithmic?(e.lnLogarithmBase=Math.log(this.logarithmBase),e.pixelPerUnit=(this.reversed?1:-1)*c*e.lnLogarithmBase/Math.log(Math.abs(b))):
816
+ e.pixelPerUnit=(this.reversed?1:-1)*c/Math.abs(b),e.reference=this.reversed?this.lineCoordinates.y1:this.lineCoordinates.y2;this.conversionParameters=e};A.prototype.calculateAxisParameters=function(){if(this.logarithmic)this.calculateLogarithmicAxisParameters();else{var a=this.chart.layoutManager.getFreeSpace(),e=!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"===
817
+ this.chart.plotInfo.axisPlacement?62:70:"xySwapped"===this.chart.plotInfo.axisPlacement?50:40,b=4;"axisX"===this.type&&(b=600>this.maxWidth?8:6);var a=Math.max(b,Math.floor(this.maxWidth/a)),d,f,n,b=0;!m(this.minimum)&&(!m(this.maximum)&&this.minimum>this.maximum)&&(this.minimum=this.maximum=null);!m(this.viewportMinimum)&&(!m(this.viewportMaximum)&&this.viewportMinimum>=this.viewportMaximum)&&(this.viewportMinimum=this.viewportMaximum=null);if(m(this.options.viewportMinimum)&&!m(this.sessionVariables.newViewportMinimum)&&
818
+ !isNaN(this.sessionVariables.newViewportMinimum))this.viewportMinimum=this.sessionVariables.newViewportMinimum;else if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=this.minimum;if(m(this.options.viewportMaximum)&&!m(this.sessionVariables.newViewportMaximum)&&!isNaN(this.sessionVariables.newViewportMaximum))this.viewportMaximum=this.sessionVariables.newViewportMaximum;else if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=this.maximum;
819
+ !m(this.minimum)&&this.viewportMinimum<this.minimum&&(this.viewportMinimum=this.minimum);!m(this.maximum)&&this.viewportMaximum>this.maximum&&(this.viewportMaximum=this.maximum);if(this.scaleBreaks)for(b=0;b<this.scaleBreaks._appliedBreaks.length;b++)if((!m(this.sessionVariables.newViewportMinimum)&&this.sessionVariables.newViewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue||!m(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[b].startValue||!m(this.options.viewportMinimum)&&
820
+ this.viewportMinimum>=this.scaleBreaks._appliedBreaks[b].startValue)&&(!m(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[b].endValue||!m(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[b].endValue||!m(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(d=
821
+ 0;d<this.dataSeries.length;d++)"dateTime"===this.dataSeries[d].xValueType&&(c=!0);d=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin;f=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax;0===f-d&&(b="undefined"===typeof this.options.interval?0.4:this.options.interval,f+=b,d-=b);Infinity!==this.dataInfo.minDiff?n=this.dataInfo.minDiff:1<f-d?n=0.5*Math.abs(f-d):(n=this.dataInfo.min===this.dataInfo.max?1:Math.abs(this.dataInfo.max-this.dataInfo.min),c&&
822
+ (e=!0))}else"axisY"===this.type&&(d=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,f=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,n=Math.pow(2,50),isFinite(d)||isFinite(f)?isFinite(d)?isFinite(f)||(f=d):d=f:(f="undefined"===typeof this.options.interval?-Infinity:this.options.interval,d="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),0===d&&0===f?(f+=9,d=0):0===f-d?(b=Math.min(Math.abs(0.01*Math.abs(f)),
823
+ 5),f+=b,d-=b):d>f?(b=Math.min(0.01*Math.abs(this.getApparentDifference(f,d,null,!0)),5),0<=f?d=f-b:f=isFinite(d)?d+b:0):(d>=n||f>=n||d<=-n||f<=-n)&&10>f-d?f+=9:(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,f,null,!0)),0.05),0!==f&&(f+=b),0!==d&&(d-=b)),n=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<f-d?0.5*Math.abs(f-d):1,this.includeZero&&(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&0<d&&(d=0),this.includeZero&&(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&
824
+ 0>f&&(f=0));b=this.getApparentDifference(isNaN(this.viewportMinimum)||null===this.viewportMinimum?d:this.viewportMinimum,isNaN(this.viewportMaximum)||null===this.viewportMaximum?f:this.viewportMaximum,null,!0);if("axisX"===this.type&&c){this.valueType="dateTime";this.intervalType||(b/1<=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"):
825
+ 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="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*R.secondDuration)<=
826
+ a?(this.interval=1,this.intervalType="second"):b/(2*R.secondDuration)<=a?(this.interval=2,this.intervalType="second"):b/(5*R.secondDuration)<=a?(this.interval=5,this.intervalType="second"):b/(10*R.secondDuration)<=a?(this.interval=10,this.intervalType="second"):b/(15*R.secondDuration)<=a?(this.interval=15,this.intervalType="second"):b/(20*R.secondDuration)<=a?(this.interval=20,this.intervalType="second"):b/(30*R.secondDuration)<=a?(this.interval=30,this.intervalType="second"):b/(1*R.minuteDuration)<=
827
+ a?(this.interval=1,this.intervalType="minute"):b/(2*R.minuteDuration)<=a?(this.interval=2,this.intervalType="minute"):b/(5*R.minuteDuration)<=a?(this.interval=5,this.intervalType="minute"):b/(10*R.minuteDuration)<=a?(this.interval=10,this.intervalType="minute"):b/(15*R.minuteDuration)<=a?(this.interval=15,this.intervalType="minute"):b/(20*R.minuteDuration)<=a?(this.interval=20,this.intervalType="minute"):b/(30*R.minuteDuration)<=a?(this.interval=30,this.intervalType="minute"):b/(1*R.hourDuration)<=
828
+ a?(this.interval=1,this.intervalType="hour"):b/(2*R.hourDuration)<=a?(this.interval=2,this.intervalType="hour"):b/(3*R.hourDuration)<=a?(this.interval=3,this.intervalType="hour"):b/(6*R.hourDuration)<=a?(this.interval=6,this.intervalType="hour"):b/(1*R.dayDuration)<=a?(this.interval=1,this.intervalType="day"):b/(2*R.dayDuration)<=a?(this.interval=2,this.intervalType="day"):b/(4*R.dayDuration)<=a?(this.interval=4,this.intervalType="day"):b/(1*R.weekDuration)<=a?(this.interval=1,this.intervalType="week"):
829
+ b/(2*R.weekDuration)<=a?(this.interval=2,this.intervalType="week"):b/(3*R.weekDuration)<=a?(this.interval=3,this.intervalType="week"):b/(1*R.monthDuration)<=a?(this.interval=1,this.intervalType="month"):b/(2*R.monthDuration)<=a?(this.interval=2,this.intervalType="month"):b/(3*R.monthDuration)<=a?(this.interval=3,this.intervalType="month"):b/(6*R.monthDuration)<=a?(this.interval=6,this.intervalType="month"):(this.interval=b/(1*R.yearDuration)<=a?1:b/(2*R.yearDuration)<=a?2:b/(4*R.yearDuration)<=a?
830
+ 4:Math.floor(A.getNiceNumber(b/(a-1),!0)/R.yearDuration),this.intervalType="year"));if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum=d-n/2;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum=f+n/2;e?this.autoValueFormatString="MMM DD YYYY HH:mm":"year"===this.intervalType?this.autoValueFormatString="YYYY":"month"===this.intervalType?this.autoValueFormatString="MMM YYYY":"week"===this.intervalType?this.autoValueFormatString="MMM DD YYYY":
831
+ "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="fff'ms'");this.valueFormatString||(this.valueFormatString=this.autoValueFormatString)}else{this.intervalType="number";b=A.getNiceNumber(b,!1);this.interval=this.options&&
832
+ 0<this.options.interval?this.options.interval:A.getNiceNumber(b/(a-1),!0);if(null===this.viewportMinimum||isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?d-n/2:Math.floor(d/this.interval)*this.interval;if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum="axisX"===this.type?f+n/2:Math.ceil(f/this.interval)*this.interval;0===this.viewportMaximum&&0===this.viewportMinimum&&(0===this.options.viewportMinimum?this.viewportMaximum+=10:0===this.options.viewportMaximum&&
833
+ (this.viewportMinimum-=10),this.options&&"undefined"===typeof this.options.interval&&(this.interval=A.getNiceNumber((this.viewportMaximum-this.viewportMinimum)/(a-1),!0)))}if(null===this.minimum||null===this.maximum)if("axisX"===this.type?(d=null!==this.minimum?this.minimum:this.dataInfo.min,f=null!==this.maximum?this.maximum:this.dataInfo.max,0===f-d&&(b="undefined"===typeof this.options.interval?0.4:this.options.interval,f+=b,d-=b),n=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<f-d?
834
+ 0.5*Math.abs(f-d):1):"axisY"===this.type&&(d=null!==this.minimum?this.minimum:this.dataInfo.min,f=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(d)||isFinite(f)?0===d&&0===f?(f+=9,d=0):0===f-d?(b=Math.min(Math.abs(0.01*Math.abs(f)),5),f+=b,d-=b):d>f?(b=Math.min(0.01*Math.abs(this.getApparentDifference(f,d,null,!0)),5),0<=f?d=f-b:f=isFinite(d)?d+b:0):(b=Math.min(0.01*Math.abs(this.getApparentDifference(d,f,null,!0)),0.05),0!==f&&(f+=b),0!==d&&(d-=b)):(f="undefined"===typeof this.options.interval?
835
+ -Infinity:this.options.interval,d="undefined"!==typeof this.options.interval||isFinite(this.dataInfo.minDiff)?0:Infinity),n=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:1<f-d?0.5*Math.abs(f-d):1,this.includeZero&&(null===this.minimum||isNaN(this.minimum))&&0<d&&(d=0),this.includeZero&&(null===this.maximum||isNaN(this.maximum))&&0>f&&(f=0)),Math.abs(this.getApparentDifference(d,f,null,!0)),"axisX"===this.type&&c){this.valueType="dateTime";if(null===this.minimum||isNaN(this.minimum))this.minimum=
836
+ d-n/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=f+n/2,this.maximum=Math.max(this.maximum,null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum)}else this.intervalType=this.valueType="number",null===this.minimum&&(this.minimum="axisX"===
837
+ this.type?d-n/2:Math.floor(d/this.interval)*this.interval,this.minimum=Math.min(this.minimum,m(this.sessionVariables.newViewportMinimum)||isNaN(this.sessionVariables.newViewportMinimum)?m(this.sessionVariables.viewportMinimum)||isNaN(this.sessionVariables.viewportMinimum)?Infinity:this.sessionVariables.viewportMinimum:this.sessionVariables.newViewportMinimum)),null===this.maximum&&(this.maximum="axisX"===this.type?f+n/2:Math.ceil(f/this.interval)*this.interval,this.maximum=Math.max(this.maximum,m(this.sessionVariables.newViewportMaximum)||
838
+ isNaN(this.sessionVariables.newViewportMaximum)?m(this.sessionVariables.viewportMaximum)||isNaN(this.sessionVariables.viewportMaximum)?-Infinity:this.sessionVariables.viewportMaximum:this.sessionVariables.newViewportMaximum)),0===this.maximum&&0===this.minimum&&(0===this.options.minimum?this.maximum+=10:0===this.options.maximum&&(this.minimum-=10));m(this.sessionVariables.newViewportMinimum)&&(this.viewportMinimum=Math.max(this.viewportMinimum,this.minimum));m(this.sessionVariables.newViewportMaximum)&&
839
+ (this.viewportMaximum=Math.min(this.viewportMaximum,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=A.generateValueFormatString(this.range,2))}};A.prototype.calculateLogarithmicAxisParameters=function(){var a=this.chart.layoutManager.getFreeSpace(),
840
+ e=Math.log(this.logarithmBase),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,d,f,n;n=1;!m(this.minimum)&&(!m(this.maximum)&&this.minimum>this.maximum)&&(this.minimum=this.maximum=null);!m(this.viewportMinimum)&&(!m(this.viewportMaximum)&&this.viewportMinimum>=this.viewportMaximum)&&
841
+ (this.viewportMinimum=this.viewportMaximum=null);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(n=0;n<this.scaleBreaks._appliedBreaks.length;n++)if((!m(this.sessionVariables.newViewportMinimum)&&this.sessionVariables.newViewportMinimum>=this.scaleBreaks._appliedBreaks[n].startValue||!m(this.options.minimum)&&this.options.minimum>=this.scaleBreaks._appliedBreaks[n].startValue||
842
+ !m(this.options.viewportMinimum)&&this.viewportMinimum>=this.scaleBreaks._appliedBreaks[n].startValue)&&(!m(this.sessionVariables.newViewportMaximum)&&this.sessionVariables.newViewportMaximum<=this.scaleBreaks._appliedBreaks[n].endValue||!m(this.options.maximum)&&this.options.maximum<=this.scaleBreaks._appliedBreaks[n].endValue||!m(this.options.viewportMaximum)&&this.viewportMaximum<=this.scaleBreaks._appliedBreaks[n].endValue)){this.scaleBreaks._appliedBreaks.splice(n,1);break}"axisX"===this.type?
843
+ (b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,1===d/b&&(n=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?0.4:this.options.interval),d*=n,b/=n),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,
844
+ d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,0>=b&&!isFinite(d)?(d="undefined"===typeof this.options.interval?0:this.options.interval,b=1):0>=b?b=d:isFinite(d)||(d=b),1===b&&1===d?(d*=this.logarithmBase-1/this.logarithmBase,b=1):1===d/b?(n=Math.min(d*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),d*=n,b/=n):b>d?(n=Math.min(b/d*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),1<=d?b=d/n:d=b*n):(n=Math.min(d/b*Math.pow(this.logarithmBase,
845
+ 0.01),Math.pow(this.logarithmBase,0.04)),1!==d&&(d*=n),1!==b&&(b/=n)),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase,this.includeZero&&(null===this.viewportMinimum||isNaN(this.viewportMinimum))&&1<b&&(b=1),this.includeZero&&(null===this.viewportMaximum||isNaN(this.viewportMaximum))&&1>d&&(d=1));n=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)/(isNaN(this.viewportMinimum)||null===
846
+ this.viewportMinimum?b:this.viewportMinimum);var l=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)-(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);this.intervalType="number";n=Math.pow(this.logarithmBase,A.getNiceNumber(Math.abs(Math.log(n)/e),!1));this.options&&0<this.options.interval?this.interval=this.options.interval:(this.interval=A.getNiceExponent(Math.log(n)/e/(a-1),!0),c=A.getNiceNumber(l/(a-1),!0));if(null===this.viewportMinimum||
847
+ isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?b/Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/e/this.interval));if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum="axisX"===this.type?d*Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(d)/e/this.interval));1===this.viewportMaximum&&1===this.viewportMinimum&&(1===this.options.viewportMinimum?this.viewportMaximum*=this.logarithmBase-1/this.logarithmBase:
848
+ 1===this.options.viewportMaximum&&(this.viewportMinimum/=this.logarithmBase-1/this.logarithmBase),this.options&&"undefined"===typeof this.options.interval&&(this.interval=A.getNiceExponent(Math.ceil(Math.log(n)/e)/(a-1)),c=A.getNiceNumber((this.viewportMaximum-this.viewportMinimum)/(a-1),!0)));if(null===this.minimum||null===this.maximum)"axisX"===this.type?(b=null!==this.minimum?this.minimum:this.dataInfo.min,d=null!==this.maximum?this.maximum:this.dataInfo.max,1===d/b&&(n=Math.pow(this.logarithmBase,
849
+ "undefined"===typeof this.options.interval?0.4:this.options.interval),d*=n,b/=n),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/b*Math.pow(this.logarithmBase,0.5):this.logarithmBase):"axisY"===this.type&&(b=null!==this.minimum?this.minimum:this.dataInfo.min,d=null!==this.maximum?this.maximum:this.dataInfo.max,isFinite(b)||isFinite(d)?1===b&&1===d?(d*=this.logarithmBase,b/=this.logarithmBase):1===d/b?(n=Math.pow(this.logarithmBase,this.interval),d*=n,b/=n):b>d?(n=
850
+ Math.min(0.01*(b/d),5),1<=d?b=d/n:d=b*n):(n=Math.min(d/b*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,0.04)),1!==d&&(d*=n),1!==b&&(b/=n)):(d="undefined"===typeof this.options.interval?0:this.options.interval,b=1),f=Infinity!==this.dataInfo.minDiff?this.dataInfo.minDiff:d/b>this.logarithmBase?d/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))&&
851
+ 1>d&&(d=1)),this.intervalType="number",null===this.minimum&&(this.minimum="axisX"===this.type?b/Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/e/this.interval)),m(null===this.sessionVariables.viewportMinimum||isNaN(this.sessionVariables.viewportMinimum)?"undefined"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:this.sessionVariables.viewportMinimum)||(this.minimum=Math.min(this.minimum,null===this.sessionVariables.viewportMinimum||
852
+ isNaN(this.sessionVariables.viewportMinimum)?"undefined"===typeof this.sessionVariables.newViewportMinimum?Infinity:this.sessionVariables.newViewportMinimum:this.sessionVariables.viewportMinimum))),null===this.maximum&&(this.maximum="axisX"===this.type?d*Math.sqrt(f):Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(d)/e/this.interval)),m(null===this.sessionVariables.viewportMaximum||isNaN(this.sessionVariables.viewportMaximum)?"undefined"===typeof this.sessionVariables.newViewportMaximum?
853
+ 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?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/=
854
+ 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||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)/
855
+ 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)/(e*this.interval)+0.2)*this.interval);this.range=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(e=Math.floor(this.viewportMinimum/c+0.5)*c;e<this.viewportMinimum;)e+=c;this.equidistantInterval=
856
+ !1;this.intervalStartPosition=e;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)/(e*this.interval)+0.2)*this.interval))),this.equidistantInterval=!0,this.intervalStartPosition=b;if(!this.valueFormatString&&(this.valueFormatString="#,##0.##",1>this.viewportMinimum)){e=Math.floor(Math.abs(Math.log(this.viewportMinimum)/Math.LN10))+2;if(isNaN(e)||!isFinite(e))e=2;
857
+ if(2<e)for(n=0;n<e-2;n++)this.valueFormatString+="#"}};A.generateValueFormatString=function(a,e){var c="#,##0.",b=e;1>a&&(b+=Math.floor(Math.abs(Math.log(a)/Math.LN10)),isNaN(b)||!isFinite(b))&&(b=e);for(var d=0;d<b;d++)c+="#";return c};A.getNiceExponent=function(a,e){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))};A.getNiceNumber=function(a,e){var c=Math.floor(Math.log(a)/
858
+ Math.LN10),b=a/Math.pow(10,c),b=e?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))};A.prototype.getLabelStartPoint=function(){var a=R[this.intervalType+"Duration"]*this.interval,a=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()||
859
+ 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"===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<
860
+ 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()||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()||
861
+ 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(ga,T);ra(ca,T);ca.prototype.createUserOptions=function(a){if("undefined"!==typeof a||this.options._isPlaceholder){var e=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Ba(this.parent[this.optionsName]),e=this.parent.options[this.optionsName].indexOf(this.options));
862
+ this.options="undefined"===typeof a?{}:a;this.parent.options[this.optionsName][e]=this.options}};ca.prototype.render=function(a){if(0!==this.spacing||0!==this.options.lineThickness&&("undefined"!==typeof this.options.lineThickness||0!==this.parent.lineThickness)){var e=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),
863
+ d=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.endValue);this.ctx.strokeStyle=this.lineColor;this.ctx.fillStyle=this.color;this.ctx.beginPath();this.ctx.globalAlpha=1;X(this.id);var f,n,l,h,k,m;a=Math.max(this.spacing,3);var p=Math.max(0,this.lineThickness);this.ctx.lineWidth=p;this.ctx.setLineDash&&this.ctx.setLineDash(J(this.lineDashType,p));if("bottom"===this.scaleBreaks.parent._position||"top"===this.scaleBreaks.parent._position)if(b=1===p%2?(b.x<<0)+0.5:b.x<<0,n=1===p%2?(d.x<<0)+0.5:
864
+ d.x<<0,"top"===this.scaleBreaks.parent._position?(d=this.chart.plotArea.y1,l=this.chart.plotArea.y2+p/2+0.5<<0):(d=this.chart.plotArea.y2,l=this.chart.plotArea.y1-p/2+0.5<<0,a*=-1),this.bounds={x1:b-p/2,y1:d,x2:n+p/2,y2:l},this.ctx.moveTo(b,d),"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(n,l),this.ctx.lineTo(n,d);else if("wavy"===this.type){h=b;k=d;f=0.5;m=(l-k)/a/3;for(var r=0;r<m;r++)this.ctx.bezierCurveTo(h+
865
+ f*a,k+a,h+f*a,k+2*a,h,k+3*a),k+=3*a,f*=-1;this.ctx.bezierCurveTo(h+f*a,k+a,h+f*a,k+2*a,h,k+3*a);h=n;f*=-1;this.ctx.lineTo(h,k);for(r=0;r<m;r++)this.ctx.bezierCurveTo(h+f*a,k-a,h+f*a,k-2*a,h,k-3*a),k-=3*a,f*=-1}else{if("zigzag"===this.type){f=-1;k=d+a;h=b+a;m=(l-k)/a/2;for(r=0;r<m;r++)this.ctx.lineTo(h,k),h+=2*f*a,k+=2*a,f*=-1;this.ctx.lineTo(h,k);h+=n-b;for(r=0;r<m+1;r++)this.ctx.lineTo(h,k),h+=2*f*a,k-=2*a,f*=-1;this.ctx.lineTo(h+f*a,k+a)}}else if("left"===this.scaleBreaks.parent._position||"right"===
866
+ this.scaleBreaks.parent._position)if(d=1===p%2?(d.y<<0)+0.5:d.y<<0,l=1===p%2?(b.y<<0)+0.5:b.y<<0,"left"===this.scaleBreaks.parent._position?(b=this.chart.plotArea.x1,n=this.chart.plotArea.x2+p/2+0.5<<0):(b=this.chart.plotArea.x2,n=this.chart.plotArea.x1-p/2+0.5<<0,a*=-1),this.bounds={x1:b,y1:d-p/2,x2:n,y2:l+p/2},this.ctx.moveTo(b,d),"straight"===this.type||"left"===this.scaleBreaks.parent._position&&0>=a||"right"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(n,d),this.ctx.lineTo(n,l),
867
+ this.ctx.lineTo(b,l);else if("wavy"===this.type){h=b;k=d;f=0.5;m=(n-h)/a/3;for(r=0;r<m;r++)this.ctx.bezierCurveTo(h+a,k+f*a,h+2*a,k+f*a,h+3*a,k),h+=3*a,f*=-1;this.ctx.bezierCurveTo(h+a,k+f*a,h+2*a,k+f*a,h+3*a,k);k=l;f*=-1;this.ctx.lineTo(h,k);for(r=0;r<m;r++)this.ctx.bezierCurveTo(h-a,k+f*a,h-2*a,k+f*a,h-3*a,k),h-=3*a,f*=-1}else if("zigzag"===this.type){f=1;k=d-a;h=b+a;m=(n-h)/a/2;for(r=0;r<m;r++)this.ctx.lineTo(h,k),k+=2*f*a,h+=2*a,f*=-1;this.ctx.lineTo(h,k);k+=l-d;for(r=0;r<m+1;r++)this.ctx.lineTo(h,
868
+ k),k+=2*f*a,h-=2*a,f*=-1;this.ctx.lineTo(h+a,k+f*a)}0<p&&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=c;this.ctx=e}};ra(ia,T);ia.prototype.createUserOptions=function(a){if("undefined"!==typeof a||this.options._isPlaceholder){var e=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Ba(this.parent.stripLines),e=
869
+ this.parent.options.stripLines.indexOf(this.options));this.options="undefined"===typeof a?{}:a;this.parent.options.stripLines[e]=this.options}};ia.prototype.render=function(){this.ctx.save();var a=this.parent.getPixelCoordinatesOnAxis(this.value),e=Math.abs("pixel"===this._thicknessType?this.thickness:Math.abs(this.parent.convertValueToPixel(this.endValue)-this.parent.convertValueToPixel(this.startValue)));if(0<e){var c=null===this.opacity?1:this.opacity;this.ctx.strokeStyle=this.color;this.ctx.beginPath();
870
+ var b=this.ctx.globalAlpha;this.ctx.globalAlpha=c;X(this.id);var d,f,h,l;this.ctx.lineWidth=e;this.ctx.setLineDash&&this.ctx.setLineDash(J(this.lineDashType,e));if("bottom"===this.parent._position||"top"===this.parent._position)a="pixel"===this._thicknessType?a.x:(this.parent.convertValueToPixel(this.endValue)+this.parent.convertValueToPixel(this.startValue))/2,d=f=1===this.ctx.lineWidth%2?(a<<0)+0.5:a<<0,h=this.chart.plotArea.y1,l=this.chart.plotArea.y2,this.bounds={x1:d-e/2,y1:h,x2:f+e/2,y2:l};
871
+ 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<<0)+0.5:a<<0,d=this.chart.plotArea.x1,f=this.chart.plotArea.x2,this.bounds={x1:d,y1:h-e/2,x2:f,y2:l+e/2};this.ctx.moveTo(d,h);this.ctx.lineTo(f,l);this.ctx.stroke();this.ctx.globalAlpha=b}this.ctx.restore()};ra(ea,T);ea.prototype.showAt=function(a){if(!this.enabled)return!1;
872
+ var e=this.chart,c=!1;e.resetOverlayedCanvas();e.clearedOverlayedCanvas=this.parent.type;this.chart.renderCrosshairs(this.parent,!1);var b,d="xySwapped"===e.plotInfo.axisPlacement;"bottom"===this.parent._position?b=d?e.axisY:e.axisX:"top"===this.parent._position?b=d?e.axisY2:e.axisX2:"left"===this.parent._position?b=d?e.axisX:e.axisY:"right"===this.parent._position&&(b=d?e.axisX2:e.axisY2);if(b)for(d=0;d<b.length;d++)this.parent===b[d]&&(b[d]._crosshairValue=a>=b[d].viewportMinimum&&a<=b[d].viewportMaximum?
873
+ a:null);b=["axisX","axisX2","axisY","axisY2"];for(d=0;d<b.length;d++)for(var f=b[d],h=0;h<e[f].length;h++){var l=e[f][h],s=l._crosshairValue;l.crosshair&&l.crosshair.enabled&&(this.parent===l&&(l.sessionVariables.crosshairShownByPixel=!1,l.sessionVariables.crosshairValue=l.crosshair._updatedValue=s||a),!m(s)&&s>=l.viewportMinimum&&s<=l.viewportMaximum?(l.showCrosshair(s),this===l.crosshair&&(c=!0)):void 0!==s&&(l.sessionVariables.crosshairValue=null,l.crosshair._updatedValue=null))}this.chart.toolTip&&
874
+ (this.chart.toolTip._entries&&this.chart.sessionVariables._dataHighlighted)&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);return c};ea.prototype.hide=function(){this.chart.resetOverlayedCanvas();this.chart.toolTip&&(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};ea.prototype.render=
875
+ function(a,e,c){var b,d,f,h,l=null,s=null,k=null,q="";this.valueFormatString||("dateTime"===this.parent.valueType?this.valueFormatString=this.parent.valueFormatString:(k=0,k="xySwapped"===this.chart.plotInfo.axisPlacement?50<this.parent.range?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?
876
+ 2:10>this.parent.range?1:0),this.valueFormatString=A.generateValueFormatString(this.parent.range,k)));var p=null===this.opacity?1:this.opacity,r=Math.abs("pixel"===this._thicknessType?this.thickness:this.parent.conversionParameters.pixelPerUnit*this.thickness),g=this.chart.overlaidCanvasCtx,u=g.globalAlpha;g.beginPath();g.strokeStyle=this.color;g.lineWidth=r;g.save();this.labelFontSize=Math.abs(m(this.options.labelFontSize)?this.parent.labelFontSize:this.labelFontSize);this.labelMaxWidth=m(this.options.labelMaxWidth)?
877
+ 0.3*this.chart.width:this.labelMaxWidth;this.labelMaxHeight=m(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||0):2*this.labelPadding);k=new ma(g,{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,
878
+ text:q,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,padding:this.labelPadding,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle"});if(this.snapToDataPoint){var x=0,q=[];if("xySwapped"===this.chart.plotInfo.axisPlacement){var y=null;if("bottom"===this.parent._position||"top"===this.parent._position)x=this.parent.dataSeries[0].axisX.convertPixelToValue({y:this.parent.sessionVariables.crosshairShownByPixel?
879
+ this.chart.sessionVariables.mouseY:e});else if("left"===this.parent._position||"right"===this.parent._position)x=this.parent.convertPixelToValue({y:e});for(var t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[t],null!==y.dataPoint.y&&y.dataSeries.visible&&q.push(y));y=null;if(0===q.length)return;q.sort(function(a,b){return a.distance-b.distance});var w=y=0;yPercent=cumulativeY=0;for(var x=Infinity,v,t=
880
+ 0;t<q.length;t++){if("rangeBar"===q[t].dataSeries.type||"error"===q[t].dataSeries.type){if(q[t].dataPoint.y)for(var B=0;B<q[t].dataPoint.y.length;B++)w=Math.abs(a-this.parent.convertValueToPixel(q[t].dataPoint.y[B])),w<=x&&(x=w,y=t)}else"stackedBar"===q[t].dataSeries.type?(cumulativeY=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=Math.abs(a-this.parent.convertValueToPixel(cumulativeY)),w<=x&&(x=w,y=t)):"stackedBar100"===q[t].dataSeries.type?(w=q[0].dataPoint.x.getTime?q[0].dataPoint.x.getTime():
881
+ q[0].dataPoint.x,m(v)&&(v=Math.abs(a-this.parent.convertValueToPixel(100*(q[0].dataSeries.dataPointEOs[q[0].index].cumulativeY/q[0].dataSeries.plotUnit.dataPointYSums[w])))),cumulativeY=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=q[t].dataPoint.x.getTime?q[t].dataPoint.x.getTime():q[t].dataPoint.x,yPercent=100*(cumulativeY/q[t].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(a-this.parent.convertValueToPixel(yPercent)),w<=v&&(v=w,y=t)):(w=Math.abs(a-this.parent.convertValueToPixel(q[t].dataPoint.y)),
882
+ w<=x&&(x=w,y=t));m(v)||(x=Math.min(x,v))}v=q[y];t=0;if("bottom"===this.parent._position||"top"===this.parent._position){if("rangeBar"===v.dataSeries.type||"error"===v.dataSeries.type){x=Math.abs(a-this.parent.convertValueToPixel(v.dataPoint.y[0]));for(q=0;q<v.dataPoint.y.length;q++)w=Math.abs(a-this.parent.convertValueToPixel(v.dataPoint.y[q])),w<x&&(x=w,t=q);l=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y[t])<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y[t])<<0;this.value=
883
+ v.dataPoint.y[t];0!==v.dataPoint.y[t]%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:v.dataPoint.y[t]}):m(this.options.label)?fa(v.dataPoint.y[t],this.valueFormatString,this.chart._cultureInfo):this.label}else"stackedBar"===
884
+ v.dataSeries.type?(x=Math.abs(a-this.parent.convertValueToPixel(q[0].dataPoint.y)),cumulativeY=v.dataSeries.dataPointEOs[v.index].cumulativeY,l=1===g.lineWidth%2?(this.parent.convertValueToPixel(cumulativeY)<<0)+0.5:this.parent.convertValueToPixel(cumulativeY)<<0,this.value=cumulativeY,0!==cumulativeY%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?
885
+ 1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:cumulativeY}):m(this.options.label)?fa(cumulativeY,this.valueFormatString,this.chart._cultureInfo):this.label):"stackedBar100"===v.dataSeries.type?(x=Math.abs(a-this.parent.convertValueToPixel(q[0].dataPoint.y)),cumulativeY=v.dataSeries.dataPointEOs[v.index].cumulativeY,w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,yPercent=100*(cumulativeY/v.dataSeries.plotUnit.dataPointYSums[w]),
886
+ l=1===g.lineWidth%2?(this.parent.convertValueToPixel(yPercent)<<0)+0.5:this.parent.convertValueToPixel(yPercent)<<0,this.value=yPercent,0!==yPercent%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:yPercent}):m(this.options.label)?
887
+ fa(yPercent,this.valueFormatString,this.chart._cultureInfo):this.label):(l=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y)<<0,this.value=v.dataPoint.y,0!==v.dataPoint.y%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,
888
+ axis:this.parent,crosshair:this.options,value:v.dataPoint.y}):m(this.options.label)?fa(v.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):this.label);b=d=l;f=this.chart.plotArea.y1;h=this.chart.plotArea.y2;this.bounds={x1:b-r/2,y1:f,x2:d+r/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:
889
+ 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){f=h=s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.x)<<0;b=this.chart.plotArea.x1;d=this.chart.plotArea.x2;this.bounds={x1:b,y1:f-r/2,x2:d,y2:h+r/2};t=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),q=0;q<
890
+ this.parent.viewportMaximum;q+=x)if(this.parent.labels[q])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({y:e}),y=null,t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0,!0))&&0<=y.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?y.dataPoint.label:this.label)}else"dateTime"!==this.parent.valueType||this.parent.logarithmic?
891
+ (0!==v.dataPoint.x%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?fa(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label):k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,
892
+ axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?Ea(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.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:
893
+ "right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}}else if("bottom"===this.parent._position||"top"===this.parent._position){x=this.parent.convertPixelToValue({x:a});for(t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[t],null!==y.dataPoint.y&&y.dataSeries.visible&&q.push(y));if(0===q.length)return;q.sort(function(a,b){return a.distance-b.distance});v=q[0];b=d=l=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.x)<<
894
+ 0)+0.5:this.parent.convertValueToPixel(v.dataPoint.x)<<0;f=this.chart.plotArea.y1;h=this.chart.plotArea.y2;this.bounds={x1:b-r/2,y1:f,x2:d+r/2,y2:h};t=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),q=0;q<this.parent.viewportMaximum;q+=x)if(this.parent.labels[q])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({x:a}),y=null,t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0,!0))&&0<=y.index&&(k.text=
895
+ this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?y.dataPoint.label:this.label)}else"dateTime"!==this.parent.valueType||this.parent.logarithmic?(0!==v%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,
896
+ axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?fa(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label):k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:v.dataPoint.x}):m(this.options.label)?Ea(v.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.dataPoint.x;k.x=b-k.measureText().width/2;k.x+k.width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-
897
+ k.width);k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1);"bottom"===this.parent._position?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){!m(this.parent.dataSeries)&&0<this.parent.dataSeries.length&&(x=this.parent.dataSeries[0].axisX.convertPixelToValue({x:this.parent.sessionVariables.crosshairShownByPixel?this.chart.sessionVariables.mouseX:
898
+ a}));for(t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0,!0))&&0<=y.index&&(y.dataSeries=this.parent.dataSeries[t],null!==y.dataPoint.y&&y.dataSeries.visible&&q.push(y));if(0===q.length)return;q.sort(function(a,b){return a.distance-b.distance});w=y=0;x=Infinity;for(t=0;t<q.length;t++){if("rangeColumn"===q[t].dataSeries.type||"rangeArea"===q[t].dataSeries.type||"error"===q[t].dataSeries.type||"rangeSplineArea"===q[t].dataSeries.type||"candlestick"===q[t].dataSeries.type||
899
+ "ohlc"===q[t].dataSeries.type||"boxAndWhisker"===q[t].dataSeries.type){if(q[t].dataPoint.y)for(B=0;B<q[t].dataPoint.y.length;B++)w=Math.abs(e-this.parent.convertValueToPixel(q[t].dataPoint.y[B])),w<=x&&(x=w,y=t)}else"stackedColumn"===q[t].dataSeries.type?(a=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=x&&(x=w,y=t)):"stackedArea"===q[t].dataSeries.type?(a=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=Math.abs(e-this.parent.convertValueToPixel(a)),
900
+ w<=x&&(x=w,y=t)):"stackedColumn100"===q[t].dataSeries.type||"stackedArea100"===q[t].dataSeries.type?(w=q[0].dataPoint.x.getTime?q[0].dataPoint.x.getTime():q[0].dataPoint.x,m(v)&&(v=Math.abs(e-this.parent.convertValueToPixel(100*(q[0].dataSeries.dataPointEOs[q[0].index].cumulativeY/q[0].dataSeries.plotUnit.dataPointYSums[w])))),"stackedColumn100"===q[t].dataSeries.type?(s=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=q[t].dataPoint.x.getTime?q[t].dataPoint.x.getTime():q[t].dataPoint.x,a=100*
901
+ (s/q[t].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=v&&(v=w,y=t)):"stackedArea100"===q[t].dataSeries.type&&(s=q[t].dataSeries.dataPointEOs[q[t].index].cumulativeY,w=q[t].dataPoint.x.getTime?q[t].dataPoint.x.getTime():q[t].dataPoint.x,a=100*(s/q[t].dataSeries.plotUnit.dataPointYSums[w]),w=Math.abs(e-this.parent.convertValueToPixel(a)),w<=v&&(v=w,y=t))):"waterfall"===q[t].dataSeries.type?(w=Math.abs(e-this.parent.convertValueToPixel(q[t].dataSeries.dataPointEOs[q[t].index].cumulativeSum)),
902
+ w<=x&&(v=x=w,y=t)):(w=Math.abs(e-this.parent.convertValueToPixel(q[t].dataPoint.y)),w<=x&&(x=w,y=t));m(v)||(x=Math.min(x,v))}v=q[y];t=0;if("rangeColumn"===v.dataSeries.type||"rangeArea"===v.dataSeries.type||"error"===v.dataSeries.type||"rangeSplineArea"===v.dataSeries.type||"candlestick"===v.dataSeries.type||"ohlc"===v.dataSeries.type||"boxAndWhisker"===v.dataSeries.type){x=Math.abs(e-this.parent.convertValueToPixel(v.dataPoint.y[0]));for(q=0;q<v.dataPoint.y.length;q++)w=Math.abs(e-this.parent.convertValueToPixel(v.dataPoint.y[q])),
903
+ w<x&&(x=w,t=q);s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y[t])<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y[t])<<0;0!==v.dataPoint.y[t]%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:v.dataPoint.y[t]}):
904
+ m(this.options.label)?fa(v.dataPoint.y[t],this.valueFormatString,this.chart._cultureInfo):this.label;this.value=v.dataPoint.y[t]}else"stackedColumn"===v.dataSeries.type?(a=v.dataSeries.dataPointEOs[v.index].cumulativeY,s=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?
905
+ 2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:a}):m(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedArea"===v.dataSeries.type?(a=v.dataSeries.dataPointEOs[v.index].cumulativeY,s=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,
906
+ 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,crosshair:this.options,value:a}):m(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"stackedColumn100"===v.dataSeries.type?(s=v.dataSeries.dataPointEOs[v.index].cumulativeY,w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,a=100*(s/v.dataSeries.plotUnit.dataPointYSums[w]),
907
+ s=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:a}):m(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):
908
+ this.label,this.value=a):"stackedArea100"===v.dataSeries.type?(s=v.dataSeries.dataPointEOs[v.index].cumulativeY,w=v.dataPoint.x.getTime?v.dataPoint.x.getTime():v.dataPoint.x,a=100*(s/v.dataSeries.plotUnit.dataPointYSums[w]),s=1===g.lineWidth%2?(this.parent.convertValueToPixel(a)<<0)+0.5:this.parent.convertValueToPixel(a)<<0,0!==a%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.generateValueFormatString(this.parent.range,Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>
909
+ this.parent.range?2:10>this.parent.range?1:0))),k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:a}):m(this.options.label)?fa(a,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=a):"waterfall"===v.dataSeries.type?(s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataSeries.dataPointEOs[v.index].cumulativeSum)<<0)+0.5:this.parent.convertValueToPixel(v.dataSeries.dataPointEOs[v.index].cumulativeSum)<<0,0!==v.dataSeries.dataPointEOs[v.index].cumulativeSum%
910
+ 1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,crosshair:this.options,value:v.dataSeries.dataPointEOs[v.index].cumulativeSum}):m(this.options.label)?fa(v.dataSeries.dataPointEOs[v.index].cumulativeSum,this.valueFormatString,this.chart._cultureInfo):
911
+ this.label,this.value=v.dataSeries.dataPointEOs[v.index].cumulativeSum):(s=1===g.lineWidth%2?(this.parent.convertValueToPixel(v.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(v.dataPoint.y)<<0,0!==v.dataPoint.y%1&&m(this.options.valueFormatString)&&(this.valueFormatString=A.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,
912
+ axis:this.parent,crosshair:this.options,value:v.dataPoint.y}):m(this.options.label)?fa(v.dataPoint.y,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=v.dataPoint.y);f=h=s;b=this.chart.plotArea.x1;d=this.chart.plotArea.x2;this.bounds={x1:b,y1:f-r/2,x2:d,y2:h+r/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&&(k.y=this.chart.bounds.y2-k.measureText().height+
913
+ 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)}q=null;g.globalAlpha=p;0<r&&g.setLineDash&&g.setLineDash(J(this.lineDashType,r));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&&this.parent.lineCoordinates.y2+k.measureText().height>
914
+ this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.height+k.fontSize/2+2),this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<r&&(g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=this._hidden=!1);if("left"===this.parent._position||"right"===this.parent._position)"left"===this.parent._position&&k.x<this.chart.bounds.x1&&(k.x=this.chart.bounds.x1),"right"===
915
+ this.parent._position&&k.x+k.measureText().width>this.chart.bounds.x2&&(k.x=this.chart.bounds.x2-k.measureText().width),this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<r&&(g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=this._hidden=!1)}else{if("bottom"===this.parent._position||"top"===this.parent._position)b=d=l=1===g.lineWidth%2?(a<<0)+0.5:a<<0,f=this.chart.plotArea.y1,
916
+ h=this.chart.plotArea.y2,this.bounds={x1:b-r/2,y1:f,x2:d+r/2,y2:h};else if("left"===this.parent._position||"right"===this.parent._position)f=h=s=1===g.lineWidth%2?(e<<0)+0.5:e<<0,b=this.chart.plotArea.x1,d=this.chart.plotArea.x2,this.bounds={x1:b,y1:f-r/2,x2:d,y2:h+r/2};if("xySwapped"===this.chart.plotInfo.axisPlacement)if("left"===this.parent._position||"right"===this.parent._position){t=!1;if(this.parent.labels)for(x=Math.ceil(this.parent.interval),q=0;q<this.parent.viewportMaximum;q+=x)if(this.parent.labels[q])t=
917
+ !0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({y:e}),y=null,t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0))&&0<=y.index&&(k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(a):c}):m(this.options.label)?y.dataPoint.label:this.label)}else k.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?
918
+ this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(e):c}):m(this.options.label)?fa(m(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(e):c}):m(this.options.label)?Ea(m(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):
919
+ this.label;k.y=e+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.x1-k.measureText().width:"right"===this.parent._position&&(k.x=this.parent.lineCoordinates.x2)}else{if("bottom"===this.parent._position||"top"===this.parent._position)k.text=this.labelFormatter?
920
+ this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(a):c}):m(this.options.label)?fa(m(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label,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?k.y=this.parent.lineCoordinates.y2+k.fontSize/2+2:"top"===this.parent._position&&
921
+ (k.y=this.parent.lineCoordinates.y1-k.height+k.fontSize/2+2)}else if("bottom"===this.parent._position||"top"===this.parent._position){t=!1;q="";if(this.parent.labels)for(x=Math.ceil(this.parent.interval),q=0;q<this.parent.viewportMaximum;q+=x)if(this.parent.labels[q])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(x=this.parent.convertPixelToValue({x:a}),y=null,t=0;t<this.parent.dataSeries.length;t++)(y=this.parent.dataSeries[t].getDataPointAtX(x,!0))&&0<=y.index&&(k.text=this.labelFormatter?
922
+ this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(a):c}):m(this.options.label)?m(c)?y.dataPoint.label:c:this.label)}else k.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?0<this.parent.dataSeries.length?this.parent.convertPixelToValue(a):"":c}):m(this.options.label)?fa(m(c)?this.parent.convertPixelToValue(a):
923
+ c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(a):c}):m(this.options.label)?Ea(m(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label;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?
924
+ 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)k.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent,crosshair:this.options,value:m(c)?this.parent.convertPixelToValue(e):c}):m(this.options.label)?fa(m(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label,k.y=e+
925
+ 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);"left"===this.parent._position&&k.x<this.chart.bounds.x1?k.x=this.chart.bounds.x1:"right"===this.parent._position&&
926
+ k.x+k.measureText().width>this.chart.bounds.x2?k.x=this.chart.bounds.x2-k.measureText().width:"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&&this.parent.lineCoordinates.y2+k.measureText().height>this.chart.bounds.y2&&(k.y=this.chart.bounds.y2-k.height+k.fontSize/2+2);g.globalAlpha=p;0<r&&("bottom"!==this.parent._position||d<=this.parent.lineCoordinates.x2)&&(g.setLineDash&&g.setLineDash(J(this.lineDashType,
927
+ r)),g.moveTo(b,f),g.lineTo(d,h),g.stroke(),this.parent.sessionVariables._crosshairHidden=this._hidden=!1);this.value="bottom"===this.parent._position||"top"===this.parent._position?this.parent.convertPixelToValue(a):this.parent.convertPixelToValue(e)}if("bottom"===this.parent._position||"top"===this.parent._position)this.parent.sessionVariables.crosshairValue=this._updatedValue=this.parent.convertPixelToValue(l);if("left"===this.parent._position||"right"===this.parent._position)this.parent.sessionVariables.crosshairValue=
928
+ this._updatedValue=this.parent.convertPixelToValue(s);this._textBlock=k;this._label=c;m(c)||this.renderLabel();g.restore();g.globalAlpha=u};ea.prototype.renderLabel=function(){this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&(m(this._textBlock)||(m(this._textBlock.text)||!("number"===typeof this._textBlock.text.valueOf()||0<this._textBlock.text.length)||this._hidden)||this._textBlock.render(!0),
929
+ m(this._label)&&this.dispatchEvent("updated",{chart:this.chart,crosshair:this.options,axis:this.parent,value:this.value},this.parent))};ra(oa,T);oa.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("shared");this.updateOption("animationEnabled");this.updateOption("content");this.updateOption("contentFormatter");this.updateOption("reversed");this.updateOption("backgroundColor");this.updateOption("borderColor");this.updateOption("borderThickness");this.updateOption("cornerRadius");
930
+ this.updateOption("fontSize");this.updateOption("fontColor");this.updateOption("fontFamily");this.updateOption("fontWeight");this.updateOption("fontStyle")};oa.prototype._initialize=function(){this.updateOption("updated");this.updateOption("hidden");if(this.enabled){this.container=document.createElement("div");this.container.setAttribute("class","canvasjs-chart-tooltip");this.container.style.position="absolute";this.container.style.height="auto";this.container.style.boxShadow="1px 1px 2px 2px rgba(0,0,0,0.1)";
931
+ this.container.style.zIndex="1000";this.container.style.pointerEvents="none";this.container.style.display="none";var a=document.createElement("div");a.style.width="auto";a.style.height="auto";a.style.minWidth="50px";a.style.lineHeight="normal";a.style.margin="0px 0px 0px 0px";a.style.padding="5px";a.style.fontFamily="Calibri, Arial, Georgia, serif";a.style.fontWeight="normal";a.style.fontStyle=u?"italic":"normal";a.style.fontSize="14px";a.style.color="#000000";a.style.textShadow="1px 1px 1px rgba(0, 0, 0, 0.1)";
932
+ a.style.textAlign="left";a.style.border="2px solid gray";a.style.background=u?"rgba(255,255,255,.9)":"rgb(255,255,255)";a.style.textIndent="0px";a.style.whiteSpace="nowrap";a.style.borderRadius="5px";a.style.MozUserSelect="none";a.style.WebkitUserSelect="none";a.style.msUserSelect="none";a.style.userSelect="none";u||(a.style.filter="alpha(opacity = 90)",a.style.filter="progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color='#666666')");a.innerText="Sample Tooltip";this.container.appendChild(a);
933
+ this.contentDiv=this.container.firstChild;this.container.style.borderRadius=this.contentDiv.style.borderRadius;this.chart._canvasJSContainer.appendChild(this.container)}};oa.prototype.mouseMoveHandler=function(a,e){this._lastUpdated&&4>(new Date).getTime()-this._lastUpdated||(this._lastUpdated=(new Date).getTime(),this.chart.resetOverlayedCanvas(),this._updateToolTip(a,e),this.enabled&&this._updatedEventParameters&&!isNaN(this._prevX)&&!isNaN(this._prevY)&&this.container&&this.container.style&&this.dispatchEvent("none"===
934
+ this.container.style.display?"hidden":"updated",this._updatedEventParameters,this))};oa.prototype._updateToolTip=function(a,e,c){c="undefined"===typeof c?!0:c;this._updateOptions();this.container||this._initialize();this.enabled||this.hide();if(!this.chart.disableToolTip){if("undefined"===typeof a||"undefined"===typeof e){if(isNaN(this._prevX)||isNaN(this._prevY))return;a=this._prevX;e=this._prevY}else this._prevX=a,this._prevY=e;var b=null,d=null,f=[],h=0;if(this.shared&&this.enabled&&"none"!==this.chart.plotInfo.axisPlacement){var l=
935
+ [];if(this.chart.axisX)for(var s=0;s<this.chart.axisX.length;s++){for(var h="xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX[s].convertPixelToValue({y:e}):this.chart.axisX[s].convertPixelToValue({x:a}),k=null,b=0;b<this.chart.axisX[s].dataSeries.length;b++)(k=this.chart.axisX[s].dataSeries[b].getDataPointAtX(h,c,!0))&&0<=k.index&&(k.dataSeries=this.chart.axisX[s].dataSeries[b],null!==k.dataPoint.y&&k.dataSeries.visible&&l.push(k));k=null}if(this.chart.axisX2)for(s=0;s<this.chart.axisX2.length;s++){h=
936
+ "xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX2[s].convertPixelToValue({y:e}):this.chart.axisX2[s].convertPixelToValue({x:a});k=null;for(b=0;b<this.chart.axisX2[s].dataSeries.length;b++)(k=this.chart.axisX2[s].dataSeries[b].getDataPointAtX(h,c,!0))&&0<=k.index&&(k.dataSeries=this.chart.axisX2[s].dataSeries[b],null!==k.dataPoint.y&&k.dataSeries.visible&&l.push(k));k=null}if(0===l.length)return;l.sort(function(a,b){return a.dataSeries.axisX.logarithmic||b.dataSeries.axisX.logarithmic?
937
+ a.distance-b.distance:a.distance/a.dataSeries.axisX.range-b.distance/b.dataSeries.axisX.range});c=l[0];for(b=0;b<l.length;b++)l[b].dataPoint.x.valueOf()===c.dataPoint.x.valueOf()&&f.push(l[b]);l=null}else{if(b=this.chart.getDataPointAtXY(a,e,c))this.currentDataPointIndex=b.dataPointIndex,this.currentSeriesIndex=b.dataSeries.index;else if(u)if(b=bb(a,e,this.chart._eventManager.ghostCtx),0<b&&"undefined"!==typeof this.chart._eventManager.objectMap[b]){b=this.chart._eventManager.objectMap[b];if("legendItem"===
938
+ b.objectType)return;this.currentSeriesIndex=b.dataSeriesIndex;this.currentDataPointIndex=0<=b.dataPointIndex?b.dataPointIndex:-1}else this.currentDataPointIndex=-1;else this.currentDataPointIndex=-1;if(0<=this.currentSeriesIndex){d=this.chart.data[this.currentSeriesIndex];k={};if(0<=this.currentDataPointIndex)b=d.dataPoints[this.currentDataPointIndex],k.dataSeries=d,k.dataPoint=b,k.index=this.currentDataPointIndex,k.distance=Math.abs(b.x-h),"waterfall"===d.type&&(k.cumulativeSumYStartValue=d.dataPointEOs[this.currentDataPointIndex].cumulativeSumYStartValue,
939
+ k.cumulativeSum=d.dataPointEOs[this.currentDataPointIndex].cumulativeSum);else if(this.enabled&&d&&("line"===d.type||"stepLine"===d.type||"spline"===d.type||"area"===d.type||"stepArea"===d.type||"splineArea"===d.type||"stackedArea"===d.type||"stackedArea100"===d.type||"rangeArea"===d.type||"rangeSplineArea"===d.type||"candlestick"===d.type||"ohlc"===d.type||"boxAndWhisker"===d.type))h=d.axisX.convertPixelToValue({x:a}),k=d.getDataPointAtX(h,c,!0),m(k)||(k.dataSeries=d,this.currentDataPointIndex=k.index,
940
+ b=k.dataPoint);else{"toolTip"===this.chart.clearedOverlayedCanvas&&(this.chart.resetOverlayedCanvas(),this.chart.clearedOverlayedCanvas=null,this.chart.sessionVariables._dataHighlighted=!1,this.container&&(this.container.style.display="none"));return}if(!m(k)&&!m(k.dataPoint)&&!m(k.dataPoint.y))if(k.dataSeries.axisY)if(0<k.dataPoint.y.length){for(b=c=0;b<k.dataPoint.y.length;b++)k.dataPoint.y[b]<k.dataSeries.axisY.viewportMinimum?c--:k.dataPoint.y[b]>k.dataSeries.axisY.viewportMaximum&&c++;c<k.dataPoint.y.length&&
941
+ c>-k.dataPoint.y.length&&f.push(k)}else"column"===d.type||"bar"===d.type?0>k.dataPoint.y?0>k.dataSeries.axisY.viewportMinimum&&k.dataSeries.axisY.viewportMaximum>=k.dataPoint.y&&f.push(k):k.dataSeries.axisY.viewportMinimum<=k.dataPoint.y&&0<=k.dataSeries.axisY.viewportMaximum&&f.push(k):"bubble"===d.type?(c=this.chart._eventManager.objectMap[d.dataPointIds[k.index]].size/2,k.dataPoint.y>=k.dataSeries.axisY.viewportMinimum-c&&k.dataPoint.y<=k.dataSeries.axisY.viewportMaximum+c&&f.push(k)):"waterfall"===
942
+ d.type?(c=0,k.cumulativeSumYStartValue<k.dataSeries.axisY.viewportMinimum?c--:k.cumulativeSumYStartValue>k.dataSeries.axisY.viewportMaximum&&c++,k.cumulativeSum<k.dataSeries.axisY.viewportMinimum?c--:k.cumulativeSum>k.dataSeries.axisY.viewportMaximum&&c++,2>c&&-2<c&&f.push(k)):(0<=k.dataSeries.type.indexOf("100")||"stackedColumn"===d.type||"stackedBar"===d.type||"stackedArea"===d.type||k.dataPoint.y>=k.dataSeries.axisY.viewportMinimum&&k.dataPoint.y<=k.dataSeries.axisY.viewportMaximum)&&f.push(k);
943
+ else f.push(k)}}if(0<f.length){if(this._entries=f,this.highlightObjects(f),this.enabled){c="";c=this.getToolTipInnerHTML({entries:f});if(null!==c){this.contentDiv.innerHTML=c;if(this.isToolTipDefinedInData&&m(this.options.content)&&m(this.options.contentFormatter))for(h=this.contentDiv.getElementsByTagName("span"),b=0;b<h.length;b++)h[b]&&(h[b].style.color=h[b].getAttribute("data-color"));h=!1;"none"===this.container.style.display&&(h=!0,this.container.style.display="block");try{this.contentDiv.style.background=
944
+ this.backgroundColor?this.backgroundColor:u?"rgba(255,255,255,.9)":"rgb(255,255,255)",this.borderColor="waterfall"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:0<f[0].dataPoint.y?f[0].dataSeries.risingColor:f[0].dataSeries.fallingColor:"error"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=
945
+ this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[d.index%f[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[f[0].index%f[0].dataSeries._colorSet.length],
946
+ this.contentDiv.style.borderWidth=this.borderThickness||0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=this.cornerRadius||0===this.cornerRadius?this.cornerRadius+"px":"5px",this.container.style.borderRadius=this.contentDiv.style.borderRadius,this.contentDiv.style.fontSize=this.fontSize||0===this.fontSize?this.fontSize+"px":"14px",this.contentDiv.style.color=this.fontColor?this.fontColor:"#000000",this.contentDiv.style.fontFamily=this.fontFamily?this.fontFamily:
947
+ "Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:u?"italic":"normal"}catch(q){}"pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type||"funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type||"bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?a=a-10-this.container.clientWidth:
948
+ (a=f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x)-this.container.clientWidth<<0,a-=10);0>a&&(a=Math.max(0,a+this.container.clientWidth+20));a+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&(a=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));e=1!==f.length||this.shared||"line"!==f[0].dataSeries.type&&"stepLine"!==f[0].dataSeries.type&&"spline"!==f[0].dataSeries.type&&"area"!==f[0].dataSeries.type&&
949
+ "stepArea"!==f[0].dataSeries.type&&"splineArea"!==f[0].dataSeries.type?"bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x):e:f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y);e=-e+10;0<e+this.container.clientHeight+5&&(e-=e+this.container.clientHeight+5-0);this.fixMozTransitionDelay(a,e);!this.animationEnabled||h?this.disableAnimation():(this.enableAnimation(),
950
+ this.container.style.MozTransition=this.mozContainerTransition);this.positionLeft=a;this.positionBottom=e;this.container.style.left=a+"px";this.container.style.bottom=e+"px"}else this.hide(!1),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this);e=[];for(b=0;b<f.length;b++)e.push({xValue:f[b].dataPoint.x,dataPoint:f[b].dataPoint,dataSeries:f[b].dataSeries,dataPointIndex:f[b].index,dataSeriesIndex:f[b].dataSeries._index});this._updatedEventParameters={chart:this.chart,toolTip:this.options,
951
+ content:c,entries:e}}}else this.hide(),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this);this._dataSeriesIndex=this._xValue=null}};oa.prototype.highlightObjects=function(a){var e=this.chart.overlaidCanvasCtx;m(this.chart.clearedOverlayedCanvas)||"toolTip"===this.chart.clearedOverlayedCanvas?(this.chart.resetOverlayedCanvas(),e.clearRect(0,0,this.chart.width,this.chart.height),this.chart.clearedOverlayedCanvas="toolTip",this.chart.sessionVariables._dataHighlighted=!1):
952
+ this.chart.clearedOverlayedCanvas=null;e.save();var c=this.chart.plotArea,b=0;e.beginPath();e.rect(c.x1,c.y1,c.x2-c.x1,c.y2-c.y1);e.clip();for(c=0;c<a.length;c++){var d=a[c];if((d=this.chart._eventManager.objectMap[d.dataSeries.dataPointIds[d.index]])&&d.objectType&&"dataPoint"===d.objectType){var b=this.chart.data[d.dataSeriesIndex],f=b.dataPoints[d.dataPointIndex],h=d.dataPointIndex;!1===f.highlightEnabled||!0!==b.highlightEnabled&&!0!==f.highlightEnabled||("line"===b.type||"stepLine"===b.type||
953
+ "spline"===b.type||"scatter"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type?(f=b.getMarkerProperties(h,d.x1,d.y1,this.chart.overlaidCanvasCtx),f.size=Math.max(1.5*f.size<<0,10),f.borderColor=f.borderColor||"#FFFFFF",f.borderThickness=f.borderThickness||Math.ceil(0.1*f.size),Y.drawMarkers([f]),"undefined"!==typeof d.y2&&(f=b.getMarkerProperties(h,d.x1,d.y2,this.chart.overlaidCanvasCtx),
954
+ f.size=Math.max(1.5*f.size<<0,10),f.borderColor=f.borderColor||"#FFFFFF",f.borderThickness=f.borderThickness||Math.ceil(0.1*f.size),Y.drawMarkers([f])),this.chart.sessionVariables._dataHighlighted=!0):"bubble"===b.type?(f=b.getMarkerProperties(h,d.x1,d.y1,this.chart.overlaidCanvasCtx),f.size=d.size,f.color="white",f.borderColor="white",e.globalAlpha=0.3,Y.drawMarkers([f]),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"column"===b.type||"stackedColumn"===b.type||"stackedColumn100"===
955
+ b.type||"bar"===b.type||"rangeBar"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"rangeColumn"===b.type||"waterfall"===b.type?(aa(e,d.x1,d.y1,d.x2,d.y2,"white",0,null,!1,!1,!1,!1,0.3),this.chart.sessionVariables._dataHighlighted=!0):"pie"===b.type||"doughnut"===b.type?(sa(e,d.center,d.radius,"white",b.type,d.startAngle,d.endAngle,0.3,d.percentInnerRadius),this.chart.sessionVariables._dataHighlighted=!0):"funnel"===b.type||"pyramid"===b.type?(ta(e,d.funnelSection,0.3,"white"),this.chart.sessionVariables._dataHighlighted=
956
+ !0):"candlestick"===b.type?(e.globalAlpha=1,e.strokeStyle=d.color,e.lineWidth=2*d.borderThickness,b=0===e.lineWidth%2?0:0.5,e.beginPath(),e.moveTo(d.x3-b,Math.min(d.y2,d.y3)),e.lineTo(d.x3-b,Math.min(d.y1,d.y4)),e.stroke(),e.beginPath(),e.moveTo(d.x3-b,Math.max(d.y1,d.y4)),e.lineTo(d.x3-b,Math.max(d.y2,d.y3)),e.stroke(),aa(e,d.x1,Math.min(d.y1,d.y4),d.x2,Math.max(d.y1,d.y4),"transparent",2*d.borderThickness,d.color,!1,!1,!1,!1),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"ohlc"===
957
+ b.type?(e.globalAlpha=1,e.strokeStyle=d.color,e.lineWidth=2*d.borderThickness,b=0===e.lineWidth%2?0:0.5,e.beginPath(),e.moveTo(d.x3-b,d.y2),e.lineTo(d.x3-b,d.y3),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y1),e.lineTo(d.x1,d.y1),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y4),e.lineTo(d.x2,d.y4),e.stroke(),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"boxAndWhisker"===b.type?(e.save(),e.globalAlpha=1,e.strokeStyle=d.stemColor,e.lineWidth=2*d.stemThickness,0<d.stemThickness&&(e.beginPath(),
958
+ e.moveTo(d.x3,d.y2+d.borderThickness/2),e.lineTo(d.x3,d.y1+d.whiskerThickness/2),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y4-d.whiskerThickness/2),e.lineTo(d.x3,d.y3-d.borderThickness/2),e.stroke()),e.beginPath(),aa(e,d.x1,Math.max(d.y2,d.y3),d.x2,Math.min(d.y2,d.y3),"transparent",2*d.borderThickness,d.color,!1,!1,!1,!1),e.globalAlpha=1,e.strokeStyle=d.whiskerColor,e.lineWidth=2*d.whiskerThickness,0<d.whiskerThickness&&(e.beginPath(),e.moveTo(Math.floor(d.x3-d.whiskerLength/2),d.y4),e.lineTo(Math.ceil(d.x3+
959
+ d.whiskerLength/2),d.y4),e.stroke(),e.beginPath(),e.moveTo(Math.floor(d.x3-d.whiskerLength/2),d.y1),e.lineTo(Math.ceil(d.x3+d.whiskerLength/2),d.y1),e.stroke()),e.globalAlpha=1,e.strokeStyle=d.lineColor,e.lineWidth=2*d.lineThickness,0<d.lineThickness&&(e.beginPath(),e.moveTo(d.x1,d.y5),e.lineTo(d.x2,d.y5),e.stroke()),e.restore(),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"error"===b.type&&(B(e,d.x1,d.y1,d.x2,d.y2,"white",d.whiskerProperties,d.stemProperties,d.isXYSwapped,0.3),
960
+ this.chart.sessionVariables._dataHighlighted=!0))}}e.restore();e.globalAlpha=1;e.beginPath()};oa.prototype.getToolTipInnerHTML=function(a){var e=a.entries,c=null,b=null,d=null,f=0;a="";this.isToolTipDefinedInData=!0;for(var h=0;h<e.length;h++)if(e[h].dataSeries.toolTipContent||e[h].dataPoint.toolTipContent){this.isToolTipDefinedInData=!1;break}if(this.isToolTipDefinedInData&&(this.content&&"function"===typeof this.content||this.contentFormatter))e={chart:this.chart,toolTip:this.options,entries:e},
961
+ c=this.contentFormatter?this.contentFormatter(e):this.content(e);else if(this.shared&&"none"!==this.chart.plotInfo.axisPlacement){for(var l=null,m="",h=0;h<e.length;h++){b=e[h].dataSeries;d=e[h].dataPoint;f=e[h].index;a="";if(0===h&&this.isToolTipDefinedInData&&!this.content){this.chart.axisX&&0<this.chart.axisX.length?m+="undefined"!==typeof this.chart.axisX[0].labels[d.x]?this.chart.axisX[0].labels[d.x]:"{x}":this.chart.axisX2&&0<this.chart.axisX2.length&&(m+="undefined"!==typeof this.chart.axisX2[0].labels[d.x]?
962
+ this.chart.axisX2[0].labels[d.x]:"{x}");m+="</br>";if(!b.visible)continue;m=this.chart.replaceKeywordsWithValue(m,d,b,f)}null===d.toolTipContent||"undefined"===typeof d.toolTipContent&&null===b.options.toolTipContent||("line"===b.type||"stepLine"===b.type||"spline"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"column"===b.type||"bar"===b.type||"scatter"===b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"stackedArea"===
963
+ b.type||"stackedArea100"===b.type||"waterfall"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}",l=b.axisXIndex):"bubble"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=
964
+ b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}"):"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"error"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?
965
+ b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y[0]},&nbsp;{y[1]}"):"candlestick"===b.type||"ohlc"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:
966
+ b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span><br/>Open: &nbsp;&nbsp;{y[0]}<br/>High: &nbsp;&nbsp;&nbsp;{y[1]}<br/>Low:&nbsp;&nbsp;&nbsp;{y[2]}<br/>Close: &nbsp;&nbsp;{y[3]}"):"boxAndWhisker"===b.type&&(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?
967
+ b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span><br/>Minimum: &nbsp;{y[0]}<br/>Q1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[1]}<br/>Q2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[4]}<br/>Q3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Maximum: &nbsp;{y[3]}"),null===c&&(c=""),b.visible&&(!0===
968
+ this.reversed?(c=this.chart.replaceKeywordsWithValue(a,d,b,f)+c,h<e.length-1&&(c="</br>"+c)):(c+=this.chart.replaceKeywordsWithValue(a,d,b,f),h<e.length-1&&(c+="</br>"))))}null!==c&&(c=m+c)}else{b=e[0].dataSeries;d=e[0].dataPoint;f=e[0].index;if(null===d.toolTipContent||"undefined"===typeof d.toolTipContent&&null===b.options.toolTipContent)return null;"line"===b.type||"stepLine"===b.type||"spline"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"column"===b.type||"bar"===b.type||
969
+ "scatter"===b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"waterfall"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+":</span>&nbsp;&nbsp;{y}":"bubble"===b.type?a=d.toolTipContent?d.toolTipContent:
970
+ b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+":</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}":"pie"===b.type||"doughnut"===b.type||"funnel"===b.type||"pyramid"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+
971
+ "\"'>"+(d.name?"{name}:</span>&nbsp;&nbsp;":d.label?"{label}:</span>&nbsp;&nbsp;":"</span>")+"{y}":"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"error"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+" :</span>&nbsp;&nbsp;{y[0]}, &nbsp;{y[1]}":"candlestick"===b.type||
972
+ "ohlc"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+"</span><br/>Open: &nbsp;&nbsp;{y[0]}<br/>High: &nbsp;&nbsp;&nbsp;{y[1]}<br/>Low: &nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Close: &nbsp;&nbsp;{y[3]}":"boxAndWhisker"===b.type&&(a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==
973
+ typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+"</span><br/>Minimum: &nbsp;{y[0]}<br/>Q1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[1]}<br/>Q2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[4]}<br/>Q3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Maximum: &nbsp;{y[3]}");null===c&&(c="");c+=this.chart.replaceKeywordsWithValue(a,
974
+ d,b,f)}this.content=a;return c};oa.prototype.enableAnimation=function(){if(!this.container.style.WebkitTransition){var a=this.getContainerTransition(this.containerTransitionDuration);this.container.style.WebkitTransition=a;this.container.style.MsTransition=a;this.container.style.transition=a;this.container.style.MozTransition=this.mozContainerTransition}};oa.prototype.disableAnimation=function(){this.container.style.WebkitTransition&&(this.container.style.WebkitTransition="",this.container.style.MozTransition=
975
+ "",this.container.style.MsTransition="",this.container.style.transition="")};oa.prototype.hide=function(a){if(this.container){var e="undefined"===typeof a||-1!==this.chart.clearedOverlayedCanvas.indexOf("axis");this.chart.sessionVariables._dataHighlighted=!1;this.container.style.display="none";this.currentSeriesIndex=-1;this._entries=this._dataSeriesIndex=this._xValue=null;this._prevY=this._prevX=NaN;this._updatedEventParameters=null;if("undefined"===typeof a||a)this.chart.resetOverlayedCanvas(),
976
+ e&&this.chart.renderCrosshairs(null,!1)}};oa.prototype.show=function(a,e,c){this._updateToolTip(a,e,"undefined"===typeof c?!1:c)};oa.prototype.showAtIndex=function(a,e){};oa.prototype.showAtX=function(a,e){if(!this.enabled)return!1;!m(this.chart.clearedOverlayedCanvas)&&this.chart.clearedOverlayedCanvas.indexOf("axis")&&(this.chart.clearedOverlayedCanvas=null);this._updateOptions();var c,b,d,f=[];d=!1;e=!m(e)&&0<=e&&e<this.chart.data.length?e:0;if(this.shared)for(var h=0;h<this.chart.data.length;h++)c=
977
+ this.chart.data[h],(b=c.getDataPointAtX(a,!1))&&(b.dataPoint&&!m(b.dataPoint.y)&&c.visible)&&(b.dataSeries=c,this.chart.data[e].axisX.convertValueToPixel(a)===c.axisX.convertValueToPixel(b.dataPoint.x)&&f.push(b));else this.chart.data&&0<this.chart.data.length&&(c=this.chart.data[e],(b=c.getDataPointAtX(a,!1))&&(b.dataPoint&&!m(b.dataPoint.y)&&c.visible)&&(b.dataSeries=c,f.push(b)));if(0<f.length){for(h=0;h<f.length;h++)if(b=f[h],(this.shared||0<=b.dataSeries.type.indexOf("100"))&&b.dataSeries.axisX&&
978
+ b.dataPoint.x>=b.dataSeries.axisX.viewportMinimum&&b.dataPoint.x<=b.dataSeries.axisX.viewportMaximum){d=!1;break}else if(b.dataSeries.axisX&&b.dataSeries.axisY&&(b.dataPoint.x<b.dataSeries.axisX.viewportMinimum||b.dataPoint.x>b.dataSeries.axisX.viewportMaximum||b.dataPoint.y<b.dataSeries.axisY.viewportMinimum||b.dataPoint.y>b.dataSeries.axisY.viewportMaximum))d=!0;else{d=!1;break}if(d)return this.hide(),!1;this.highlightObjects(f);"toolTip"===this.chart.clearedOverlayedCanvas&&this.chart.renderCrosshairs(null,
979
+ !1);this._entries=f;h="";h=this.getToolTipInnerHTML({entries:f});if(null!==h){this.contentDiv.innerHTML=h;if(this.isToolTipDefinedInData&&m(this.options.content)&&m(this.options.contentFormatter))for(b=this.contentDiv.getElementsByTagName("span"),h=0;h<b.length;h++)b[h]&&(b[h].style.color=b[h].getAttribute("data-color"));h=!1;"none"===this.container.style.display&&(h=!0,this.container.style.display="block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:u?"rgba(255,255,255,.9)":
944
980
  "rgb(255,255,255)",this.borderColor="waterfall"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:0<f[0].dataPoint.y?f[0].dataSeries.risingColor:f[0].dataSeries.fallingColor:"error"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?
945
- this.options.borderColor:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[d.index%f[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[f[0].index%f[0].dataSeries._colorSet.length],this.contentDiv.style.borderWidth=this.borderThickness||
981
+ this.options.borderColor:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[c.index%f[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[f[0].index%f[0].dataSeries._colorSet.length],this.contentDiv.style.borderWidth=this.borderThickness||
946
982
  0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=this.cornerRadius||0===this.cornerRadius?this.cornerRadius+"px":"5px",this.container.style.borderRadius=this.contentDiv.style.borderRadius,this.contentDiv.style.fontSize=this.fontSize||0===this.fontSize?this.fontSize+"px":"14px",this.contentDiv.style.color=this.fontColor?this.fontColor:"#000000",this.contentDiv.style.fontFamily=this.fontFamily?this.fontFamily:"Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=
947
- this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:u?"italic":"normal"}catch(q){}"pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type||"funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type||"bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?a=a-10-this.container.clientWidth:(a=f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x)-
948
- this.container.clientWidth<<0,a-=10);0>a&&(a=Math.max(0,a+this.container.clientWidth+20));a+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&(a=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));e=1!==f.length||this.shared||"line"!==f[0].dataSeries.type&&"stepLine"!==f[0].dataSeries.type&&"spline"!==f[0].dataSeries.type&&"area"!==f[0].dataSeries.type&&"stepArea"!==f[0].dataSeries.type&&"splineArea"!==f[0].dataSeries.type?
949
- "bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x):e:f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y);e=-e+10;0<e+this.container.clientHeight+5&&(e-=e+this.container.clientHeight+5-0);this.fixMozTransitionDelay(a,e);!this.animationEnabled||h?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);
950
- this.positionLeft=a;this.positionBottom=e;this.container.style.left=a+"px";this.container.style.bottom=e+"px"}else this.hide(!1),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this);e=[];for(b=0;b<f.length;b++)e.push({xValue:f[b].dataPoint.x,dataPoint:f[b].dataPoint,dataSeries:f[b].dataSeries,dataPointIndex:f[b].index,dataSeriesIndex:f[b].dataSeries._index});this._updatedEventParameters={chart:this.chart,toolTip:this.options,content:c,entries:e}}}else this.hide(),this.enabled&&
951
- this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this);this._dataSeriesIndex=this._xValue=null}};oa.prototype.highlightObjects=function(a){var e=this.chart.overlaidCanvasCtx;m(this.chart.clearedOverlayedCanvas)||"toolTip"===this.chart.clearedOverlayedCanvas?(this.chart.resetOverlayedCanvas(),e.clearRect(0,0,this.chart.width,this.chart.height),this.chart.clearedOverlayedCanvas="toolTip",this.chart.sessionVariables._dataHighlighted=!1):this.chart.clearedOverlayedCanvas=null;e.save();var c=
952
- this.chart.plotArea,b=0;e.beginPath();e.rect(c.x1,c.y1,c.x2-c.x1,c.y2-c.y1);e.clip();for(c=0;c<a.length;c++){var d=a[c];if((d=this.chart._eventManager.objectMap[d.dataSeries.dataPointIds[d.index]])&&d.objectType&&"dataPoint"===d.objectType){var b=this.chart.data[d.dataSeriesIndex],f=b.dataPoints[d.dataPointIndex],h=d.dataPointIndex;!1===f.highlightEnabled||!0!==b.highlightEnabled&&!0!==f.highlightEnabled||("line"===b.type||"stepLine"===b.type||"spline"===b.type||"scatter"===b.type||"area"===b.type||
953
- "stepArea"===b.type||"splineArea"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type?(f=b.getMarkerProperties(h,d.x1,d.y1,this.chart.overlaidCanvasCtx),f.size=Math.max(1.5*f.size<<0,10),f.borderColor=f.borderColor||"#FFFFFF",f.borderThickness=f.borderThickness||Math.ceil(0.1*f.size),Y.drawMarkers([f]),"undefined"!==typeof d.y2&&(f=b.getMarkerProperties(h,d.x1,d.y2,this.chart.overlaidCanvasCtx),f.size=Math.max(1.5*f.size<<0,10),f.borderColor=
954
- f.borderColor||"#FFFFFF",f.borderThickness=f.borderThickness||Math.ceil(0.1*f.size),Y.drawMarkers([f])),this.chart.sessionVariables._dataHighlighted=!0):"bubble"===b.type?(f=b.getMarkerProperties(h,d.x1,d.y1,this.chart.overlaidCanvasCtx),f.size=d.size,f.color="white",f.borderColor="white",e.globalAlpha=0.3,Y.drawMarkers([f]),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"column"===b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"bar"===b.type||"rangeBar"===b.type||
955
- "stackedBar"===b.type||"stackedBar100"===b.type||"rangeColumn"===b.type||"waterfall"===b.type?(aa(e,d.x1,d.y1,d.x2,d.y2,"white",0,null,!1,!1,!1,!1,0.3),this.chart.sessionVariables._dataHighlighted=!0):"pie"===b.type||"doughnut"===b.type?(sa(e,d.center,d.radius,"white",b.type,d.startAngle,d.endAngle,0.3,d.percentInnerRadius),this.chart.sessionVariables._dataHighlighted=!0):"funnel"===b.type||"pyramid"===b.type?(ta(e,d.funnelSection,0.3,"white"),this.chart.sessionVariables._dataHighlighted=!0):"candlestick"===
956
- b.type?(e.globalAlpha=1,e.strokeStyle=d.color,e.lineWidth=2*d.borderThickness,b=0===e.lineWidth%2?0:0.5,e.beginPath(),e.moveTo(d.x3-b,Math.min(d.y2,d.y3)),e.lineTo(d.x3-b,Math.min(d.y1,d.y4)),e.stroke(),e.beginPath(),e.moveTo(d.x3-b,Math.max(d.y1,d.y4)),e.lineTo(d.x3-b,Math.max(d.y2,d.y3)),e.stroke(),aa(e,d.x1,Math.min(d.y1,d.y4),d.x2,Math.max(d.y1,d.y4),"transparent",2*d.borderThickness,d.color,!1,!1,!1,!1),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"ohlc"===b.type?(e.globalAlpha=
957
- 1,e.strokeStyle=d.color,e.lineWidth=2*d.borderThickness,b=0===e.lineWidth%2?0:0.5,e.beginPath(),e.moveTo(d.x3-b,d.y2),e.lineTo(d.x3-b,d.y3),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y1),e.lineTo(d.x1,d.y1),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y4),e.lineTo(d.x2,d.y4),e.stroke(),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"boxAndWhisker"===b.type?(e.save(),e.globalAlpha=1,e.strokeStyle=d.stemColor,e.lineWidth=2*d.stemThickness,0<d.stemThickness&&(e.beginPath(),e.moveTo(d.x3,
958
- d.y2+d.borderThickness/2),e.lineTo(d.x3,d.y1+d.whiskerThickness/2),e.stroke(),e.beginPath(),e.moveTo(d.x3,d.y4-d.whiskerThickness/2),e.lineTo(d.x3,d.y3-d.borderThickness/2),e.stroke()),e.beginPath(),aa(e,d.x1,Math.max(d.y2,d.y3),d.x2,Math.min(d.y2,d.y3),"transparent",2*d.borderThickness,d.color,!1,!1,!1,!1),e.globalAlpha=1,e.strokeStyle=d.whiskerColor,e.lineWidth=2*d.whiskerThickness,0<d.whiskerThickness&&(e.beginPath(),e.moveTo(Math.floor(d.x3-d.whiskerLength/2),d.y4),e.lineTo(Math.ceil(d.x3+d.whiskerLength/
959
- 2),d.y4),e.stroke(),e.beginPath(),e.moveTo(Math.floor(d.x3-d.whiskerLength/2),d.y1),e.lineTo(Math.ceil(d.x3+d.whiskerLength/2),d.y1),e.stroke()),e.globalAlpha=1,e.strokeStyle=d.lineColor,e.lineWidth=2*d.lineThickness,0<d.lineThickness&&(e.beginPath(),e.moveTo(d.x1,d.y5),e.lineTo(d.x2,d.y5),e.stroke()),e.restore(),e.globalAlpha=1,this.chart.sessionVariables._dataHighlighted=!0):"error"===b.type&&(B(e,d.x1,d.y1,d.x2,d.y2,"white",d.whiskerProperties,d.stemProperties,d.isXYSwapped,0.3),this.chart.sessionVariables._dataHighlighted=
960
- !0))}}e.restore();e.globalAlpha=1;e.beginPath()};oa.prototype.getToolTipInnerHTML=function(a){var e=a.entries,c=null,b=null,d=null,f=0;a="";this.isToolTipDefinedInData=!0;for(var h=0;h<e.length;h++)if(e[h].dataSeries.toolTipContent||e[h].dataPoint.toolTipContent){this.isToolTipDefinedInData=!1;break}if(this.isToolTipDefinedInData&&(this.content&&"function"===typeof this.content||this.contentFormatter))e={chart:this.chart,toolTip:this.options,entries:e},c=this.contentFormatter?this.contentFormatter(e):
961
- this.content(e);else if(this.shared&&"none"!==this.chart.plotInfo.axisPlacement){for(var l=null,m="",h=0;h<e.length;h++){b=e[h].dataSeries;d=e[h].dataPoint;f=e[h].index;a="";if(0===h&&this.isToolTipDefinedInData&&!this.content){this.chart.axisX&&0<this.chart.axisX.length?m+="undefined"!==typeof this.chart.axisX[0].labels[d.x]?this.chart.axisX[0].labels[d.x]:"{x}":this.chart.axisX2&&0<this.chart.axisX2.length&&(m+="undefined"!==typeof this.chart.axisX2[0].labels[d.x]?this.chart.axisX2[0].labels[d.x]:
962
- "{x}");m+="</br>";if(!b.visible)continue;m=this.chart.replaceKeywordsWithValue(m,d,b,f)}null===d.toolTipContent||"undefined"===typeof d.toolTipContent&&null===b.options.toolTipContent||("line"===b.type||"stepLine"===b.type||"spline"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"column"===b.type||"bar"===b.type||"scatter"===b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"stackedArea"===b.type||"stackedArea100"===
963
- b.type||"waterfall"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}",l=b.axisXIndex):"bubble"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?
964
- b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}"):"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"error"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+
965
- "<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y[0]},&nbsp;{y[1]}"):"candlestick"===b.type||"ohlc"===b.type?(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?
966
- b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span><br/>Open: &nbsp;&nbsp;{y[0]}<br/>High: &nbsp;&nbsp;&nbsp;{y[1]}<br/>Low:&nbsp;&nbsp;&nbsp;{y[2]}<br/>Close: &nbsp;&nbsp;{y[3]}"):"boxAndWhisker"===b.type&&(this.chart.axisX&&1<this.chart.axisX.length&&(a+=l!=b.axisXIndex?b.axisX.title?b.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),a+=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:
967
- this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span><br/>Minimum: &nbsp;{y[0]}<br/>Q1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[1]}<br/>Q2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[4]}<br/>Q3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Maximum: &nbsp;{y[3]}"),null===c&&(c=""),b.visible&&(!0===this.reversed?
968
- (c=this.chart.replaceKeywordsWithValue(a,d,b,f)+c,h<e.length-1&&(c="</br>"+c)):(c+=this.chart.replaceKeywordsWithValue(a,d,b,f),h<e.length-1&&(c+="</br>"))))}null!==c&&(c=m+c)}else{b=e[0].dataSeries;d=e[0].dataPoint;f=e[0].index;if(null===d.toolTipContent||"undefined"===typeof d.toolTipContent&&null===b.options.toolTipContent)return null;"line"===b.type||"stepLine"===b.type||"spline"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"column"===b.type||"bar"===b.type||"scatter"===
969
- b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"waterfall"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+":</span>&nbsp;&nbsp;{y}":"bubble"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?
970
- b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+":</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}":"pie"===b.type||"doughnut"===b.type||"funnel"===b.type||"pyramid"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.name?"{name}:</span>&nbsp;&nbsp;":
971
- d.label?"{label}:</span>&nbsp;&nbsp;":"</span>")+"{y}":"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"error"===b.type?a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+" :</span>&nbsp;&nbsp;{y[0]}, &nbsp;{y[1]}":"candlestick"===b.type||"ohlc"===b.type?a=d.toolTipContent?d.toolTipContent:
972
- b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+"</span><br/>Open: &nbsp;&nbsp;{y[0]}<br/>High: &nbsp;&nbsp;&nbsp;{y[1]}<br/>Low: &nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Close: &nbsp;&nbsp;{y[3]}":"boxAndWhisker"===b.type&&(a=d.toolTipContent?d.toolTipContent:b.toolTipContent?b.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+
973
- (this.options.fontColor?"":"'{color}'")+"\"'>"+(d.label?"{label}":"{x}")+"</span><br/>Minimum: &nbsp;{y[0]}<br/>Q1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[1]}<br/>Q2:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[4]}<br/>Q3:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{y[2]}<br/>Maximum: &nbsp;{y[3]}");null===c&&(c="");c+=this.chart.replaceKeywordsWithValue(a,d,b,f)}this.content=a;return c};oa.prototype.enableAnimation=
974
- function(){if(!this.container.style.WebkitTransition){var a=this.getContainerTransition(this.containerTransitionDuration);this.container.style.WebkitTransition=a;this.container.style.MsTransition=a;this.container.style.transition=a;this.container.style.MozTransition=this.mozContainerTransition}};oa.prototype.disableAnimation=function(){this.container.style.WebkitTransition&&(this.container.style.WebkitTransition="",this.container.style.MozTransition="",this.container.style.MsTransition="",this.container.style.transition=
975
- "")};oa.prototype.hide=function(a){if(this.container){var e="undefined"===typeof a||-1!==this.chart.clearedOverlayedCanvas.indexOf("axis");this.chart.sessionVariables._dataHighlighted=!1;this.container.style.display="none";this.currentSeriesIndex=-1;this._entries=this._dataSeriesIndex=this._xValue=null;this._prevY=this._prevX=NaN;this._updatedEventParameters=null;if("undefined"===typeof a||a)this.chart.resetOverlayedCanvas(),e&&this.chart.renderCrosshairs(null,!1)}};oa.prototype.show=function(a,e,
976
- c){this._updateToolTip(a,e,"undefined"===typeof c?!1:c)};oa.prototype.showAtIndex=function(a,e){};oa.prototype.showAtX=function(a,e){if(!this.enabled)return!1;!m(this.chart.clearedOverlayedCanvas)&&this.chart.clearedOverlayedCanvas.indexOf("axis")&&(this.chart.clearedOverlayedCanvas=null);this._updateOptions();var c,b,d,f=[];d=!1;e=!m(e)&&0<=e&&e<this.chart.data.length?e:0;if(this.shared)for(var h=0;h<this.chart.data.length;h++)c=this.chart.data[h],(b=c.getDataPointAtX(a,!1))&&(b.dataPoint&&!m(b.dataPoint.y)&&
977
- c.visible)&&(b.dataSeries=c,this.chart.data[e].axisX.convertValueToPixel(a)===c.axisX.convertValueToPixel(b.dataPoint.x)&&f.push(b));else this.chart.data&&0<this.chart.data.length&&(c=this.chart.data[e],(b=c.getDataPointAtX(a,!1))&&(b.dataPoint&&!m(b.dataPoint.y)&&c.visible)&&(b.dataSeries=c,f.push(b)));if(0<f.length){for(h=0;h<f.length;h++)if(b=f[h],(this.shared||0<=b.dataSeries.type.indexOf("100"))&&b.dataSeries.axisX&&b.dataPoint.x>=b.dataSeries.axisX.viewportMinimum&&b.dataPoint.x<=b.dataSeries.axisX.viewportMaximum){d=
978
- !1;break}else if(b.dataSeries.axisX&&b.dataSeries.axisY&&(b.dataPoint.x<b.dataSeries.axisX.viewportMinimum||b.dataPoint.x>b.dataSeries.axisX.viewportMaximum||b.dataPoint.y<b.dataSeries.axisY.viewportMinimum||b.dataPoint.y>b.dataSeries.axisY.viewportMaximum))d=!0;else{d=!1;break}if(d)return this.hide(),!1;this.highlightObjects(f);"toolTip"===this.chart.clearedOverlayedCanvas&&this.chart.renderCrosshairs(null,!1);this._entries=f;h="";h=this.getToolTipInnerHTML({entries:f});if(null!==h){this.contentDiv.innerHTML=
979
- h;if(this.isToolTipDefinedInData&&m(this.options.content)&&m(this.options.contentFormatter))for(b=this.contentDiv.getElementsByTagName("span"),h=0;h<b.length;h++)b[h]&&(b[h].style.color=b[h].getAttribute("data-color"));h=!1;"none"===this.container.style.display&&(h=!0,this.container.style.display="block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:u?"rgba(255,255,255,.9)":"rgb(255,255,255)",this.borderColor="waterfall"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=
980
- this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:0<f[0].dataPoint.y?f[0].dataSeries.risingColor:f[0].dataSeries.fallingColor:"error"===f[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[c.index%
981
- f[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:f[0].dataPoint.color?f[0].dataPoint.color:f[0].dataSeries.color?f[0].dataSeries.color:f[0].dataSeries._colorSet[f[0].index%f[0].dataSeries._colorSet.length],this.contentDiv.style.borderWidth=this.borderThickness||0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=this.cornerRadius||
982
- 0===this.cornerRadius?this.cornerRadius+"px":"5px",this.container.style.borderRadius=this.contentDiv.style.borderRadius,this.contentDiv.style.fontSize=this.fontSize||0===this.fontSize?this.fontSize+"px":"14px",this.contentDiv.style.color=this.fontColor?this.fontColor:"#000000",this.contentDiv.style.fontFamily=this.fontFamily?this.fontFamily:"Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:
983
- u?"italic":"normal"}catch(l){}"pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type?c=f[0].dataSeries.dataPointEOs[f[0].index].center.x+f[0].dataSeries.radius*Math.cos(f[0].dataSeries.dataPointEOs[f[0].index].midAngle)+-("left"===f[0].dataSeries.dataPointEOs[f[0].index].hemisphere?0:this.container.clientWidth):"funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type?(b=f[0].dataSeries.dataPointEOs[f[0].index].sectionsofFunnel,c=(b.x1+b.x2-this.container.clientWidth)/2):(c="bar"===
984
- f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y.length?f[0].dataPoint.y[f[0].dataPoint.y.length-1]:f[0].dataPoint.y)-this.container.clientWidth<<0:f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x)-this.container.clientWidth<<0,c-=10);0>c&&(c+=this.container.clientWidth+20);c+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&
985
- (c=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));1!==f.length||this.shared||"line"!==f[0].dataSeries.type&&"stepLine"!==f[0].dataSeries.type&&"spline"!==f[0].dataSeries.type&&"area"!==f[0].dataSeries.type&&"stepArea"!==f[0].dataSeries.type&&"splineArea"!==f[0].dataSeries.type?"pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type?(b=f[0].dataSeries.dataPointEOs[f[0].index].center.y+f[0].dataSeries.radius*Math.sin(f[0].dataSeries.dataPointEOs[f[0].index].midAngle),
986
- b<f[0].dataSeries.dataPointEOs[f[0].index].center.y&&(b+=this.container.clientHeight)):"funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type?(b=f[0].dataSeries.dataPointEOs[f[0].dataSeries.reversed?f[0].dataSeries.dataPointEOs.length-1-f[0].index:f[0].index].sectionsofFunnel,b="undefined"!==typeof b.x5?(b.y2+b.y4)/2:(b.y2+b.y3)/2+this.container.clientHeight/2):b="bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?
987
- f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x):f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y.length?f[0].dataPoint.y[f[0].dataPoint.y.length-1]:f[0].dataPoint.y):b=f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y);b=-b+10;0<b+this.container.clientHeight+5&&(b-=b+this.container.clientHeight+5-0);this.fixMozTransitionDelay(c,b);!this.animationEnabled||h?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);
988
- this.container.style.left=c+"px";this.container.style.bottom=b+"px"}else return this.hide(!1),!1}else return this.hide(),!1;this._xValue=a;this._dataSeriesIndex=e;this._prevY=this._prevX=NaN;return!0};oa.prototype.fixMozTransitionDelay=function(a,e){if(20<this.chart._eventManager.lastObjectId)this.mozContainerTransition=this.getContainerTransition(0);else{var c=parseFloat(this.container.style.left),c=isNaN(c)?0:c,b=parseFloat(this.container.style.bottom),b=isNaN(b)?0:b;10<Math.sqrt(Math.pow(c-a,2)+
989
- Math.pow(b-e,2))?this.mozContainerTransition=this.getContainerTransition(0.1):this.mozContainerTransition=this.getContainerTransition(0)}};oa.prototype.getContainerTransition=function(a){return"left "+a+"s ease-out 0s, bottom "+a+"s ease-out 0s"};ja.prototype.reset=function(){this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=[];this.previousDataPointEventObject=null;this.eventObjects=[];u&&(this.ghostCtx.clearRect(0,0,this.chart.width,this.chart.height),this.ghostCtx.beginPath())};
990
- ja.prototype.getNewObjectTrackingId=function(){return++this.lastObjectId};ja.prototype.mouseEventHandler=function(a){if("mousemove"===a.type||"click"===a.type){var e=[],c=Ra(a),b=null;if((b=this.chart.getObjectAtXY(c.x,c.y,!1))&&"undefined"!==typeof this.objectMap[b])if(b=this.objectMap[b],"dataPoint"===b.objectType){var d=this.chart.data[b.dataSeriesIndex],f=d.dataPoints[b.dataPointIndex],h=b.dataPointIndex;b.eventParameter={x:c.x,y:c.y,dataPoint:f,dataSeries:d.options,dataPointIndex:h,dataSeriesIndex:d.index,
991
- chart:this.chart};b.eventContext={context:f,userContext:f,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"};e.push(b);b=this.objectMap[d.id];b.eventParameter={x:c.x,y:c.y,dataPoint:f,dataSeries:d.options,dataPointIndex:h,dataSeriesIndex:d.index,chart:this.chart};b.eventContext={context:d,userContext:d.options,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"};e.push(this.objectMap[d.id])}else"legendItem"===b.objectType&&(d=this.chart.data[b.dataSeriesIndex],
992
- f=null!==b.dataPointIndex?d.dataPoints[b.dataPointIndex]:null,b.eventParameter={x:c.x,y:c.y,dataSeries:d.options,dataPoint:f,dataPointIndex:b.dataPointIndex,dataSeriesIndex:b.dataSeriesIndex,chart:this.chart},b.eventContext={context:this.chart.legend,userContext:this.chart.legend.options,mouseover:"itemmouseover",mousemove:"itemmousemove",mouseout:"itemmouseout",click:"itemclick"},e.push(b));d=[];for(c=0;c<this.mouseoveredObjectMaps.length;c++){f=!0;for(b=0;b<e.length;b++)if(e[b].id===this.mouseoveredObjectMaps[c].id){f=
993
- !1;break}f?this.fireEvent(this.mouseoveredObjectMaps[c],"mouseout",a):d.push(this.mouseoveredObjectMaps[c])}this.mouseoveredObjectMaps=d;for(c=0;c<e.length;c++){d=!1;for(b=0;b<this.mouseoveredObjectMaps.length;b++)if(e[c].id===this.mouseoveredObjectMaps[b].id){d=!0;break}d||(this.fireEvent(e[c],"mouseover",a),this.mouseoveredObjectMaps.push(e[c]));"click"===a.type?this.fireEvent(e[c],"click",a):"mousemove"===a.type&&this.fireEvent(e[c],"mousemove",a)}}};ja.prototype.fireEvent=function(a,e,c){if(a&&
994
- e){var b=a.eventParameter,d=a.eventContext,f=a.eventContext.userContext;f&&(d&&f[d[e]])&&f[d[e]].call(f,b);"mouseout"!==e?f.cursor&&f.cursor!==c.target.style.cursor&&(c.target.style.cursor=f.cursor):(c.target.style.cursor=this.chart.panEnabled?"itemmouseout"!==d.mouseout||f.dockInsidePlotArea?"move":this.chart._defaultCursor:this.chart._defaultCursor,delete a.eventParameter,delete a.eventContext);"click"===e&&("dataPoint"===a.objectType&&this.chart.pieDoughnutClickHandler)&&this.chart.pieDoughnutClickHandler.call(this.chart.data[a.dataSeriesIndex],
995
- b);"click"===e&&("dataPoint"===a.objectType&&this.chart.funnelPyramidClickHandler)&&this.chart.funnelPyramidClickHandler.call(this.chart.data[a.dataSeriesIndex],b)}};na.prototype.animate=function(a,e,c,b,d){var f=this;this.chart.isAnimating=!0;d=d||M.easing.linear;c&&this.animations.push({startTime:(new Date).getTime()+(a?a:0),duration:e,animationCallback:c,onComplete:b});for(a=[];0<this.animations.length;)if(e=this.animations.shift(),c=(new Date).getTime(),b=0,e.startTime<=c&&(b=d(Math.min(c-e.startTime,
996
- e.duration),0,1,e.duration),b=Math.min(b,1),isNaN(b)||!isFinite(b))&&(b=1),1>b&&a.push(e),e.animationCallback(b),1<=b&&e.onComplete)e.onComplete();this.animations=a;0<this.animations.length?this.animationRequestId=this.chart.requestAnimFrame.call(window,function(){f.animate.call(f)}):this.chart.isAnimating=!1};na.prototype.cancelAllAnimations=function(){this.animations=[];this.animationRequestId&&this.chart.cancelRequestAnimFrame.call(window,this.animationRequestId);this.animationRequestId=null;this.chart.isAnimating=
997
- !1};var M={yScaleAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas,d=e.animationBase;c.drawImage(b,0,0,b.width,b.height,0,d-d*a,c.canvas.width/la,a*c.canvas.height/la)}},xScaleAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas,d=e.animationBase;c.drawImage(b,0,0,b.width,b.height,d-d*a,0,a*c.canvas.width/la,c.canvas.height/la)}},xClipAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas;c.save();0<a&&c.drawImage(b,0,0,b.width*a,b.height,0,0,b.width*a/la,b.height/
998
- la);c.restore()}},fadeInAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas;c.save();c.globalAlpha=a;c.drawImage(b,0,0,b.width,b.height,0,0,c.canvas.width/la,c.canvas.height/la);c.restore()}},easing:{linear:function(a,e,c,b){return c*a/b+e},easeOutQuad:function(a,e,c,b){return-c*(a/=b)*(a-2)+e},easeOutQuart:function(a,e,c,b){return-c*((a=a/b-1)*a*a*a-1)+e},easeInQuad:function(a,e,c,b){return c*(a/=b)*a+e},easeInQuart:function(a,e,c,b){return c*(a/=b)*a*a*a+e}}},Y={drawMarker:function(a,
999
- e,c,b,d,f,h,l){if(c){var m=1;c.fillStyle=f?f:"#000000";c.strokeStyle=h?h:"#000000";c.lineWidth=l?l:0;c.setLineDash&&c.setLineDash(J("solid",l));"circle"===b?(c.moveTo(a,e),c.beginPath(),c.arc(a,e,d/2,0,2*Math.PI,!1),f&&c.fill(),l&&(h?c.stroke():(m=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=m))):"square"===b?(c.beginPath(),c.rect(a-d/2,e-d/2,d,d),f&&c.fill(),l&&(h?c.stroke():(m=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=m))):
1000
- "triangle"===b?(c.beginPath(),c.moveTo(a-d/2,e+d/2),c.lineTo(a+d/2,e+d/2),c.lineTo(a,e-d/2),c.closePath(),f&&c.fill(),l&&(h?c.stroke():(m=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=m)),c.beginPath()):"cross"===b&&(c.strokeStyle=f,c.lineWidth=d/4,c.beginPath(),c.moveTo(a-d/2,e-d/2),c.lineTo(a+d/2,e+d/2),c.stroke(),c.moveTo(a+d/2,e-d/2),c.lineTo(a-d/2,e+d/2),c.stroke())}},drawMarkers:function(a){for(var e=0;e<a.length;e++){var c=a[e];Y.drawMarker(c.x,c.y,c.ctx,c.type,
1001
- c.size,c.color,c.borderColor,c.borderThickness)}}};return s}();s.version="v3.15.18 GA";window.CanvasJS&&(s&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=s)})();
983
+ this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:u?"italic":"normal"}catch(l){}"pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type?c=f[0].dataSeries.dataPointEOs[f[0].index].center.x+f[0].dataSeries.radius*Math.cos(f[0].dataSeries.dataPointEOs[f[0].index].midAngle)+-("left"===f[0].dataSeries.dataPointEOs[f[0].index].hemisphere?0:this.container.clientWidth):"funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type?(b=f[0].dataSeries.dataPointEOs[f[0].index].sectionsofFunnel,
984
+ c=(b.x1+b.x2-this.container.clientWidth)/2):(c="bar"===f[0].dataSeries.type||"rangeBar"===f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y.length?f[0].dataPoint.y[f[0].dataPoint.y.length-1]:f[0].dataPoint.y)-this.container.clientWidth<<0:f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x)-this.container.clientWidth<<0,c-=10);0>c&&(c+=this.container.clientWidth+20);c+this.container.clientWidth>
985
+ Math.max(this.chart.container.clientWidth,this.chart.width)&&(c=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));1!==f.length||this.shared||"line"!==f[0].dataSeries.type&&"stepLine"!==f[0].dataSeries.type&&"spline"!==f[0].dataSeries.type&&"area"!==f[0].dataSeries.type&&"stepArea"!==f[0].dataSeries.type&&"splineArea"!==f[0].dataSeries.type?"pie"===f[0].dataSeries.type||"doughnut"===f[0].dataSeries.type?(b=f[0].dataSeries.dataPointEOs[f[0].index].center.y+
986
+ f[0].dataSeries.radius*Math.sin(f[0].dataSeries.dataPointEOs[f[0].index].midAngle),b<f[0].dataSeries.dataPointEOs[f[0].index].center.y&&(b+=this.container.clientHeight)):"funnel"===f[0].dataSeries.type||"pyramid"===f[0].dataSeries.type?(b=f[0].dataSeries.dataPointEOs[f[0].dataSeries.reversed?f[0].dataSeries.dataPointEOs.length-1-f[0].index:f[0].index].sectionsofFunnel,b="undefined"!==typeof b.x5?(b.y2+b.y4)/2:(b.y2+b.y3)/2+this.container.clientHeight/2):b="bar"===f[0].dataSeries.type||"rangeBar"===
987
+ f[0].dataSeries.type||"stackedBar"===f[0].dataSeries.type||"stackedBar100"===f[0].dataSeries.type?f[0].dataSeries.axisX.convertValueToPixel(f[0].dataPoint.x):f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y.length?f[0].dataPoint.y[f[0].dataPoint.y.length-1]:f[0].dataPoint.y):b=f[0].dataSeries.axisY.convertValueToPixel(f[0].dataPoint.y);b=-b+10;0<b+this.container.clientHeight+5&&(b-=b+this.container.clientHeight+5-0);this.fixMozTransitionDelay(c,b);!this.animationEnabled||h?this.disableAnimation():
988
+ (this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);this.container.style.left=c+"px";this.container.style.bottom=b+"px"}else return this.hide(!1),!1}else return this.hide(),!1;this._xValue=a;this._dataSeriesIndex=e;this._prevY=this._prevX=NaN;return!0};oa.prototype.fixMozTransitionDelay=function(a,e){if(20<this.chart._eventManager.lastObjectId)this.mozContainerTransition=this.getContainerTransition(0);else{var c=parseFloat(this.container.style.left),c=isNaN(c)?
989
+ 0:c,b=parseFloat(this.container.style.bottom),b=isNaN(b)?0:b;10<Math.sqrt(Math.pow(c-a,2)+Math.pow(b-e,2))?this.mozContainerTransition=this.getContainerTransition(0.1):this.mozContainerTransition=this.getContainerTransition(0)}};oa.prototype.getContainerTransition=function(a){return"left "+a+"s ease-out 0s, bottom "+a+"s ease-out 0s"};ja.prototype.reset=function(){this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=[];this.previousDataPointEventObject=null;this.eventObjects=
990
+ [];u&&(this.ghostCtx.clearRect(0,0,this.chart.width,this.chart.height),this.ghostCtx.beginPath())};ja.prototype.getNewObjectTrackingId=function(){return++this.lastObjectId};ja.prototype.mouseEventHandler=function(a){if("mousemove"===a.type||"click"===a.type){var e=[],c=Ra(a),b=null;if((b=this.chart.getObjectAtXY(c.x,c.y,!1))&&"undefined"!==typeof this.objectMap[b])if(b=this.objectMap[b],"dataPoint"===b.objectType){var d=this.chart.data[b.dataSeriesIndex],f=d.dataPoints[b.dataPointIndex],h=b.dataPointIndex;
991
+ b.eventParameter={x:c.x,y:c.y,dataPoint:f,dataSeries:d.options,dataPointIndex:h,dataSeriesIndex:d.index,chart:this.chart};b.eventContext={context:f,userContext:f,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"};e.push(b);b=this.objectMap[d.id];b.eventParameter={x:c.x,y:c.y,dataPoint:f,dataSeries:d.options,dataPointIndex:h,dataSeriesIndex:d.index,chart:this.chart};b.eventContext={context:d,userContext:d.options,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",
992
+ click:"click"};e.push(this.objectMap[d.id])}else"legendItem"===b.objectType&&(d=this.chart.data[b.dataSeriesIndex],f=null!==b.dataPointIndex?d.dataPoints[b.dataPointIndex]:null,b.eventParameter={x:c.x,y:c.y,dataSeries:d.options,dataPoint:f,dataPointIndex:b.dataPointIndex,dataSeriesIndex:b.dataSeriesIndex,chart:this.chart},b.eventContext={context:this.chart.legend,userContext:this.chart.legend.options,mouseover:"itemmouseover",mousemove:"itemmousemove",mouseout:"itemmouseout",click:"itemclick"},e.push(b));
993
+ d=[];for(c=0;c<this.mouseoveredObjectMaps.length;c++){f=!0;for(b=0;b<e.length;b++)if(e[b].id===this.mouseoveredObjectMaps[c].id){f=!1;break}f?this.fireEvent(this.mouseoveredObjectMaps[c],"mouseout",a):d.push(this.mouseoveredObjectMaps[c])}this.mouseoveredObjectMaps=d;for(c=0;c<e.length;c++){d=!1;for(b=0;b<this.mouseoveredObjectMaps.length;b++)if(e[c].id===this.mouseoveredObjectMaps[b].id){d=!0;break}d||(this.fireEvent(e[c],"mouseover",a),this.mouseoveredObjectMaps.push(e[c]));"click"===a.type?this.fireEvent(e[c],
994
+ "click",a):"mousemove"===a.type&&this.fireEvent(e[c],"mousemove",a)}}};ja.prototype.fireEvent=function(a,e,c){if(a&&e){var b=a.eventParameter,d=a.eventContext,f=a.eventContext.userContext;f&&(d&&f[d[e]])&&f[d[e]].call(f,b);"mouseout"!==e?f.cursor&&f.cursor!==c.target.style.cursor&&(c.target.style.cursor=f.cursor):(c.target.style.cursor=this.chart.panEnabled?"itemmouseout"!==d.mouseout||f.dockInsidePlotArea?"move":this.chart._defaultCursor:this.chart._defaultCursor,delete a.eventParameter,delete a.eventContext);
995
+ "click"===e&&("dataPoint"===a.objectType&&this.chart.pieDoughnutClickHandler)&&this.chart.pieDoughnutClickHandler.call(this.chart.data[a.dataSeriesIndex],b);"click"===e&&("dataPoint"===a.objectType&&this.chart.funnelPyramidClickHandler)&&this.chart.funnelPyramidClickHandler.call(this.chart.data[a.dataSeriesIndex],b)}};na.prototype.animate=function(a,e,c,b,d){var f=this;this.chart.isAnimating=!0;d=d||M.easing.linear;c&&this.animations.push({startTime:(new Date).getTime()+(a?a:0),duration:e,animationCallback:c,
996
+ onComplete:b});for(a=[];0<this.animations.length;)if(e=this.animations.shift(),c=(new Date).getTime(),b=0,e.startTime<=c&&(b=d(Math.min(c-e.startTime,e.duration),0,1,e.duration),b=Math.min(b,1),isNaN(b)||!isFinite(b))&&(b=1),1>b&&a.push(e),e.animationCallback(b),1<=b&&e.onComplete)e.onComplete();this.animations=a;0<this.animations.length?this.animationRequestId=this.chart.requestAnimFrame.call(window,function(){f.animate.call(f)}):this.chart.isAnimating=!1};na.prototype.cancelAllAnimations=function(){this.animations=
997
+ [];this.animationRequestId&&this.chart.cancelRequestAnimFrame.call(window,this.animationRequestId);this.animationRequestId=null;this.chart.isAnimating=!1};var M={yScaleAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas,d=e.animationBase;c.drawImage(b,0,0,b.width,b.height,0,d-d*a,c.canvas.width/la,a*c.canvas.height/la)}},xScaleAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas,d=e.animationBase;c.drawImage(b,0,0,b.width,b.height,d-d*a,0,a*c.canvas.width/la,c.canvas.height/
998
+ la)}},xClipAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas;c.save();0<a&&c.drawImage(b,0,0,b.width*a,b.height,0,0,b.width*a/la,b.height/la);c.restore()}},fadeInAnimation:function(a,e){if(0!==a){var c=e.dest,b=e.source.canvas;c.save();c.globalAlpha=a;c.drawImage(b,0,0,b.width,b.height,0,0,c.canvas.width/la,c.canvas.height/la);c.restore()}},easing:{linear:function(a,e,c,b){return c*a/b+e},easeOutQuad:function(a,e,c,b){return-c*(a/=b)*(a-2)+e},easeOutQuart:function(a,e,c,b){return-c*
999
+ ((a=a/b-1)*a*a*a-1)+e},easeInQuad:function(a,e,c,b){return c*(a/=b)*a+e},easeInQuart:function(a,e,c,b){return c*(a/=b)*a*a*a+e}}},Y={drawMarker:function(a,e,c,b,d,f,h,l){if(c){var m=1;c.fillStyle=f?f:"#000000";c.strokeStyle=h?h:"#000000";c.lineWidth=l?l:0;c.setLineDash&&c.setLineDash(J("solid",l));"circle"===b?(c.moveTo(a,e),c.beginPath(),c.arc(a,e,d/2,0,2*Math.PI,!1),f&&c.fill(),l&&(h?c.stroke():(m=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=m))):"square"===b?
1000
+ (c.beginPath(),c.rect(a-d/2,e-d/2,d,d),f&&c.fill(),l&&(h?c.stroke():(m=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=m))):"triangle"===b?(c.beginPath(),c.moveTo(a-d/2,e+d/2),c.lineTo(a+d/2,e+d/2),c.lineTo(a,e-d/2),c.closePath(),f&&c.fill(),l&&(h?c.stroke():(m=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=m)),c.beginPath()):"cross"===b&&(c.strokeStyle=f,c.lineWidth=d/4,c.beginPath(),c.moveTo(a-d/2,e-d/2),c.lineTo(a+d/2,e+d/2),c.stroke(),
1001
+ c.moveTo(a+d/2,e-d/2),c.lineTo(a-d/2,e+d/2),c.stroke())}},drawMarkers:function(a){for(var e=0;e<a.length;e++){var c=a[e];Y.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return s}();s.version="v3.15.19 GA";window.CanvasJS&&(s&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=s)})();
1002
1002
 
1003
1003
  /*
1004
1004
  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.