@canvasjs/stockcharts 1.8.1 → 1.8.3

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.
@@ -1,5 +1,5 @@
1
1
  /*
2
- CanvasJS StockChart - v1.8.1 GA - https://canvasjs.com/
2
+ CanvasJS StockChart - v1.8.3 GA - https://canvasjs.com/
3
3
  Copyright 2024 fenopix
4
4
 
5
5
  --------------------- License Information --------------------
@@ -91,22 +91,22 @@ labelFontSize:F,labelFontColor:M,labelFontWeight:"normal",lineThickness:0,lineCo
91
91
  lineThickness:1,lineDashType:"solid",color:"#111111"}}],axisY2:[{titleFontFamily:x,titleFontSize:la,titleFontColor:M,titleFontWeight:"normal",labelFontFamily:x,labelFontSize:F,labelFontColor:M,labelFontWeight:"normal",lineThickness:0,lineColor:L,tickThickness:1,tickColor:L,gridThickness:1,gridColor:L,stripLines:[{labelFontFamily:x,labelFontSize:F,labelFontColor:"#FF7300",labelFontWeight:"normal",labelBackgroundColor:null,color:"#FF7300",thickness:1}],crosshair:{labelFontFamily:x,labelFontSize:F,labelFontColor:"#000000",
92
92
  labelFontWeight:"normal",labelBackgroundColor:ta,color:X,thickness:1,lineDashType:"dash"},scaleBreaks:{type:"zigzag",spacing:"2%",lineColor:"#777777",lineThickness:1,lineDashType:"solid",color:"#111111"}}],legend:{fontFamily:x,fontSize:14,fontColor:T,fontWeight:"bold",verticalAlign:"bottom",horizontalAlign:"center"},toolTip:{fontFamily:x,fontSize:14,fontStyle:"normal",cornerRadius:0,borderThickness:1,fontColor:M,backgroundColor:"rgba(0, 0, 0, .7)"}};var Ra={light1:Ga,light2:Ia,dark1:za,dark2:X,theme1:Ga,
93
93
  theme2:Ia,theme3:Ga},aa={numberDuration:1,yearDuration:314496E5,monthDuration:2592E6,weekDuration:6048E5,dayDuration:864E5,hourDuration:36E5,minuteDuration:6E4,secondDuration:1E3,millisecondDuration:1,dayOfWeekFromInt:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" ")};(function(){Ba.fSDec=function(k){for(var f="",r=0;r<k.length;r++)f+=String.fromCharCode(Math.ceil(k.length/57/5)^k.charCodeAt(r));return f};delete ia[Ba.fSDec("Bi`su")][Ba.fSDec("bsdehuIsdg")];Ba.pro={sCH:ia[Ba.fSDec("Bi`su")][Ba.fSDec("bsdehuIsdg")]}})();
94
- var rb=function(){var k=!1;try{var f=Object.defineProperty&&Object.defineProperty({},"passive",{get:function(){k=!0;return!1}});window.addEventListener&&(window.addEventListener("test",null,f),window.removeEventListener("test",null,f))}catch(r){k=!1}return k}(),fb={},Fa=null,lb=function(k){var f=0,r=0;this.options.width?f=this.width:this.width=f=0<this.container.clientWidth?this.container.clientWidth:this.width;this.options.height?r=this.height:this.height=r=0<this.container.clientHeight?this.container.clientHeight:
95
- this.height;if(this.canvas.width!==f*ja||this.canvas.height!==r*ja){for(var J=0;J<k.length;J++)Ua(k[J],f,r);this.bounds={x1:0,y1:0,x2:this.width,y2:this.height,width:this.width,height:this.height};return!0}return!1},mb=function(){this.ctx.clearRect(0,0,this.width,this.height);this.backgroundColor&&(this.ctx.fillStyle=this.backgroundColor,this.ctx.fillRect(0,0,this.width,this.height))},Ca=function(k){k.width=1;k.height=1;k.getContext("2d")&&k.getContext("2d").clearRect(0,0,1,1)},nb=function(k,f,r){f=
96
- Math.min(this.width,this.height);return Math.max("theme4"===this.theme?0:300<=f?12:11,Math.round(f*(k/400)))},ea=function(){var k=/D{1,4}|M{1,4}|Y{1,4}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|f{1,3}|t{1,2}|T{1,2}|K|z{1,3}|"[^"]*"|'[^']*'/g,f="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),r="Sun Mon Tue Wed Thu Fri Sat".split(" "),J="January February March April May June July August September October November December".split(" "),Z="Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),
97
- x=/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,A=/[^-+\dA-Z]/g;return function(D,F,Q){var L=Q?Q.days:f,R=Q?Q.months:J,M=Q?Q.shortDays:r,V=Q?Q.shortMonths:Z;Q="";var d=!1;D=D&&D.getTime?D:D?new Date(D):new Date;if(isNaN(D))throw SyntaxError("invalid date");"UTC:"===F.slice(0,4)&&(F=F.slice(4),d=!0);Q=d?"getUTC":"get";var v=D[Q+"Date"](),t=D[Q+"Day"](),u=D[Q+"Month"](),a=D[Q+"FullYear"](),h=D[Q+"Hours"](),c=D[Q+
98
- "Minutes"](),b=D[Q+"Seconds"](),e=D[Q+"Milliseconds"](),l=d?0:D.getTimezoneOffset();return Q=F.replace(k,function(C){switch(C){case "D":return v;case "DD":return na(v,2);case "DDD":return M[t];case "DDDD":return L[t];case "M":return u+1;case "MM":return na(u+1,2);case "MMM":return V[u];case "MMMM":return R[u];case "Y":return parseInt(String(a).slice(-2));case "YY":return na(String(a).slice(-2),2);case "YYY":return na(String(a).slice(-3),3);case "YYYY":return na(a,4);case "h":return h%12||12;case "hh":return na(h%
99
- 12||12,2);case "H":return h;case "HH":return na(h,2);case "m":return c;case "mm":return na(c,2);case "s":return b;case "ss":return na(b,2);case "f":return na(String(e),3).slice(0,1);case "ff":return na(String(e),3).slice(0,2);case "fff":return na(String(e),3).slice(0,3);case "t":return 12>h?"a":"p";case "tt":return 12>h?"am":"pm";case "T":return 12>h?"A":"P";case "TT":return 12>h?"AM":"PM";case "K":return d?"UTC":(String(D).match(x)||[""]).pop().replace(A,"");case "z":return(0<l?"-":"+")+Math.floor(Math.abs(l)/
100
- 60);case "zz":return(0<l?"-":"+")+na(Math.floor(Math.abs(l)/60),2);case "zzz":return(0<l?"-":"+")+na(Math.floor(Math.abs(l)/60),2)+na(Math.abs(l)%60,2);default:return C.slice(1,C.length-1)}})}}(),vb=function(k){var f=0>k;if(1>Math.abs(k)){var r=parseInt(k.toString().split("e-")[1]);r&&(k=(f?-1*k:k)*Math.pow(10,r-1),k="0."+Array(r).join("0")+k.toString().substring(2),k=f?"-"+k:k)}else r=parseInt(k.toString().split("+")[1]),20<r&&(r-=20,k/=Math.pow(10,r),k=k.toString()+Array(r+1).join("0"));return String(k)},
101
- da=function(k,f,r){if(null===k)return"";if(!isFinite(k))return k;k=Number(k);var J=0>k?!0:!1;J&&(k*=-1);var Z=r?r.decimalSeparator:".",x=r?r.digitGroupSeparator:",",A="";f=String(f);var A=1,D=r="",F=-1,Q=[],L=[],R=0,M=0,V=0,d=!1,v=0,D=f.match(/"[^"]*"|'[^']*'|[eE][+-]*[0]+|[,]+[.]|\u2030|./g);f=null;for(var t=0;D&&t<D.length;t++)if(f=D[t],"."===f&&0>F)F=t;else{if("%"===f)A*=100;else if("\u2030"===f){A*=1E3;continue}else if(","===f[0]&&"."===f[f.length-1]){A/=Math.pow(1E3,f.length-1);F=t+f.length-
102
- 1;continue}else"E"!==f[0]&&"e"!==f[0]||"0"!==f[f.length-1]||(d=!0);0>F?(Q.push(f),"#"===f||"0"===f?R++:","===f&&V++):(L.push(f),"#"!==f&&"0"!==f||M++)}d&&(f=Math.floor(k),D=-Math.floor(Math.log(k)/Math.LN10+1),v=0===k?0:0===f?-(R+D):vb(f).length-R,A/=Math.pow(10,v));0>F&&(F=t);A=(k*A).toFixed(M);f=A.split(".");A=(f[0]+"").split("");k=(f[1]+"").split("");A&&"0"===A[0]&&A.shift();for(d=D=t=M=F=0;0<Q.length;)if(f=Q.pop(),"#"===f||"0"===f)if(F++,F===R){var u=A,A=[];if("0"===f)for(f=R-M-(u?u.length:0);0<
103
- f;)u.unshift("0"),f--;for(;0<u.length;)r=u.pop()+r,d++,0===d%D&&(t===V&&0<u.length)&&(r=x+r)}else 0<A.length?(r=A.pop()+r,M++,d++):"0"===f&&(r="0"+r,M++,d++),0===d%D&&(t===V&&0<A.length)&&(r=x+r);else"E"!==f[0]&&"e"!==f[0]||"0"!==f[f.length-1]||!/[eE][+-]*[0]+/.test(f)?","===f?(t++,D=d,d=0,0<A.length&&(r=x+r)):r=1<f.length&&('"'===f[0]&&'"'===f[f.length-1]||"'"===f[0]&&"'"===f[f.length-1])?f.slice(1,f.length-1)+r:f+r:(f=0>v?f.replace("+","").replace("-",""):f.replace("-",""),r+=f.replace(/[0]+/,function(a){return na(v,
104
- a.length)}));x="";for(Q=!1;0<L.length;)f=L.shift(),"#"===f||"0"===f?0<k.length&&0!==Number(k.join(""))?(x+=k.shift(),Q=!0):"0"===f&&(x+="0",Q=!0):1<f.length&&('"'===f[0]&&'"'===f[f.length-1]||"'"===f[0]&&"'"===f[f.length-1])?x+=f.slice(1,f.length-1):"E"!==f[0]&&"e"!==f[0]||"0"!==f[f.length-1]||!/[eE][+-]*[0]+/.test(f)?x+=f:(f=0>v?f.replace("+","").replace("-",""):f.replace("-",""),x+=f.replace(/[0]+/,function(a){return na(v,a.length)}));r+=(Q?Z:"")+x;return J?"-"+r:r},Aa=function(f){var r=0,K=0;f=
105
- f||window.event;f.offsetX||0===f.offsetX?(r=f.offsetX,K=f.offsetY):f.layerX||0==f.layerX?(r=f.layerX,K=f.layerY):(r=f.pageX-f.target.offsetLeft,K=f.pageY-f.target.offsetTop);return{x:r,y:K}},kb=!0,Za=window.devicePixelRatio||1,Va=1,ja=kb?Za/Va:1,ba=function(f,r,K,J,x,D,A,F,L,Q,R,M,V){"undefined"===typeof V&&(V=1);A=A||0;F=F||"black";var O=15<J-r&&15<x-K?8:0.35*Math.min(J-r,x-K);f.beginPath();f.moveTo(r,K);f.save();f.fillStyle=D;f.globalAlpha=V;f.fillRect(r,K,J-r,x-K);f.globalAlpha=1;0<A&&(V=0===A%
106
- 2?0:0.5,f.beginPath(),f.lineWidth=A,f.strokeStyle=F,f.moveTo(r,K),f.rect(r-V,K-V,J-r+2*V,x-K+2*V),f.stroke());f.restore();!0===L&&(f.save(),f.beginPath(),f.moveTo(r,K),f.lineTo(r+O,K+O),f.lineTo(J-O,K+O),f.lineTo(J,K),f.closePath(),A=f.createLinearGradient((J+r)/2,K+O,(J+r)/2,K),A.addColorStop(0,D),A.addColorStop(1,"rgba(255, 255, 255, .4)"),f.fillStyle=A,f.fill(),f.restore());!0===Q&&(f.save(),f.beginPath(),f.moveTo(r,x),f.lineTo(r+O,x-O),f.lineTo(J-O,x-O),f.lineTo(J,x),f.closePath(),A=f.createLinearGradient((J+
107
- r)/2,x-O,(J+r)/2,x),A.addColorStop(0,D),A.addColorStop(1,"rgba(255, 255, 255, .4)"),f.fillStyle=A,f.fill(),f.restore());!0===R&&(f.save(),f.beginPath(),f.moveTo(r,K),f.lineTo(r+O,K+O),f.lineTo(r+O,x-O),f.lineTo(r,x),f.closePath(),A=f.createLinearGradient(r+O,(x+K)/2,r,(x+K)/2),A.addColorStop(0,D),A.addColorStop(1,"rgba(255, 255, 255, 0.1)"),f.fillStyle=A,f.fill(),f.restore());!0===M&&(f.save(),f.beginPath(),f.moveTo(J,K),f.lineTo(J-O,K+O),f.lineTo(J-O,x-O),f.lineTo(J,x),A=f.createLinearGradient(J-
108
- O,(x+K)/2,J,(x+K)/2),A.addColorStop(0,D),A.addColorStop(1,"rgba(255, 255, 255, 0.1)"),f.fillStyle=A,A.addColorStop(0,D),A.addColorStop(1,"rgba(255, 255, 255, 0.1)"),f.fillStyle=A,f.fill(),f.closePath(),f.restore())},wa=function(f){for(var r="",K=0;K<f.length;K++)r+=String.fromCharCode(Math.ceil(f.length/57/5)^f.charCodeAt(K));return r},tb=window&&(window[wa("mnb`uhno")]&&window[wa("mnb`uhno")].href&&window[wa("mnb`uhno")].href.indexOf&&(-1!==window[wa("mnb`uhno")].href.indexOf(wa("b`ow`rkr/bnl"))||
109
- -1!==window[wa("mnb`uhno")].href.indexOf(wa("gdonqhy/bnl"))||-1!==window[wa("mnb`uhno")].href.indexOf(wa("gheemd"))))&&-1===window[wa("mnb`uhno")].href.indexOf(wa("gheemd")),ub={reset:{image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAeCAYAAABJ/8wUAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAPjSURBVFhHxVdJaFNRFP1J/jwkP5MxsbaC1WJEglSxOFAXIsFpVRE3ggi1K90obioRRBA33XXnQnciirhQcMCdorgQxBkXWlREkFKsWkv5npvckp/XnzRpKh64kLw733fffe9L/wrL0+mVUdO8uTSZ3MBL/we2qg4rkuSpodCELstXE46ziVkLQ6FQcGOmeSSq6wd4aV50d3drWjj8kQKZJTUc9kxFGenv79dZrDksTSTWWJp2QYtEPiErysyzdX0LsxsCQR8keX8gs6RHIk8ysdgKFg2G53mhuOPsshTlBjKaFo1g7SqLNoShKLdFXT8huQ/paLSbxatYnc2mHMM4hr18Vi8TIvCmXF3vYrW6cF23gGTOk0M1wA4RKvOmq6vLZRVJipvmSWT6tZ6CSEYkco5V50VPT4+D7RwOqi6RiSZm0fJ+vggSqkeoypdsNmuyelNwbXsbgvkWYMtzDWNvWaijoyOBqE+hVK8abcssUeXQ/YfKyi0gFYv1Ipgfoj34fYGTJLOYJA0ODirok32GLN8XhUWCwSes1hIwBg6LydJ/tEeRRapAdUp+wSAiZchtZZWWgAZ+JNpD8peYXQVK9UwUxNpzOK8pq97kURZhYTCKBwPD7h2zK+js7Myi7D8Fod+0TkMI8+EMAngLGc/WtBFWawkFHFnoj/t9KLgGmF0B3QfkxC+EarxkdhnFYlFLY06USqUwL7UMjICHfh/wOc2sCqhpxGbCkLvL7EUDbF73+6DkmVWB6zi7xUDQSLeYvWjAILvm9zEnkJhlbRcDQZcv6Kg2AipyT/Axw6wKlqVSqxDdjF8Izfod13qURdrG/nxehY+xGh+h0CSzKygGvSNQIcc097BI24jb9hax6kj2E7OrMFX1il+ICEf2NrPbhiXLl+fYl+U7zK4iYdsDcyLGf+ofFlkwcN+s10KhmpuYhhtm0hCLVIFL0MDsqNlDIqy9x2CLs1jL6OvrI7vPRbtohXG6eFmsFnHDGAp6n9AgyuVySRZrGvROxRgIfLXhzjrNYnNBUxNX/dMgRWT1mt4XLDovaApD53E9W3ilNX5M55LJHpRtIsgAvciR4WWcgK2Dvb1YqgXevmF8z2zEBTcKG39EfSKsT9EbhVUaI2FZO+oZIqImxol6j66/hcAu4sSN4vc1ZPoKeoE6RGhYL2YYA+ymOSSi0Z0wWntbtkGUWCvfSDXIxONraZ/FY90KUfNTpfC5spnNLgxoYNnR9RO4F8ofXEHOgogCQE99w+fF2Xw+b7O59rEOsyRqGEfpVoaDMQQ1CZrG46bcM6AZ0C/wPqNfHliqejyTySxh9TqQpL+xmbIlkB9SlAAAAABJRU5ErkJggg=="},
94
+ var rb=function(){var k=!1;try{var f=Object.defineProperty&&Object.defineProperty({},"passive",{get:function(){k=!0;return!1}});window.addEventListener&&(window.addEventListener("test",null,f),window.removeEventListener("test",null,f))}catch(r){k=!1}return k}(),fb={},Fa=null,lb=function(k){var w=0,r=0;this.options.width?w=this.width:this.width=w=0<this.container.clientWidth?this.container.clientWidth:this.width;f(this.stockChart)||f(this.index)?this.options.height?r=this.height:this.height=r=0<this.container.clientHeight?
95
+ this.container.clientHeight:this.height:r=this.height=this.stockChart._chartsHeight[this.index];if(this.canvas.width!==w*ja||this.canvas.height!==r*ja){for(var J=0;J<k.length;J++)Ua(k[J],w,r);this.bounds={x1:0,y1:0,x2:this.width,y2:this.height,width:this.width,height:this.height};return!0}return!1},mb=function(){this.ctx.clearRect(0,0,this.width,this.height);this.backgroundColor&&(this.ctx.fillStyle=this.backgroundColor,this.ctx.fillRect(0,0,this.width,this.height))},Ca=function(k){k.width=1;k.height=
96
+ 1;k.getContext("2d")&&k.getContext("2d").clearRect(0,0,1,1)},nb=function(k,f,r){f=Math.min(this.width,this.height);return Math.max("theme4"===this.theme?0:300<=f?12:11,Math.round(f*(k/400)))},ea=function(){var k=/D{1,4}|M{1,4}|Y{1,4}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|f{1,3}|t{1,2}|T{1,2}|K|z{1,3}|"[^"]*"|'[^']*'/g,f="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),r="Sun Mon Tue Wed Thu Fri Sat".split(" "),J="January February March April May June July August September October November December".split(" "),
97
+ Z="Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),x=/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,A=/[^-+\dA-Z]/g;return function(D,F,Q){var L=Q?Q.days:f,R=Q?Q.months:J,M=Q?Q.shortDays:r,V=Q?Q.shortMonths:Z;Q="";var d=!1;D=D&&D.getTime?D:D?new Date(D):new Date;if(isNaN(D))throw SyntaxError("invalid date");"UTC:"===F.slice(0,4)&&(F=F.slice(4),d=!0);Q=d?"getUTC":"get";var u=D[Q+"Date"](),s=D[Q+"Day"](),
98
+ v=D[Q+"Month"](),a=D[Q+"FullYear"](),h=D[Q+"Hours"](),c=D[Q+"Minutes"](),b=D[Q+"Seconds"](),e=D[Q+"Milliseconds"](),l=d?0:D.getTimezoneOffset();return Q=F.replace(k,function(C){switch(C){case "D":return u;case "DD":return na(u,2);case "DDD":return M[s];case "DDDD":return L[s];case "M":return v+1;case "MM":return na(v+1,2);case "MMM":return V[v];case "MMMM":return R[v];case "Y":return parseInt(String(a).slice(-2));case "YY":return na(String(a).slice(-2),2);case "YYY":return na(String(a).slice(-3),
99
+ 3);case "YYYY":return na(a,4);case "h":return h%12||12;case "hh":return na(h%12||12,2);case "H":return h;case "HH":return na(h,2);case "m":return c;case "mm":return na(c,2);case "s":return b;case "ss":return na(b,2);case "f":return na(String(e),3).slice(0,1);case "ff":return na(String(e),3).slice(0,2);case "fff":return na(String(e),3).slice(0,3);case "t":return 12>h?"a":"p";case "tt":return 12>h?"am":"pm";case "T":return 12>h?"A":"P";case "TT":return 12>h?"AM":"PM";case "K":return d?"UTC":(String(D).match(x)||
100
+ [""]).pop().replace(A,"");case "z":return(0<l?"-":"+")+Math.floor(Math.abs(l)/60);case "zz":return(0<l?"-":"+")+na(Math.floor(Math.abs(l)/60),2);case "zzz":return(0<l?"-":"+")+na(Math.floor(Math.abs(l)/60),2)+na(Math.abs(l)%60,2);default:return C.slice(1,C.length-1)}})}}(),vb=function(k){var f=0>k;if(1>Math.abs(k)){var r=parseInt(k.toString().split("e-")[1]);r&&(k=(f?-1*k:k)*Math.pow(10,r-1),k="0."+Array(r).join("0")+k.toString().substring(2),k=f?"-"+k:k)}else r=parseInt(k.toString().split("+")[1]),
101
+ 20<r&&(r-=20,k/=Math.pow(10,r),k=k.toString()+Array(r+1).join("0"));return String(k)},da=function(k,f,r){if(null===k)return"";if(!isFinite(k))return k;k=Number(k);var J=0>k?!0:!1;J&&(k*=-1);var Z=r?r.decimalSeparator:".",x=r?r.digitGroupSeparator:",",A="";f=String(f);var A=1,D=r="",F=-1,Q=[],L=[],R=0,M=0,V=0,d=!1,u=0,D=f.match(/"[^"]*"|'[^']*'|[eE][+-]*[0]+|[,]+[.]|\u2030|./g);f=null;for(var s=0;D&&s<D.length;s++)if(f=D[s],"."===f&&0>F)F=s;else{if("%"===f)A*=100;else if("\u2030"===f){A*=1E3;continue}else if(","===
102
+ f[0]&&"."===f[f.length-1]){A/=Math.pow(1E3,f.length-1);F=s+f.length-1;continue}else"E"!==f[0]&&"e"!==f[0]||"0"!==f[f.length-1]||(d=!0);0>F?(Q.push(f),"#"===f||"0"===f?R++:","===f&&V++):(L.push(f),"#"!==f&&"0"!==f||M++)}d&&(f=Math.floor(k),D=-Math.floor(Math.log(k)/Math.LN10+1),u=0===k?0:0===f?-(R+D):vb(f).length-R,A/=Math.pow(10,u));0>F&&(F=s);A=(k*A).toFixed(M);f=A.split(".");A=(f[0]+"").split("");k=(f[1]+"").split("");A&&"0"===A[0]&&A.shift();for(d=D=s=M=F=0;0<Q.length;)if(f=Q.pop(),"#"===f||"0"===
103
+ f)if(F++,F===R){var v=A,A=[];if("0"===f)for(f=R-M-(v?v.length:0);0<f;)v.unshift("0"),f--;for(;0<v.length;)r=v.pop()+r,d++,0===d%D&&(s===V&&0<v.length)&&(r=x+r)}else 0<A.length?(r=A.pop()+r,M++,d++):"0"===f&&(r="0"+r,M++,d++),0===d%D&&(s===V&&0<A.length)&&(r=x+r);else"E"!==f[0]&&"e"!==f[0]||"0"!==f[f.length-1]||!/[eE][+-]*[0]+/.test(f)?","===f?(s++,D=d,d=0,0<A.length&&(r=x+r)):r=1<f.length&&('"'===f[0]&&'"'===f[f.length-1]||"'"===f[0]&&"'"===f[f.length-1])?f.slice(1,f.length-1)+r:f+r:(f=0>u?f.replace("+",
104
+ "").replace("-",""):f.replace("-",""),r+=f.replace(/[0]+/,function(a){return na(u,a.length)}));x="";for(Q=!1;0<L.length;)f=L.shift(),"#"===f||"0"===f?0<k.length&&0!==Number(k.join(""))?(x+=k.shift(),Q=!0):"0"===f&&(x+="0",Q=!0):1<f.length&&('"'===f[0]&&'"'===f[f.length-1]||"'"===f[0]&&"'"===f[f.length-1])?x+=f.slice(1,f.length-1):"E"!==f[0]&&"e"!==f[0]||"0"!==f[f.length-1]||!/[eE][+-]*[0]+/.test(f)?x+=f:(f=0>u?f.replace("+","").replace("-",""):f.replace("-",""),x+=f.replace(/[0]+/,function(a){return na(u,
105
+ a.length)}));r+=(Q?Z:"")+x;return J?"-"+r:r},Aa=function(f){var r=0,K=0;f=f||window.event;f.offsetX||0===f.offsetX?(r=f.offsetX,K=f.offsetY):f.layerX||0==f.layerX?(r=f.layerX,K=f.layerY):(r=f.pageX-f.target.offsetLeft,K=f.pageY-f.target.offsetTop);return{x:r,y:K}},kb=!0,Za=window.devicePixelRatio||1,Va=1,ja=kb?Za/Va:1,ba=function(f,r,K,J,x,D,A,F,L,Q,R,M,V){"undefined"===typeof V&&(V=1);A=A||0;F=F||"black";var O=15<J-r&&15<x-K?8:0.35*Math.min(J-r,x-K);f.beginPath();f.moveTo(r,K);f.save();f.fillStyle=
106
+ D;f.globalAlpha=V;f.fillRect(r,K,J-r,x-K);f.globalAlpha=1;0<A&&(V=0===A%2?0:0.5,f.beginPath(),f.lineWidth=A,f.strokeStyle=F,f.moveTo(r,K),f.rect(r-V,K-V,J-r+2*V,x-K+2*V),f.stroke());f.restore();!0===L&&(f.save(),f.beginPath(),f.moveTo(r,K),f.lineTo(r+O,K+O),f.lineTo(J-O,K+O),f.lineTo(J,K),f.closePath(),A=f.createLinearGradient((J+r)/2,K+O,(J+r)/2,K),A.addColorStop(0,D),A.addColorStop(1,"rgba(255, 255, 255, .4)"),f.fillStyle=A,f.fill(),f.restore());!0===Q&&(f.save(),f.beginPath(),f.moveTo(r,x),f.lineTo(r+
107
+ O,x-O),f.lineTo(J-O,x-O),f.lineTo(J,x),f.closePath(),A=f.createLinearGradient((J+r)/2,x-O,(J+r)/2,x),A.addColorStop(0,D),A.addColorStop(1,"rgba(255, 255, 255, .4)"),f.fillStyle=A,f.fill(),f.restore());!0===R&&(f.save(),f.beginPath(),f.moveTo(r,K),f.lineTo(r+O,K+O),f.lineTo(r+O,x-O),f.lineTo(r,x),f.closePath(),A=f.createLinearGradient(r+O,(x+K)/2,r,(x+K)/2),A.addColorStop(0,D),A.addColorStop(1,"rgba(255, 255, 255, 0.1)"),f.fillStyle=A,f.fill(),f.restore());!0===M&&(f.save(),f.beginPath(),f.moveTo(J,
108
+ K),f.lineTo(J-O,K+O),f.lineTo(J-O,x-O),f.lineTo(J,x),A=f.createLinearGradient(J-O,(x+K)/2,J,(x+K)/2),A.addColorStop(0,D),A.addColorStop(1,"rgba(255, 255, 255, 0.1)"),f.fillStyle=A,A.addColorStop(0,D),A.addColorStop(1,"rgba(255, 255, 255, 0.1)"),f.fillStyle=A,f.fill(),f.closePath(),f.restore())},wa=function(f){for(var r="",K=0;K<f.length;K++)r+=String.fromCharCode(Math.ceil(f.length/57/5)^f.charCodeAt(K));return r},tb=window&&(window[wa("mnb`uhno")]&&window[wa("mnb`uhno")].href&&window[wa("mnb`uhno")].href.indexOf&&
109
+ (-1!==window[wa("mnb`uhno")].href.indexOf(wa("b`ow`rkr/bnl"))||-1!==window[wa("mnb`uhno")].href.indexOf(wa("gdonqhy/bnl"))||-1!==window[wa("mnb`uhno")].href.indexOf(wa("gheemd"))))&&-1===window[wa("mnb`uhno")].href.indexOf(wa("gheemd")),ub={reset:{image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAeCAYAAABJ/8wUAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAPjSURBVFhHxVdJaFNRFP1J/jwkP5MxsbaC1WJEglSxOFAXIsFpVRE3ggi1K90obioRRBA33XXnQnciirhQcMCdorgQxBkXWlREkFKsWkv5npvckp/XnzRpKh64kLw733fffe9L/wrL0+mVUdO8uTSZ3MBL/we2qg4rkuSpodCELstXE46ziVkLQ6FQcGOmeSSq6wd4aV50d3drWjj8kQKZJTUc9kxFGenv79dZrDksTSTWWJp2QYtEPiErysyzdX0LsxsCQR8keX8gs6RHIk8ysdgKFg2G53mhuOPsshTlBjKaFo1g7SqLNoShKLdFXT8huQ/paLSbxatYnc2mHMM4hr18Vi8TIvCmXF3vYrW6cF23gGTOk0M1wA4RKvOmq6vLZRVJipvmSWT6tZ6CSEYkco5V50VPT4+D7RwOqi6RiSZm0fJ+vggSqkeoypdsNmuyelNwbXsbgvkWYMtzDWNvWaijoyOBqE+hVK8abcssUeXQ/YfKyi0gFYv1Ipgfoj34fYGTJLOYJA0ODirok32GLN8XhUWCwSes1hIwBg6LydJ/tEeRRapAdUp+wSAiZchtZZWWgAZ+JNpD8peYXQVK9UwUxNpzOK8pq97kURZhYTCKBwPD7h2zK+js7Myi7D8Fod+0TkMI8+EMAngLGc/WtBFWawkFHFnoj/t9KLgGmF0B3QfkxC+EarxkdhnFYlFLY06USqUwL7UMjICHfh/wOc2sCqhpxGbCkLvL7EUDbF73+6DkmVWB6zi7xUDQSLeYvWjAILvm9zEnkJhlbRcDQZcv6Kg2AipyT/Axw6wKlqVSqxDdjF8Izfod13qURdrG/nxehY+xGh+h0CSzKygGvSNQIcc097BI24jb9hax6kj2E7OrMFX1il+ICEf2NrPbhiXLl+fYl+U7zK4iYdsDcyLGf+ofFlkwcN+s10KhmpuYhhtm0hCLVIFL0MDsqNlDIqy9x2CLs1jL6OvrI7vPRbtohXG6eFmsFnHDGAp6n9AgyuVySRZrGvROxRgIfLXhzjrNYnNBUxNX/dMgRWT1mt4XLDovaApD53E9W3ilNX5M55LJHpRtIsgAvciR4WWcgK2Dvb1YqgXevmF8z2zEBTcKG39EfSKsT9EbhVUaI2FZO+oZIqImxol6j66/hcAu4sSN4vc1ZPoKeoE6RGhYL2YYA+ymOSSi0Z0wWntbtkGUWCvfSDXIxONraZ/FY90KUfNTpfC5spnNLgxoYNnR9RO4F8ofXEHOgogCQE99w+fF2Xw+b7O59rEOsyRqGEfpVoaDMQQ1CZrG46bcM6AZ0C/wPqNfHliqejyTySxh9TqQpL+xmbIlkB9SlAAAAABJRU5ErkJggg=="},
110
110
  pan:{image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAICSURBVEhLxZbPahNRGMUn/5MpuAiBEAIufQGfzr5E40YptBXajYzudCEuGqS+gGlrFwquDGRTutBdYfydzJ3LzeQmJGZue+Dw/Z17Mnfmu5Pof9Hr9Z61Wq0bWZMKj263O6xWq99wU9lOpzPMKgEhEcRucNOcioOK+0RzBhNvt9tPV4nmVF19+OWhVqt9xXgFXZq+8lCv119UKpUJ7iX2FmvFTKz8RH34YdBsNk8wVtjE4fGYwm8wrrDi3WBG5oKXZGRSS9hGuNFojLTe2lFz5xThWZIktayyiE2FdT3rzXBXz7krKiL8c17wAKFDjCus2AvW+YGZ9y2JF0VFRuMPfI//rsCE/C+s26s4gQu9ul7r4NteKx7H8XOC724xNNGbaNu++IrBqbOV7Tj3FgMRvc/YKOr3+3sE47wgEt/Bl/gaK5cHbNU11vYSXylfpK7XOvjuumPp4Wcoipu30Qsez2uMXYz4lfI+mOmwothY+SLiXJy7mKVpWs3Si0CoOMfeI9Od43Wic+jO+ZVv+crsm9QSNhUW9LXSeoPBYLXopthGuFQgdIxxhY+UDwlt1x5CZ1hX+NTUdt/OIvjKaDSmuOJfaIVNPKX+W18j/PLA2/kR44p5Sd8HbHngT/yTfNRWUXX14ZcL3wmX0+TLf8YO7CGT8yFE5zB3/gney25/OETRP9CtPDFe5jShAAAAAElFTkSuQmCC"},
111
111
  zoom:{image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALWSURBVEhLvZZLaBNRFIabyftBIgEfqCCBoCC6MYqiXYiIj4U76U4X7sUHbhQhUBfixhZEUBDB16YuFERaUaQLK7ooCOJj4UKtYEFU0EptShO/A9Ph3js3k8lo/eHnP7n3nP/M3LlzMz1hkUwmNziOcyKRSFyFt+LxeD/c2Wq1Ym7Kv0M2m11Os1OxWGycn1OwZXCGuXfwIhezkd9/jRgNT2L4ldhs1pbkX5OLJe4euVxuGQaPCa3mnUjtJx7BDuKusJTCV6jVVGHTMuYRjxma7yIOhTgFY6jNaAKew2xPKpVay9ganmkvj+M448/MfJdT5K5Gg4HJacRngPFgqVRaRNwW1B4i7yehWfsEDdz1K+A01AoxPIqGAiuwGfkOTY8+1A6u7AyiFTB2Hu0KPIrdiOnzHLWDybeImvy+Wq2mZa5bUHsD0Zpz+KxHdWQymV6kAb1ElqeORgJLvgnRdj1+R1AfzkIvSUjxVjQSarVakrueIPT8+H1F5jSUy+WXiJrUYBVWyVxU4PEU8TzhfaijUqnMIWrjaY492eWRwdKOIqrnIxnXwLLeRLwk2GQzrEMjg0avEbXxkIxr4OoOImpj2QwyFgms1koa/SZUG8s+0iGnEhNfCNXEhzIXBVz0McTzEvJ+70P9oNFtxEzei3aFYrFYxmuSUPWSv9Yi9IMm2xE1We56Mp1OV4nDwqFmBDV9gk9AEh4gZtFHNt8W4kAUCoXF5MorY9Z/kDni9nDv7hc0i2fhgLvTtX8a99PoMPPagTFPxofRzmDJ9yM+AyEmTfgGysYbQcfhDzPPJDmX0c7gDg4gs9BqFIWhm/Nct5H8gtBq1I7UfIbtvmIuoaGQcp+fdpbbSM43eEH5wrwLbXmhm/fU63VHXjcuok7hEByFY/AeHGC8L5/PL3HT5xGH1uYwfPOICGo+CBcU0vwO1BqzUqILDl/z/9VYIMfpddiAc47jDP8BsUpb13wOLRwAAAAASUVORK5CYII="},
112
112
  menu:{image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAeCAYAAABE4bxTAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADoSURBVFhH7dc9CsJAFATgRxIIBCwCqZKATX5sbawsY2MvWOtF9AB6AU8gguAJbD2AnZ2VXQT/Ko2TYGCL2OYtYQc+BuYA+1hCtnCVwMm27SGaXpDJIAiCvCkVR05hGOZNN3HkFMdx3nQRR06+76/R1IcFLJlNQEWlmWlBTwJtKLKHynehZqnjOGM0PYWRVXk61C37p7xlZ3Hk5HneCk1dmMH811xGoKLSzDiQwIBZB4ocoPJdqNkDt2yKlueWRVGUtzy3rPwo3sWRU3nLjuLI6OO67oZM00wMw3hrmpZx0XU9syxrR0T0BeMpb9dneSR2AAAAAElFTkSuQmCC"}};
@@ -137,8 +137,8 @@ horizontalAlign:this.horizontalAlign,textAlign:this.horizontalAlign,verticalAlig
137
137
  r){Qa[f]=r},formatNumber:function(f,r,x){x=x||"en";if(Qa[x])return da(f,r||"#,##0.##",new Oa(x));throw"Unknown Culture Name";},formatDate:function(f,r,x){x=x||"en";if(Qa[x])return ea(f,r||"DD MMM YYYY",new Oa(x));throw"Unknown Culture Name";}};"undefined"!==typeof module&&"undefined"!==typeof module.exports?module.exports=Sa:"function"===typeof define&&define.amd?define([],function(){return Sa}):(window.CanvasJS&&window.console&&window.console.log("CanvasJS namespace already exists. If you are loading both chart and stockchart scripts, just load stockchart alone as it includes all chart features."),
138
138
  window.CanvasJS=window.CanvasJS?window.CanvasJS:Sa);var Ja=Sa.Chart=function(){function k(a,h){return a.x-h.x}function w(a,h,c){h=h||{};f(c)?(this.predefinedThemes=Ra,this.optionsName=this.parent=this.index=null):(this.parent=c.parent,this.index=c.index,this.predefinedThemes=c.predefinedThemes,this.optionsName=c.optionsName,this.stockChart=c.stockChart,this.panel=a,this.isOptionsInArray=c.isOptionsInArray);this.theme=f(h.theme)||f(this.predefinedThemes[h.theme])?"light1":h.theme;w.base.constructor.call(this,
139
139
  "Chart",this.optionsName,h,this.index,this.parent);var b=this;this._containerId=a;this._objectsInitialized=!1;this.overlaidCanvasCtx=this.ctx=null;this._indexLabels=[];this._panTimerId=0;this._lastTouchEventType="";this._lastTouchData=null;this.isAnimating=!1;this.renderCount=0;this.disableToolTip=this.animatedRender=!1;this.canvasPool=new ab;this.allDOMEventHandlers=[];this.panEnabled=!1;this._defaultCursor="default";this.plotArea={canvas:null,ctx:null,x1:0,y1:0,x2:0,y2:0,width:0,height:0};this._dataInRenderedOrder=
140
- [];(this.container="string"===typeof this._containerId?document.getElementById(this._containerId):this._containerId)?(this.container.innerHTML="",h=a=0,a=this.options.width?this.width:0<this.container.clientWidth?this.container.clientWidth:this.width,h=this.options.height?this.height:0<this.container.clientHeight?this.container.clientHeight:this.height,this.width=a,this.height=h,this.x1=this.y1=0,this.x2=this.width,this.y2=this.height,this.selectedColorSet="undefined"!==typeof sa[this.colorSet]?sa[this.colorSet]:
141
- sa.colorSet1,this._canvasJSContainer=document.createElement("div"),this._canvasJSContainer.setAttribute("class","canvasjs-chart-container"),this._canvasJSContainer.style.position="relative",this._canvasJSContainer.style.textAlign="left",this._canvasJSContainer.style.cursor="auto",this._canvasJSContainer.style.direction="ltr",r||(this._canvasJSContainer.style.height="0px"),this.container.appendChild(this._canvasJSContainer),this.canvas=ra(a,h),this._preRenderCanvas=ra(a,h),this.canvas.style.position=
140
+ [];(this.container="string"===typeof this._containerId?document.getElementById(this._containerId):this._containerId)?(this.container.innerHTML="",h=a=0,a=this.options.width?this.width:0<this.container.clientWidth?this.container.clientWidth:this.width,h=c&&c.height?c.height:this.options.height?this.height:0<this.container.clientHeight?this.container.clientHeight:this.height,this.width=a,this.height=h,this.x1=this.y1=0,this.x2=this.width,this.y2=this.height,this.selectedColorSet="undefined"!==typeof sa[this.colorSet]?
141
+ sa[this.colorSet]:sa.colorSet1,this._canvasJSContainer=document.createElement("div"),this._canvasJSContainer.setAttribute("class","canvasjs-chart-container"),this._canvasJSContainer.style.position="relative",this._canvasJSContainer.style.textAlign="left",this._canvasJSContainer.style.cursor="auto",this._canvasJSContainer.style.direction="ltr",r||(this._canvasJSContainer.style.height="0px"),this.container.appendChild(this._canvasJSContainer),this.canvas=ra(a,h),this._preRenderCanvas=ra(a,h),this.canvas.style.position=
142
142
  "absolute",this.canvas.style.WebkitUserSelect="none",this.canvas.style.MozUserSelect="none",this.canvas.style.msUserSelect="none",this.canvas.style.userSelect="none",this.canvas.getContext&&(this._canvasJSContainer.appendChild(this.canvas),this.ctx=this.canvas.getContext("2d"),this.ctx.textBaseline="top",Da(this.ctx),this._preRenderCtx=this._preRenderCanvas.getContext("2d"),this._preRenderCtx.textBaseline="top",Da(this._preRenderCtx),r?this.plotArea.ctx=this.ctx:(this.plotArea.canvas=ra(a,h),this.plotArea.canvas.style.position=
143
143
  "absolute",this.plotArea.canvas.setAttribute("class","plotAreaCanvas"),this._canvasJSContainer.appendChild(this.plotArea.canvas),this.plotArea.ctx=this.plotArea.canvas.getContext("2d")),this.overlaidCanvas=ra(a,h),this.overlaidCanvas.style.position="absolute",this.overlaidCanvas.style.webkitTapHighlightColor="transparent",this.overlaidCanvas.style.WebkitUserSelect="none",this.overlaidCanvas.style.MozUserSelect="none",this.overlaidCanvas.style.msUserSelect="none",this.overlaidCanvas.style.userSelect=
144
144
  "none",this.overlaidCanvas.getContext&&(this._canvasJSContainer.appendChild(this.overlaidCanvas),this.overlaidCanvasCtx=this.overlaidCanvas.getContext("2d"),this.overlaidCanvasCtx.textBaseline="top",Da(this.overlaidCanvasCtx)),this._eventManager=new ia(this),this.windowResizeHandler=D(window,"resize",function(){b._updateSize()&&b.render()},this.allDOMEventHandlers),this._toolBar=document.createElement("div"),this._toolBar.setAttribute("class","canvasjs-chart-toolbar"),O(this._toolBar,{position:"absolute",
@@ -168,49 +168,49 @@ this.startValue.getTime():this.startValue)*(this.endValue.getTime?this.endValue.
168
168
  this.chart.height,!0);this.ghostCtx=this.ghostCanvas.getContext("2d");this.mouseoveredObjectMaps=[]}function la(a){this.chart=a;this.ctx=this.chart.plotArea.ctx;this.animations=[];this.animationRequestId=null}ga(w,$);w.prototype.destroy=function(){var a=this.allDOMEventHandlers;this._animator&&this._animator.cancelAllAnimations();this._panTimerId&&clearTimeout(this._panTimerId);for(var h=0;h<a.length;h++)gb(a[h][0],a[h][1],a[h][2],a[h][3]);this.allDOMEventHandlers=[];for(this.removeAllEventListeners();this._canvasJSContainer&&
169
169
  this._canvasJSContainer.hasChildNodes();)this._canvasJSContainer.removeChild(this._canvasJSContainer.lastChild);for(;this.container&&this.container.hasChildNodes();)this.container.removeChild(this.container.lastChild);for(;this._dropdownMenu&&this._dropdownMenu.hasChildNodes();)this._dropdownMenu.removeChild(this._dropdownMenu.lastChild);this.container=this._canvasJSContainer=null;this.toolTip.container=null;this.canvas&&Ca(this.canvas);this.overlaidCanvas&&Ca(this.overlaidCanvas);this._preRenderCanvas&&
170
170
  Ca(this._preRenderCanvas);this._breaksCanvas&&Ca(this._breaksCanvas);this._eventManager&&this._eventManager.ghostCanvas&&Ca(this._eventManager.ghostCanvas);this._toolBar=this._dropdownMenu=this._menuButton=this._resetButton=this._zoomButton=null};w.prototype._updateOptions=function(){var a=this;this.updateOption("width");this.updateOption("height");this.updateOption("dataPointWidth");this.updateOption("dataPointMinWidth");this.updateOption("dataPointMaxWidth");this.updateOption("interactivityEnabled");
171
- this.updateOption("theme");this.updateOption("colorSet")&&(this.selectedColorSet="undefined"!==typeof sa[this.colorSet]?sa[this.colorSet]:sa.colorSet1);this.updateOption("backgroundColor");this.backgroundColor||(this.backgroundColor="rgba(0,0,0,0)");this.updateOption("culture");this._cultureInfo=new Oa(this.options.culture);this.updateOption("animationEnabled");this.animationEnabled=this.animationEnabled&&r;this.updateOption("animationDuration");this.updateOption("rangeChanging");this.updateOption("rangeChanged");
172
- this.updateOption("exportEnabled");this.updateOption("exportFileName");this.updateOption("zoomType");this.toolbar=new Xa(this,this.options.toolbar);if(this.options.zoomEnabled||this.panEnabled){if(this._zoomButton)O(this._zoomButton,{borderRight:this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor}),xa(this,this._zoomButton,"zoom");else{var h=!1;ya(this._zoomButton=document.createElement("button"));xa(this,
173
- this._zoomButton,"pan");this._toolBar.appendChild(this._zoomButton);this._zoomButton.style.borderRight=this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor;D(this._zoomButton,"touchstart",function(a){h=!0},this.allDOMEventHandlers);D(this._zoomButton,"click",function(){a.zoomEnabled?(a.zoomEnabled=!1,a.panEnabled=!0,xa(a,a._zoomButton,"zoom")):(a.zoomEnabled=!0,a.panEnabled=!1,xa(a,a._zoomButton,"pan"));a.render()},this.allDOMEventHandlers);D(this._zoomButton,"mousemove",
174
- function(){h?h=!1:(O(a._zoomButton,{backgroundColor:a.toolbar.itemBackgroundColorOnHover,color:a.toolbar.fontColorOnHover,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&O(a._zoomButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},this.allDOMEventHandlers);D(this._zoomButton,"mouseout",function(){h||(O(a._zoomButton,{backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&
175
- O(a._zoomButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}))},this.allDOMEventHandlers)}this._resetButton?(O(this._resetButton,{borderRight:this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor}),this._resetButton.title=this._cultureInfo.resetText):(h=!1,ya(this._resetButton=document.createElement("button")),xa(this,this._resetButton,"reset"),this._resetButton.style.borderRight=(this.exportEnabled?
176
- this.toolbar.buttonBorderThickness:0)+"px solid "+this.toolbar.buttonBorderColor,this._toolBar.appendChild(this._resetButton),D(this._resetButton,"touchstart",function(a){h=!0},this.allDOMEventHandlers),D(this._resetButton,"click",function(){a.toolTip.hide();a.toolTip&&a.toolTip.enabled&&a.toolTip.dispatchEvent("hidden",{chart:a,toolTip:a.toolTip},a.toolTip);a.zoomEnabled||a.panEnabled?(a.zoomEnabled=!0,a.panEnabled=!1,xa(a,a._zoomButton,"pan"),a._defaultCursor="default",a.overlaidCanvas.style.cursor=
177
- a._defaultCursor):(a.zoomEnabled=!1,a.panEnabled=!1);if(a.sessionVariables.axisX)for(var b=0;b<a.sessionVariables.axisX.length;b++)a.sessionVariables.axisX[b].newViewportMinimum=null,a.sessionVariables.axisX[b].newViewportMaximum=null;if(a.sessionVariables.axisX2)for(b=0;b<a.sessionVariables.axisX2.length;b++)a.sessionVariables.axisX2[b].newViewportMinimum=null,a.sessionVariables.axisX2[b].newViewportMaximum=null;if(a.sessionVariables.axisY)for(b=0;b<a.sessionVariables.axisY.length;b++)a.sessionVariables.axisY[b].newViewportMinimum=
178
- null,a.sessionVariables.axisY[b].newViewportMaximum=null;if(a.sessionVariables.axisY2)for(b=0;b<a.sessionVariables.axisY2.length;b++)a.sessionVariables.axisY2[b].newViewportMinimum=null,a.sessionVariables.axisY2[b].newViewportMaximum=null;a.resetOverlayedCanvas();0>=navigator.userAgent.search("MSIE")&&O(a._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"});ya(a._zoomButton,a._resetButton);a.stockChart&&(a.stockChart._rangeEventParameter={stockChart:a.stockChart,source:"chart",
179
- index:a.stockChart.charts.indexOf(a),minimum:null,maximum:null});a._dispatchRangeEvent("rangeChanging","reset");a.stockChart&&(a.stockChart._rangeEventParameter.type="rangeChanging",a.stockChart.dispatchEvent("rangeChanging",a.stockChart._rangeEventParameter,a.stockChart));a.render();a.syncCharts&&a.syncCharts(null,null);a._dispatchRangeEvent("rangeChanged","reset");a.stockChart&&(a.stockChart._rangeEventParameter.type="rangeChanged",a.stockChart.dispatchEvent("rangeChanged",a.stockChart._rangeEventParameter,
180
- a.stockChart))},this.allDOMEventHandlers),D(this._resetButton,"mousemove",function(){h||(O(a._resetButton,{backgroundColor:a.toolbar.itemBackgroundColorOnHover,color:a.toolbar.fontColorOnHover,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&O(a._resetButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},this.allDOMEventHandlers),D(this._resetButton,"mouseout",function(){h||(O(a._resetButton,{backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor,
181
- transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&O(a._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}))},this.allDOMEventHandlers),this.overlaidCanvas.style.cursor=a._defaultCursor);this.zoomEnabled||this.panEnabled||(this._zoomButton?(a._zoomButton.getAttribute("state")===a._cultureInfo.zoomText?(this.panEnabled=!0,this.zoomEnabled=!1):(this.zoomEnabled=!0,this.panEnabled=!1),Ta(a._zoomButton,a._resetButton)):(this.zoomEnabled=!0,this.panEnabled=
182
- !1))}else this.panEnabled=this.zoomEnabled=!1;ib(this);"none"!==this._toolBar.style.display&&this._zoomButton&&(this.panEnabled?xa(a,a._zoomButton,"zoom"):xa(a,a._zoomButton,"pan"),a._resetButton.getAttribute("state")!==a._cultureInfo.resetText&&xa(a,a._resetButton,"reset"));this.options.toolTip&&this.toolTip.options!==this.options.toolTip&&(this.toolTip.options=this.options.toolTip);for(var c in this.toolTip.options)this.toolTip.options.hasOwnProperty(c)&&this.toolTip.updateOption(c)};w.prototype._updateSize=
183
- function(){return lb.call(this,[this.canvas,this.overlaidCanvas,this._eventManager.ghostCanvas])};w.prototype._initialize=function(){this.isNavigator=f(this.parent)||f(this.parent._defaultsKey)||"Navigator"!==this.parent._defaultsKey?!1:!0;this._animator?this._animator.cancelAllAnimations():this._animator=new la(this);this.removeAllEventListeners();this.disableToolTip=!1;this._axes=[];this.funnelPyramidClickHandler=this.pieDoughnutClickHandler=null;this._updateOptions();this.animatedRender=r&&this.animationEnabled&&
184
- 0===this.renderCount;this._updateSize();this.clearCanvas();this.ctx.beginPath();this.axisX=[];this.axisX2=[];this.axisY=[];this.axisY2=[];this._indexLabels=[];this._dataInRenderedOrder=[];this._events=[];this._eventManager&&this._eventManager.reset();this.plotInfo={axisPlacement:null,plotTypes:[]};this.layoutManager=new Ka(0,0,this.width,this.height,this.isNavigator?0:2);this.plotArea.layoutManager&&this.plotArea.layoutManager.reset();this.data=[];this.title=null;this.subtitles=[];var a=0,h=null;
185
- if(this.options.data){for(var c=0;c<this.options.data.length;c++)if(a++,!this.options.data[c].type||0<=w._supportedChartTypes.indexOf(this.options.data[c].type)){var b=new P(this,this.options.data[c],a-1,++this._eventManager.lastObjectId);if(!f(b)&&b.dataPoints)for(var e=0;e<b.dataPoints.length;e++)if(b.dataPoints[e].x&&b.dataPoints[e].x.getTime){b.xValueType="dateTime";break}"error"===b.type&&(b.linkedDataSeriesIndex=f(this.options.data[c].linkedDataSeriesIndex)?c-1:this.options.data[c].linkedDataSeriesIndex,
186
- 0>b.linkedDataSeriesIndex||b.linkedDataSeriesIndex>=this.options.data.length||"number"!==typeof b.linkedDataSeriesIndex||"error"===this.options.data[b.linkedDataSeriesIndex].type)&&(b.linkedDataSeriesIndex=null);null===b.name&&(b.name="DataSeries "+a);null===b.color?1<this.options.data.length?(b._colorSet=[this.selectedColorSet[b.index%this.selectedColorSet.length]],b.color=this.selectedColorSet[b.index%this.selectedColorSet.length]):b._colorSet="line"===b.type||"stepLine"===b.type||"spline"===b.type||
187
- "area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"candlestick"===b.type||"ohlc"===b.type||"waterfall"===b.type||"boxAndWhisker"===b.type?[this.selectedColorSet[0]]:this.selectedColorSet:b._colorSet=[b.color];null===b.markerSize&&(("line"===b.type||"stepLine"===b.type||"spline"===b.type||0<=b.type.toLowerCase().indexOf("area"))&&b.dataPoints&&b.dataPoints.length<this.width/16||"scatter"===
188
- b.type)&&(b.markerSize=8);"bubble"!==b.type&&"scatter"!==b.type||!b.dataPoints||(b.dataPoints.some?b.dataPoints.some(function(a){return a.x})&&b.dataPoints.sort(k):b.dataPoints.sort(k));this.data.push(b);var e=b.axisPlacement,h=h||e,l;"normal"===e?"xySwapped"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+'" with bar chart':"none"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+'" with pie chart':null===this.plotInfo.axisPlacement&&(this.plotInfo.axisPlacement="normal"):
189
- "xySwapped"===e?"normal"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+'" with line, area, column or pie chart':"none"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+'" with pie chart':null===this.plotInfo.axisPlacement&&(this.plotInfo.axisPlacement="xySwapped"):"none"===e?"normal"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+'" with line, area, column or bar chart':"xySwapped"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+'" with bar chart':
190
- null===this.plotInfo.axisPlacement&&(this.plotInfo.axisPlacement="none"):null===e&&"none"===this.plotInfo.axisPlacement&&(l='You cannot combine "'+b.type+'" with pie chart');if(l&&window.console){window.console.log(l);return}}for(c=0;c<this.data.length;c++){if("none"==h&&"error"===this.data[c].type&&window.console){window.console.log('You cannot combine "'+b.type+'" with error chart');return}"error"===this.data[c].type&&(this.data[c].axisPlacement=this.plotInfo.axisPlacement=h||"normal",this.data[c]._linkedSeries=
191
- null===this.data[c].linkedDataSeriesIndex?null:this.data[this.data[c].linkedDataSeriesIndex])}}this._objectsInitialized=!0;this._plotAreaElements=[]};w._supportedChartTypes=Ea("line stepLine spline column area stepArea splineArea bar bubble scatter stackedColumn stackedColumn100 stackedBar stackedBar100 stackedArea stackedArea100 candlestick ohlc boxAndWhisker rangeColumn error rangeBar rangeArea rangeSplineArea pie doughnut funnel pyramid waterfall".split(" "));w.prototype.setLayout=function(){for(var a=
192
- this._plotAreaElements,h=0;h<this.data.length;h++)if("normal"===this.plotInfo.axisPlacement||"xySwapped"===this.plotInfo.axisPlacement){if(!this.data[h].axisYType||"primary"===this.data[h].axisYType)if(this.options.axisY&&0<this.options.axisY.length){if(!this.axisY.length)for(var c=0;c<this.options.axisY.length;c++)"normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY[c]=new A(this,"axisY",this.options.axisY[c],c,"axisY","left")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisY[c]=
193
- new A(this,"axisY",this.options.axisY[c],c,"axisY","bottom"));this.data[h].axisY=this.axisY[0<=this.data[h].axisYIndex&&this.data[h].axisYIndex<this.axisY.length?this.data[h].axisYIndex:0];this.axisY[0<=this.data[h].axisYIndex&&this.data[h].axisYIndex<this.axisY.length?this.data[h].axisYIndex:0].dataSeries.push(this.data[h])}else this.axisY.length||("normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY[0]=new A(this,"axisY",this.options.axisY,0,"axisY","left")):"xySwapped"===this.plotInfo.axisPlacement&&
194
- this._axes.push(this.axisY[0]=new A(this,"axisY",this.options.axisY,0,"axisY","bottom"))),this.data[h].axisY=this.axisY[0],this.axisY[0].dataSeries.push(this.data[h]);if("secondary"===this.data[h].axisYType)if(this.options.axisY2&&0<this.options.axisY2.length){if(!this.axisY2.length)for(c=0;c<this.options.axisY2.length;c++)"normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY2[c]=new A(this,"axisY2",this.options.axisY2[c],c,"axisY","right")):"xySwapped"===this.plotInfo.axisPlacement&&
195
- this._axes.push(this.axisY2[c]=new A(this,"axisY2",this.options.axisY2[c],c,"axisY","top"));this.data[h].axisY=this.axisY2[0<=this.data[h].axisYIndex&&this.data[h].axisYIndex<this.axisY2.length?this.data[h].axisYIndex:0];this.axisY2[0<=this.data[h].axisYIndex&&this.data[h].axisYIndex<this.axisY2.length?this.data[h].axisYIndex:0].dataSeries.push(this.data[h])}else this.axisY2.length||("normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY2[0]=new A(this,"axisY2",this.options.axisY2,0,"axisY",
196
- "right")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisY2[0]=new A(this,"axisY2",this.options.axisY2,0,"axisY","top"))),this.data[h].axisY=this.axisY2[0],this.axisY2[0].dataSeries.push(this.data[h]);if(!this.data[h].axisXType||"primary"===this.data[h].axisXType)if(this.options.axisX&&0<this.options.axisX.length){if(!this.axisX.length)for(c=0;c<this.options.axisX.length;c++)"normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisX[c]=new A(this,"axisX",this.options.axisX[c],
197
- c,"axisX","bottom")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX[c]=new A(this,"axisX",this.options.axisX[c],c,"axisX","left"));this.data[h].axisX=this.axisX[0<=this.data[h].axisXIndex&&this.data[h].axisXIndex<this.axisX.length?this.data[h].axisXIndex:0];this.axisX[0<=this.data[h].axisXIndex&&this.data[h].axisXIndex<this.axisX.length?this.data[h].axisXIndex:0].dataSeries.push(this.data[h])}else this.axisX.length||("normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisX[0]=
198
- new A(this,"axisX",this.options.axisX,0,"axisX","bottom")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX[0]=new A(this,"axisX",this.options.axisX,0,"axisX","left"))),this.data[h].axisX=this.axisX[0],this.axisX[0].dataSeries.push(this.data[h]);if("secondary"===this.data[h].axisXType)if(this.options.axisX2&&0<this.options.axisX2.length){if(!this.axisX2.length)for(c=0;c<this.options.axisX2.length;c++)"normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisX2[c]=new A(this,
199
- "axisX2",this.options.axisX2[c],c,"axisX","top")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX2[c]=new A(this,"axisX2",this.options.axisX2[c],c,"axisX","right"));this.data[h].axisX=this.axisX2[0<=this.data[h].axisXIndex&&this.data[h].axisXIndex<this.axisX2.length?this.data[h].axisXIndex:0];this.axisX2[0<=this.data[h].axisXIndex&&this.data[h].axisXIndex<this.axisX2.length?this.data[h].axisXIndex:0].dataSeries.push(this.data[h])}else this.axisX2.length||("normal"===this.plotInfo.axisPlacement?
200
- this._axes.push(this.axisX2[0]=new A(this,"axisX2",this.options.axisX2,0,"axisX","top")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX2[0]=new A(this,"axisX2",this.options.axisX2,0,"axisX","right"))),this.data[h].axisX=this.axisX2[0],this.axisX2[0].dataSeries.push(this.data[h])}if(this.axisY){for(c=1;c<this.axisY.length;c++)"undefined"===typeof this.axisY[c].options.gridThickness&&(this.axisY[c].gridThickness=0);for(c=0;c<this.axisY.length-1;c++)"undefined"===typeof this.axisY[c].options.margin&&
201
- (this.axisY[c].margin=10)}if(this.axisY2){for(c=1;c<this.axisY2.length;c++)"undefined"===typeof this.axisY2[c].options.gridThickness&&(this.axisY2[c].gridThickness=0);for(c=0;c<this.axisY2.length-1;c++)"undefined"===typeof this.axisY2[c].options.margin&&(this.axisY2[c].margin=10)}this.axisY&&0<this.axisY.length&&(this.axisY2&&0<this.axisY2.length)&&(0<this.axisY[0].gridThickness&&"undefined"===typeof this.axisY2[0].options.gridThickness?this.axisY2[0].gridThickness=0:0<this.axisY2[0].gridThickness&&
202
- "undefined"===typeof this.axisY[0].options.gridThickness&&(this.axisY[0].gridThickness=0));if(this.axisX)for(c=0;c<this.axisX.length;c++)"undefined"===typeof this.axisX[c].options.gridThickness&&(this.axisX[c].gridThickness=0);if(this.axisX2)for(c=0;c<this.axisX2.length;c++)"undefined"===typeof this.axisX2[c].options.gridThickness&&(this.axisX2[c].gridThickness=0);this.axisX&&0<this.axisX.length&&(this.axisX2&&0<this.axisX2.length)&&(0<this.axisX[0].gridThickness&&"undefined"===typeof this.axisX2[0].options.gridThickness?
203
- this.axisX2[0].gridThickness=0:0<this.axisX2[0].gridThickness&&"undefined"===typeof this.axisX[0].options.gridThickness&&(this.axisX[0].gridThickness=0));c=!1;if(0<this._axes.length&&this.options.zoomEnabled&&(this.zoomEnabled||this.panEnabled))for(h=0;h<this._axes.length;h++)if(!f(this._axes[h].viewportMinimum)||!f(this._axes[h].viewportMaximum)){c=!0;break}c?(Ta(this._zoomButton,this._resetButton),this._toolBar.style.border=this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,
204
- this._zoomButton.style.borderRight=this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,this._resetButton.style.borderRight=(this.exportEnabled?this.toolbar.buttonBorderThickness:0)+"px solid "+this.toolbar.buttonBorderColor):(ya(this._zoomButton,this._resetButton),this._toolBar.style.border=this.toolbar.buttonBorderThickness+"px solid transparent",this.options.zoomEnabled&&(this.zoomEnabled=!0,this.panEnabled=!1));qb(this);this._processData();this.options.title&&(this.title=
205
- new Ha(this,this.options.title),this.title.dockInsidePlotArea?a.push(this.title):this.title.setLayout());if(this.options.subtitles)for(h=0;h<this.options.subtitles.length;h++)c=new Na(this,this.options.subtitles[h],h),this.subtitles.push(c),c.dockInsidePlotArea?a.push(c):c.setLayout();this.legend=new L(this,this.options.legend);for(h=0;h<this.data.length;h++)(this.data[h].showInLegend||"pie"===this.data[h].type||"doughnut"===this.data[h].type||"funnel"===this.data[h].type||"pyramid"===this.data[h].type)&&
206
- this.legend.dataSeries.push(this.data[h]);this.legend.dockInsidePlotArea?a.push(this.legend):this.legend.setLayout();for(h=0;h<this._axes.length;h++)if(this._axes[h].scaleBreaks&&this._axes[h].scaleBreaks._appliedBreaks.length){r?(this._breaksCanvas=ra(this.width,this.height,!0),this._breaksCanvasCtx=this._breaksCanvas.getContext("2d")):(this._breaksCanvas=this.canvas,this._breaksCanvasCtx=this.ctx);break}this._preRenderCanvas=ra(this.width,this.height);this._preRenderCtx=this._preRenderCanvas.getContext("2d");
207
- "normal"!==this.plotInfo.axisPlacement&&"xySwapped"!==this.plotInfo.axisPlacement||A.setLayout(this.axisX,this.axisX2,this.axisY,this.axisY2,this.plotInfo.axisPlacement,this.layoutManager.getFreeSpace())};w.prototype.renderElements=function(){if(this.height){var a=this._plotAreaElements;this.title&&!this.title.dockInsidePlotArea&&this.title.render();for(var h=0;h<this.subtitles.length;h++)this.subtitles[h].dockInsidePlotArea||this.subtitles[h].render();this.legend.dockInsidePlotArea||this.legend.render();
208
- if("normal"===this.plotInfo.axisPlacement||"xySwapped"===this.plotInfo.axisPlacement)A.render(this.axisX,this.axisX2,this.axisY,this.axisY2,this.plotInfo.axisPlacement);else if("none"===this.plotInfo.axisPlacement)this.preparePlotArea();else return;for(h=0;h<a.length;h++)a[h].setLayout(),a[h].render();var c=[];if(this.animatedRender){var b=ra(this.width,this.height);b.getContext("2d").drawImage(this.canvas,0,0,this.width,this.height)}sb(this);var a=this.ctx.miterLimit,e;this.ctx.miterLimit=3;r&&this._breaksCanvas&&
209
- (this._preRenderCtx.drawImage(this.canvas,0,0,this.width,this.height),this._preRenderCtx.drawImage(this._breaksCanvas,0,0,this.width,this.height),this._breaksCanvasCtx.globalCompositeOperation="source-atop",this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),this._preRenderCtx.clearRect(0,0,this.width,this.height));for(h=0;h<this.plotInfo.plotTypes.length;h++)for(var l=this.plotInfo.plotTypes[h],C=0;C<l.plotUnits.length;C++){var f=l.plotUnits[C],d=null;f.targetCanvas&&
210
- Ca(f.targetCanvas);f.targetCanvas=null;this.animatedRender&&(f.targetCanvas=ra(this.width,this.height),f.targetCanvasCtx=f.targetCanvas.getContext("2d"),e=f.targetCanvasCtx.miterLimit,f.targetCanvasCtx.miterLimit=3);"line"===f.type?d=this.renderLine(f):"stepLine"===f.type?d=this.renderStepLine(f):"spline"===f.type?d=this.renderSpline(f):"column"===f.type?d=this.renderColumn(f):"bar"===f.type?d=this.renderBar(f):"area"===f.type?d=this.renderArea(f):"stepArea"===f.type?d=this.renderStepArea(f):"splineArea"===
211
- f.type?d=this.renderSplineArea(f):"stackedColumn"===f.type?d=this.renderStackedColumn(f):"stackedColumn100"===f.type?d=this.renderStackedColumn100(f):"stackedBar"===f.type?d=this.renderStackedBar(f):"stackedBar100"===f.type?d=this.renderStackedBar100(f):"stackedArea"===f.type?d=this.renderStackedArea(f):"stackedArea100"===f.type?d=this.renderStackedArea100(f):"bubble"===f.type?d=d=this.renderBubble(f):"scatter"===f.type?d=this.renderScatter(f):"pie"===f.type?this.renderPie(f):"doughnut"===f.type?
212
- this.renderPie(f):"funnel"===f.type?d=this.renderFunnel(f):"pyramid"===f.type?d=this.renderFunnel(f):"candlestick"===f.type?d=this.renderCandlestick(f):"ohlc"===f.type?d=this.renderCandlestick(f):"rangeColumn"===f.type?d=this.renderRangeColumn(f):"error"===f.type?d=this.renderError(f):"rangeBar"===f.type?d=this.renderRangeBar(f):"rangeArea"===f.type?d=this.renderRangeArea(f):"rangeSplineArea"===f.type?d=this.renderRangeSplineArea(f):"waterfall"===f.type?d=this.renderWaterfall(f):"boxAndWhisker"===
213
- f.type&&(d=this.renderBoxAndWhisker(f));for(var m=0;m<f.dataSeriesIndexes.length;m++)this._dataInRenderedOrder.push(this.data[f.dataSeriesIndexes[m]]);this.animatedRender&&(f.targetCanvasCtx.miterLimit=e,d&&c.push(d))}this.ctx.miterLimit=a;this.animatedRender&&this._breaksCanvasCtx&&c.push({source:this._breaksCanvasCtx,dest:this.plotArea.ctx,animationCallback:t.fadeInAnimation,easingFunction:t.easing.easeInQuad,animationBase:0,startTimePercent:0.7});this.animatedRender&&0<this._indexLabels.length&&
171
+ this.updateOption("theme");this.updateOption("colorSet")&&(this.selectedColorSet="undefined"!==typeof sa[this.colorSet]?sa[this.colorSet]:sa.colorSet1);this.updateOption("backgroundColor");this.stockChart&&(this.stockChart.options&&"undefined"!==typeof this.stockChart.options.backgroundColor&&f(this.options.backgroundColor))&&(this.backgroundColor=this.stockChart.backgroundColor);this.backgroundColor||(this.backgroundColor="rgba(0,0,0,0)");this.updateOption("culture");this._cultureInfo=new Oa(this.options.culture);
172
+ this.updateOption("animationEnabled");this.animationEnabled=this.animationEnabled&&r;this.updateOption("animationDuration");this.updateOption("rangeChanging");this.updateOption("rangeChanged");this.updateOption("exportEnabled");this.updateOption("exportFileName");this.updateOption("zoomType");this.toolbar=new Xa(this,this.options.toolbar);if(this.options.zoomEnabled||this.panEnabled){if(this._zoomButton)O(this._zoomButton,{borderRight:this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,
173
+ backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor}),xa(this,this._zoomButton,"zoom");else{var h=!1;ya(this._zoomButton=document.createElement("button"));xa(this,this._zoomButton,"pan");this._toolBar.appendChild(this._zoomButton);this._zoomButton.style.borderRight=this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor;D(this._zoomButton,"touchstart",function(a){h=!0},this.allDOMEventHandlers);D(this._zoomButton,"click",function(){a.zoomEnabled?(a.zoomEnabled=
174
+ !1,a.panEnabled=!0,xa(a,a._zoomButton,"zoom")):(a.zoomEnabled=!0,a.panEnabled=!1,xa(a,a._zoomButton,"pan"));a.render()},this.allDOMEventHandlers);D(this._zoomButton,"mousemove",function(){h?h=!1:(O(a._zoomButton,{backgroundColor:a.toolbar.itemBackgroundColorOnHover,color:a.toolbar.fontColorOnHover,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&O(a._zoomButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},this.allDOMEventHandlers);D(this._zoomButton,
175
+ "mouseout",function(){h||(O(a._zoomButton,{backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&O(a._zoomButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}))},this.allDOMEventHandlers)}this._resetButton?(O(this._resetButton,{borderRight:this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor}),
176
+ this._resetButton.title=this._cultureInfo.resetText):(h=!1,ya(this._resetButton=document.createElement("button")),xa(this,this._resetButton,"reset"),this._resetButton.style.borderRight=(this.exportEnabled?this.toolbar.buttonBorderThickness:0)+"px solid "+this.toolbar.buttonBorderColor,this._toolBar.appendChild(this._resetButton),D(this._resetButton,"touchstart",function(a){h=!0},this.allDOMEventHandlers),D(this._resetButton,"click",function(){a.toolTip.hide();a.toolTip&&a.toolTip.enabled&&a.toolTip.dispatchEvent("hidden",
177
+ {chart:a,toolTip:a.toolTip},a.toolTip);a.zoomEnabled||a.panEnabled?(a.zoomEnabled=!0,a.panEnabled=!1,xa(a,a._zoomButton,"pan"),a._defaultCursor="default",a.overlaidCanvas.style.cursor=a._defaultCursor):(a.zoomEnabled=!1,a.panEnabled=!1);if(a.sessionVariables.axisX)for(var b=0;b<a.sessionVariables.axisX.length;b++)a.sessionVariables.axisX[b].newViewportMinimum=null,a.sessionVariables.axisX[b].newViewportMaximum=null;if(a.sessionVariables.axisX2)for(b=0;b<a.sessionVariables.axisX2.length;b++)a.sessionVariables.axisX2[b].newViewportMinimum=
178
+ null,a.sessionVariables.axisX2[b].newViewportMaximum=null;if(a.sessionVariables.axisY)for(b=0;b<a.sessionVariables.axisY.length;b++)a.sessionVariables.axisY[b].newViewportMinimum=null,a.sessionVariables.axisY[b].newViewportMaximum=null;if(a.sessionVariables.axisY2)for(b=0;b<a.sessionVariables.axisY2.length;b++)a.sessionVariables.axisY2[b].newViewportMinimum=null,a.sessionVariables.axisY2[b].newViewportMaximum=null;a.resetOverlayedCanvas();0>=navigator.userAgent.search("MSIE")&&O(a._resetButton.childNodes[0],
179
+ {WebkitFilter:"invert(0%)",filter:"invert(0%)"});ya(a._zoomButton,a._resetButton);a.stockChart&&(a.stockChart._rangeEventParameter={stockChart:a.stockChart,source:"chart",index:a.stockChart.charts.indexOf(a),minimum:null,maximum:null});a._dispatchRangeEvent("rangeChanging","reset");a.stockChart&&(a.stockChart._rangeEventParameter.type="rangeChanging",a.stockChart.dispatchEvent("rangeChanging",a.stockChart._rangeEventParameter,a.stockChart));a.render();a.syncCharts&&a.syncCharts(null,null);a._dispatchRangeEvent("rangeChanged",
180
+ "reset");a.stockChart&&(a.stockChart._rangeEventParameter.type="rangeChanged",a.stockChart.dispatchEvent("rangeChanged",a.stockChart._rangeEventParameter,a.stockChart))},this.allDOMEventHandlers),D(this._resetButton,"mousemove",function(){h||(O(a._resetButton,{backgroundColor:a.toolbar.itemBackgroundColorOnHover,color:a.toolbar.fontColorOnHover,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&O(a._resetButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},
181
+ this.allDOMEventHandlers),D(this._resetButton,"mouseout",function(){h||(O(a._resetButton,{backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&O(a._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}))},this.allDOMEventHandlers),this.overlaidCanvas.style.cursor=a._defaultCursor);this.zoomEnabled||this.panEnabled||(this._zoomButton?(a._zoomButton.getAttribute("state")===a._cultureInfo.zoomText?
182
+ (this.panEnabled=!0,this.zoomEnabled=!1):(this.zoomEnabled=!0,this.panEnabled=!1),Ta(a._zoomButton,a._resetButton)):(this.zoomEnabled=!0,this.panEnabled=!1))}else this.panEnabled=this.zoomEnabled=!1;ib(this);"none"!==this._toolBar.style.display&&this._zoomButton&&(this.panEnabled?xa(a,a._zoomButton,"zoom"):xa(a,a._zoomButton,"pan"),a._resetButton.getAttribute("state")!==a._cultureInfo.resetText&&xa(a,a._resetButton,"reset"));this.options.toolTip&&this.toolTip.options!==this.options.toolTip&&(this.toolTip.options=
183
+ this.options.toolTip);for(var c in this.toolTip.options)this.toolTip.options.hasOwnProperty(c)&&this.toolTip.updateOption(c)};w.prototype._updateSize=function(){return lb.call(this,[this.canvas,this.overlaidCanvas,this._eventManager.ghostCanvas])};w.prototype._initialize=function(){this.isNavigator=f(this.parent)||f(this.parent._defaultsKey)||"Navigator"!==this.parent._defaultsKey?!1:!0;this._animator?this._animator.cancelAllAnimations():this._animator=new la(this);this.removeAllEventListeners();
184
+ this.disableToolTip=!1;this._axes=[];this.funnelPyramidClickHandler=this.pieDoughnutClickHandler=null;this._updateOptions();this.animatedRender=r&&this.animationEnabled&&0===this.renderCount;this._updateSize();this.clearCanvas();this.ctx.beginPath();this.axisX=[];this.axisX2=[];this.axisY=[];this.axisY2=[];this._indexLabels=[];this._dataInRenderedOrder=[];this._events=[];this._eventManager&&this._eventManager.reset();this.plotInfo={axisPlacement:null,plotTypes:[]};this.layoutManager=new Ka(0,0,this.width,
185
+ this.height,this.isNavigator?0:2);this.plotArea.layoutManager&&this.plotArea.layoutManager.reset();this.data=[];this.title=null;this.subtitles=[];var a=0,h=null;if(this.options.data){for(var c=0;c<this.options.data.length;c++)if(a++,!this.options.data[c].type||0<=w._supportedChartTypes.indexOf(this.options.data[c].type)){var b=new P(this,this.options.data[c],a-1,++this._eventManager.lastObjectId);if(!f(b)&&b.dataPoints)for(var e=0;e<b.dataPoints.length;e++)if(b.dataPoints[e].x&&b.dataPoints[e].x.getTime){b.xValueType=
186
+ "dateTime";break}"error"===b.type&&(b.linkedDataSeriesIndex=f(this.options.data[c].linkedDataSeriesIndex)?c-1:this.options.data[c].linkedDataSeriesIndex,0>b.linkedDataSeriesIndex||b.linkedDataSeriesIndex>=this.options.data.length||"number"!==typeof b.linkedDataSeriesIndex||"error"===this.options.data[b.linkedDataSeriesIndex].type)&&(b.linkedDataSeriesIndex=null);null===b.name&&(b.name="DataSeries "+a);null===b.color?1<this.options.data.length?(b._colorSet=[this.selectedColorSet[b.index%this.selectedColorSet.length]],
187
+ b.color=this.selectedColorSet[b.index%this.selectedColorSet.length]):b._colorSet="line"===b.type||"stepLine"===b.type||"spline"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"candlestick"===b.type||"ohlc"===b.type||"waterfall"===b.type||"boxAndWhisker"===b.type?[this.selectedColorSet[0]]:this.selectedColorSet:b._colorSet=[b.color];null===b.markerSize&&(("line"===b.type||"stepLine"===
188
+ b.type||"spline"===b.type||0<=b.type.toLowerCase().indexOf("area"))&&b.dataPoints&&b.dataPoints.length<this.width/16||"scatter"===b.type)&&(b.markerSize=8);"bubble"!==b.type&&"scatter"!==b.type||!b.dataPoints||(b.dataPoints.some?b.dataPoints.some(function(a){return a.x})&&b.dataPoints.sort(k):b.dataPoints.sort(k));this.data.push(b);var e=b.axisPlacement,h=h||e,l;"normal"===e?"xySwapped"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+'" with bar chart':"none"===this.plotInfo.axisPlacement?
189
+ l='You cannot combine "'+b.type+'" with pie chart':null===this.plotInfo.axisPlacement&&(this.plotInfo.axisPlacement="normal"):"xySwapped"===e?"normal"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+'" with line, area, column or pie chart':"none"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+'" with pie chart':null===this.plotInfo.axisPlacement&&(this.plotInfo.axisPlacement="xySwapped"):"none"===e?"normal"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+
190
+ '" with line, area, column or bar chart':"xySwapped"===this.plotInfo.axisPlacement?l='You cannot combine "'+b.type+'" with bar chart':null===this.plotInfo.axisPlacement&&(this.plotInfo.axisPlacement="none"):null===e&&"none"===this.plotInfo.axisPlacement&&(l='You cannot combine "'+b.type+'" with pie chart');if(l&&window.console){window.console.log(l);return}}for(c=0;c<this.data.length;c++){if("none"==h&&"error"===this.data[c].type&&window.console){window.console.log('You cannot combine "'+b.type+'" with error chart');
191
+ return}"error"===this.data[c].type&&(this.data[c].axisPlacement=this.plotInfo.axisPlacement=h||"normal",this.data[c]._linkedSeries=null===this.data[c].linkedDataSeriesIndex?null:this.data[this.data[c].linkedDataSeriesIndex])}}this._objectsInitialized=!0;this._plotAreaElements=[]};w._supportedChartTypes=Ea("line stepLine spline column area stepArea splineArea bar bubble scatter stackedColumn stackedColumn100 stackedBar stackedBar100 stackedArea stackedArea100 candlestick ohlc boxAndWhisker rangeColumn error rangeBar rangeArea rangeSplineArea pie doughnut funnel pyramid waterfall".split(" "));
192
+ w.prototype.setLayout=function(){for(var a=this._plotAreaElements,h=0;h<this.data.length;h++)if("normal"===this.plotInfo.axisPlacement||"xySwapped"===this.plotInfo.axisPlacement){if(!this.data[h].axisYType||"primary"===this.data[h].axisYType)if(this.options.axisY&&0<this.options.axisY.length){if(!this.axisY.length)for(var c=0;c<this.options.axisY.length;c++)"normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY[c]=new A(this,"axisY",this.options.axisY[c],c,"axisY","left")):"xySwapped"===
193
+ this.plotInfo.axisPlacement&&this._axes.push(this.axisY[c]=new A(this,"axisY",this.options.axisY[c],c,"axisY","bottom"));this.data[h].axisY=this.axisY[0<=this.data[h].axisYIndex&&this.data[h].axisYIndex<this.axisY.length?this.data[h].axisYIndex:0];this.axisY[0<=this.data[h].axisYIndex&&this.data[h].axisYIndex<this.axisY.length?this.data[h].axisYIndex:0].dataSeries.push(this.data[h])}else this.axisY.length||("normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY[0]=new A(this,"axisY",this.options.axisY,
194
+ 0,"axisY","left")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisY[0]=new A(this,"axisY",this.options.axisY,0,"axisY","bottom"))),this.data[h].axisY=this.axisY[0],this.axisY[0].dataSeries.push(this.data[h]);if("secondary"===this.data[h].axisYType)if(this.options.axisY2&&0<this.options.axisY2.length){if(!this.axisY2.length)for(c=0;c<this.options.axisY2.length;c++)"normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY2[c]=new A(this,"axisY2",this.options.axisY2[c],c,
195
+ "axisY","right")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisY2[c]=new A(this,"axisY2",this.options.axisY2[c],c,"axisY","top"));this.data[h].axisY=this.axisY2[0<=this.data[h].axisYIndex&&this.data[h].axisYIndex<this.axisY2.length?this.data[h].axisYIndex:0];this.axisY2[0<=this.data[h].axisYIndex&&this.data[h].axisYIndex<this.axisY2.length?this.data[h].axisYIndex:0].dataSeries.push(this.data[h])}else this.axisY2.length||("normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY2[0]=
196
+ new A(this,"axisY2",this.options.axisY2,0,"axisY","right")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisY2[0]=new A(this,"axisY2",this.options.axisY2,0,"axisY","top"))),this.data[h].axisY=this.axisY2[0],this.axisY2[0].dataSeries.push(this.data[h]);if(!this.data[h].axisXType||"primary"===this.data[h].axisXType)if(this.options.axisX&&0<this.options.axisX.length){if(!this.axisX.length)for(c=0;c<this.options.axisX.length;c++)"normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisX[c]=
197
+ new A(this,"axisX",this.options.axisX[c],c,"axisX","bottom")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX[c]=new A(this,"axisX",this.options.axisX[c],c,"axisX","left"));this.data[h].axisX=this.axisX[0<=this.data[h].axisXIndex&&this.data[h].axisXIndex<this.axisX.length?this.data[h].axisXIndex:0];this.axisX[0<=this.data[h].axisXIndex&&this.data[h].axisXIndex<this.axisX.length?this.data[h].axisXIndex:0].dataSeries.push(this.data[h])}else this.axisX.length||("normal"===this.plotInfo.axisPlacement?
198
+ this._axes.push(this.axisX[0]=new A(this,"axisX",this.options.axisX,0,"axisX","bottom")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX[0]=new A(this,"axisX",this.options.axisX,0,"axisX","left"))),this.data[h].axisX=this.axisX[0],this.axisX[0].dataSeries.push(this.data[h]);if("secondary"===this.data[h].axisXType)if(this.options.axisX2&&0<this.options.axisX2.length){if(!this.axisX2.length)for(c=0;c<this.options.axisX2.length;c++)"normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisX2[c]=
199
+ new A(this,"axisX2",this.options.axisX2[c],c,"axisX","top")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX2[c]=new A(this,"axisX2",this.options.axisX2[c],c,"axisX","right"));this.data[h].axisX=this.axisX2[0<=this.data[h].axisXIndex&&this.data[h].axisXIndex<this.axisX2.length?this.data[h].axisXIndex:0];this.axisX2[0<=this.data[h].axisXIndex&&this.data[h].axisXIndex<this.axisX2.length?this.data[h].axisXIndex:0].dataSeries.push(this.data[h])}else this.axisX2.length||("normal"===
200
+ this.plotInfo.axisPlacement?this._axes.push(this.axisX2[0]=new A(this,"axisX2",this.options.axisX2,0,"axisX","top")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX2[0]=new A(this,"axisX2",this.options.axisX2,0,"axisX","right"))),this.data[h].axisX=this.axisX2[0],this.axisX2[0].dataSeries.push(this.data[h])}if(this.axisY){for(c=1;c<this.axisY.length;c++)"undefined"===typeof this.axisY[c].options.gridThickness&&(this.axisY[c].gridThickness=0);for(c=0;c<this.axisY.length-1;c++)"undefined"===
201
+ typeof this.axisY[c].options.margin&&(this.axisY[c].margin=10)}if(this.axisY2){for(c=1;c<this.axisY2.length;c++)"undefined"===typeof this.axisY2[c].options.gridThickness&&(this.axisY2[c].gridThickness=0);for(c=0;c<this.axisY2.length-1;c++)"undefined"===typeof this.axisY2[c].options.margin&&(this.axisY2[c].margin=10)}this.axisY&&0<this.axisY.length&&(this.axisY2&&0<this.axisY2.length)&&(0<this.axisY[0].gridThickness&&"undefined"===typeof this.axisY2[0].options.gridThickness?this.axisY2[0].gridThickness=
202
+ 0:0<this.axisY2[0].gridThickness&&"undefined"===typeof this.axisY[0].options.gridThickness&&(this.axisY[0].gridThickness=0));if(this.axisX)for(c=0;c<this.axisX.length;c++)"undefined"===typeof this.axisX[c].options.gridThickness&&(this.axisX[c].gridThickness=0);if(this.axisX2)for(c=0;c<this.axisX2.length;c++)"undefined"===typeof this.axisX2[c].options.gridThickness&&(this.axisX2[c].gridThickness=0);this.axisX&&0<this.axisX.length&&(this.axisX2&&0<this.axisX2.length)&&(0<this.axisX[0].gridThickness&&
203
+ "undefined"===typeof this.axisX2[0].options.gridThickness?this.axisX2[0].gridThickness=0:0<this.axisX2[0].gridThickness&&"undefined"===typeof this.axisX[0].options.gridThickness&&(this.axisX[0].gridThickness=0));c=!1;if(0<this._axes.length&&this.options.zoomEnabled&&(this.zoomEnabled||this.panEnabled))for(h=0;h<this._axes.length;h++)if(!f(this._axes[h].viewportMinimum)||!f(this._axes[h].viewportMaximum)){c=!0;break}c?(Ta(this._zoomButton,this._resetButton),this._toolBar.style.border=this.toolbar.buttonBorderThickness+
204
+ "px solid "+this.toolbar.buttonBorderColor,this._zoomButton.style.borderRight=this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,this._resetButton.style.borderRight=(this.exportEnabled?this.toolbar.buttonBorderThickness:0)+"px solid "+this.toolbar.buttonBorderColor):(ya(this._zoomButton,this._resetButton),this._toolBar.style.border=this.toolbar.buttonBorderThickness+"px solid transparent",this.options.zoomEnabled&&(this.zoomEnabled=!0,this.panEnabled=!1));qb(this);this._processData();
205
+ this.options.title&&(this.title=new Ha(this,this.options.title),this.title.dockInsidePlotArea?a.push(this.title):this.title.setLayout());if(this.options.subtitles)for(h=0;h<this.options.subtitles.length;h++)c=new Na(this,this.options.subtitles[h],h),this.subtitles.push(c),c.dockInsidePlotArea?a.push(c):c.setLayout();this.legend=new L(this,this.options.legend);for(h=0;h<this.data.length;h++)(this.data[h].showInLegend||"pie"===this.data[h].type||"doughnut"===this.data[h].type||"funnel"===this.data[h].type||
206
+ "pyramid"===this.data[h].type)&&this.legend.dataSeries.push(this.data[h]);this.legend.dockInsidePlotArea?a.push(this.legend):this.legend.setLayout();for(h=0;h<this._axes.length;h++)if(this._axes[h].scaleBreaks&&this._axes[h].scaleBreaks._appliedBreaks.length){r?(this._breaksCanvas=ra(this.width,this.height,!0),this._breaksCanvasCtx=this._breaksCanvas.getContext("2d")):(this._breaksCanvas=this.canvas,this._breaksCanvasCtx=this.ctx);break}this._preRenderCanvas=ra(this.width,this.height);this._preRenderCtx=
207
+ this._preRenderCanvas.getContext("2d");"normal"!==this.plotInfo.axisPlacement&&"xySwapped"!==this.plotInfo.axisPlacement||A.setLayout(this.axisX,this.axisX2,this.axisY,this.axisY2,this.plotInfo.axisPlacement,this.layoutManager.getFreeSpace())};w.prototype.renderElements=function(){if(this.height){var a=this._plotAreaElements;this.title&&!this.title.dockInsidePlotArea&&this.title.render();for(var h=0;h<this.subtitles.length;h++)this.subtitles[h].dockInsidePlotArea||this.subtitles[h].render();this.legend.dockInsidePlotArea||
208
+ this.legend.render();if("normal"===this.plotInfo.axisPlacement||"xySwapped"===this.plotInfo.axisPlacement)A.render(this.axisX,this.axisX2,this.axisY,this.axisY2,this.plotInfo.axisPlacement);else if("none"===this.plotInfo.axisPlacement)this.preparePlotArea();else return;for(h=0;h<a.length;h++)a[h].setLayout(),a[h].render();var c=[];if(this.animatedRender){var b=ra(this.width,this.height);b.getContext("2d").drawImage(this.canvas,0,0,this.width,this.height)}sb(this);var a=this.ctx.miterLimit,e;this.ctx.miterLimit=
209
+ 3;r&&this._breaksCanvas&&(this._preRenderCtx.drawImage(this.canvas,0,0,this.width,this.height),this._preRenderCtx.drawImage(this._breaksCanvas,0,0,this.width,this.height),this._breaksCanvasCtx.globalCompositeOperation="source-atop",this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),this._preRenderCtx.clearRect(0,0,this.width,this.height));for(h=0;h<this.plotInfo.plotTypes.length;h++)for(var l=this.plotInfo.plotTypes[h],C=0;C<l.plotUnits.length;C++){var f=l.plotUnits[C],
210
+ d=null;f.targetCanvas&&Ca(f.targetCanvas);f.targetCanvas=null;this.animatedRender&&(f.targetCanvas=ra(this.width,this.height),f.targetCanvasCtx=f.targetCanvas.getContext("2d"),e=f.targetCanvasCtx.miterLimit,f.targetCanvasCtx.miterLimit=3);"line"===f.type?d=this.renderLine(f):"stepLine"===f.type?d=this.renderStepLine(f):"spline"===f.type?d=this.renderSpline(f):"column"===f.type?d=this.renderColumn(f):"bar"===f.type?d=this.renderBar(f):"area"===f.type?d=this.renderArea(f):"stepArea"===f.type?d=this.renderStepArea(f):
211
+ "splineArea"===f.type?d=this.renderSplineArea(f):"stackedColumn"===f.type?d=this.renderStackedColumn(f):"stackedColumn100"===f.type?d=this.renderStackedColumn100(f):"stackedBar"===f.type?d=this.renderStackedBar(f):"stackedBar100"===f.type?d=this.renderStackedBar100(f):"stackedArea"===f.type?d=this.renderStackedArea(f):"stackedArea100"===f.type?d=this.renderStackedArea100(f):"bubble"===f.type?d=d=this.renderBubble(f):"scatter"===f.type?d=this.renderScatter(f):"pie"===f.type?this.renderPie(f):"doughnut"===
212
+ f.type?this.renderPie(f):"funnel"===f.type?d=this.renderFunnel(f):"pyramid"===f.type?d=this.renderFunnel(f):"candlestick"===f.type?d=this.renderCandlestick(f):"ohlc"===f.type?d=this.renderCandlestick(f):"rangeColumn"===f.type?d=this.renderRangeColumn(f):"error"===f.type?d=this.renderError(f):"rangeBar"===f.type?d=this.renderRangeBar(f):"rangeArea"===f.type?d=this.renderRangeArea(f):"rangeSplineArea"===f.type?d=this.renderRangeSplineArea(f):"waterfall"===f.type?d=this.renderWaterfall(f):"boxAndWhisker"===
213
+ f.type&&(d=this.renderBoxAndWhisker(f));for(var m=0;m<f.dataSeriesIndexes.length;m++)this._dataInRenderedOrder.push(this.data[f.dataSeriesIndexes[m]]);this.animatedRender&&(f.targetCanvasCtx.miterLimit=e,d&&c.push(d))}this.ctx.miterLimit=a;this.animatedRender&&this._breaksCanvasCtx&&c.push({source:this._breaksCanvasCtx,dest:this.plotArea.ctx,animationCallback:s.fadeInAnimation,easingFunction:s.easing.easeInQuad,animationBase:0,startTimePercent:0.7});this.animatedRender&&0<this._indexLabels.length&&
214
214
  (e=ra(this.width,this.height).getContext("2d"),Da(e),c.push(this.renderIndexLabels(e)));var n=this;if(0<c.length)n.disableToolTip=!0,n._animator.animate(200,n.animationDuration,function(a){n.ctx.clearRect(0,0,n.width,n.height);n.ctx.drawImage(b,0,0,Math.floor(n.width*ja),Math.floor(n.height*ja),0,0,n.width,n.height);for(var e=0;e<c.length;e++)d=c[e],1>a&&"undefined"!==typeof d.startTimePercent?a>=d.startTimePercent&&d.animationCallback(d.easingFunction(a-d.startTimePercent,0,1,1-d.startTimePercent),
215
215
  d):d.animationCallback(d.easingFunction(a,0,1,1),d);n.dispatchEvent("dataAnimationIterationEnd",{chart:n})},function(){c=[];for(var a=0;a<n.plotInfo.plotTypes.length;a++)for(var e=n.plotInfo.plotTypes[a],h=0;h<e.plotUnits.length;h++){var l=e.plotUnits[h];l.targetCanvas&&Ca(l.targetCanvas);l.targetCanvas=null}b=null;n.disableToolTip=!1;n.dispatchEvent("dataAnimationEnd",{chart:n})});else{if(n._breaksCanvas)if(r)n.plotArea.ctx.drawImage(n._breaksCanvas,0,0,this.width,this.height);else for(m=0;m<n._axes.length;m++)n._axes[m].createMask();
216
216
  0<n._indexLabels.length&&n.renderIndexLabels();n.dispatchEvent("dataAnimationIterationEnd",{chart:n});n.dispatchEvent("dataAnimationEnd",{chart:n})}this.attachPlotAreaEventHandlers();this.zoomEnabled||(this.panEnabled||!this._zoomButton||"none"===this._zoomButton.style.display)||ya(this._zoomButton,this._resetButton);this.toolTip._updateToolTip();this.renderCount++;Ma&&(n=this,setTimeout(function(){var a=document.getElementById("ghostCanvasCopy");a&&(Ua(a,n.width,n.height),a.getContext("2d").drawImage(n._eventManager.ghostCanvas,
@@ -225,21 +225,21 @@ d=0,m=!1,n=!1,p;if("normal"===f.axisPlacement||"xySwapped"===f.axisPlacement)var
225
225
  a.axisX.options&&a.axisX.options.maximum?a.axisX.options.maximum:Infinity;if(f.dataPoints[d].x&&f.dataPoints[d].x.getTime||"dateTime"===f.xValueType)l=!0;for(d=0;d<f.dataPoints.length;d++){"undefined"===typeof f.dataPoints[d].x&&(f.dataPoints[d].x=d+(a.axisX.logarithmic?1:0));f.dataPoints[d].x.getTime?(l=!0,b=f.dataPoints[d].x.getTime()):b=f.dataPoints[d].x;e=f.dataPoints[d].y;b<c.min&&(c.min=b);b>c.max&&(c.max=b);e<h.min&&"number"===typeof e&&(h.min=e);e>h.max&&"number"===typeof e&&(h.max=e);if(0<
226
226
  d){if(a.axisX.logarithmic){var z=b/f.dataPoints[d-1].x;1>z&&(z=1/z);c.minDiff>z&&1!==z&&(c.minDiff=z)}else z=b-f.dataPoints[d-1].x,0>z&&(z*=-1),c.minDiff>z&&0!==z&&(c.minDiff=z);null!==e&&null!==f.dataPoints[d-1].y&&(a.axisY.logarithmic?(z=e/f.dataPoints[d-1].y,1>z&&(z=1/z),h.minDiff>z&&1!==z&&(h.minDiff=z)):(z=e-f.dataPoints[d-1].y,0>z&&(z*=-1),h.minDiff>z&&0!==z&&(h.minDiff=z)))}if(b<q&&!m)null!==e&&(p=b);else{if(!m&&(m=!0,0<d)){d-=2;continue}if(b>g&&!n)n=!0;else if(b>g&&n)continue;f.dataPoints[d].label&&
227
227
  (a.axisX.labels[b]=f.dataPoints[d].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===e?c.viewPortMin===b&&p<b&&(c.viewPortMin=p):(e<h.viewPortMin&&"number"===typeof e&&(h.viewPortMin=e),e>h.viewPortMax&&"number"===typeof e&&(h.viewPortMax=e))}}f.axisX.valueType=f.xValueType=l?"dateTime":"number"}};w.prototype._processStackedPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var h=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,l=!1,C=[],d=[],
228
- ha=Infinity,m=-Infinity,n={},p=0;p<a.dataSeriesIndexes.length;p++){var q=this.data[a.dataSeriesIndexes[p]],g=0,z=!1,t=!1,r;if("normal"===q.axisPlacement||"xySwapped"===q.axisPlacement)var s=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:-Infinity,k=a.axisX.sessionVariables.newViewportMaximum?a.axisX.sessionVariables.newViewportMaximum:
228
+ ha=Infinity,m=-Infinity,n={},p=0;p<a.dataSeriesIndexes.length;p++){var q=this.data[a.dataSeriesIndexes[p]],g=0,z=!1,s=!1,r;if("normal"===q.axisPlacement||"xySwapped"===q.axisPlacement)var t=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:-Infinity,k=a.axisX.sessionVariables.newViewportMaximum?a.axisX.sessionVariables.newViewportMaximum:
229
229
  a.axisX.options&&a.axisX.options.viewportMaximum?a.axisX.options.viewportMaximum:a.axisX.options&&a.axisX.options.maximum?a.axisX.options.maximum:Infinity;if(q.dataPoints[g].x&&q.dataPoints[g].x.getTime||"dateTime"===q.xValueType)l=!0;for(g=0;g<q.dataPoints.length;g++){"undefined"===typeof q.dataPoints[g].x&&(q.dataPoints[g].x=g+(a.axisX.logarithmic?1:0));q.dataPoints[g].x.getTime?(l=!0,b=q.dataPoints[g].x.getTime()):b=q.dataPoints[g].x;e=f(q.dataPoints[g].y)?0:q.dataPoints[g].y;b<c.min&&(c.min=b);
230
- b>c.max&&(c.max=b);if(0<g){if(a.axisX.logarithmic){var y=b/q.dataPoints[g-1].x;1>y&&(y=1/y);c.minDiff>y&&1!==y&&(c.minDiff=y)}else y=b-q.dataPoints[g-1].x,0>y&&(y*=-1),c.minDiff>y&&0!==y&&(c.minDiff=y);null!==e&&null!==q.dataPoints[g-1].y&&(a.axisY.logarithmic?0<e&&(y=e/q.dataPoints[g-1].y,1>y&&(y=1/y),h.minDiff>y&&1!==y&&(h.minDiff=y)):(y=e-q.dataPoints[g-1].y,0>y&&(y*=-1),h.minDiff>y&&0!==y&&(h.minDiff=y)))}if(b<s&&!z)null!==q.dataPoints[g].y&&(r=b);else{if(!z&&(z=!0,0<g)){g-=2;continue}if(b>k&&
231
- !t)t=!0;else if(b>k&&t)continue;q.dataPoints[g].label&&(a.axisX.labels[b]=q.dataPoints[g].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===q.dataPoints[g].y?c.viewPortMin===b&&r<b&&(c.viewPortMin=r):(n[b]=(n[b]||0)+q.dataPoints[g].y,q.dataPointEOs[g].cumulativeY=n[b],a.yTotals[b]=(a.yTotals[b]?a.yTotals[b]:0)+e,a.yAbsTotals[b]=(a.yAbsTotals[b]?a.yAbsTotals[b]:0)+Math.abs(e),0<=e?C[b]?C[b]+=e:(C[b]=e,ha=Math.min(e,ha)):d[b]?d[b]+=e:(d[b]=e,m=Math.max(e,m)))}}a.axisY.scaleBreaks&&
230
+ b>c.max&&(c.max=b);if(0<g){if(a.axisX.logarithmic){var y=b/q.dataPoints[g-1].x;1>y&&(y=1/y);c.minDiff>y&&1!==y&&(c.minDiff=y)}else y=b-q.dataPoints[g-1].x,0>y&&(y*=-1),c.minDiff>y&&0!==y&&(c.minDiff=y);null!==e&&null!==q.dataPoints[g-1].y&&(a.axisY.logarithmic?0<e&&(y=e/q.dataPoints[g-1].y,1>y&&(y=1/y),h.minDiff>y&&1!==y&&(h.minDiff=y)):(y=e-q.dataPoints[g-1].y,0>y&&(y*=-1),h.minDiff>y&&0!==y&&(h.minDiff=y)))}if(b<t&&!z)null!==q.dataPoints[g].y&&(r=b);else{if(!z&&(z=!0,0<g)){g-=2;continue}if(b>k&&
231
+ !s)s=!0;else if(b>k&&s)continue;q.dataPoints[g].label&&(a.axisX.labels[b]=q.dataPoints[g].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===q.dataPoints[g].y?c.viewPortMin===b&&r<b&&(c.viewPortMin=r):(n[b]=(n[b]||0)+q.dataPoints[g].y,q.dataPointEOs[g].cumulativeY=n[b],a.yTotals[b]=(a.yTotals[b]?a.yTotals[b]:0)+e,a.yAbsTotals[b]=(a.yAbsTotals[b]?a.yAbsTotals[b]:0)+Math.abs(e),0<=e?C[b]?C[b]+=e:(C[b]=e,ha=Math.min(e,ha)):d[b]?d[b]+=e:(d[b]=e,m=Math.max(e,m)))}}a.axisY.scaleBreaks&&
232
232
  (a.axisY.scaleBreaks.autoCalculate&&1<=a.axisY.scaleBreaks.maxNumberOfAutoBreaks)&&(h.dataPointYPositiveSums?(h.dataPointYPositiveSums.push.apply(h.dataPointYPositiveSums,C),h.dataPointYNegativeSums.push.apply(h.dataPointYPositiveSums,d)):(h.dataPointYPositiveSums=C,h.dataPointYNegativeSums=d));q.axisX.valueType=q.xValueType=l?"dateTime":"number"}for(g in C)C.hasOwnProperty(g)&&!isNaN(g)&&(a=C[g],a<h.min&&(h.min=Math.min(a,ha)),a>h.max&&(h.max=a),g<c.viewPortMin||g>c.viewPortMax||(a<h.viewPortMin&&
233
233
  (h.viewPortMin=Math.min(a,ha)),a>h.viewPortMax&&(h.viewPortMax=a)));for(g in d)d.hasOwnProperty(g)&&!isNaN(g)&&(a=d[g],a<h.min&&(h.min=a),a>h.max&&(h.max=Math.max(a,m)),g<c.viewPortMin||g>c.viewPortMax||(a<h.viewPortMin&&(h.viewPortMin=a),a>h.viewPortMax&&(h.viewPortMax=Math.max(a,m))))}};w.prototype._processStacked100PlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var h=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,l=!1,C=!1,d=!1,ha={},m=[],n=0;n<a.dataSeriesIndexes.length;n++){var p=
234
- this.data[a.dataSeriesIndexes[n]],q=0,g=!1,z=!1,t;if("normal"===p.axisPlacement||"xySwapped"===p.axisPlacement)var r=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:-Infinity,s=a.axisX.sessionVariables.newViewportMaximum?a.axisX.sessionVariables.newViewportMaximum:a.axisX.options&&a.axisX.options.viewportMaximum?a.axisX.options.viewportMaximum:
234
+ this.data[a.dataSeriesIndexes[n]],q=0,g=!1,z=!1,s;if("normal"===p.axisPlacement||"xySwapped"===p.axisPlacement)var r=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:-Infinity,t=a.axisX.sessionVariables.newViewportMaximum?a.axisX.sessionVariables.newViewportMaximum:a.axisX.options&&a.axisX.options.viewportMaximum?a.axisX.options.viewportMaximum:
235
235
  a.axisX.options&&a.axisX.options.maximum?a.axisX.options.maximum:Infinity;if(p.dataPoints[q].x&&p.dataPoints[q].x.getTime||"dateTime"===p.xValueType)l=!0;for(q=0;q<p.dataPoints.length;q++){"undefined"===typeof p.dataPoints[q].x&&(p.dataPoints[q].x=q+(a.axisX.logarithmic?1:0));p.dataPoints[q].x.getTime?(l=!0,b=p.dataPoints[q].x.getTime()):b=p.dataPoints[q].x;e=f(p.dataPoints[q].y)?null:p.dataPoints[q].y;b<c.min&&(c.min=b);b>c.max&&(c.max=b);if(0<q){if(a.axisX.logarithmic){var k=b/p.dataPoints[q-1].x;
236
- 1>k&&(k=1/k);c.minDiff>k&&1!==k&&(c.minDiff=k)}else k=b-p.dataPoints[q-1].x,0>k&&(k*=-1),c.minDiff>k&&0!==k&&(c.minDiff=k);f(e)||null===p.dataPoints[q-1].y||(a.axisY.logarithmic?0<e&&(k=e/p.dataPoints[q-1].y,1>k&&(k=1/k),h.minDiff>k&&1!==k&&(h.minDiff=k)):(k=e-p.dataPoints[q-1].y,0>k&&(k*=-1),h.minDiff>k&&0!==k&&(h.minDiff=k)))}if(b<r&&!g)null!==e&&(t=b);else{if(!g&&(g=!0,0<q)){q-=2;continue}if(b>s&&!z)z=!0;else if(b>s&&z)continue;p.dataPoints[q].label&&(a.axisX.labels[b]=p.dataPoints[q].label);b<
237
- c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===e?c.viewPortMin===b&&t<b&&(c.viewPortMin=t):(ha[b]=(ha[b]||0)+p.dataPoints[q].y,p.dataPointEOs[q].cumulativeY=ha[b],a.yTotals[b]=(a.yTotals[b]?a.yTotals[b]:0)+e,a.yAbsTotals[b]=(a.yAbsTotals[b]?a.yAbsTotals[b]:0)+Math.abs(e),0<=e?C=!0:0>e&&(d=!0),m[b]=m[b]?m[b]+Math.abs(e):Math.abs(e))}}p.axisX.valueType=p.xValueType=l?"dateTime":"number"}a.axisY.logarithmic?(h.max=f(h.viewPortMax)?99*Math.pow(a.axisY.logarithmBase,-0.05):
236
+ 1>k&&(k=1/k);c.minDiff>k&&1!==k&&(c.minDiff=k)}else k=b-p.dataPoints[q-1].x,0>k&&(k*=-1),c.minDiff>k&&0!==k&&(c.minDiff=k);f(e)||null===p.dataPoints[q-1].y||(a.axisY.logarithmic?0<e&&(k=e/p.dataPoints[q-1].y,1>k&&(k=1/k),h.minDiff>k&&1!==k&&(h.minDiff=k)):(k=e-p.dataPoints[q-1].y,0>k&&(k*=-1),h.minDiff>k&&0!==k&&(h.minDiff=k)))}if(b<r&&!g)null!==e&&(s=b);else{if(!g&&(g=!0,0<q)){q-=2;continue}if(b>t&&!z)z=!0;else if(b>t&&z)continue;p.dataPoints[q].label&&(a.axisX.labels[b]=p.dataPoints[q].label);b<
237
+ c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===e?c.viewPortMin===b&&s<b&&(c.viewPortMin=s):(ha[b]=(ha[b]||0)+p.dataPoints[q].y,p.dataPointEOs[q].cumulativeY=ha[b],a.yTotals[b]=(a.yTotals[b]?a.yTotals[b]:0)+e,a.yAbsTotals[b]=(a.yAbsTotals[b]?a.yAbsTotals[b]:0)+Math.abs(e),0<=e?C=!0:0>e&&(d=!0),m[b]=m[b]?m[b]+Math.abs(e):Math.abs(e))}}p.axisX.valueType=p.xValueType=l?"dateTime":"number"}a.axisY.logarithmic?(h.max=f(h.viewPortMax)?99*Math.pow(a.axisY.logarithmBase,-0.05):
238
238
  Math.max(h.viewPortMax,99*Math.pow(a.axisY.logarithmBase,-0.05)),h.min=f(h.viewPortMin)?1:Math.min(h.viewPortMin,1)):C&&!d?(h.max=f(h.viewPortMax)?99:Math.max(h.viewPortMax,99),h.min=f(h.viewPortMin)?1:Math.min(h.viewPortMin,1)):C&&d?(h.max=f(h.viewPortMax)?99:Math.max(h.viewPortMax,99),h.min=f(h.viewPortMin)?-99:Math.min(h.viewPortMin,-99)):!C&&d&&(h.max=f(h.viewPortMax)?-1:Math.max(h.viewPortMax,-1),h.min=f(h.viewPortMin)?-99:Math.min(h.viewPortMin,-99));h.viewPortMin=h.min;h.viewPortMax=h.max;
239
- a.dataPointYSums=m}};w.prototype._processMultiYPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var h=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,l,C,f=!1,d=0;d<a.dataSeriesIndexes.length;d++){var m=this.data[a.dataSeriesIndexes[d]],n=0,p=!1,q=!1,g,z,t;if("normal"===m.axisPlacement||"xySwapped"===m.axisPlacement)var r=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:
240
- a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:a.axisX.logarithmic?0:-Infinity,s=a.axisX.sessionVariables.newViewportMaximum?a.axisX.sessionVariables.newViewportMaximum:a.axisX.options&&a.axisX.options.viewportMaximum?a.axisX.options.viewportMaximum:a.axisX.options&&a.axisX.options.maximum?a.axisX.options.maximum:Infinity;if(m.dataPoints[n].x&&m.dataPoints[n].x.getTime||"dateTime"===m.xValueType)f=!0;for(n=0;n<m.dataPoints.length;n++){"undefined"===typeof m.dataPoints[n].x&&(m.dataPoints[n].x=
241
- n+(a.axisX.logarithmic?1:0));m.dataPoints[n].x.getTime?(f=!0,b=m.dataPoints[n].x.getTime()):b=m.dataPoints[n].x;if((e=m.dataPoints[n].y)&&e.length){l=Math.min.apply(null,e);C=Math.max.apply(null,e);z=!0;for(var k=0;k<e.length;k++)null===e.k&&(z=!1);z&&(p||(t=g),g=b)}b<c.min&&(c.min=b);b>c.max&&(c.max=b);l<h.min&&(h.min=l);C>h.max&&(h.max=C);0<n&&(a.axisX.logarithmic?(z=b/m.dataPoints[n-1].x,1>z&&(z=1/z),c.minDiff>z&&1!==z&&(c.minDiff=z)):(z=b-m.dataPoints[n-1].x,0>z&&(z*=-1),c.minDiff>z&&0!==z&&(c.minDiff=
242
- z)),e&&(null!==e[0]&&m.dataPoints[n-1].y&&null!==m.dataPoints[n-1].y[0])&&(a.axisY.logarithmic?(z=e[0]/m.dataPoints[n-1].y[0],1>z&&(z=1/z),h.minDiff>z&&1!==z&&(h.minDiff=z)):(z=e[0]-m.dataPoints[n-1].y[0],0>z&&(z*=-1),h.minDiff>z&&0!==z&&(h.minDiff=z))));if(!(b<r)||p){if(!p&&(p=!0,0<n)){n-=2;g=t;continue}if(b>s&&!q)q=!0;else if(b>s&&q)continue;m.dataPoints[n].label&&(a.axisX.labels[b]=m.dataPoints[n].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);if(c.viewPortMin===b&&
239
+ a.dataPointYSums=m}};w.prototype._processMultiYPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var h=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,l,C,f=!1,d=0;d<a.dataSeriesIndexes.length;d++){var m=this.data[a.dataSeriesIndexes[d]],n=0,p=!1,q=!1,g,z,s;if("normal"===m.axisPlacement||"xySwapped"===m.axisPlacement)var r=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:
240
+ a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:a.axisX.logarithmic?0:-Infinity,t=a.axisX.sessionVariables.newViewportMaximum?a.axisX.sessionVariables.newViewportMaximum:a.axisX.options&&a.axisX.options.viewportMaximum?a.axisX.options.viewportMaximum:a.axisX.options&&a.axisX.options.maximum?a.axisX.options.maximum:Infinity;if(m.dataPoints[n].x&&m.dataPoints[n].x.getTime||"dateTime"===m.xValueType)f=!0;for(n=0;n<m.dataPoints.length;n++){"undefined"===typeof m.dataPoints[n].x&&(m.dataPoints[n].x=
241
+ n+(a.axisX.logarithmic?1:0));m.dataPoints[n].x.getTime?(f=!0,b=m.dataPoints[n].x.getTime()):b=m.dataPoints[n].x;if((e=m.dataPoints[n].y)&&e.length){l=Math.min.apply(null,e);C=Math.max.apply(null,e);z=!0;for(var k=0;k<e.length;k++)null===e.k&&(z=!1);z&&(p||(s=g),g=b)}b<c.min&&(c.min=b);b>c.max&&(c.max=b);l<h.min&&(h.min=l);C>h.max&&(h.max=C);0<n&&(a.axisX.logarithmic?(z=b/m.dataPoints[n-1].x,1>z&&(z=1/z),c.minDiff>z&&1!==z&&(c.minDiff=z)):(z=b-m.dataPoints[n-1].x,0>z&&(z*=-1),c.minDiff>z&&0!==z&&(c.minDiff=
242
+ z)),e&&(null!==e[0]&&m.dataPoints[n-1].y&&null!==m.dataPoints[n-1].y[0])&&(a.axisY.logarithmic?(z=e[0]/m.dataPoints[n-1].y[0],1>z&&(z=1/z),h.minDiff>z&&1!==z&&(h.minDiff=z)):(z=e[0]-m.dataPoints[n-1].y[0],0>z&&(z*=-1),h.minDiff>z&&0!==z&&(h.minDiff=z))));if(!(b<r)||p){if(!p&&(p=!0,0<n)){n-=2;g=s;continue}if(b>t&&!q)q=!0;else if(b>t&&q)continue;m.dataPoints[n].label&&(a.axisX.labels[b]=m.dataPoints[n].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);if(c.viewPortMin===b&&
243
243
  e)for(k=0;k<e.length;k++)if(null===e[k]&&g<b){c.viewPortMin=g;break}null===e?c.viewPortMin===b&&g<b&&(c.viewPortMin=g):(l<h.viewPortMin&&(h.viewPortMin=l),C>h.viewPortMax&&(h.viewPortMax=C))}}m.axisX.valueType=m.xValueType=f?"dateTime":"number"}};w.prototype._processSpecificPlotUnit=function(a){if("waterfall"===a.type&&a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var h=a.axisY.dataInfo,c=a.axisX.dataInfo,b,e,l=!1,C=0;C<a.dataSeriesIndexes.length;C++){var f=this.data[a.dataSeriesIndexes[C]],
244
244
  d=0,m=!1,n=!1,p=b=0;if("normal"===f.axisPlacement||"xySwapped"===f.axisPlacement)var q=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:a.axisX.logarithmic?0:-Infinity,g=a.axisX.sessionVariables.newViewportMaximum?a.axisX.sessionVariables.newViewportMaximum:a.axisX.options&&a.axisX.options.viewportMaximum?a.axisX.options.viewportMaximum:
245
245
  a.axisX.options&&a.axisX.options.maximum?a.axisX.options.maximum:Infinity;if(f.dataPoints[d].x&&f.dataPoints[d].x.getTime||"dateTime"===f.xValueType)l=!0;for(d=0;d<f.dataPoints.length;d++)"undefined"!==typeof f.dataPoints[d].isCumulativeSum&&!0===f.dataPoints[d].isCumulativeSum?(f.dataPointEOs[d].cumulativeSumYStartValue=0,f.dataPointEOs[d].cumulativeSum=0===d?0:f.dataPointEOs[d-1].cumulativeSum,f.dataPoints[d].y=0===d?0:f.dataPointEOs[d-1].cumulativeSum):"undefined"!==typeof f.dataPoints[d].isIntermediateSum&&
@@ -248,13 +248,13 @@ typeof f.dataPoints[d].x&&(f.dataPoints[d].x=d+(a.axisX.logarithmic?1:0)),f.data
248
248
  (p*=-1),c.minDiff>p&&0!==p&&(c.minDiff=p)),null!==e&&null!==f.dataPoints[d-1].y&&(a.axisY.logarithmic?(e=f.dataPointEOs[d].cumulativeSum/f.dataPointEOs[d-1].cumulativeSum,1>e&&(e=1/e),h.minDiff>e&&1!==e&&(h.minDiff=e)):(e=f.dataPointEOs[d].cumulativeSum-f.dataPointEOs[d-1].cumulativeSum,0>e&&(e*=-1),h.minDiff>e&&0!==e&&(h.minDiff=e)))),!(b<q)||m){if(!m&&(m=!0,0<d)){d-=2;continue}if(b>g&&!n)n=!0;else if(b>g&&n)continue;f.dataPoints[d].label&&(a.axisX.labels[b]=f.dataPoints[d].label);b<c.viewPortMin&&
249
249
  (c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);0<d&&(f.dataPointEOs[d-1].cumulativeSum<h.viewPortMin&&(h.viewPortMin=f.dataPointEOs[d-1].cumulativeSum),f.dataPointEOs[d-1].cumulativeSum>h.viewPortMax&&(h.viewPortMax=f.dataPointEOs[d-1].cumulativeSum));f.dataPointEOs[d].cumulativeSum<h.viewPortMin&&(h.viewPortMin=f.dataPointEOs[d].cumulativeSum);f.dataPointEOs[d].cumulativeSum>h.viewPortMax&&(h.viewPortMax=f.dataPointEOs[d].cumulativeSum)}f.axisX.valueType=f.xValueType=l?"dateTime":"number"}};
250
250
  w.prototype.calculateAutoBreaks=function(){function a(a,b,c,e){if(e)return c=Math.pow(Math.min(c*a/b,b/a),0.2),1>=c&&(c=Math.pow(1>a?1/a:Math.min(b/a,a),0.25)),{startValue:a*c,endValue:b/c};c=0.2*Math.min(c-b+a,b-a);0>=c&&(c=0.25*Math.min(b-a,Math.abs(a)));return{startValue:a+c,endValue:b-c}}function h(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){var b=a.axisX.scaleBreaks&&a.axisX.scaleBreaks.autoCalculate&&1<=a.axisX.scaleBreaks.maxNumberOfAutoBreaks,c=a.axisY.scaleBreaks&&a.axisY.scaleBreaks.autoCalculate&&
251
- 1<=a.axisY.scaleBreaks.maxNumberOfAutoBreaks;if(b||c)for(var h=a.axisY.dataInfo,g=a.axisX.dataInfo,l,C=g.min,m=g.max,n=h.min,d=h.max,g=g._dataRanges,h=h._dataRanges,q,p=0,ua=0;ua<a.dataSeriesIndexes.length;ua++){var t=e.data[a.dataSeriesIndexes[ua]];if(!(4>t.dataPoints.length))for(p=0;p<t.dataPoints.length;p++)if(b&&(q=(m+1-C)*Math.max(parseFloat(a.axisX.scaleBreaks.collapsibleThreshold)||10,10)/100,l=t.dataPoints[p].x.getTime?t.dataPoints[p].x.getTime():t.dataPoints[p].x,q=Math.floor((l-C)/q),l<
252
- g[q].min&&(g[q].min=l),l>g[q].max&&(g[q].max=l)),c){var ha=(d+1-n)*Math.max(parseFloat(a.axisY.scaleBreaks.collapsibleThreshold)||10,10)/100;if((l="waterfall"===a.type?t.dataPointEOs[p].cumulativeSum:t.dataPoints[p].y)&&l.length)for(var r=0;r<l.length;r++)q=Math.floor((l[r]-n)/ha),l[r]<h[q].min&&(h[q].min=l[r]),l[r]>h[q].max&&(h[q].max=l[r]);else f(l)||(q=Math.floor((l-n)/ha),l<h[q].min&&(h[q].min=l),l>h[q].max&&(h[q].max=l))}}}}function c(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)&&
251
+ 1<=a.axisY.scaleBreaks.maxNumberOfAutoBreaks;if(b||c)for(var h=a.axisY.dataInfo,g=a.axisX.dataInfo,l,C=g.min,m=g.max,n=h.min,d=h.max,g=g._dataRanges,h=h._dataRanges,q,p=0,ua=0;ua<a.dataSeriesIndexes.length;ua++){var s=e.data[a.dataSeriesIndexes[ua]];if(!(4>s.dataPoints.length))for(p=0;p<s.dataPoints.length;p++)if(b&&(q=(m+1-C)*Math.max(parseFloat(a.axisX.scaleBreaks.collapsibleThreshold)||10,10)/100,l=s.dataPoints[p].x.getTime?s.dataPoints[p].x.getTime():s.dataPoints[p].x,q=Math.floor((l-C)/q),l<
252
+ g[q].min&&(g[q].min=l),l>g[q].max&&(g[q].max=l)),c){var ha=(d+1-n)*Math.max(parseFloat(a.axisY.scaleBreaks.collapsibleThreshold)||10,10)/100;if((l="waterfall"===a.type?s.dataPointEOs[p].cumulativeSum:s.dataPoints[p].y)&&l.length)for(var r=0;r<l.length;r++)q=Math.floor((l[r]-n)/ha),l[r]<h[q].min&&(h[q].min=l[r]),l[r]>h[q].max&&(h[q].max=l[r]);else f(l)||(q=Math.floor((l-n)/ha),l<h[q].min&&(h[q].min=l),l>h[q].max&&(h[q].max=l))}}}}function c(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)&&
253
253
  a.axisX.scaleBreaks&&a.axisX.scaleBreaks.autoCalculate&&1<=a.axisX.scaleBreaks.maxNumberOfAutoBreaks)for(var b=a.axisX.dataInfo,c=b.min,h=b.max,g=b._dataRanges,l,C=0,f=0;f<a.dataSeriesIndexes.length;f++){var m=e.data[a.dataSeriesIndexes[f]];if(!(4>m.dataPoints.length))for(C=0;C<m.dataPoints.length;C++)l=(h+1-c)*Math.max(parseFloat(a.axisX.scaleBreaks.collapsibleThreshold)||10,10)/100,b=m.dataPoints[C].x.getTime?m.dataPoints[C].x.getTime():m.dataPoints[C].x,l=Math.floor((b-c)/l),b<g[l].min&&(g[l].min=
254
254
  b),b>g[l].max&&(g[l].max=b)}}for(var b,e=this,l=!1,C=0;C<this._axes.length;C++)if(this._axes[C].scaleBreaks&&this._axes[C].scaleBreaks.autoCalculate&&1<=this._axes[C].scaleBreaks.maxNumberOfAutoBreaks){l=!0;this._axes[C].dataInfo._dataRanges=[];for(var d=0;d<100/Math.max(parseFloat(this._axes[C].scaleBreaks.collapsibleThreshold)||10,10);d++)this._axes[C].dataInfo._dataRanges.push({min:Infinity,max:-Infinity})}if(l){for(C=0;C<this.plotInfo.plotTypes.length;C++)for(l=this.plotInfo.plotTypes[C],d=0;d<
255
- l.plotUnits.length;d++)b=l.plotUnits[d],"line"===b.type||"stepLine"===b.type||"spline"===b.type||"column"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"bar"===b.type||"bubble"===b.type||"scatter"===b.type||"candlestick"===b.type||"ohlc"===b.type||"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"waterfall"===b.type||"error"===b.type||"boxAndWhisker"===b.type?h(b):0<=b.type.indexOf("stacked")&&c(b);for(C=0;C<this._axes.length;C++)if(this._axes[C].dataInfo._dataRanges){var t=
256
- this._axes[C].dataInfo.min;b=(this._axes[C].dataInfo.max+1-t)*Math.max(parseFloat(this._axes[C].scaleBreaks.collapsibleThreshold)||10,10)/100;var m=this._axes[C].dataInfo._dataRanges,n,p,l=[];if(this._axes[C].dataInfo.dataPointYPositiveSums){var q=this._axes[C].dataInfo.dataPointYPositiveSums;n=m;for(d in q)if(q.hasOwnProperty(d)&&!isNaN(d)&&(p=q[d],!f(p))){var g=Math.floor((p-t)/b);p<n[g].min&&(n[g].min=p);p>n[g].max&&(n[g].max=p)}delete this._axes[C].dataInfo.dataPointYPositiveSums}if(this._axes[C].dataInfo.dataPointYNegativeSums){q=
257
- this._axes[C].dataInfo.dataPointYNegativeSums;n=m;for(d in q)q.hasOwnProperty(d)&&!isNaN(d)&&(p=-1*q[d],f(p)||(g=Math.floor((p-t)/b),p<n[g].min&&(n[g].min=p),p>n[g].max&&(n[g].max=p)));delete this._axes[C].dataInfo.dataPointYNegativeSums}for(d=0;d<m.length-1;d++)if(n=m[d].max,isFinite(n))for(;d<m.length-1;)if(t=m[d+1].min,isFinite(t)){p=t-n;p>b&&l.push({diff:p,start:n,end:t});break}else d++;if(this._axes[C].scaleBreaks.customBreaks)for(d=0;d<this._axes[C].scaleBreaks.customBreaks.length;d++)for(b=
255
+ l.plotUnits.length;d++)b=l.plotUnits[d],"line"===b.type||"stepLine"===b.type||"spline"===b.type||"column"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"bar"===b.type||"bubble"===b.type||"scatter"===b.type||"candlestick"===b.type||"ohlc"===b.type||"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"waterfall"===b.type||"error"===b.type||"boxAndWhisker"===b.type?h(b):0<=b.type.indexOf("stacked")&&c(b);for(C=0;C<this._axes.length;C++)if(this._axes[C].dataInfo._dataRanges){var s=
256
+ this._axes[C].dataInfo.min;b=(this._axes[C].dataInfo.max+1-s)*Math.max(parseFloat(this._axes[C].scaleBreaks.collapsibleThreshold)||10,10)/100;var m=this._axes[C].dataInfo._dataRanges,n,p,l=[];if(this._axes[C].dataInfo.dataPointYPositiveSums){var q=this._axes[C].dataInfo.dataPointYPositiveSums;n=m;for(d in q)if(q.hasOwnProperty(d)&&!isNaN(d)&&(p=q[d],!f(p))){var g=Math.floor((p-s)/b);p<n[g].min&&(n[g].min=p);p>n[g].max&&(n[g].max=p)}delete this._axes[C].dataInfo.dataPointYPositiveSums}if(this._axes[C].dataInfo.dataPointYNegativeSums){q=
257
+ this._axes[C].dataInfo.dataPointYNegativeSums;n=m;for(d in q)q.hasOwnProperty(d)&&!isNaN(d)&&(p=-1*q[d],f(p)||(g=Math.floor((p-s)/b),p<n[g].min&&(n[g].min=p),p>n[g].max&&(n[g].max=p)));delete this._axes[C].dataInfo.dataPointYNegativeSums}for(d=0;d<m.length-1;d++)if(n=m[d].max,isFinite(n))for(;d<m.length-1;)if(s=m[d+1].min,isFinite(s)){p=s-n;p>b&&l.push({diff:p,start:n,end:s});break}else d++;if(this._axes[C].scaleBreaks.customBreaks)for(d=0;d<this._axes[C].scaleBreaks.customBreaks.length;d++)for(b=
258
258
  0;b<l.length;b++)if(this._axes[C].scaleBreaks.customBreaks[d].startValue<=l[b].start&&l[b].start<=this._axes[C].scaleBreaks.customBreaks[d].endValue||this._axes[C].scaleBreaks.customBreaks[d].startValue<=l[b].start&&l[b].start<=this._axes[C].scaleBreaks.customBreaks[d].endValue||l[b].start<=this._axes[C].scaleBreaks.customBreaks[d].startValue&&this._axes[C].scaleBreaks.customBreaks[d].startValue<=l[b].end||l[b].start<=this._axes[C].scaleBreaks.customBreaks[d].endValue&&this._axes[C].scaleBreaks.customBreaks[d].endValue<=
259
259
  l[b].end)l.splice(b,1),b--;l.sort(function(a,b){return b.diff-a.diff});for(d=0;d<Math.min(l.length,this._axes[C].scaleBreaks.maxNumberOfAutoBreaks);d++)b=a(l[d].start,l[d].end,this._axes[C].logarithmic?this._axes[C].dataInfo.max/this._axes[C].dataInfo.min:this._axes[C].dataInfo.max-this._axes[C].dataInfo.min,this._axes[C].logarithmic),this._axes[C].scaleBreaks.autoBreaks.push(new T(this,"autoBreaks",b,d,++this._eventManager.lastObjectId,this._axes[C].scaleBreaks)),this._axes[C].scaleBreaks._appliedBreaks.push(this._axes[C].scaleBreaks.autoBreaks[this._axes[C].scaleBreaks.autoBreaks.length-
260
260
  1]);this._axes[C].scaleBreaks._appliedBreaks.sort(function(a,b){return a.startValue-b.startValue})}}};w.prototype.renderCrosshairs=function(a){for(var h=0;h<this.axisX.length;h++)this.axisX[h]!=a&&(this.axisX[h].crosshair&&this.axisX[h].crosshair.enabled&&!this.axisX[h].crosshair._hidden)&&this.axisX[h].showCrosshair(this.axisX[h].crosshair._updatedValue);for(h=0;h<this.axisX2.length;h++)this.axisX2[h]!=a&&(this.axisX2[h].crosshair&&this.axisX2[h].crosshair.enabled&&!this.axisX2[h].crosshair._hidden)&&
@@ -290,12 +290,12 @@ c=this.overlaidCanvasCtx.globalAlpha;this.overlaidCanvasCtx.fillStyle="#A89896";
290
290
  0<this.axisY.length)for(e=0;e<this.axisY.length;e++)this.axisY[e].crosshair&&this.axisY[e].crosshair.enabled&&this.axisY[e].renderCrosshair(a,h);if(this.axisY2&&0<this.axisY2.length)for(e=0;e<this.axisY2.length;e++)this.axisY2[e].crosshair&&this.axisY2[e].crosshair.enabled&&this.axisY2[e].renderCrosshair(a,h);if(this.axisX&&0<this.axisX.length)for(e=0;e<this.axisX.length;e++)this.axisX[e].crosshair&&this.axisX[e].crosshair.enabled&&this.axisX[e].crosshair.renderLabel();if(this.axisX2&&0<this.axisX2.length)for(e=
291
291
  0;e<this.axisX2.length;e++)this.axisX2[e].crosshair&&this.axisX2[e].crosshair.enabled&&this.axisX2[e].crosshair.renderLabel();if(this.axisY&&0<this.axisY.length)for(e=0;e<this.axisY.length;e++)this.axisY[e].crosshair&&this.axisY[e].crosshair.enabled&&this.axisY[e].crosshair.renderLabel();if(this.axisY2&&0<this.axisY2.length)for(e=0;e<this.axisY2.length;e++)this.axisY2[e].crosshair&&this.axisY2[e].crosshair.enabled&&this.axisY2[e].crosshair.renderLabel()}};w.prototype._zoomPanToSelectedRegion=function(a,
292
292
  h,c,b,e){a=this.validateRegion(a,h,c,b,e);h=a.axesWithValidRange;c=a.axesRanges;if(a.isValid)for(b=0;b<h.length;b++)e=c[b],h[b].setViewPortRange(e.val1,e.val2),this.syncCharts&&"y"!=this.zoomType&&this.syncCharts(e.val1,e.val2),this.stockChart&&(this.stockChart._rangeEventParameter={stockChart:this.stockChart,source:"chart",index:this.stockChart.charts.indexOf(this),minimum:e.val1,maximum:e.val2});return a.isValid};w.prototype.validateRegion=function(a,h,c,b,e){e=e||!1;for(var l=0<=this.zoomType.indexOf("x"),
293
- f=0<=this.zoomType.indexOf("y"),d=!1,t=[],m=[],n=[],p=0;p<this._axes.length;p++)("axisX"===this._axes[p].type&&l||"axisY"===this._axes[p].type&&f)&&m.push(this._axes[p]);for(f=0;f<m.length;f++){var p=m[f],l=!1,q=p.convertPixelToValue({x:a,y:h}),g=p.convertPixelToValue({x:c,y:b});if(q>g)var z=g,g=q,q=z;if(p.scaleBreaks)for(z=0;!l&&z<p.scaleBreaks._appliedBreaks.length;z++)l=p.scaleBreaks._appliedBreaks[z].startValue<=q&&p.scaleBreaks._appliedBreaks[z].endValue>=g;if(isFinite(p.dataInfo.minDiff))if(z=
294
- p.getApparentDifference(q,g,null,!0),!(l||!(this.panEnabled&&p.scaleBreaks&&p.scaleBreaks._appliedBreaks.length)&&(p.logarithmic&&z<Math.pow(p.dataInfo.minDiff,3)||!p.logarithmic&&z<3*Math.abs(p.dataInfo.minDiff))||q<p.minimum||g>p.maximum))t.push(p),n.push({val1:q,val2:g}),d=!0;else if(!e){d=!1;break}}return{isValid:d,axesWithValidRange:t,axesRanges:n}};w.prototype.preparePlotArea=function(){var a=this.plotArea;!r&&(0<a.x1||0<a.y1)&&a.ctx.translate(a.x1,a.y1);if((this.axisX[0]||this.axisX2[0])&&
293
+ f=0<=this.zoomType.indexOf("y"),d=!1,s=[],m=[],n=[],p=0;p<this._axes.length;p++)("axisX"===this._axes[p].type&&l||"axisY"===this._axes[p].type&&f)&&m.push(this._axes[p]);for(f=0;f<m.length;f++){var p=m[f],l=!1,q=p.convertPixelToValue({x:a,y:h}),g=p.convertPixelToValue({x:c,y:b});if(q>g)var z=g,g=q,q=z;if(p.scaleBreaks)for(z=0;!l&&z<p.scaleBreaks._appliedBreaks.length;z++)l=p.scaleBreaks._appliedBreaks[z].startValue<=q&&p.scaleBreaks._appliedBreaks[z].endValue>=g;if(isFinite(p.dataInfo.minDiff))if(z=
294
+ p.getApparentDifference(q,g,null,!0),!(l||!(this.panEnabled&&p.scaleBreaks&&p.scaleBreaks._appliedBreaks.length)&&(p.logarithmic&&z<Math.pow(p.dataInfo.minDiff,3)||!p.logarithmic&&z<3*Math.abs(p.dataInfo.minDiff))||q<p.minimum||g>p.maximum))s.push(p),n.push({val1:q,val2:g}),d=!0;else if(!e){d=!1;break}}return{isValid:d,axesWithValidRange:s,axesRanges:n}};w.prototype.preparePlotArea=function(){var a=this.plotArea;!r&&(0<a.x1||0<a.y1)&&a.ctx.translate(a.x1,a.y1);if((this.axisX[0]||this.axisX2[0])&&
295
295
  (this.axisY[0]||this.axisY2[0])){var h=this.axisX[0]?this.axisX[0].lineCoordinates:this.axisX2[0].lineCoordinates;if(this.axisY&&0<this.axisY.length&&this.axisY[0]){var c=this.axisY[0];a.x1=h.x1<h.x2?h.x1:c.lineCoordinates.x1;a.y1=h.y1<c.lineCoordinates.y1?h.y1:c.lineCoordinates.y1;a.x2=h.x2>c.lineCoordinates.x2?h.x2:c.lineCoordinates.x2;a.y2=h.y1>c.lineCoordinates.y2?h.y1:c.lineCoordinates.y2;a.width=a.x2-a.x1;a.height=a.y2-a.y1}this.axisY2&&0<this.axisY2.length&&this.axisY2[0]&&(c=this.axisY2[0],
296
296
  a.x1=h.x1<h.x2?h.x1:c.lineCoordinates.x1,a.y1=h.y1<c.lineCoordinates.y1?h.y1:c.lineCoordinates.y1,a.x2=h.x2>c.lineCoordinates.x2?h.x2:c.lineCoordinates.x2,a.y2=h.y2>c.lineCoordinates.y2?h.y2:c.lineCoordinates.y2,a.width=a.x2-a.x1,a.height=a.y2-a.y1)}else h=this.layoutManager.getFreeSpace(),a.x1=h.x1,a.x2=h.x2,a.y1=h.y1,a.y2=h.y2,a.width=h.width,a.height=h.height;r||(a.canvas.width=a.width,a.canvas.height=a.height,a.canvas.style.left=a.x1+"px",a.canvas.style.top=a.y1+"px",(0<a.x1||0<a.y1)&&a.ctx.translate(-a.x1,
297
297
  -a.y1));a.layoutManager=new Ka(a.x1,a.y1,a.x2,a.y2,2)};w.prototype.renderIndexLabels=function(a){var h=a||this.plotArea.ctx,c=this.plotArea,b=0,e=0,l=0,C=e=l=0,d=0,ha=b=0,m=0;for(a=0;a<this._indexLabels.length;a++){var n=this._indexLabels[a],p=n.chartType.toLowerCase(),q,g,d=qa("indexLabelFontColor",n.dataPoint,n.dataSeries),z=qa("indexLabelFontSize",n.dataPoint,n.dataSeries),ha=qa("indexLabelFontFamily",n.dataPoint,n.dataSeries),m=qa("indexLabelFontStyle",n.dataPoint,n.dataSeries);q=qa("indexLabelFontWeight",
298
- n.dataPoint,n.dataSeries);var k=qa("indexLabelBackgroundColor",n.dataPoint,n.dataSeries);g=qa("indexLabelMaxWidth",n.dataPoint,n.dataSeries);var l=qa("indexLabelWrap",n.dataPoint,n.dataSeries),u=qa("indexLabelLineDashType",n.dataPoint,n.dataSeries),s=qa("indexLabelLineColor",n.dataPoint,n.dataSeries),v=f(n.dataPoint.indexLabelLineThickness)?f(n.dataSeries.options.indexLabelLineThickness)?0:n.dataSeries.options.indexLabelLineThickness:n.dataPoint.indexLabelLineThickness,b=0<v?Math.min(10,("normal"===
298
+ n.dataPoint,n.dataSeries);var k=qa("indexLabelBackgroundColor",n.dataPoint,n.dataSeries);g=qa("indexLabelMaxWidth",n.dataPoint,n.dataSeries);var l=qa("indexLabelWrap",n.dataPoint,n.dataSeries),v=qa("indexLabelLineDashType",n.dataPoint,n.dataSeries),t=qa("indexLabelLineColor",n.dataPoint,n.dataSeries),u=f(n.dataPoint.indexLabelLineThickness)?f(n.dataSeries.options.indexLabelLineThickness)?0:n.dataSeries.options.indexLabelLineThickness:n.dataPoint.indexLabelLineThickness,b=0<u?Math.min(10,("normal"===
299
299
  this.plotInfo.axisPlacement?this.plotArea.height:this.plotArea.width)<<0):0,y={percent:null,total:null},N=null;if(0<=n.dataSeries.type.indexOf("stacked")||"pie"===n.dataSeries.type||"doughnut"===n.dataSeries.type)y=this.getPercentAndTotal(n.dataSeries,n.dataPoint);if(n.dataSeries.indexLabelFormatter||n.dataPoint.indexLabelFormatter)N={chart:this,dataSeries:n.dataSeries,dataPoint:n.dataPoint,index:n.indexKeyword,total:y.total,percent:y.percent};var La=n.dataPoint.indexLabelFormatter?n.dataPoint.indexLabelFormatter(N):
300
300
  n.dataPoint.indexLabel?this.replaceKeywordsWithValue(n.dataPoint.indexLabel,n.dataPoint,n.dataSeries,null,n.indexKeyword):n.dataSeries.indexLabelFormatter?n.dataSeries.indexLabelFormatter(N):n.dataSeries.indexLabel?this.replaceKeywordsWithValue(n.dataSeries.indexLabel,n.dataPoint,n.dataSeries,null,n.indexKeyword):null;if(null!==La&&""!==La){var y=qa("indexLabelPlacement",n.dataPoint,n.dataSeries),N=qa("indexLabelOrientation",n.dataPoint,n.dataSeries),E=qa("indexLabelTextAlign",n.dataPoint,n.dataSeries),
301
301
  w=n.direction,e=n.dataSeries.axisX,C=n.dataSeries.axisY,x=!1,k=new ma(h,{x:0,y:0,maxWidth:g?g:0.5*this.width,maxHeight:l?5*z:1.5*z,angle:"horizontal"===N?0:-90,text:La,padding:0,backgroundColor:k,textAlign:E,fontSize:z,fontFamily:ha,fontWeight:q,fontColor:d,fontStyle:m,textBaseline:"middle"});k.measureText();n.dataSeries.indexLabelMaxWidth=k.maxWidth;if("stackedarea100"===p){if(n.point.x<c.x1||n.point.x>c.x2||n.point.y<c.y1-1||n.point.y>c.y2+1)continue}else if("rangearea"===p||"rangesplinearea"===
@@ -307,197 +307,197 @@ w?Math.max(n.bounds.y1,c.y1)+k._lineHeight/2+d:Math.min(n.bounds.y2,c.y2)+k._lin
307
307
  d,c.y2-m-d));g=Math.min(g,l)}}else 0<=p.indexOf("line")||0<=p.indexOf("area")||0<=p.indexOf("scatter")?(y="auto",C=4):0<=p.indexOf("stacked")?"auto"===y&&(y="inside"):"bubble"===p&&(y="inside"),g=n.point.y+k._lineHeight/2-m/2,"inside"!==y?(l=c.x1,e=c.x2,0>w?(q=n.point.x-ha+("horizontal"===N?0:k._lineHeight/2)-C-b,("horizontal"===N?q:q-k._lineHeight/2)<l&&(q="auto"===y?Math.max(n.point.x,l)+("horizontal"===N?0:k._lineHeight/2)+d+b:l+("horizontal"===N?0:k._lineHeight/2)+C,(x=q+ha-("horizontal"===N?
308
308
  0:k._lineHeight/2)>n.point.x)&&(q-=b))):(q=n.point.x+("horizontal"===N?0:k._lineHeight/2)+C+b,("horizontal"===N?q:q-k._lineHeight/2)>e-ha-C-b&&(q="auto"===y?Math.min(n.point.x,e)-("horizontal"===N?ha:ha-k._lineHeight/2)-C-b:e-ha-C+("horizontal"===N?0:k._lineHeight/2),(x=q-("horizontal"===N?0:k._lineHeight/2)<n.point.x)&&(q+=b)))):(l=Math.max(n.bounds.x1,c.x1),Math.min(n.bounds.x2,c.x2),b=0<=p.indexOf("range")||"error"===p?0>w?Math.max(n.bounds.x1,c.x1):Math.min(n.bounds.x2,c.x2)-ha-C+("horizontal"===
309
309
  N?0:k._lineHeight/2):(Math.max(n.bounds.x1,c.x1)+Math.min(n.bounds.x2,c.x2))/2-ha/2+("horizontal"===N?0:k._lineHeight/2),q=0>w?b:Math.min(n.point.x,b),q=Math.max(q,l+("horizontal"===N?0:k._lineHeight/2+d)));"vertical"===N&&(g+=m-k._lineHeight/2,0<="ohlc candlestick boxandwhisker column rangecolumn stackedcolumn stackedcolumn100 error".split(" ").indexOf(p)&&(x=0<w?g+("horizontal"===N?m-k._lineHeight/2:0)>n.point.y:g-("horizontal"===N?k._lineHeight/2:m)<n.point.y),"bubble"===p||"scatter"===p)&&(q+=
310
- k._lineHeight/2-z/2);k.x=q;k.y=g;k.render(!0);v&&("inside"!==y&&(0>p.indexOf("bar")&&("error"!==p||!n.axisSwapped)&&n.point.x>c.x1&&n.point.x<c.x2||!x)&&(-1==="ohlc candlestick boxandwhisker column rangecolumn stackedcolumn stackedcolumn100 error".split(" ").indexOf(p)&&("error"!==p||n.axisSwapped)&&n.point.y>c.y1&&n.point.y<c.y2||!x))&&(h.lineWidth=v,h.strokeStyle=s?s:"gray",h.setLineDash&&h.setLineDash(R(u,v)),h.beginPath(),h.moveTo(n.point.x,n.point.y),0<=p.indexOf("bar")||"error"===p&&n.axisSwapped?
310
+ k._lineHeight/2-z/2);k.x=q;k.y=g;k.render(!0);u&&("inside"!==y&&(0>p.indexOf("bar")&&("error"!==p||!n.axisSwapped)&&n.point.x>c.x1&&n.point.x<c.x2||!x)&&(-1==="ohlc candlestick boxandwhisker column rangecolumn stackedcolumn stackedcolumn100 error".split(" ").indexOf(p)&&("error"!==p||n.axisSwapped)&&n.point.y>c.y1&&n.point.y<c.y2||!x))&&(h.lineWidth=u,h.strokeStyle=t?t:"gray",h.setLineDash&&h.setLineDash(R(v,u)),h.beginPath(),h.moveTo(n.point.x,n.point.y),0<=p.indexOf("bar")||"error"===p&&n.axisSwapped?
311
311
  h.lineTo(q+(0<n.direction?0:ha)+("vertical"===N?-k._lineHeight/2:0),g+("vertical"===N?-m/2:m/2-k._lineHeight/2)):0<=p.indexOf("column")||"error"===p&&!n.axisSwapped?h.lineTo(q+ha/2-("horizontal"===N?0:k._lineHeight/2),g+("vertical"===N?g-m<n.point.y?0:-m:(g-k._lineHeight/2<n.point.y?m:0)-k._lineHeight/2)):0<=p.indexOf("waterfall")?h.lineTo(q+ha/2-("horizontal"===N?0:k._lineHeight/2),"vertical"===N?0<w&&g<n.point.y?g:0>w&&g-m>n.point.y?g-m:n.point.y:0<w&&g+m-k._lineHeight/2<n.point.y?g+m-k._lineHeight/
312
- 2:0>w&&g-k._lineHeight/2>n.point.y?g-k._lineHeight/2:n.point.y):h.lineTo(q+ha/2-("horizontal"===N?0:k._lineHeight/2),g+("vertical"===N?g-m<n.point.y?0:-m:(g+m-k._lineHeight/2<n.point.y?m:0)-k._lineHeight/2)),h.stroke())}}h={source:h,dest:this.plotArea.ctx,animationCallback:t.fadeInAnimation,easingFunction:t.easing.easeInQuad,animationBase:0,startTimePercent:0.7};for(a=0;a<this._indexLabels.length;a++)n=this._indexLabels[a],k=qa("indexLabelBackgroundColor",n.dataPoint,n.dataSeries),n.dataSeries.indexLabelBackgroundColor=
312
+ 2:0>w&&g-k._lineHeight/2>n.point.y?g-k._lineHeight/2:n.point.y):h.lineTo(q+ha/2-("horizontal"===N?0:k._lineHeight/2),g+("vertical"===N?g-m<n.point.y?0:-m:(g+m-k._lineHeight/2<n.point.y?m:0)-k._lineHeight/2)),h.stroke())}}h={source:h,dest:this.plotArea.ctx,animationCallback:s.fadeInAnimation,easingFunction:s.easing.easeInQuad,animationBase:0,startTimePercent:0.7};for(a=0;a<this._indexLabels.length;a++)n=this._indexLabels[a],k=qa("indexLabelBackgroundColor",n.dataPoint,n.dataSeries),n.dataSeries.indexLabelBackgroundColor=
313
313
  f(k)?r?"transparent":null:k;return h};w.prototype.renderLine=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx;c.save();var e=this.plotArea;c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();for(var l=[],f,d=0;d<a.dataSeriesIndexes.length;d++){var k=a.dataSeriesIndexes[d],m=this.data[k];c.lineWidth=m.lineThickness;var n=m.dataPoints,p="solid";if(c.setLineDash){var q=R(m.nullDataLineDashType,
314
- m.lineThickness),p=m.lineDashType,g=R(p,m.lineThickness);c.setLineDash(g)}var z=m.id;this._eventManager.objectMap[z]={objectType:"dataSeries",dataSeriesIndex:k};z=V(z);b.strokeStyle=z;b.lineWidth=0<m.lineThickness?Math.max(m.lineThickness,4):0;var z=m._colorSet,v=z=m.lineColor=m.options.lineColor?m.options.lineColor:z[0];c.strokeStyle=z;var B=!0,s=0,G,y;c.beginPath();if(0<n.length){for(var N=!1,s=0;s<n.length;s++)if(G=n[s].x.getTime?n[s].x.getTime():n[s].x,!(G<a.axisX.dataInfo.viewPortMin||G>a.axisX.dataInfo.viewPortMax&&
315
- (!m.connectNullData||!N)))if("number"!==typeof n[s].y)0<s&&!(m.connectNullData||N||B)&&(c.stroke(),r&&b.stroke()),N=!0;else{G=a.axisX.convertValueToPixel(G);y=a.axisY.convertValueToPixel(n[s].y);var w=m.dataPointIds[s];this._eventManager.objectMap[w]={id:w,objectType:"dataPoint",dataSeriesIndex:k,dataPointIndex:s,x1:G,y1:y};B||N?(!B&&m.connectNullData?(c.setLineDash&&(m.options.nullDataLineDashType||p===m.lineDashType&&m.lineDashType!==m.nullDataLineDashType)&&(c.stroke(),c.beginPath(),c.moveTo(f.x,
316
- f.y),p=m.nullDataLineDashType,c.setLineDash(q)),c.lineTo(G,y),r&&b.lineTo(G,y)):(c.beginPath(),c.moveTo(G,y),r&&(b.beginPath(),b.moveTo(G,y))),N=B=!1):(c.lineTo(G,y),r&&b.lineTo(G,y),0==s%500&&(c.stroke(),c.beginPath(),c.moveTo(G,y),r&&(b.stroke(),b.beginPath(),b.moveTo(G,y))));f={x:G,y:y};s<n.length-1&&(v!==(n[s].lineColor||z)||p!==(n[s].lineDashType||m.lineDashType))&&(c.stroke(),c.beginPath(),c.moveTo(G,y),v=n[s].lineColor||z,c.strokeStyle=v,c.setLineDash&&(n[s].lineDashType?(p=n[s].lineDashType,
317
- c.setLineDash(R(p,m.lineThickness))):(p=m.lineDashType,c.setLineDash(g))));if(0!==n[s].markerSize&&(0<n[s].markerSize||0<m.markerSize)){var E=m.getMarkerProperties(s,G,y,c);l.push(E);w=V(w);r&&l.push({x:G,y:y,ctx:b,type:E.type,size:E.size,color:w,borderColor:w,borderThickness:E.borderThickness})}(n[s].indexLabel||m.indexLabel||n[s].indexLabelFormatter||m.indexLabelFormatter)&&this._indexLabels.push({chartType:"line",dataPoint:n[s],dataSeries:m,point:{x:G,y:y},direction:0>n[s].y===a.axisY.reversed?
318
- 1:-1,color:z})}c.stroke();r&&b.stroke()}}u.drawMarkers(l);r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),b.beginPath());c.restore();c.beginPath();
319
- return{source:h,dest:this.plotArea.ctx,animationCallback:t.xClipAnimation,easingFunction:t.easing.linear,animationBase:0}}};w.prototype.renderStepLine=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx;c.save();var e=this.plotArea;c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();for(var l=[],f,d=0;d<a.dataSeriesIndexes.length;d++){var k=a.dataSeriesIndexes[d],m=this.data[k];c.lineWidth=m.lineThickness;
320
- var n=m.dataPoints,p="solid";if(c.setLineDash){var q=R(m.nullDataLineDashType,m.lineThickness),p=m.lineDashType,g=R(p,m.lineThickness);c.setLineDash(g)}var z=m.id;this._eventManager.objectMap[z]={objectType:"dataSeries",dataSeriesIndex:k};z=V(z);b.strokeStyle=z;b.lineWidth=0<m.lineThickness?Math.max(m.lineThickness,4):0;var z=m._colorSet,v=z=m.lineColor=m.options.lineColor?m.options.lineColor:z[0];c.strokeStyle=z;var B=!0,s=0,G,y;c.beginPath();if(0<n.length){for(var N=!1,s=0;s<n.length;s++)if(G=n[s].getTime?
321
- n[s].x.getTime():n[s].x,!(G<a.axisX.dataInfo.viewPortMin||G>a.axisX.dataInfo.viewPortMax&&(!m.connectNullData||!N)))if("number"!==typeof n[s].y)0<s&&!(m.connectNullData||N||B)&&(c.stroke(),r&&b.stroke()),N=!0;else{var w=y;G=a.axisX.convertValueToPixel(G);y=a.axisY.convertValueToPixel(n[s].y);var E=m.dataPointIds[s];this._eventManager.objectMap[E]={id:E,objectType:"dataPoint",dataSeriesIndex:k,dataPointIndex:s,x1:G,y1:y};B||N?(!B&&m.connectNullData?(c.setLineDash&&(m.options.nullDataLineDashType||
322
- p===m.lineDashType&&m.lineDashType!==m.nullDataLineDashType)&&(c.stroke(),c.beginPath(),c.moveTo(f.x,f.y),p=m.nullDataLineDashType,c.setLineDash(q)),c.lineTo(G,w),c.lineTo(G,y),r&&(b.lineTo(G,w),b.lineTo(G,y))):(c.beginPath(),c.moveTo(G,y),r&&(b.beginPath(),b.moveTo(G,y))),N=B=!1):(c.lineTo(G,w),r&&b.lineTo(G,w),c.lineTo(G,y),r&&b.lineTo(G,y),0==s%500&&(c.stroke(),c.beginPath(),c.moveTo(G,y),r&&(b.stroke(),b.beginPath(),b.moveTo(G,y))));f={x:G,y:y};s<n.length-1&&(v!==(n[s].lineColor||z)||p!==(n[s].lineDashType||
323
- m.lineDashType))&&(c.stroke(),c.beginPath(),c.moveTo(G,y),v=n[s].lineColor||z,c.strokeStyle=v,c.setLineDash&&(n[s].lineDashType?(p=n[s].lineDashType,c.setLineDash(R(p,m.lineThickness))):(p=m.lineDashType,c.setLineDash(g))));0!==n[s].markerSize&&(0<n[s].markerSize||0<m.markerSize)&&(w=m.getMarkerProperties(s,G,y,c),l.push(w),E=V(E),r&&l.push({x:G,y:y,ctx:b,type:w.type,size:w.size,color:E,borderColor:E,borderThickness:w.borderThickness}));(n[s].indexLabel||m.indexLabel||n[s].indexLabelFormatter||m.indexLabelFormatter)&&
324
- this._indexLabels.push({chartType:"stepLine",dataPoint:n[s],dataSeries:m,point:{x:G,y:y},direction:0>n[s].y===a.axisY.reversed?1:-1,color:z})}c.stroke();r&&b.stroke()}}u.drawMarkers(l);r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,
325
- 0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),b.beginPath());c.restore();c.beginPath();return{source:h,dest:this.plotArea.ctx,animationCallback:t.xClipAnimation,easingFunction:t.easing.linear,animationBase:0}}};w.prototype.renderSpline=function(a){function h(a){a=x(a,2);if(0<a.length){b.beginPath();r&&e.beginPath();b.moveTo(a[0].x,a[0].y);a[0].newStrokeStyle&&(b.strokeStyle=a[0].newStrokeStyle);a[0].newLineDashArray&&b.setLineDash(a[0].newLineDashArray);r&&e.moveTo(a[0].x,a[0].y);
314
+ m.lineThickness),p=m.lineDashType,g=R(p,m.lineThickness);c.setLineDash(g)}var z=m.id;this._eventManager.objectMap[z]={objectType:"dataSeries",dataSeriesIndex:k};z=V(z);b.strokeStyle=z;b.lineWidth=0<m.lineThickness?Math.max(m.lineThickness,4):0;var z=m._colorSet,u=z=m.lineColor=m.options.lineColor?m.options.lineColor:z[0];c.strokeStyle=z;var B=!0,t=0,G,y;c.beginPath();if(0<n.length){for(var N=!1,t=0;t<n.length;t++)if(G=n[t].x.getTime?n[t].x.getTime():n[t].x,!(G<a.axisX.dataInfo.viewPortMin||G>a.axisX.dataInfo.viewPortMax&&
315
+ (!m.connectNullData||!N)))if("number"!==typeof n[t].y)0<t&&!(m.connectNullData||N||B)&&(c.stroke(),r&&b.stroke()),N=!0;else{G=a.axisX.convertValueToPixel(G);y=a.axisY.convertValueToPixel(n[t].y);var w=m.dataPointIds[t];this._eventManager.objectMap[w]={id:w,objectType:"dataPoint",dataSeriesIndex:k,dataPointIndex:t,x1:G,y1:y};B||N?(!B&&m.connectNullData?(c.setLineDash&&(m.options.nullDataLineDashType||p===m.lineDashType&&m.lineDashType!==m.nullDataLineDashType)&&(c.stroke(),c.beginPath(),c.moveTo(f.x,
316
+ f.y),p=m.nullDataLineDashType,c.setLineDash(q)),c.lineTo(G,y),r&&b.lineTo(G,y)):(c.beginPath(),c.moveTo(G,y),r&&(b.beginPath(),b.moveTo(G,y))),N=B=!1):(c.lineTo(G,y),r&&b.lineTo(G,y),0==t%500&&(c.stroke(),c.beginPath(),c.moveTo(G,y),r&&(b.stroke(),b.beginPath(),b.moveTo(G,y))));f={x:G,y:y};t<n.length-1&&(u!==(n[t].lineColor||z)||p!==(n[t].lineDashType||m.lineDashType))&&(c.stroke(),c.beginPath(),c.moveTo(G,y),u=n[t].lineColor||z,c.strokeStyle=u,c.setLineDash&&(n[t].lineDashType?(p=n[t].lineDashType,
317
+ c.setLineDash(R(p,m.lineThickness))):(p=m.lineDashType,c.setLineDash(g))));if(0!==n[t].markerSize&&(0<n[t].markerSize||0<m.markerSize)){var E=m.getMarkerProperties(t,G,y,c);l.push(E);w=V(w);r&&l.push({x:G,y:y,ctx:b,type:E.type,size:E.size,color:w,borderColor:w,borderThickness:E.borderThickness})}(n[t].indexLabel||m.indexLabel||n[t].indexLabelFormatter||m.indexLabelFormatter)&&this._indexLabels.push({chartType:"line",dataPoint:n[t],dataSeries:m,point:{x:G,y:y},direction:0>n[t].y===a.axisY.reversed?
318
+ 1:-1,color:z})}c.stroke();r&&b.stroke()}}v.drawMarkers(l);r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),b.beginPath());c.restore();c.beginPath();
319
+ return{source:h,dest:this.plotArea.ctx,animationCallback:s.xClipAnimation,easingFunction:s.easing.linear,animationBase:0}}};w.prototype.renderStepLine=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx;c.save();var e=this.plotArea;c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();for(var l=[],f,d=0;d<a.dataSeriesIndexes.length;d++){var k=a.dataSeriesIndexes[d],m=this.data[k];c.lineWidth=m.lineThickness;
320
+ var n=m.dataPoints,p="solid";if(c.setLineDash){var q=R(m.nullDataLineDashType,m.lineThickness),p=m.lineDashType,g=R(p,m.lineThickness);c.setLineDash(g)}var z=m.id;this._eventManager.objectMap[z]={objectType:"dataSeries",dataSeriesIndex:k};z=V(z);b.strokeStyle=z;b.lineWidth=0<m.lineThickness?Math.max(m.lineThickness,4):0;var z=m._colorSet,u=z=m.lineColor=m.options.lineColor?m.options.lineColor:z[0];c.strokeStyle=z;var B=!0,t=0,G,y;c.beginPath();if(0<n.length){for(var N=!1,t=0;t<n.length;t++)if(G=n[t].getTime?
321
+ n[t].x.getTime():n[t].x,!(G<a.axisX.dataInfo.viewPortMin||G>a.axisX.dataInfo.viewPortMax&&(!m.connectNullData||!N)))if("number"!==typeof n[t].y)0<t&&!(m.connectNullData||N||B)&&(c.stroke(),r&&b.stroke()),N=!0;else{var w=y;G=a.axisX.convertValueToPixel(G);y=a.axisY.convertValueToPixel(n[t].y);var E=m.dataPointIds[t];this._eventManager.objectMap[E]={id:E,objectType:"dataPoint",dataSeriesIndex:k,dataPointIndex:t,x1:G,y1:y};B||N?(!B&&m.connectNullData?(c.setLineDash&&(m.options.nullDataLineDashType||
322
+ p===m.lineDashType&&m.lineDashType!==m.nullDataLineDashType)&&(c.stroke(),c.beginPath(),c.moveTo(f.x,f.y),p=m.nullDataLineDashType,c.setLineDash(q)),c.lineTo(G,w),c.lineTo(G,y),r&&(b.lineTo(G,w),b.lineTo(G,y))):(c.beginPath(),c.moveTo(G,y),r&&(b.beginPath(),b.moveTo(G,y))),N=B=!1):(c.lineTo(G,w),r&&b.lineTo(G,w),c.lineTo(G,y),r&&b.lineTo(G,y),0==t%500&&(c.stroke(),c.beginPath(),c.moveTo(G,y),r&&(b.stroke(),b.beginPath(),b.moveTo(G,y))));f={x:G,y:y};t<n.length-1&&(u!==(n[t].lineColor||z)||p!==(n[t].lineDashType||
323
+ m.lineDashType))&&(c.stroke(),c.beginPath(),c.moveTo(G,y),u=n[t].lineColor||z,c.strokeStyle=u,c.setLineDash&&(n[t].lineDashType?(p=n[t].lineDashType,c.setLineDash(R(p,m.lineThickness))):(p=m.lineDashType,c.setLineDash(g))));0!==n[t].markerSize&&(0<n[t].markerSize||0<m.markerSize)&&(w=m.getMarkerProperties(t,G,y,c),l.push(w),E=V(E),r&&l.push({x:G,y:y,ctx:b,type:w.type,size:w.size,color:E,borderColor:E,borderThickness:w.borderThickness}));(n[t].indexLabel||m.indexLabel||n[t].indexLabelFormatter||m.indexLabelFormatter)&&
324
+ this._indexLabels.push({chartType:"stepLine",dataPoint:n[t],dataSeries:m,point:{x:G,y:y},direction:0>n[t].y===a.axisY.reversed?1:-1,color:z})}c.stroke();r&&b.stroke()}}v.drawMarkers(l);r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,
325
+ 0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),b.beginPath());c.restore();c.beginPath();return{source:h,dest:this.plotArea.ctx,animationCallback:s.xClipAnimation,easingFunction:s.easing.linear,animationBase:0}}};w.prototype.renderSpline=function(a){function h(a){a=x(a,2);if(0<a.length){b.beginPath();r&&e.beginPath();b.moveTo(a[0].x,a[0].y);a[0].newStrokeStyle&&(b.strokeStyle=a[0].newStrokeStyle);a[0].newLineDashArray&&b.setLineDash(a[0].newLineDashArray);r&&e.moveTo(a[0].x,a[0].y);
326
326
  for(var c=0;c<a.length-3;c+=3)if(b.bezierCurveTo(a[c+1].x,a[c+1].y,a[c+2].x,a[c+2].y,a[c+3].x,a[c+3].y),r&&e.bezierCurveTo(a[c+1].x,a[c+1].y,a[c+2].x,a[c+2].y,a[c+3].x,a[c+3].y),0<c&&0===c%3E3||a[c+3].newStrokeStyle||a[c+3].newLineDashArray)b.stroke(),b.beginPath(),b.moveTo(a[c+3].x,a[c+3].y),a[c+3].newStrokeStyle&&(b.strokeStyle=a[c+3].newStrokeStyle),a[c+3].newLineDashArray&&b.setLineDash(a[c+3].newLineDashArray),r&&(e.stroke(),e.beginPath(),e.moveTo(a[c+3].x,a[c+3].y));b.stroke();r&&e.stroke()}}
327
327
  var c=a.targetCanvasCtx||this.plotArea.ctx,b=r?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx;b.save();var l=this.plotArea;b.beginPath();b.rect(l.x1,l.y1,l.width,l.height);b.clip();for(var f=[],d=0;d<a.dataSeriesIndexes.length;d++){var k=a.dataSeriesIndexes[d],m=this.data[k];b.lineWidth=m.lineThickness;var n=m.dataPoints,p="solid";if(b.setLineDash){var q=R(m.nullDataLineDashType,m.lineThickness),p=m.lineDashType,g=R(p,m.lineThickness);b.setLineDash(g)}var z=
328
- m.id;this._eventManager.objectMap[z]={objectType:"dataSeries",dataSeriesIndex:k};z=V(z);e.strokeStyle=z;e.lineWidth=0<m.lineThickness?Math.max(m.lineThickness,4):0;var z=m._colorSet,v=z=m.lineColor=m.options.lineColor?m.options.lineColor:z[0];b.strokeStyle=z;var B=0,s,G,y=[];b.beginPath();if(0<n.length)for(G=!1,B=0;B<n.length;B++)if(s=n[B].getTime?n[B].x.getTime():n[B].x,!(s<a.axisX.dataInfo.viewPortMin||s>a.axisX.dataInfo.viewPortMax&&(!m.connectNullData||!G)))if("number"!==typeof n[B].y)0<B&&!G&&
329
- (m.connectNullData?b.setLineDash&&(0<y.length&&(m.options.nullDataLineDashType||!n[B-1].lineDashType))&&(y[y.length-1].newLineDashArray=q,p=m.nullDataLineDashType):(h(y),y=[])),G=!0;else{s=a.axisX.convertValueToPixel(s);G=a.axisY.convertValueToPixel(n[B].y);var N=m.dataPointIds[B];this._eventManager.objectMap[N]={id:N,objectType:"dataPoint",dataSeriesIndex:k,dataPointIndex:B,x1:s,y1:G};y[y.length]={x:s,y:G};B<n.length-1&&(v!==(n[B].lineColor||z)||p!==(n[B].lineDashType||m.lineDashType))&&(v=n[B].lineColor||
330
- z,y[y.length-1].newStrokeStyle=v,b.setLineDash&&(n[B].lineDashType?(p=n[B].lineDashType,y[y.length-1].newLineDashArray=R(p,m.lineThickness)):(p=m.lineDashType,y[y.length-1].newLineDashArray=g)));if(0!==n[B].markerSize&&(0<n[B].markerSize||0<m.markerSize)){var w=m.getMarkerProperties(B,s,G,b);f.push(w);N=V(N);r&&f.push({x:s,y:G,ctx:e,type:w.type,size:w.size,color:N,borderColor:N,borderThickness:w.borderThickness})}(n[B].indexLabel||m.indexLabel||n[B].indexLabelFormatter||m.indexLabelFormatter)&&this._indexLabels.push({chartType:"spline",
331
- dataPoint:n[B],dataSeries:m,point:{x:s,y:G},direction:0>n[B].y===a.axisY.reversed?1:-1,color:z});G=!1}h(y)}u.drawMarkers(f);r&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(l.x1,
332
- l.y1,l.width,l.height),e.beginPath());b.restore();b.beginPath();return{source:c,dest:this.plotArea.ctx,animationCallback:t.xClipAnimation,easingFunction:t.easing.linear,animationBase:0}}};w.prototype.renderColumn=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=0,f,d,k,m=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),l=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?
328
+ m.id;this._eventManager.objectMap[z]={objectType:"dataSeries",dataSeriesIndex:k};z=V(z);e.strokeStyle=z;e.lineWidth=0<m.lineThickness?Math.max(m.lineThickness,4):0;var z=m._colorSet,u=z=m.lineColor=m.options.lineColor?m.options.lineColor:z[0];b.strokeStyle=z;var B=0,t,G,y=[];b.beginPath();if(0<n.length)for(G=!1,B=0;B<n.length;B++)if(t=n[B].getTime?n[B].x.getTime():n[B].x,!(t<a.axisX.dataInfo.viewPortMin||t>a.axisX.dataInfo.viewPortMax&&(!m.connectNullData||!G)))if("number"!==typeof n[B].y)0<B&&!G&&
329
+ (m.connectNullData?b.setLineDash&&(0<y.length&&(m.options.nullDataLineDashType||!n[B-1].lineDashType))&&(y[y.length-1].newLineDashArray=q,p=m.nullDataLineDashType):(h(y),y=[])),G=!0;else{t=a.axisX.convertValueToPixel(t);G=a.axisY.convertValueToPixel(n[B].y);var N=m.dataPointIds[B];this._eventManager.objectMap[N]={id:N,objectType:"dataPoint",dataSeriesIndex:k,dataPointIndex:B,x1:t,y1:G};y[y.length]={x:t,y:G};B<n.length-1&&(u!==(n[B].lineColor||z)||p!==(n[B].lineDashType||m.lineDashType))&&(u=n[B].lineColor||
330
+ z,y[y.length-1].newStrokeStyle=u,b.setLineDash&&(n[B].lineDashType?(p=n[B].lineDashType,y[y.length-1].newLineDashArray=R(p,m.lineThickness)):(p=m.lineDashType,y[y.length-1].newLineDashArray=g)));if(0!==n[B].markerSize&&(0<n[B].markerSize||0<m.markerSize)){var w=m.getMarkerProperties(B,t,G,b);f.push(w);N=V(N);r&&f.push({x:t,y:G,ctx:e,type:w.type,size:w.size,color:N,borderColor:N,borderThickness:w.borderThickness})}(n[B].indexLabel||m.indexLabel||n[B].indexLabelFormatter||m.indexLabelFormatter)&&this._indexLabels.push({chartType:"spline",
331
+ dataPoint:n[B],dataSeries:m,point:{x:t,y:G},direction:0>n[B].y===a.axisY.reversed?1:-1,color:z});G=!1}h(y)}v.drawMarkers(f);r&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(l.x1,
332
+ l.y1,l.width,l.height),e.beginPath());b.restore();b.beginPath();return{source:c,dest:this.plotArea.ctx,animationCallback:s.xClipAnimation,easingFunction:s.easing.linear,animationBase:0}}};w.prototype.renderColumn=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=0,f,d,k,m=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),l=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?
333
333
  this.dataPointWidth:1,n=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.width,0.9*(this.plotArea.width/a.plotType.totalDataSeries))<<0,p=a.axisX.dataInfo.minDiff;isFinite(p)||(p=0.3*Math.abs(a.axisX.range));p=this.dataPointWidth=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(p)/Math.log(a.axisX.range):Math.abs(p)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&
334
334
  l>n&&(l=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,n));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&n<l)&&(n=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,l));p<l&&(p=l);p>n&&(p=n);c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(n=0;n<a.dataSeriesIndexes.length;n++){var q=
335
- a.dataSeriesIndexes[n],g=this.data[q],z=g.dataPoints;if(0<z.length)for(var u=5<p&&g.bevelEnabled?!0:!1,l=0;l<z.length;l++)if(z[l].getTime?k=z[l].x.getTime():k=z[l].x,!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax)&&"number"===typeof z[l].y){f=a.axisX.convertValueToPixel(k);d=a.axisY.convertValueToPixel(z[l].y);f=a.axisX.reversed?f+a.plotType.totalDataSeries*p/2-(a.previousDataSeriesCount+n)*p<<0:f-a.plotType.totalDataSeries*p/2+(a.previousDataSeriesCount+n)*p<<0;var B=a.axisX.reversed?
336
- f-p<<0:f+p<<0,s;0<=z[l].y?s=m:(s=d,d=m);d>s&&(b=d,d=s,s=b);b=z[l].color?z[l].color:g._colorSet[l%g._colorSet.length];ba(c,a.axisX.reversed?B:f,d,a.axisX.reversed?f:B,s,b,0,null,u&&(a.axisY.reversed?0>z[l].y:0<=z[l].y),(a.axisY.reversed?0<=z[l].y:0>z[l].y)&&u,!1,!1,g.fillOpacity);b=g.dataPointIds[l];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:q,dataPointIndex:l,x1:f,y1:d,x2:B,y2:s};b=V(b);r&&ba(this._eventManager.ghostCtx,a.axisX.reversed?B:f,d,a.axisX.reversed?f:B,
337
- s,b,0,null,!1,!1,!1,!1);(z[l].indexLabel||g.indexLabel||z[l].indexLabelFormatter||g.indexLabelFormatter)&&this._indexLabels.push({chartType:"column",dataPoint:z[l],dataSeries:g,point:{x:f+(B-f)/2,y:0>z[l].y===a.axisY.reversed?d:s},direction:0>z[l].y===a.axisY.reversed?1:-1,bounds:{x1:f,y1:Math.min(d,s),x2:B,y2:Math.max(d,s)},color:b})}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,
338
- this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.yScaleAnimation,easingFunction:t.easing.easeOutQuart,animationBase:m<a.axisY.bounds.y1?a.axisY.bounds.y1:m>a.axisY.bounds.y2?a.axisY.bounds.y2:m}}};w.prototype.renderStackedColumn=
335
+ a.dataSeriesIndexes[n],g=this.data[q],z=g.dataPoints;if(0<z.length)for(var v=5<p&&g.bevelEnabled?!0:!1,l=0;l<z.length;l++)if(z[l].getTime?k=z[l].x.getTime():k=z[l].x,!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax)&&"number"===typeof z[l].y){f=a.axisX.convertValueToPixel(k);d=a.axisY.convertValueToPixel(z[l].y);f=a.axisX.reversed?f+a.plotType.totalDataSeries*p/2-(a.previousDataSeriesCount+n)*p<<0:f-a.plotType.totalDataSeries*p/2+(a.previousDataSeriesCount+n)*p<<0;var B=a.axisX.reversed?
336
+ f-p<<0:f+p<<0,t;0<=z[l].y?t=m:(t=d,d=m);d>t&&(b=d,d=t,t=b);b=z[l].color?z[l].color:g._colorSet[l%g._colorSet.length];ba(c,a.axisX.reversed?B:f,d,a.axisX.reversed?f:B,t,b,0,null,v&&(a.axisY.reversed?0>z[l].y:0<=z[l].y),(a.axisY.reversed?0<=z[l].y:0>z[l].y)&&v,!1,!1,g.fillOpacity);b=g.dataPointIds[l];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:q,dataPointIndex:l,x1:f,y1:d,x2:B,y2:t};b=V(b);r&&ba(this._eventManager.ghostCtx,a.axisX.reversed?B:f,d,a.axisX.reversed?f:B,
337
+ t,b,0,null,!1,!1,!1,!1);(z[l].indexLabel||g.indexLabel||z[l].indexLabelFormatter||g.indexLabelFormatter)&&this._indexLabels.push({chartType:"column",dataPoint:z[l],dataSeries:g,point:{x:f+(B-f)/2,y:0>z[l].y===a.axisY.reversed?d:t},direction:0>z[l].y===a.axisY.reversed?1:-1,bounds:{x1:f,y1:Math.min(d,t),x2:B,y2:Math.max(d,t)},color:b})}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,
338
+ this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.yScaleAnimation,easingFunction:s.easing.easeOutQuart,animationBase:m<a.axisY.bounds.y1?a.axisY.bounds.y1:m>a.axisY.bounds.y2?a.axisY.bounds.y2:m}}};w.prototype.renderStackedColumn=
339
339
  function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=[],f=[],d=[],k=[],m=0,n,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),m=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.width<<0,z=a.axisX.dataInfo.minDiff;
340
340
  isFinite(z)||(z=0.3*Math.abs(a.axisX.range));z=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(z)/Math.log(a.axisX.range):Math.abs(z)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&m>g&&(m=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&g<m)&&(g=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,m));z<m&&(z=m);z>g&&(z=g);c.save();r&&this._eventManager.ghostCtx.save();
341
- c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g<a.dataSeriesIndexes.length;g++){var u=a.dataSeriesIndexes[g],B=this.data[u],s=B.dataPoints;if(0<s.length){var v=5<z&&B.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(m=0;m<s.length;m++)if(b=s[m].x.getTime?s[m].x.getTime():s[m].x,!(b<a.axisX.dataInfo.viewPortMin||b>a.axisX.dataInfo.viewPortMax)&&
342
- "number"===typeof s[m].y){n=a.axisX.convertValueToPixel(b);n=n-a.plotType.plotUnits.length*z/2+a.index*z<<0;var y=n+z<<0,N;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0<s[m].y)d[b]=s[m].y+(d[b]?d[b]:0),0<d[b]&&(p=a.axisY.convertValueToPixel(d[b]),N="undefined"!==typeof l[b]?l[b]:q,l[b]=p);else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=s[m].y)k[b]=s[m].y+(k[b]?k[b]:0),N=a.axisY.convertValueToPixel(k[b]),p="undefined"!==typeof f[b]?
343
- f[b]:q,f[b]=N;else if(p=a.axisY.convertValueToPixel(s[m].y),0<=s[m].y){var w="undefined"!==typeof l[b]?l[b]:0;p-=w;N=q-w;l[b]=w+(N-p)}else w=f[b]?f[b]:0,N=p+w,p=q+w,f[b]=w+(N-p);b=s[m].color?s[m].color:B._colorSet[m%B._colorSet.length];ba(c,n,a.axisY.reversed?N:p,y,a.axisY.reversed?p:N,b,0,null,v&&(a.axisY.reversed?0>s[m].y:0<=s[m].y),(a.axisY.reversed?0<=s[m].y:0>s[m].y)&&v,!1,!1,B.fillOpacity);b=B.dataPointIds[m];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:u,dataPointIndex:m,
344
- x1:n,y1:p,x2:y,y2:N};b=V(b);r&&ba(this._eventManager.ghostCtx,n,p,y,N,b,0,null,!1,!1,!1,!1);(s[m].indexLabel||B.indexLabel||s[m].indexLabelFormatter||B.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedColumn",dataPoint:s[m],dataSeries:B,point:{x:n+(y-n)/2,y:0<=s[m].y?p:N},direction:0>s[m].y===a.axisY.reversed?1:-1,bounds:{x1:n,y1:Math.min(p,N),x2:y,y2:Math.max(p,N)},color:b})}}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",
345
- a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.yScaleAnimation,easingFunction:t.easing.easeOutQuart,animationBase:q<a.axisY.bounds.y1?a.axisY.bounds.y1:
341
+ c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g<a.dataSeriesIndexes.length;g++){var v=a.dataSeriesIndexes[g],B=this.data[v],t=B.dataPoints;if(0<t.length){var u=5<z&&B.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(m=0;m<t.length;m++)if(b=t[m].x.getTime?t[m].x.getTime():t[m].x,!(b<a.axisX.dataInfo.viewPortMin||b>a.axisX.dataInfo.viewPortMax)&&
342
+ "number"===typeof t[m].y){n=a.axisX.convertValueToPixel(b);n=n-a.plotType.plotUnits.length*z/2+a.index*z<<0;var y=n+z<<0,N;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0<t[m].y)d[b]=t[m].y+(d[b]?d[b]:0),0<d[b]&&(p=a.axisY.convertValueToPixel(d[b]),N="undefined"!==typeof l[b]?l[b]:q,l[b]=p);else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=t[m].y)k[b]=t[m].y+(k[b]?k[b]:0),N=a.axisY.convertValueToPixel(k[b]),p="undefined"!==typeof f[b]?
343
+ f[b]:q,f[b]=N;else if(p=a.axisY.convertValueToPixel(t[m].y),0<=t[m].y){var w="undefined"!==typeof l[b]?l[b]:0;p-=w;N=q-w;l[b]=w+(N-p)}else w=f[b]?f[b]:0,N=p+w,p=q+w,f[b]=w+(N-p);b=t[m].color?t[m].color:B._colorSet[m%B._colorSet.length];ba(c,n,a.axisY.reversed?N:p,y,a.axisY.reversed?p:N,b,0,null,u&&(a.axisY.reversed?0>t[m].y:0<=t[m].y),(a.axisY.reversed?0<=t[m].y:0>t[m].y)&&u,!1,!1,B.fillOpacity);b=B.dataPointIds[m];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:v,dataPointIndex:m,
344
+ x1:n,y1:p,x2:y,y2:N};b=V(b);r&&ba(this._eventManager.ghostCtx,n,p,y,N,b,0,null,!1,!1,!1,!1);(t[m].indexLabel||B.indexLabel||t[m].indexLabelFormatter||B.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedColumn",dataPoint:t[m],dataSeries:B,point:{x:n+(y-n)/2,y:0<=t[m].y?p:N},direction:0>t[m].y===a.axisY.reversed?1:-1,bounds:{x1:n,y1:Math.min(p,N),x2:y,y2:Math.max(p,N)},color:b})}}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",
345
+ a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.yScaleAnimation,easingFunction:s.easing.easeOutQuart,animationBase:q<a.axisY.bounds.y1?a.axisY.bounds.y1:
346
346
  q>a.axisY.bounds.y2?a.axisY.bounds.y2:q}}};w.prototype.renderStackedColumn100=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=[],f=[],d=[],k=[],m=0,n,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),m=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?
347
347
  this.dataPointWidth:0.15*this.width<<0,z=a.axisX.dataInfo.minDiff;isFinite(z)||(z=0.3*Math.abs(a.axisX.range));z=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(z)/Math.log(a.axisX.range):Math.abs(z)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&m>g&&(m=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&g<m)&&(g=Math.max(this.options.dataPointWidth?this.dataPointWidth:
348
- -Infinity,m));z<m&&(z=m);z>g&&(z=g);c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g<a.dataSeriesIndexes.length;g++){var u=a.dataSeriesIndexes[g],B=this.data[u],s=B.dataPoints;if(0<s.length)for(var v=5<z&&B.bevelEnabled?!0:!1,m=0;m<s.length;m++)if(b=s[m].x.getTime?s[m].x.getTime():s[m].x,!(b<a.axisX.dataInfo.viewPortMin||
349
- b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof s[m].y){n=a.axisX.convertValueToPixel(b);p=0!==a.dataPointYSums[b]?100*(s[m].y/a.dataPointYSums[b]):0;n=n-a.plotType.plotUnits.length*z/2+a.index*z<<0;var y=n+z<<0,N;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0<s[m].y){d[b]=p+("undefined"!==typeof d[b]?d[b]:0);if(0>=d[b])continue;p=a.axisY.convertValueToPixel(d[b]);N=l[b]?l[b]:q;l[b]=p}else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&
350
- 0>=s[m].y)k[b]=p+("undefined"!==typeof k[b]?k[b]:0),N=a.axisY.convertValueToPixel(k[b]),p=f[b]?f[b]:q,f[b]=N;else if(p=a.axisY.convertValueToPixel(p),0<=s[m].y){var w="undefined"!==typeof l[b]?l[b]:0;p-=w;N=q-w;a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.y1-p)&&(p=e.y1);l[b]=w+(N-p)}else w="undefined"!==typeof f[b]?f[b]:0,N=p+w,p=q+w,a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.y2-N)&&(N=e.y2),f[b]=w+(N-p);b=s[m].color?s[m].color:B._colorSet[m%B._colorSet.length];ba(c,n,a.axisY.reversed?N:
351
- p,y,a.axisY.reversed?p:N,b,0,null,v&&(a.axisY.reversed?0>s[m].y:0<=s[m].y),(a.axisY.reversed?0<=s[m].y:0>s[m].y)&&v,!1,!1,B.fillOpacity);b=B.dataPointIds[m];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:u,dataPointIndex:m,x1:n,y1:p,x2:y,y2:N};b=V(b);r&&ba(this._eventManager.ghostCtx,n,p,y,N,b,0,null,!1,!1,!1,!1);(s[m].indexLabel||B.indexLabel||s[m].indexLabelFormatter||B.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedColumn100",dataPoint:s[m],dataSeries:B,
352
- point:{x:n+(y-n)/2,y:0<=s[m].y?p:N},direction:0>s[m].y===a.axisY.reversed?1:-1,bounds:{x1:n,y1:Math.min(p,N),x2:y,y2:Math.max(p,N)},color:b})}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),
353
- c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.yScaleAnimation,easingFunction:t.easing.easeOutQuart,animationBase:q<a.axisY.bounds.y1?a.axisY.bounds.y1:q>a.axisY.bounds.y2?a.axisY.bounds.y2:q}}};w.prototype.renderBar=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=0,f,d,k,m=a.axisY.convertValueToPixel(a.axisY.logarithmic?
348
+ -Infinity,m));z<m&&(z=m);z>g&&(z=g);c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g<a.dataSeriesIndexes.length;g++){var v=a.dataSeriesIndexes[g],B=this.data[v],t=B.dataPoints;if(0<t.length)for(var u=5<z&&B.bevelEnabled?!0:!1,m=0;m<t.length;m++)if(b=t[m].x.getTime?t[m].x.getTime():t[m].x,!(b<a.axisX.dataInfo.viewPortMin||
349
+ b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof t[m].y){n=a.axisX.convertValueToPixel(b);p=0!==a.dataPointYSums[b]?100*(t[m].y/a.dataPointYSums[b]):0;n=n-a.plotType.plotUnits.length*z/2+a.index*z<<0;var y=n+z<<0,N;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0<t[m].y){d[b]=p+("undefined"!==typeof d[b]?d[b]:0);if(0>=d[b])continue;p=a.axisY.convertValueToPixel(d[b]);N=l[b]?l[b]:q;l[b]=p}else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&
350
+ 0>=t[m].y)k[b]=p+("undefined"!==typeof k[b]?k[b]:0),N=a.axisY.convertValueToPixel(k[b]),p=f[b]?f[b]:q,f[b]=N;else if(p=a.axisY.convertValueToPixel(p),0<=t[m].y){var w="undefined"!==typeof l[b]?l[b]:0;p-=w;N=q-w;a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.y1-p)&&(p=e.y1);l[b]=w+(N-p)}else w="undefined"!==typeof f[b]?f[b]:0,N=p+w,p=q+w,a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.y2-N)&&(N=e.y2),f[b]=w+(N-p);b=t[m].color?t[m].color:B._colorSet[m%B._colorSet.length];ba(c,n,a.axisY.reversed?N:
351
+ p,y,a.axisY.reversed?p:N,b,0,null,u&&(a.axisY.reversed?0>t[m].y:0<=t[m].y),(a.axisY.reversed?0<=t[m].y:0>t[m].y)&&u,!1,!1,B.fillOpacity);b=B.dataPointIds[m];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:v,dataPointIndex:m,x1:n,y1:p,x2:y,y2:N};b=V(b);r&&ba(this._eventManager.ghostCtx,n,p,y,N,b,0,null,!1,!1,!1,!1);(t[m].indexLabel||B.indexLabel||t[m].indexLabelFormatter||B.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedColumn100",dataPoint:t[m],dataSeries:B,
352
+ point:{x:n+(y-n)/2,y:0<=t[m].y?p:N},direction:0>t[m].y===a.axisY.reversed?1:-1,bounds:{x1:n,y1:Math.min(p,N),x2:y,y2:Math.max(p,N)},color:b})}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),
353
+ c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.yScaleAnimation,easingFunction:s.easing.easeOutQuart,animationBase:q<a.axisY.bounds.y1?a.axisY.bounds.y1:q>a.axisY.bounds.y2?a.axisY.bounds.y2:q}}};w.prototype.renderBar=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=0,f,d,k,m=a.axisY.convertValueToPixel(a.axisY.logarithmic?
354
354
  a.axisY.viewportMinimum:0),l=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,n=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.height,0.9*(this.plotArea.height/a.plotType.totalDataSeries))<<0,p=a.axisX.dataInfo.minDiff;isFinite(p)||(p=0.3*Math.abs(a.axisX.range));p=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.height*(a.axisX.logarithmic?Math.log(p)/Math.log(a.axisX.range):
355
355
  Math.abs(p)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&l>n&&(l=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,n));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&n<l)&&(n=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,l));p<l&&(p=l);p>n&&(p=n);c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,
356
- e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(n=0;n<a.dataSeriesIndexes.length;n++){var q=a.dataSeriesIndexes[n],g=this.data[q],z=g.dataPoints;if(0<z.length){var u=5<p&&g.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(l=0;l<z.length;l++)if(z[l].getTime?k=z[l].x.getTime():k=z[l].x,!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax)&&"number"===typeof z[l].y){d=a.axisX.convertValueToPixel(k);f=a.axisY.convertValueToPixel(z[l].y);d=a.axisX.reversed?d+a.plotType.totalDataSeries*
357
- p/2-(a.previousDataSeriesCount+n)*p<<0:d-a.plotType.totalDataSeries*p/2+(a.previousDataSeriesCount+n)*p<<0;var B=a.axisX.reversed?d-p<<0:d+p<<0,s;0<=z[l].y?s=m:(s=f,f=m);b=z[l].color?z[l].color:g._colorSet[l%g._colorSet.length];ba(c,a.axisY.reversed?f:s,a.axisX.reversed?B:d,a.axisY.reversed?s:f,a.axisX.reversed?d:B,b,0,null,u,!1,!1,!1,g.fillOpacity);b=g.dataPointIds[l];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:q,dataPointIndex:l,x1:s,y1:d,x2:f,y2:B};b=V(b);r&&ba(this._eventManager.ghostCtx,
358
- s,a.axisX.reversed?B:d,f,a.axisX.reversed?d:B,b,0,null,!1,!1,!1,!1);(z[l].indexLabel||g.indexLabel||z[l].indexLabelFormatter||g.indexLabelFormatter)&&this._indexLabels.push({chartType:"bar",dataPoint:z[l],dataSeries:g,point:{x:0<=z[l].y?f:s,y:d+(B-d)/2},direction:0>z[l].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(s,f),y1:d,x2:Math.max(s,f),y2:B},color:b})}}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,
359
- 0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.xScaleAnimation,easingFunction:t.easing.easeOutQuart,animationBase:m<a.axisY.bounds.x1?a.axisY.bounds.x1:m>a.axisY.bounds.x2?a.axisY.bounds.x2:
356
+ e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(n=0;n<a.dataSeriesIndexes.length;n++){var q=a.dataSeriesIndexes[n],g=this.data[q],z=g.dataPoints;if(0<z.length){var v=5<p&&g.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(l=0;l<z.length;l++)if(z[l].getTime?k=z[l].x.getTime():k=z[l].x,!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax)&&"number"===typeof z[l].y){d=a.axisX.convertValueToPixel(k);f=a.axisY.convertValueToPixel(z[l].y);d=a.axisX.reversed?d+a.plotType.totalDataSeries*
357
+ p/2-(a.previousDataSeriesCount+n)*p<<0:d-a.plotType.totalDataSeries*p/2+(a.previousDataSeriesCount+n)*p<<0;var B=a.axisX.reversed?d-p<<0:d+p<<0,t;0<=z[l].y?t=m:(t=f,f=m);b=z[l].color?z[l].color:g._colorSet[l%g._colorSet.length];ba(c,a.axisY.reversed?f:t,a.axisX.reversed?B:d,a.axisY.reversed?t:f,a.axisX.reversed?d:B,b,0,null,v,!1,!1,!1,g.fillOpacity);b=g.dataPointIds[l];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:q,dataPointIndex:l,x1:t,y1:d,x2:f,y2:B};b=V(b);r&&ba(this._eventManager.ghostCtx,
358
+ t,a.axisX.reversed?B:d,f,a.axisX.reversed?d:B,b,0,null,!1,!1,!1,!1);(z[l].indexLabel||g.indexLabel||z[l].indexLabelFormatter||g.indexLabelFormatter)&&this._indexLabels.push({chartType:"bar",dataPoint:z[l],dataSeries:g,point:{x:0<=z[l].y?f:t,y:d+(B-d)/2},direction:0>z[l].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(t,f),y1:d,x2:Math.max(t,f),y2:B},color:b})}}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,
359
+ 0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.xScaleAnimation,easingFunction:s.easing.easeOutQuart,animationBase:m<a.axisY.bounds.x1?a.axisY.bounds.x1:m>a.axisY.bounds.x2?a.axisY.bounds.x2:
360
360
  m}}};w.prototype.renderStackedBar=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=[],f=[],d=[],k=[],m=0,n,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),m=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.height<<
361
361
  0,z=a.axisX.dataInfo.minDiff;isFinite(z)||(z=0.3*Math.abs(a.axisX.range));z=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.height*(a.axisX.logarithmic?Math.log(z)/Math.log(a.axisX.range):Math.abs(z)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&m>g&&(m=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&g<m)&&(g=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,m));z<m&&
362
- (z=m);z>g&&(z=g);c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g<a.dataSeriesIndexes.length;g++){var u=a.dataSeriesIndexes[g],B=this.data[u],s=B.dataPoints;if(0<s.length){var v=5<z&&B.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(m=0;m<s.length;m++)if(b=s[m].x.getTime?s[m].x.getTime():s[m].x,
363
- !(b<a.axisX.dataInfo.viewPortMin||b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof s[m].y){p=a.axisX.convertValueToPixel(b);p=p-a.plotType.plotUnits.length*z/2+a.index*z<<0;var y=p+z<<0,w;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0<s[m].y)d[b]=s[m].y+(d[b]?d[b]:0),0<d[b]&&(w=l[b]?l[b]:q,l[b]=n=a.axisY.convertValueToPixel(d[b]));else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=s[m].y)k[b]=s[m].y+(k[b]?k[b]:0),n=f[b]?f[b]:
364
- q,f[b]=w=a.axisY.convertValueToPixel(k[b]);else if(n=a.axisY.convertValueToPixel(s[m].y),0<=s[m].y){var x=l[b]?l[b]:0;w=q+x;n+=x;l[b]=x+(n-w)}else x=f[b]?f[b]:0,w=n-x,n=q-x,f[b]=x+(n-w);b=s[m].color?s[m].color:B._colorSet[m%B._colorSet.length];ba(c,a.axisY.reversed?n:w,p,a.axisY.reversed?w:n,y,b,0,null,v,!1,!1,!1,B.fillOpacity);b=B.dataPointIds[m];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:u,dataPointIndex:m,x1:w,y1:p,x2:n,y2:y};b=V(b);r&&ba(this._eventManager.ghostCtx,
365
- w,p,n,y,b,0,null,!1,!1,!1,!1);(s[m].indexLabel||B.indexLabel||s[m].indexLabelFormatter||B.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedBar",dataPoint:s[m],dataSeries:B,point:{x:0<=s[m].y?n:w,y:p+(y-p)/2},direction:0>s[m].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(w,n),y1:p,x2:Math.max(w,n),y2:y},color:b})}}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,
366
- this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.xScaleAnimation,easingFunction:t.easing.easeOutQuart,animationBase:q<a.axisY.bounds.x1?a.axisY.bounds.x1:q>a.axisY.bounds.x2?a.axisY.bounds.x2:q}}};w.prototype.renderStackedBar100=
362
+ (z=m);z>g&&(z=g);c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g<a.dataSeriesIndexes.length;g++){var v=a.dataSeriesIndexes[g],B=this.data[v],t=B.dataPoints;if(0<t.length){var u=5<z&&B.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(m=0;m<t.length;m++)if(b=t[m].x.getTime?t[m].x.getTime():t[m].x,
363
+ !(b<a.axisX.dataInfo.viewPortMin||b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof t[m].y){p=a.axisX.convertValueToPixel(b);p=p-a.plotType.plotUnits.length*z/2+a.index*z<<0;var y=p+z<<0,w;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0<t[m].y)d[b]=t[m].y+(d[b]?d[b]:0),0<d[b]&&(w=l[b]?l[b]:q,l[b]=n=a.axisY.convertValueToPixel(d[b]));else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=t[m].y)k[b]=t[m].y+(k[b]?k[b]:0),n=f[b]?f[b]:
364
+ q,f[b]=w=a.axisY.convertValueToPixel(k[b]);else if(n=a.axisY.convertValueToPixel(t[m].y),0<=t[m].y){var x=l[b]?l[b]:0;w=q+x;n+=x;l[b]=x+(n-w)}else x=f[b]?f[b]:0,w=n-x,n=q-x,f[b]=x+(n-w);b=t[m].color?t[m].color:B._colorSet[m%B._colorSet.length];ba(c,a.axisY.reversed?n:w,p,a.axisY.reversed?w:n,y,b,0,null,u,!1,!1,!1,B.fillOpacity);b=B.dataPointIds[m];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:v,dataPointIndex:m,x1:w,y1:p,x2:n,y2:y};b=V(b);r&&ba(this._eventManager.ghostCtx,
365
+ w,p,n,y,b,0,null,!1,!1,!1,!1);(t[m].indexLabel||B.indexLabel||t[m].indexLabelFormatter||B.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedBar",dataPoint:t[m],dataSeries:B,point:{x:0<=t[m].y?n:w,y:p+(y-p)/2},direction:0>t[m].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(w,n),y1:p,x2:Math.max(w,n),y2:y},color:b})}}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,
366
+ this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.xScaleAnimation,easingFunction:s.easing.easeOutQuart,animationBase:q<a.axisY.bounds.x1?a.axisY.bounds.x1:q>a.axisY.bounds.x2?a.axisY.bounds.x2:q}}};w.prototype.renderStackedBar100=
367
367
  function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=[],f=[],d=[],k=[],m=0,n,p,q=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),m=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,g=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.height<<0,z=a.axisX.dataInfo.minDiff;
368
368
  isFinite(z)||(z=0.3*Math.abs(a.axisX.range));z=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.height*(a.axisX.logarithmic?Math.log(z)/Math.log(a.axisX.range):Math.abs(z)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&m>g&&(m=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,g));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&g<m)&&(g=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,m));z<m&&(z=m);z>g&&(z=g);c.save();r&&
369
- this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g<a.dataSeriesIndexes.length;g++){var u=a.dataSeriesIndexes[g],B=this.data[u],s=B.dataPoints;if(0<s.length){var v=5<z&&B.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(m=0;m<s.length;m++)if(b=s[m].x.getTime?s[m].x.getTime():s[m].x,!(b<a.axisX.dataInfo.viewPortMin||
370
- b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof s[m].y){p=a.axisX.convertValueToPixel(b);var y;y=0!==a.dataPointYSums[b]?100*(s[m].y/a.dataPointYSums[b]):0;p=p-a.plotType.plotUnits.length*z/2+a.index*z<<0;var w=p+z<<0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0<s[m].y){d[b]=y+(d[b]?d[b]:0);if(0>=d[b])continue;y=l[b]?l[b]:q;l[b]=n=a.axisY.convertValueToPixel(d[b])}else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=s[m].y)k[b]=
371
- y+(k[b]?k[b]:0),n=f[b]?f[b]:q,f[b]=y=a.axisY.convertValueToPixel(k[b]);else if(n=a.axisY.convertValueToPixel(y),0<=s[m].y){var x=l[b]?l[b]:0;y=q+x;n+=x;a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.x2-n)&&(n=e.x2);l[b]=x+(n-y)}else x=f[b]?f[b]:0,y=n-x,n=q-x,a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.x1-y)&&(y=e.x1),f[b]=x+(n-y);b=s[m].color?s[m].color:B._colorSet[m%B._colorSet.length];ba(c,a.axisY.reversed?n:y,p,a.axisY.reversed?y:n,w,b,0,null,v,!1,!1,!1,B.fillOpacity);b=B.dataPointIds[m];
372
- this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:u,dataPointIndex:m,x1:y,y1:p,x2:n,y2:w};b=V(b);r&&ba(this._eventManager.ghostCtx,y,p,n,w,b,0,null,!1,!1,!1,!1);(s[m].indexLabel||B.indexLabel||s[m].indexLabelFormatter||B.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedBar100",dataPoint:s[m],dataSeries:B,point:{x:0<=s[m].y?n:y,y:p+(w-p)/2},direction:0>s[m].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(y,n),y1:p,x2:Math.max(y,n),y2:w},color:b})}}}r&&(h.drawImage(this._preRenderCanvas,
373
- 0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.xScaleAnimation,easingFunction:t.easing.easeOutQuart,
369
+ this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(g=0;g<a.dataSeriesIndexes.length;g++){var v=a.dataSeriesIndexes[g],B=this.data[v],t=B.dataPoints;if(0<t.length){var u=5<z&&B.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(m=0;m<t.length;m++)if(b=t[m].x.getTime?t[m].x.getTime():t[m].x,!(b<a.axisX.dataInfo.viewPortMin||
370
+ b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof t[m].y){p=a.axisX.convertValueToPixel(b);var y;y=0!==a.dataPointYSums[b]?100*(t[m].y/a.dataPointYSums[b]):0;p=p-a.plotType.plotUnits.length*z/2+a.index*z<<0;var w=p+z<<0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0<t[m].y){d[b]=y+(d[b]?d[b]:0);if(0>=d[b])continue;y=l[b]?l[b]:q;l[b]=n=a.axisY.convertValueToPixel(d[b])}else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=t[m].y)k[b]=
371
+ y+(k[b]?k[b]:0),n=f[b]?f[b]:q,f[b]=y=a.axisY.convertValueToPixel(k[b]);else if(n=a.axisY.convertValueToPixel(y),0<=t[m].y){var x=l[b]?l[b]:0;y=q+x;n+=x;a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.x2-n)&&(n=e.x2);l[b]=x+(n-y)}else x=f[b]?f[b]:0,y=n-x,n=q-x,a.dataSeriesIndexes.length-1===g&&1>=Math.abs(e.x1-y)&&(y=e.x1),f[b]=x+(n-y);b=t[m].color?t[m].color:B._colorSet[m%B._colorSet.length];ba(c,a.axisY.reversed?n:y,p,a.axisY.reversed?y:n,w,b,0,null,u,!1,!1,!1,B.fillOpacity);b=B.dataPointIds[m];
372
+ this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:v,dataPointIndex:m,x1:y,y1:p,x2:n,y2:w};b=V(b);r&&ba(this._eventManager.ghostCtx,y,p,n,w,b,0,null,!1,!1,!1,!1);(t[m].indexLabel||B.indexLabel||t[m].indexLabelFormatter||B.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedBar100",dataPoint:t[m],dataSeries:B,point:{x:0<=t[m].y?n:y,y:p+(w-p)/2},direction:0>t[m].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(y,n),y1:p,x2:Math.max(y,n),y2:w},color:b})}}}r&&(h.drawImage(this._preRenderCanvas,
373
+ 0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.xScaleAnimation,easingFunction:s.easing.easeOutQuart,
374
374
  animationBase:q<a.axisY.bounds.x1?a.axisY.bounds.x1:q>a.axisY.bounds.x2?a.axisY.bounds.x2:q}}};w.prototype.renderArea=function(a){var h,c;function b(){x&&(0<g.lineThickness&&l.stroke(),a.axisY.logarithmic||0>=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?w=y:0>a.axisY.viewportMaximum?w=d.y1:0<a.axisY.viewportMinimum&&(w=y),l.lineTo(B,w),l.lineTo(x.x,w),l.closePath(),l.globalAlpha=g.fillOpacity,l.fill(),l.globalAlpha=1,r&&(f.lineTo(B,w),f.lineTo(x.x,w),f.closePath(),f.fill()),l.beginPath(),l.moveTo(B,
375
- s),f.beginPath(),f.moveTo(B,s),x={x:B,y:s})}var e=a.targetCanvasCtx||this.plotArea.ctx,l=r?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var f=this._eventManager.ghostCtx,d=a.axisY.lineCoordinates,k=[],m=this.plotArea,n;l.save();r&&f.save();l.beginPath();l.rect(m.x1,m.y1,m.width,m.height);l.clip();r&&(f.beginPath(),f.rect(m.x1,m.y1,m.width,m.height),f.clip());for(var p=0;p<a.dataSeriesIndexes.length;p++){var q=a.dataSeriesIndexes[p],g=this.data[q],z=g.dataPoints,k=g.id;this._eventManager.objectMap[k]=
376
- {objectType:"dataSeries",dataSeriesIndex:q};k=V(k);f.fillStyle=k;k=[];h=!0;var v=0,B,s,G,y=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),w,x=null;if(0<z.length){var E=g._colorSet[v%g._colorSet.length],A=g.lineColor=g.options.lineColor||E,D=A;l.fillStyle=E;l.strokeStyle=A;l.lineWidth=g.lineThickness;c="solid";if(l.setLineDash){var Y=R(g.nullDataLineDashType,g.lineThickness);c=g.lineDashType;var W=R(c,g.lineThickness);l.setLineDash(W)}for(var fa=!0;v<z.length;v++)if(G=z[v].x.getTime?
377
- z[v].x.getTime():z[v].x,!(G<a.axisX.dataInfo.viewPortMin||G>a.axisX.dataInfo.viewPortMax&&(!g.connectNullData||!fa)))if("number"!==typeof z[v].y)g.connectNullData||(fa||h)||b(),fa=!0;else{B=a.axisX.convertValueToPixel(G);s=a.axisY.convertValueToPixel(z[v].y);h||fa?(!h&&g.connectNullData?(l.setLineDash&&(g.options.nullDataLineDashType||c===g.lineDashType&&g.lineDashType!==g.nullDataLineDashType)&&(h=B,c=s,B=n.x,s=n.y,b(),l.moveTo(n.x,n.y),B=h,s=c,x=n,c=g.nullDataLineDashType,l.setLineDash(Y)),l.lineTo(B,
378
- s),r&&f.lineTo(B,s)):(l.beginPath(),l.moveTo(B,s),r&&(f.beginPath(),f.moveTo(B,s)),x={x:B,y:s}),fa=h=!1):(l.lineTo(B,s),r&&f.lineTo(B,s),0==v%250&&b());n={x:B,y:s};v<z.length-1&&(D!==(z[v].lineColor||A)||c!==(z[v].lineDashType||g.lineDashType))&&(b(),D=z[v].lineColor||A,l.strokeStyle=D,l.setLineDash&&(z[v].lineDashType?(c=z[v].lineDashType,l.setLineDash(R(c,g.lineThickness))):(c=g.lineDashType,l.setLineDash(W))));var ca=g.dataPointIds[v];this._eventManager.objectMap[ca]={id:ca,objectType:"dataPoint",
379
- dataSeriesIndex:q,dataPointIndex:v,x1:B,y1:s};0!==z[v].markerSize&&(0<z[v].markerSize||0<g.markerSize)&&(G=g.getMarkerProperties(v,B,s,l),k.push(G),ca=V(ca),r&&k.push({x:B,y:s,ctx:f,type:G.type,size:G.size,color:ca,borderColor:ca,borderThickness:G.borderThickness}));(z[v].indexLabel||g.indexLabel||z[v].indexLabelFormatter||g.indexLabelFormatter)&&this._indexLabels.push({chartType:"area",dataPoint:z[v],dataSeries:g,point:{x:B,y:s},direction:0>z[v].y===a.axisY.reversed?1:-1,color:E})}b();u.drawMarkers(k)}}r&&
380
- (e.drawImage(this._preRenderCanvas,0,0,this.width,this.height),l.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&l.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&l.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),l.clearRect(m.x1,m.y1,m.width,m.height),this._eventManager.ghostCtx.restore());l.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:t.xClipAnimation,
381
- easingFunction:t.easing.linear,animationBase:0}}};w.prototype.renderSplineArea=function(a){function h(){var c=x(G,2);if(0<c.length){if(0<n.lineThickness){b.beginPath();b.moveTo(c[0].x,c[0].y);c[0].newStrokeStyle&&(b.strokeStyle=c[0].newStrokeStyle);c[0].newLineDashArray&&b.setLineDash(c[0].newLineDashArray);for(var h=0;h<c.length-3;h+=3)if(b.bezierCurveTo(c[h+1].x,c[h+1].y,c[h+2].x,c[h+2].y,c[h+3].x,c[h+3].y),r&&e.bezierCurveTo(c[h+1].x,c[h+1].y,c[h+2].x,c[h+2].y,c[h+3].x,c[h+3].y),c[h+3].newStrokeStyle||
375
+ t),f.beginPath(),f.moveTo(B,t),x={x:B,y:t})}var e=a.targetCanvasCtx||this.plotArea.ctx,l=r?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var f=this._eventManager.ghostCtx,d=a.axisY.lineCoordinates,k=[],m=this.plotArea,n;l.save();r&&f.save();l.beginPath();l.rect(m.x1,m.y1,m.width,m.height);l.clip();r&&(f.beginPath(),f.rect(m.x1,m.y1,m.width,m.height),f.clip());for(var p=0;p<a.dataSeriesIndexes.length;p++){var q=a.dataSeriesIndexes[p],g=this.data[q],z=g.dataPoints,k=g.id;this._eventManager.objectMap[k]=
376
+ {objectType:"dataSeries",dataSeriesIndex:q};k=V(k);f.fillStyle=k;k=[];h=!0;var u=0,B,t,G,y=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),w,x=null;if(0<z.length){var E=g._colorSet[u%g._colorSet.length],A=g.lineColor=g.options.lineColor||E,D=A;l.fillStyle=E;l.strokeStyle=A;l.lineWidth=g.lineThickness;c="solid";if(l.setLineDash){var Y=R(g.nullDataLineDashType,g.lineThickness);c=g.lineDashType;var W=R(c,g.lineThickness);l.setLineDash(W)}for(var fa=!0;u<z.length;u++)if(G=z[u].x.getTime?
377
+ z[u].x.getTime():z[u].x,!(G<a.axisX.dataInfo.viewPortMin||G>a.axisX.dataInfo.viewPortMax&&(!g.connectNullData||!fa)))if("number"!==typeof z[u].y)g.connectNullData||(fa||h)||b(),fa=!0;else{B=a.axisX.convertValueToPixel(G);t=a.axisY.convertValueToPixel(z[u].y);h||fa?(!h&&g.connectNullData?(l.setLineDash&&(g.options.nullDataLineDashType||c===g.lineDashType&&g.lineDashType!==g.nullDataLineDashType)&&(h=B,c=t,B=n.x,t=n.y,b(),l.moveTo(n.x,n.y),B=h,t=c,x=n,c=g.nullDataLineDashType,l.setLineDash(Y)),l.lineTo(B,
378
+ t),r&&f.lineTo(B,t)):(l.beginPath(),l.moveTo(B,t),r&&(f.beginPath(),f.moveTo(B,t)),x={x:B,y:t}),fa=h=!1):(l.lineTo(B,t),r&&f.lineTo(B,t),0==u%250&&b());n={x:B,y:t};u<z.length-1&&(D!==(z[u].lineColor||A)||c!==(z[u].lineDashType||g.lineDashType))&&(b(),D=z[u].lineColor||A,l.strokeStyle=D,l.setLineDash&&(z[u].lineDashType?(c=z[u].lineDashType,l.setLineDash(R(c,g.lineThickness))):(c=g.lineDashType,l.setLineDash(W))));var ca=g.dataPointIds[u];this._eventManager.objectMap[ca]={id:ca,objectType:"dataPoint",
379
+ dataSeriesIndex:q,dataPointIndex:u,x1:B,y1:t};0!==z[u].markerSize&&(0<z[u].markerSize||0<g.markerSize)&&(G=g.getMarkerProperties(u,B,t,l),k.push(G),ca=V(ca),r&&k.push({x:B,y:t,ctx:f,type:G.type,size:G.size,color:ca,borderColor:ca,borderThickness:G.borderThickness}));(z[u].indexLabel||g.indexLabel||z[u].indexLabelFormatter||g.indexLabelFormatter)&&this._indexLabels.push({chartType:"area",dataPoint:z[u],dataSeries:g,point:{x:B,y:t},direction:0>z[u].y===a.axisY.reversed?1:-1,color:E})}b();v.drawMarkers(k)}}r&&
380
+ (e.drawImage(this._preRenderCanvas,0,0,this.width,this.height),l.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&l.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&l.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),l.clearRect(m.x1,m.y1,m.width,m.height),this._eventManager.ghostCtx.restore());l.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:s.xClipAnimation,
381
+ easingFunction:s.easing.linear,animationBase:0}}};w.prototype.renderSplineArea=function(a){function h(){var c=x(G,2);if(0<c.length){if(0<n.lineThickness){b.beginPath();b.moveTo(c[0].x,c[0].y);c[0].newStrokeStyle&&(b.strokeStyle=c[0].newStrokeStyle);c[0].newLineDashArray&&b.setLineDash(c[0].newLineDashArray);for(var h=0;h<c.length-3;h+=3)if(b.bezierCurveTo(c[h+1].x,c[h+1].y,c[h+2].x,c[h+2].y,c[h+3].x,c[h+3].y),r&&e.bezierCurveTo(c[h+1].x,c[h+1].y,c[h+2].x,c[h+2].y,c[h+3].x,c[h+3].y),c[h+3].newStrokeStyle||
382
382
  c[h+3].newLineDashArray)b.stroke(),b.beginPath(),b.moveTo(c[h+3].x,c[h+3].y),c[h+3].newStrokeStyle&&(b.strokeStyle=c[h+3].newStrokeStyle),c[h+3].newLineDashArray&&b.setLineDash(c[h+3].newLineDashArray);b.stroke()}b.beginPath();b.moveTo(c[0].x,c[0].y);r&&(e.beginPath(),e.moveTo(c[0].x,c[0].y));for(h=0;h<c.length-3;h+=3)b.bezierCurveTo(c[h+1].x,c[h+1].y,c[h+2].x,c[h+2].y,c[h+3].x,c[h+3].y),r&&e.bezierCurveTo(c[h+1].x,c[h+1].y,c[h+2].x,c[h+2].y,c[h+3].x,c[h+3].y);a.axisY.logarithmic||0>=a.axisY.viewportMinimum&&
383
- 0<=a.axisY.viewportMaximum?B=v:0>a.axisY.viewportMaximum?B=l.y1:0<a.axisY.viewportMinimum&&(B=v);s={x:c[0].x,y:c[0].y};b.lineTo(c[c.length-1].x,B);b.lineTo(s.x,B);b.closePath();b.globalAlpha=n.fillOpacity;b.fill();b.globalAlpha=1;r&&(e.lineTo(c[c.length-1].x,B),e.lineTo(s.x,B),e.closePath(),e.fill())}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=r?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,l=a.axisY.lineCoordinates,f=[],d=this.plotArea;b.save();r&&
384
- e.save();b.beginPath();b.rect(d.x1,d.y1,d.width,d.height);b.clip();r&&(e.beginPath(),e.rect(d.x1,d.y1,d.width,d.height),e.clip());for(var k=0;k<a.dataSeriesIndexes.length;k++){var m=a.dataSeriesIndexes[k],n=this.data[m],p=n.dataPoints,f=n.id;this._eventManager.objectMap[f]={objectType:"dataSeries",dataSeriesIndex:m};f=V(f);e.fillStyle=f;var f=[],q=0,g,z,v=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),B,s=null,G=[];if(0<p.length){var y=n._colorSet[q%n._colorSet.length],
383
+ 0<=a.axisY.viewportMaximum?B=u:0>a.axisY.viewportMaximum?B=l.y1:0<a.axisY.viewportMinimum&&(B=u);t={x:c[0].x,y:c[0].y};b.lineTo(c[c.length-1].x,B);b.lineTo(t.x,B);b.closePath();b.globalAlpha=n.fillOpacity;b.fill();b.globalAlpha=1;r&&(e.lineTo(c[c.length-1].x,B),e.lineTo(t.x,B),e.closePath(),e.fill())}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=r?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,l=a.axisY.lineCoordinates,f=[],d=this.plotArea;b.save();r&&
384
+ e.save();b.beginPath();b.rect(d.x1,d.y1,d.width,d.height);b.clip();r&&(e.beginPath(),e.rect(d.x1,d.y1,d.width,d.height),e.clip());for(var k=0;k<a.dataSeriesIndexes.length;k++){var m=a.dataSeriesIndexes[k],n=this.data[m],p=n.dataPoints,f=n.id;this._eventManager.objectMap[f]={objectType:"dataSeries",dataSeriesIndex:m};f=V(f);e.fillStyle=f;var f=[],q=0,g,z,u=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),B,t=null,G=[];if(0<p.length){var y=n._colorSet[q%n._colorSet.length],
385
385
  w=n.lineColor=n.options.lineColor||y,La=w;b.fillStyle=y;b.strokeStyle=w;b.lineWidth=n.lineThickness;var E="solid";if(b.setLineDash){var A=R(n.nullDataLineDashType,n.lineThickness),E=n.lineDashType,D=R(E,n.lineThickness);b.setLineDash(D)}for(z=!1;q<p.length;q++)if(g=p[q].x.getTime?p[q].x.getTime():p[q].x,!(g<a.axisX.dataInfo.viewPortMin||g>a.axisX.dataInfo.viewPortMax&&(!n.connectNullData||!z)))if("number"!==typeof p[q].y)0<q&&!z&&(n.connectNullData?b.setLineDash&&(0<G.length&&(n.options.nullDataLineDashType||
386
386
  !p[q-1].lineDashType))&&(G[G.length-1].newLineDashArray=A,E=n.nullDataLineDashType):(h(),G=[])),z=!0;else{g=a.axisX.convertValueToPixel(g);z=a.axisY.convertValueToPixel(p[q].y);var Y=n.dataPointIds[q];this._eventManager.objectMap[Y]={id:Y,objectType:"dataPoint",dataSeriesIndex:m,dataPointIndex:q,x1:g,y1:z};G[G.length]={x:g,y:z};q<p.length-1&&(La!==(p[q].lineColor||w)||E!==(p[q].lineDashType||n.lineDashType))&&(La=p[q].lineColor||w,G[G.length-1].newStrokeStyle=La,b.setLineDash&&(p[q].lineDashType?
387
387
  (E=p[q].lineDashType,G[G.length-1].newLineDashArray=R(E,n.lineThickness)):(E=n.lineDashType,G[G.length-1].newLineDashArray=D)));if(0!==p[q].markerSize&&(0<p[q].markerSize||0<n.markerSize)){var W=n.getMarkerProperties(q,g,z,b);f.push(W);Y=V(Y);r&&f.push({x:g,y:z,ctx:e,type:W.type,size:W.size,color:Y,borderColor:Y,borderThickness:W.borderThickness})}(p[q].indexLabel||n.indexLabel||p[q].indexLabelFormatter||n.indexLabelFormatter)&&this._indexLabels.push({chartType:"splineArea",dataPoint:p[q],dataSeries:n,
388
- point:{x:g,y:z},direction:0>p[q].y===a.axisY.reversed?1:-1,color:y});z=!1}h();u.drawMarkers(f)}}r&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(d.x1,d.y1,d.width,d.height),
389
- this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:t.xClipAnimation,easingFunction:t.easing.linear,animationBase:0}}};w.prototype.renderStepArea=function(a){var h,c;function b(){x&&(0<g.lineThickness&&l.stroke(),a.axisY.logarithmic||0>=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?w=y:0>a.axisY.viewportMaximum?w=d.y1:0<a.axisY.viewportMinimum&&(w=y),l.lineTo(B,w),l.lineTo(x.x,w),l.closePath(),l.globalAlpha=g.fillOpacity,l.fill(),l.globalAlpha=
390
- 1,r&&(f.lineTo(B,w),f.lineTo(x.x,w),f.closePath(),f.fill()),l.beginPath(),l.moveTo(B,s),f.beginPath(),f.moveTo(B,s),x={x:B,y:s})}var e=a.targetCanvasCtx||this.plotArea.ctx,l=r?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var f=this._eventManager.ghostCtx,d=a.axisY.lineCoordinates,k=[],m=this.plotArea,n;l.save();r&&f.save();l.beginPath();l.rect(m.x1,m.y1,m.width,m.height);l.clip();r&&(f.beginPath(),f.rect(m.x1,m.y1,m.width,m.height),f.clip());for(var p=0;p<a.dataSeriesIndexes.length;p++){var q=
391
- a.dataSeriesIndexes[p],g=this.data[q],z=g.dataPoints,k=g.id;this._eventManager.objectMap[k]={objectType:"dataSeries",dataSeriesIndex:q};k=V(k);f.fillStyle=k;k=[];h=!0;var v=0,B,s,G,y=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),w,x=null;c=!1;if(0<z.length){var E=g._colorSet[v%g._colorSet.length],A=g.lineColor=g.options.lineColor||E,D=A;l.fillStyle=E;l.strokeStyle=A;l.lineWidth=g.lineThickness;var Y="solid";if(l.setLineDash){var W=R(g.nullDataLineDashType,g.lineThickness),
392
- Y=g.lineDashType,fa=R(Y,g.lineThickness);l.setLineDash(fa)}for(;v<z.length;v++)if(G=z[v].x.getTime?z[v].x.getTime():z[v].x,!(G<a.axisX.dataInfo.viewPortMin||G>a.axisX.dataInfo.viewPortMax&&(!g.connectNullData||!c))){var ca=s;"number"!==typeof z[v].y?(g.connectNullData||(c||h)||b(),c=!0):(B=a.axisX.convertValueToPixel(G),s=a.axisY.convertValueToPixel(z[v].y),h||c?(!h&&g.connectNullData?(l.setLineDash&&(g.options.nullDataLineDashType||Y===g.lineDashType&&g.lineDashType!==g.nullDataLineDashType)&&(h=
393
- B,c=s,B=n.x,s=n.y,b(),l.moveTo(n.x,n.y),B=h,s=c,x=n,Y=g.nullDataLineDashType,l.setLineDash(W)),l.lineTo(B,ca),l.lineTo(B,s),r&&(f.lineTo(B,ca),f.lineTo(B,s))):(l.beginPath(),l.moveTo(B,s),r&&(f.beginPath(),f.moveTo(B,s)),x={x:B,y:s}),c=h=!1):(l.lineTo(B,ca),r&&f.lineTo(B,ca),l.lineTo(B,s),r&&f.lineTo(B,s),0==v%250&&b()),n={x:B,y:s},v<z.length-1&&(D!==(z[v].lineColor||A)||Y!==(z[v].lineDashType||g.lineDashType))&&(b(),D=z[v].lineColor||A,l.strokeStyle=D,l.setLineDash&&(z[v].lineDashType?(Y=z[v].lineDashType,
394
- l.setLineDash(R(Y,g.lineThickness))):(Y=g.lineDashType,l.setLineDash(fa)))),G=g.dataPointIds[v],this._eventManager.objectMap[G]={id:G,objectType:"dataPoint",dataSeriesIndex:q,dataPointIndex:v,x1:B,y1:s},0!==z[v].markerSize&&(0<z[v].markerSize||0<g.markerSize)&&(ca=g.getMarkerProperties(v,B,s,l),k.push(ca),G=V(G),r&&k.push({x:B,y:s,ctx:f,type:ca.type,size:ca.size,color:G,borderColor:G,borderThickness:ca.borderThickness})),(z[v].indexLabel||g.indexLabel||z[v].indexLabelFormatter||g.indexLabelFormatter)&&
395
- this._indexLabels.push({chartType:"stepArea",dataPoint:z[v],dataSeries:g,point:{x:B,y:s},direction:0>z[v].y===a.axisY.reversed?1:-1,color:E}))}b();u.drawMarkers(k)}}r&&(e.drawImage(this._preRenderCanvas,0,0,this.width,this.height),l.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&l.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&l.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,
396
- 0,0,this.width,this.height),l.clearRect(m.x1,m.y1,m.width,m.height),this._eventManager.ghostCtx.restore());l.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:t.xClipAnimation,easingFunction:t.easing.linear,animationBase:0}}};w.prototype.renderStackedArea=function(a){function h(){if(!(1>m.length)){for(0<E.lineThickness&&b.stroke();0<m.length;){var a=m.pop();b.lineTo(a.x,a.y);r&&B.lineTo(a.x,a.y)}b.closePath();b.globalAlpha=E.fillOpacity;b.fill();b.globalAlpha=1;b.beginPath();r&&(B.closePath(),
397
- B.fill(),B.beginPath());m=[]}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=r?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var e=null,l=null,f=[],d=this.plotArea,k=[],m=[],n=[],p=[],q=0,g,z,v=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),B=this._eventManager.ghostCtx,s,G,y;r&&B.beginPath();b.save();r&&B.save();b.beginPath();b.rect(d.x1,d.y1,d.width,d.height);b.clip();r&&(B.beginPath(),B.rect(d.x1,d.y1,d.width,d.height),B.clip());for(var e=[],w=0;w<a.dataSeriesIndexes.length;w++){var x=
388
+ point:{x:g,y:z},direction:0>p[q].y===a.axisY.reversed?1:-1,color:y});z=!1}h();v.drawMarkers(f)}}r&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(d.x1,d.y1,d.width,d.height),
389
+ this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:s.xClipAnimation,easingFunction:s.easing.linear,animationBase:0}}};w.prototype.renderStepArea=function(a){var h,c;function b(){x&&(0<g.lineThickness&&l.stroke(),a.axisY.logarithmic||0>=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?w=y:0>a.axisY.viewportMaximum?w=d.y1:0<a.axisY.viewportMinimum&&(w=y),l.lineTo(B,w),l.lineTo(x.x,w),l.closePath(),l.globalAlpha=g.fillOpacity,l.fill(),l.globalAlpha=
390
+ 1,r&&(f.lineTo(B,w),f.lineTo(x.x,w),f.closePath(),f.fill()),l.beginPath(),l.moveTo(B,t),f.beginPath(),f.moveTo(B,t),x={x:B,y:t})}var e=a.targetCanvasCtx||this.plotArea.ctx,l=r?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var f=this._eventManager.ghostCtx,d=a.axisY.lineCoordinates,k=[],m=this.plotArea,n;l.save();r&&f.save();l.beginPath();l.rect(m.x1,m.y1,m.width,m.height);l.clip();r&&(f.beginPath(),f.rect(m.x1,m.y1,m.width,m.height),f.clip());for(var p=0;p<a.dataSeriesIndexes.length;p++){var q=
391
+ a.dataSeriesIndexes[p],g=this.data[q],z=g.dataPoints,k=g.id;this._eventManager.objectMap[k]={objectType:"dataSeries",dataSeriesIndex:q};k=V(k);f.fillStyle=k;k=[];h=!0;var u=0,B,t,G,y=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),w,x=null;c=!1;if(0<z.length){var E=g._colorSet[u%g._colorSet.length],A=g.lineColor=g.options.lineColor||E,D=A;l.fillStyle=E;l.strokeStyle=A;l.lineWidth=g.lineThickness;var Y="solid";if(l.setLineDash){var W=R(g.nullDataLineDashType,g.lineThickness),
392
+ Y=g.lineDashType,fa=R(Y,g.lineThickness);l.setLineDash(fa)}for(;u<z.length;u++)if(G=z[u].x.getTime?z[u].x.getTime():z[u].x,!(G<a.axisX.dataInfo.viewPortMin||G>a.axisX.dataInfo.viewPortMax&&(!g.connectNullData||!c))){var ca=t;"number"!==typeof z[u].y?(g.connectNullData||(c||h)||b(),c=!0):(B=a.axisX.convertValueToPixel(G),t=a.axisY.convertValueToPixel(z[u].y),h||c?(!h&&g.connectNullData?(l.setLineDash&&(g.options.nullDataLineDashType||Y===g.lineDashType&&g.lineDashType!==g.nullDataLineDashType)&&(h=
393
+ B,c=t,B=n.x,t=n.y,b(),l.moveTo(n.x,n.y),B=h,t=c,x=n,Y=g.nullDataLineDashType,l.setLineDash(W)),l.lineTo(B,ca),l.lineTo(B,t),r&&(f.lineTo(B,ca),f.lineTo(B,t))):(l.beginPath(),l.moveTo(B,t),r&&(f.beginPath(),f.moveTo(B,t)),x={x:B,y:t}),c=h=!1):(l.lineTo(B,ca),r&&f.lineTo(B,ca),l.lineTo(B,t),r&&f.lineTo(B,t),0==u%250&&b()),n={x:B,y:t},u<z.length-1&&(D!==(z[u].lineColor||A)||Y!==(z[u].lineDashType||g.lineDashType))&&(b(),D=z[u].lineColor||A,l.strokeStyle=D,l.setLineDash&&(z[u].lineDashType?(Y=z[u].lineDashType,
394
+ l.setLineDash(R(Y,g.lineThickness))):(Y=g.lineDashType,l.setLineDash(fa)))),G=g.dataPointIds[u],this._eventManager.objectMap[G]={id:G,objectType:"dataPoint",dataSeriesIndex:q,dataPointIndex:u,x1:B,y1:t},0!==z[u].markerSize&&(0<z[u].markerSize||0<g.markerSize)&&(ca=g.getMarkerProperties(u,B,t,l),k.push(ca),G=V(G),r&&k.push({x:B,y:t,ctx:f,type:ca.type,size:ca.size,color:G,borderColor:G,borderThickness:ca.borderThickness})),(z[u].indexLabel||g.indexLabel||z[u].indexLabelFormatter||g.indexLabelFormatter)&&
395
+ this._indexLabels.push({chartType:"stepArea",dataPoint:z[u],dataSeries:g,point:{x:B,y:t},direction:0>z[u].y===a.axisY.reversed?1:-1,color:E}))}b();v.drawMarkers(k)}}r&&(e.drawImage(this._preRenderCanvas,0,0,this.width,this.height),l.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&l.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&l.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,
396
+ 0,0,this.width,this.height),l.clearRect(m.x1,m.y1,m.width,m.height),this._eventManager.ghostCtx.restore());l.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:s.xClipAnimation,easingFunction:s.easing.linear,animationBase:0}}};w.prototype.renderStackedArea=function(a){function h(){if(!(1>m.length)){for(0<E.lineThickness&&b.stroke();0<m.length;){var a=m.pop();b.lineTo(a.x,a.y);r&&B.lineTo(a.x,a.y)}b.closePath();b.globalAlpha=E.fillOpacity;b.fill();b.globalAlpha=1;b.beginPath();r&&(B.closePath(),
397
+ B.fill(),B.beginPath());m=[]}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=r?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var e=null,l=null,f=[],d=this.plotArea,k=[],m=[],n=[],p=[],q=0,g,z,u=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),B=this._eventManager.ghostCtx,t,G,y;r&&B.beginPath();b.save();r&&B.save();b.beginPath();b.rect(d.x1,d.y1,d.width,d.height);b.clip();r&&(B.beginPath(),B.rect(d.x1,d.y1,d.width,d.height),B.clip());for(var e=[],w=0;w<a.dataSeriesIndexes.length;w++){var x=
398
398
  a.dataSeriesIndexes[w],E=this.data[x],A=E.dataPoints;E.dataPointIndexes=[];for(q=0;q<A.length;q++)x=A[q].x.getTime?A[q].x.getTime():A[q].x,E.dataPointIndexes[x]=q,e[x]||(n.push(x),e[x]=!0);n.sort(Ya)}for(w=0;w<a.dataSeriesIndexes.length;w++){x=a.dataSeriesIndexes[w];E=this.data[x];A=E.dataPoints;G=!0;m=[];q=E.id;this._eventManager.objectMap[q]={objectType:"dataSeries",dataSeriesIndex:x};q=V(q);B.fillStyle=q;if(0<n.length){var e=E._colorSet[0],D=E.lineColor=E.options.lineColor||e,Y=D;b.fillStyle=e;
399
399
  b.strokeStyle=D;b.lineWidth=E.lineThickness;y="solid";if(b.setLineDash){var W=R(E.nullDataLineDashType,E.lineThickness);y=E.lineDashType;var fa=R(y,E.lineThickness);b.setLineDash(fa)}for(var ca=!0,q=0;q<n.length;q++){var l=n[q],ka=null,ka=0<=E.dataPointIndexes[l]?A[E.dataPointIndexes[l]]:{x:l,y:null};if(!(l<a.axisX.dataInfo.viewPortMin||l>a.axisX.dataInfo.viewPortMax&&(!E.connectNullData||!ca)))if("number"!==typeof ka.y)E.connectNullData||(ca||G)||h(),ca=!0;else{g=a.axisX.convertValueToPixel(l);var va=
400
- k[l]?k[l]:0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length){p[l]=ka.y+(p[l]?p[l]:0);if(0>=p[l]&&a.axisY.logarithmic)continue;z=a.axisY.convertValueToPixel(p[l])}else z=a.axisY.convertValueToPixel(ka.y),z-=va;m.push({x:g,y:v-va});k[l]=v-z;G||ca?(!G&&E.connectNullData?(b.setLineDash&&(E.options.nullDataLineDashType||y===E.lineDashType&&E.lineDashType!==E.nullDataLineDashType)&&(G=m.pop(),y=m[m.length-1],h(),b.moveTo(s.x,s.y),m.push(y),m.push(G),y=E.nullDataLineDashType,
401
- b.setLineDash(W)),b.lineTo(g,z),r&&B.lineTo(g,z)):(b.beginPath(),b.moveTo(g,z),r&&(B.beginPath(),B.moveTo(g,z))),ca=G=!1):(b.lineTo(g,z),r&&B.lineTo(g,z),0==q%250&&(h(),b.moveTo(g,z),r&&B.moveTo(g,z),m.push({x:g,y:v-va})));s={x:g,y:z};q<A.length-1&&(Y!==(A[q].lineColor||D)||y!==(A[q].lineDashType||E.lineDashType))&&(h(),b.beginPath(),b.moveTo(g,z),m.push({x:g,y:v-va}),Y=A[q].lineColor||D,b.strokeStyle=Y,b.setLineDash&&(A[q].lineDashType?(y=A[q].lineDashType,b.setLineDash(R(y,E.lineThickness))):(y=
400
+ k[l]?k[l]:0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length){p[l]=ka.y+(p[l]?p[l]:0);if(0>=p[l]&&a.axisY.logarithmic)continue;z=a.axisY.convertValueToPixel(p[l])}else z=a.axisY.convertValueToPixel(ka.y),z-=va;m.push({x:g,y:u-va});k[l]=u-z;G||ca?(!G&&E.connectNullData?(b.setLineDash&&(E.options.nullDataLineDashType||y===E.lineDashType&&E.lineDashType!==E.nullDataLineDashType)&&(G=m.pop(),y=m[m.length-1],h(),b.moveTo(t.x,t.y),m.push(y),m.push(G),y=E.nullDataLineDashType,
401
+ b.setLineDash(W)),b.lineTo(g,z),r&&B.lineTo(g,z)):(b.beginPath(),b.moveTo(g,z),r&&(B.beginPath(),B.moveTo(g,z))),ca=G=!1):(b.lineTo(g,z),r&&B.lineTo(g,z),0==q%250&&(h(),b.moveTo(g,z),r&&B.moveTo(g,z),m.push({x:g,y:u-va})));t={x:g,y:z};q<A.length-1&&(Y!==(A[q].lineColor||D)||y!==(A[q].lineDashType||E.lineDashType))&&(h(),b.beginPath(),b.moveTo(g,z),m.push({x:g,y:u-va}),Y=A[q].lineColor||D,b.strokeStyle=Y,b.setLineDash&&(A[q].lineDashType?(y=A[q].lineDashType,b.setLineDash(R(y,E.lineThickness))):(y=
402
402
  E.lineDashType,b.setLineDash(fa))));if(0<=E.dataPointIndexes[l]){var oa=E.dataPointIds[E.dataPointIndexes[l]];this._eventManager.objectMap[oa]={id:oa,objectType:"dataPoint",dataSeriesIndex:x,dataPointIndex:E.dataPointIndexes[l],x1:g,y1:z}}0<=E.dataPointIndexes[l]&&0!==ka.markerSize&&(0<ka.markerSize||0<E.markerSize)&&(va=E.getMarkerProperties(E.dataPointIndexes[l],g,z,b),f.push(va),l=V(oa),r&&f.push({x:g,y:z,ctx:B,type:va.type,size:va.size,color:l,borderColor:l,borderThickness:va.borderThickness}));
403
- (ka.indexLabel||E.indexLabel||ka.indexLabelFormatter||E.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedArea",dataPoint:ka,dataSeries:E,point:{x:g,y:z},direction:0>ka.y===a.axisY.reversed?1:-1,color:e})}}h();b.moveTo(g,z);r&&B.moveTo(g,z)}delete E.dataPointIndexes}u.drawMarkers(f);r&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&
404
- b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(d.x1,d.y1,d.width,d.height),B.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:t.xClipAnimation,easingFunction:t.easing.linear,animationBase:0}}};w.prototype.renderStackedArea100=function(a){function h(){for(0<E.lineThickness&&b.stroke();0<m.length;){var a=m.pop();b.lineTo(a.x,a.y);r&&y.lineTo(a.x,
405
- a.y)}b.closePath();b.globalAlpha=E.fillOpacity;b.fill();b.globalAlpha=1;b.beginPath();r&&(y.closePath(),y.fill(),y.beginPath());m=[]}var c=a.targetCanvasCtx||this.plotArea.ctx,b=r?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var e=null,l=null,f=this.plotArea,d=[],k=[],m=[],n=[],p=[],q=0,g,z,v,B,s,G=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),y=this._eventManager.ghostCtx;b.save();r&&y.save();b.beginPath();b.rect(f.x1,f.y1,f.width,f.height);b.clip();r&&(y.beginPath(),
403
+ (ka.indexLabel||E.indexLabel||ka.indexLabelFormatter||E.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedArea",dataPoint:ka,dataSeries:E,point:{x:g,y:z},direction:0>ka.y===a.axisY.reversed?1:-1,color:e})}}h();b.moveTo(g,z);r&&B.moveTo(g,z)}delete E.dataPointIndexes}v.drawMarkers(f);r&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&
404
+ b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(d.x1,d.y1,d.width,d.height),B.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:s.xClipAnimation,easingFunction:s.easing.linear,animationBase:0}}};w.prototype.renderStackedArea100=function(a){function h(){for(0<E.lineThickness&&b.stroke();0<m.length;){var a=m.pop();b.lineTo(a.x,a.y);r&&y.lineTo(a.x,
405
+ a.y)}b.closePath();b.globalAlpha=E.fillOpacity;b.fill();b.globalAlpha=1;b.beginPath();r&&(y.closePath(),y.fill(),y.beginPath());m=[]}var c=a.targetCanvasCtx||this.plotArea.ctx,b=r?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var e=null,l=null,f=this.plotArea,d=[],k=[],m=[],n=[],p=[],q=0,g,z,u,B,t,G=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),y=this._eventManager.ghostCtx;b.save();r&&y.save();b.beginPath();b.rect(f.x1,f.y1,f.width,f.height);b.clip();r&&(y.beginPath(),
406
406
  y.rect(f.x1,f.y1,f.width,f.height),y.clip());for(var e=[],w=0;w<a.dataSeriesIndexes.length;w++){var x=a.dataSeriesIndexes[w],E=this.data[x],A=E.dataPoints;E.dataPointIndexes=[];for(q=0;q<A.length;q++)x=A[q].x.getTime?A[q].x.getTime():A[q].x,E.dataPointIndexes[x]=q,e[x]||(n.push(x),e[x]=!0);n.sort(Ya)}for(w=0;w<a.dataSeriesIndexes.length;w++){x=a.dataSeriesIndexes[w];E=this.data[x];A=E.dataPoints;B=!0;e=E.id;this._eventManager.objectMap[e]={objectType:"dataSeries",dataSeriesIndex:x};e=V(e);y.fillStyle=
407
- e;m=[];if(0<n.length){var e=E._colorSet[q%E._colorSet.length],D=E.lineColor=E.options.lineColor||e,Y=D;b.fillStyle=e;b.strokeStyle=D;b.lineWidth=E.lineThickness;s="solid";if(b.setLineDash){var W=R(E.nullDataLineDashType,E.lineThickness);s=E.lineDashType;var fa=R(s,E.lineThickness);b.setLineDash(fa)}for(var ca=!0,q=0;q<n.length;q++){var l=n[q],ka=null,ka=0<=E.dataPointIndexes[l]?A[E.dataPointIndexes[l]]:{x:l,y:null};if(!(l<a.axisX.dataInfo.viewPortMin||l>a.axisX.dataInfo.viewPortMax&&(!E.connectNullData||
407
+ e;m=[];if(0<n.length){var e=E._colorSet[q%E._colorSet.length],D=E.lineColor=E.options.lineColor||e,Y=D;b.fillStyle=e;b.strokeStyle=D;b.lineWidth=E.lineThickness;t="solid";if(b.setLineDash){var W=R(E.nullDataLineDashType,E.lineThickness);t=E.lineDashType;var fa=R(t,E.lineThickness);b.setLineDash(fa)}for(var ca=!0,q=0;q<n.length;q++){var l=n[q],ka=null,ka=0<=E.dataPointIndexes[l]?A[E.dataPointIndexes[l]]:{x:l,y:null};if(!(l<a.axisX.dataInfo.viewPortMin||l>a.axisX.dataInfo.viewPortMax&&(!E.connectNullData||
408
408
  !ca)))if("number"!==typeof ka.y)E.connectNullData||(ca||B)||h(),ca=!0;else{var va;va=0!==a.dataPointYSums[l]?100*(ka.y/a.dataPointYSums[l]):0;g=a.axisX.convertValueToPixel(l);var oa=k[l]?k[l]:0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length){p[l]=va+(p[l]?p[l]:0);if(0>=p[l]&&a.axisY.logarithmic)continue;z=a.axisY.convertValueToPixel(p[l])}else z=a.axisY.convertValueToPixel(va),z-=oa;m.push({x:g,y:G-oa});k[l]=G-z;B||ca?(!B&&E.connectNullData?(b.setLineDash&&
409
- (E.options.nullDataLineDashType||s===E.lineDashType&&E.lineDashType!==E.nullDataLineDashType)&&(B=m.pop(),s=m[m.length-1],h(),b.moveTo(v.x,v.y),m.push(s),m.push(B),s=E.nullDataLineDashType,b.setLineDash(W)),b.lineTo(g,z),r&&y.lineTo(g,z)):(b.beginPath(),b.moveTo(g,z),r&&(y.beginPath(),y.moveTo(g,z))),ca=B=!1):(b.lineTo(g,z),r&&y.lineTo(g,z),0==q%250&&(h(),b.moveTo(g,z),r&&y.moveTo(g,z),m.push({x:g,y:G-oa})));v={x:g,y:z};q<A.length-1&&(Y!==(A[q].lineColor||D)||s!==(A[q].lineDashType||E.lineDashType))&&
410
- (h(),b.beginPath(),b.moveTo(g,z),m.push({x:g,y:G-oa}),Y=A[q].lineColor||D,b.strokeStyle=Y,b.setLineDash&&(A[q].lineDashType?(s=A[q].lineDashType,b.setLineDash(R(s,E.lineThickness))):(s=E.lineDashType,b.setLineDash(fa))));if(0<=E.dataPointIndexes[l]){var H=E.dataPointIds[E.dataPointIndexes[l]];this._eventManager.objectMap[H]={id:H,objectType:"dataPoint",dataSeriesIndex:x,dataPointIndex:E.dataPointIndexes[l],x1:g,y1:z}}0<=E.dataPointIndexes[l]&&0!==ka.markerSize&&(0<ka.markerSize||0<E.markerSize)&&
411
- (oa=E.getMarkerProperties(E.dataPointIndexes[l],g,z,b),d.push(oa),l=V(H),r&&d.push({x:g,y:z,ctx:y,type:oa.type,size:oa.size,color:l,borderColor:l,borderThickness:oa.borderThickness}));(ka.indexLabel||E.indexLabel||ka.indexLabelFormatter||E.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedArea100",dataPoint:ka,dataSeries:E,point:{x:g,y:z},direction:0>ka.y===a.axisY.reversed?1:-1,color:e})}}h();b.moveTo(g,z);r&&y.moveTo(g,z)}delete E.dataPointIndexes}u.drawMarkers(d);r&&(c.drawImage(this._preRenderCanvas,
412
- 0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(f.x1,f.y1,f.width,f.height),y.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:t.xClipAnimation,easingFunction:t.easing.linear,
409
+ (E.options.nullDataLineDashType||t===E.lineDashType&&E.lineDashType!==E.nullDataLineDashType)&&(B=m.pop(),t=m[m.length-1],h(),b.moveTo(u.x,u.y),m.push(t),m.push(B),t=E.nullDataLineDashType,b.setLineDash(W)),b.lineTo(g,z),r&&y.lineTo(g,z)):(b.beginPath(),b.moveTo(g,z),r&&(y.beginPath(),y.moveTo(g,z))),ca=B=!1):(b.lineTo(g,z),r&&y.lineTo(g,z),0==q%250&&(h(),b.moveTo(g,z),r&&y.moveTo(g,z),m.push({x:g,y:G-oa})));u={x:g,y:z};q<A.length-1&&(Y!==(A[q].lineColor||D)||t!==(A[q].lineDashType||E.lineDashType))&&
410
+ (h(),b.beginPath(),b.moveTo(g,z),m.push({x:g,y:G-oa}),Y=A[q].lineColor||D,b.strokeStyle=Y,b.setLineDash&&(A[q].lineDashType?(t=A[q].lineDashType,b.setLineDash(R(t,E.lineThickness))):(t=E.lineDashType,b.setLineDash(fa))));if(0<=E.dataPointIndexes[l]){var H=E.dataPointIds[E.dataPointIndexes[l]];this._eventManager.objectMap[H]={id:H,objectType:"dataPoint",dataSeriesIndex:x,dataPointIndex:E.dataPointIndexes[l],x1:g,y1:z}}0<=E.dataPointIndexes[l]&&0!==ka.markerSize&&(0<ka.markerSize||0<E.markerSize)&&
411
+ (oa=E.getMarkerProperties(E.dataPointIndexes[l],g,z,b),d.push(oa),l=V(H),r&&d.push({x:g,y:z,ctx:y,type:oa.type,size:oa.size,color:l,borderColor:l,borderThickness:oa.borderThickness}));(ka.indexLabel||E.indexLabel||ka.indexLabelFormatter||E.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedArea100",dataPoint:ka,dataSeries:E,point:{x:g,y:z},direction:0>ka.y===a.axisY.reversed?1:-1,color:e})}}h();b.moveTo(g,z);r&&y.moveTo(g,z)}delete E.dataPointIndexes}v.drawMarkers(d);r&&(c.drawImage(this._preRenderCanvas,
412
+ 0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(f.x1,f.y1,f.width,f.height),y.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:s.xClipAnimation,easingFunction:s.easing.linear,
413
413
  animationBase:0}}};w.prototype.renderBubble=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=this.plotArea,e=0,l,f;c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(b.x1,b.y1,b.width,b.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.clip());for(var d=-Infinity,k=Infinity,m=0;m<a.dataSeriesIndexes.length;m++)for(var n=
414
- a.dataSeriesIndexes[m],p=this.data[n],q=p.dataPoints,g=0,e=0;e<q.length;e++)l=q[e].getTime?l=q[e].x.getTime():l=q[e].x,l<a.axisX.dataInfo.viewPortMin||l>a.axisX.dataInfo.viewPortMax||"undefined"===typeof q[e].z||(g=q[e].z,g>d&&(d=g),g<k&&(k=g));for(var z=25*Math.PI,v=Math.max(Math.pow(0.25*Math.min(b.height,b.width)/2,2)*Math.PI,z),m=0;m<a.dataSeriesIndexes.length;m++)if(n=a.dataSeriesIndexes[m],p=this.data[n],q=p.dataPoints,0<q.length)for(c.strokeStyle="#4572A7 ",e=0;e<q.length;e++)if(l=q[e].getTime?
415
- l=q[e].x.getTime():l=q[e].x,!(l<a.axisX.dataInfo.viewPortMin||l>a.axisX.dataInfo.viewPortMax)&&"number"===typeof q[e].y){l=a.axisX.convertValueToPixel(l);f=a.axisY.convertValueToPixel(q[e].y);var g=q[e].z,B=2*Math.max(Math.sqrt((d===k?v/2:z+(v-z)/(d-k)*(g-k))/Math.PI)<<0,1),g=p.getMarkerProperties(e,c);g.size=B;c.globalAlpha=p.fillOpacity;u.drawMarker(l,f,c,g.type,g.size,g.color,g.borderColor,g.borderThickness);c.globalAlpha=1;var s=p.dataPointIds[e];this._eventManager.objectMap[s]={id:s,objectType:"dataPoint",
416
- dataSeriesIndex:n,dataPointIndex:e,x1:l,y1:f,size:B};B=V(s);r&&u.drawMarker(l,f,this._eventManager.ghostCtx,g.type,g.size,B,B,g.borderThickness);(q[e].indexLabel||p.indexLabel||q[e].indexLabelFormatter||p.indexLabelFormatter)&&this._indexLabels.push({chartType:"bubble",dataPoint:q[e],dataSeries:p,point:{x:l,y:f},direction:1,bounds:{x1:l-g.size/2,y1:f-g.size/2,x2:l+g.size/2,y2:f+g.size/2},color:null})}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",
417
- a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.fadeInAnimation,easingFunction:t.easing.easeInQuad,animationBase:0}}};w.prototype.renderScatter=
414
+ a.dataSeriesIndexes[m],p=this.data[n],q=p.dataPoints,g=0,e=0;e<q.length;e++)l=q[e].getTime?l=q[e].x.getTime():l=q[e].x,l<a.axisX.dataInfo.viewPortMin||l>a.axisX.dataInfo.viewPortMax||"undefined"===typeof q[e].z||(g=q[e].z,g>d&&(d=g),g<k&&(k=g));for(var z=25*Math.PI,u=Math.max(Math.pow(0.25*Math.min(b.height,b.width)/2,2)*Math.PI,z),m=0;m<a.dataSeriesIndexes.length;m++)if(n=a.dataSeriesIndexes[m],p=this.data[n],q=p.dataPoints,0<q.length)for(c.strokeStyle="#4572A7 ",e=0;e<q.length;e++)if(l=q[e].getTime?
415
+ l=q[e].x.getTime():l=q[e].x,!(l<a.axisX.dataInfo.viewPortMin||l>a.axisX.dataInfo.viewPortMax)&&"number"===typeof q[e].y){l=a.axisX.convertValueToPixel(l);f=a.axisY.convertValueToPixel(q[e].y);var g=q[e].z,B=2*Math.max(Math.sqrt((d===k?u/2:z+(u-z)/(d-k)*(g-k))/Math.PI)<<0,1),g=p.getMarkerProperties(e,c);g.size=B;c.globalAlpha=p.fillOpacity;v.drawMarker(l,f,c,g.type,g.size,g.color,g.borderColor,g.borderThickness);c.globalAlpha=1;var t=p.dataPointIds[e];this._eventManager.objectMap[t]={id:t,objectType:"dataPoint",
416
+ dataSeriesIndex:n,dataPointIndex:e,x1:l,y1:f,size:B};B=V(t);r&&v.drawMarker(l,f,this._eventManager.ghostCtx,g.type,g.size,B,B,g.borderThickness);(q[e].indexLabel||p.indexLabel||q[e].indexLabelFormatter||p.indexLabelFormatter)&&this._indexLabels.push({chartType:"bubble",dataPoint:q[e],dataSeries:p,point:{x:l,y:f},direction:1,bounds:{x1:l-g.size/2,y1:f-g.size/2,x2:l+g.size/2,y2:f+g.size/2},color:null})}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",
417
+ a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.fadeInAnimation,easingFunction:s.easing.easeInQuad,animationBase:0}}};w.prototype.renderScatter=
418
418
  function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=this.plotArea,e=0,l,f;c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(b.x1,b.y1,b.width,b.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.clip());for(var d=0;d<a.dataSeriesIndexes.length;d++){var k=a.dataSeriesIndexes[d],m=this.data[k],n=m.dataPoints;if(0<
419
- n.length){c.strokeStyle="#4572A7 ";Math.pow(0.3*Math.min(b.height,b.width)/2,2);for(var p=0,q=0,e=0;e<n.length;e++)if(l=n[e].getTime?l=n[e].x.getTime():l=n[e].x,!(l<a.axisX.dataInfo.viewPortMin||l>a.axisX.dataInfo.viewPortMax)&&"number"===typeof n[e].y){l=a.axisX.convertValueToPixel(l);f=a.axisY.convertValueToPixel(n[e].y);var g=m.getMarkerProperties(e,l,f,c);c.globalAlpha=m.fillOpacity;u.drawMarker(g.x,g.y,g.ctx,g.type,g.size,g.color,g.borderColor,g.borderThickness);c.globalAlpha=1;Math.sqrt((p-
420
- l)*(p-l)+(q-f)*(q-f))<Math.min(g.size,5)&&n.length>Math.min(this.plotArea.width,this.plotArea.height)||(p=m.dataPointIds[e],this._eventManager.objectMap[p]={id:p,objectType:"dataPoint",dataSeriesIndex:k,dataPointIndex:e,x1:l,y1:f},p=V(p),r&&u.drawMarker(g.x,g.y,this._eventManager.ghostCtx,g.type,g.size,p,p,g.borderThickness),(n[e].indexLabel||m.indexLabel||n[e].indexLabelFormatter||m.indexLabelFormatter)&&this._indexLabels.push({chartType:"scatter",dataPoint:n[e],dataSeries:m,point:{x:l,y:f},direction:1,
419
+ n.length){c.strokeStyle="#4572A7 ";Math.pow(0.3*Math.min(b.height,b.width)/2,2);for(var p=0,q=0,e=0;e<n.length;e++)if(l=n[e].getTime?l=n[e].x.getTime():l=n[e].x,!(l<a.axisX.dataInfo.viewPortMin||l>a.axisX.dataInfo.viewPortMax)&&"number"===typeof n[e].y){l=a.axisX.convertValueToPixel(l);f=a.axisY.convertValueToPixel(n[e].y);var g=m.getMarkerProperties(e,l,f,c);c.globalAlpha=m.fillOpacity;v.drawMarker(g.x,g.y,g.ctx,g.type,g.size,g.color,g.borderColor,g.borderThickness);c.globalAlpha=1;Math.sqrt((p-
420
+ l)*(p-l)+(q-f)*(q-f))<Math.min(g.size,5)&&n.length>Math.min(this.plotArea.width,this.plotArea.height)||(p=m.dataPointIds[e],this._eventManager.objectMap[p]={id:p,objectType:"dataPoint",dataSeriesIndex:k,dataPointIndex:e,x1:l,y1:f},p=V(p),r&&v.drawMarker(g.x,g.y,this._eventManager.ghostCtx,g.type,g.size,p,p,g.borderThickness),(n[e].indexLabel||m.indexLabel||n[e].indexLabelFormatter||m.indexLabelFormatter)&&this._indexLabels.push({chartType:"scatter",dataPoint:n[e],dataSeries:m,point:{x:l,y:f},direction:1,
421
421
  bounds:{x1:l-g.size/2,y1:f-g.size/2,x2:l+g.size/2,y2:f+g.size/2},color:null}),p=l,q=f)}}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.restore());
422
- c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.fadeInAnimation,easingFunction:t.easing.easeInQuad,animationBase:0}}};w.prototype.renderCandlestick=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h,b=this._eventManager.ghostCtx;if(!(0>=a.dataSeriesIndexes.length)){var e=null,l=null,d=this.plotArea,k=0,v,m,n,p,q,g,e=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,l=this.options.dataPointMaxWidth?
422
+ c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.fadeInAnimation,easingFunction:s.easing.easeInQuad,animationBase:0}}};w.prototype.renderCandlestick=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h,b=this._eventManager.ghostCtx;if(!(0>=a.dataSeriesIndexes.length)){var e=null,l=null,d=this.plotArea,k=0,u,m,n,p,q,g,e=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,l=this.options.dataPointMaxWidth?
423
423
  this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.015*this.width,z=a.axisX.dataInfo.minDiff;isFinite(z)||(z=0.3*Math.abs(a.axisX.range));z=this.options.dataPointWidth?this.dataPointWidth:0.7*d.width*(a.axisX.logarithmic?Math.log(z)/Math.log(a.axisX.range):Math.abs(z)/Math.abs(a.axisX.range))<<0;this.dataPointMaxWidth&&e>l&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,l));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&l<e)&&(l=Math.max(this.options.dataPointWidth?
424
- this.dataPointWidth:-Infinity,e));z<e&&(z=e);z>l&&(z=l);c.save();r&&b.save();c.beginPath();c.rect(d.x1,d.y1,d.width,d.height);c.clip();r&&(b.beginPath(),b.rect(d.x1,d.y1,d.width,d.height),b.clip());for(var u=0;u<a.dataSeriesIndexes.length;u++){var B=a.dataSeriesIndexes[u],s=this.data[B],G=s.dataPoints;if(0<G.length)for(var y=5<z&&s.bevelEnabled?!0:!1,k=0;k<G.length;k++)if(G[k].getTime?g=G[k].x.getTime():g=G[k].x,!(g<a.axisX.dataInfo.viewPortMin||g>a.axisX.dataInfo.viewPortMax)&&!f(G[k].y)&&G[k].y.length&&
425
- "number"===typeof G[k].y[0]&&"number"===typeof G[k].y[1]&&"number"===typeof G[k].y[2]&&"number"===typeof G[k].y[3]){v=a.axisX.convertValueToPixel(g);m=a.axisY.convertValueToPixel(G[k].y[0]);n=a.axisY.convertValueToPixel(G[k].y[1]);p=a.axisY.convertValueToPixel(G[k].y[2]);q=a.axisY.convertValueToPixel(G[k].y[3]);var w=v-z/2<<0,x=w+z<<0,l=s.options.fallingColor?s.fallingColor:s._colorSet[0],e=G[k].color?G[k].color:s._colorSet[0],E=Math.round(Math.max(1,0.15*z)),A=0===E%2?0:0.5,D=s.dataPointIds[k];this._eventManager.objectMap[D]=
426
- {id:D,objectType:"dataPoint",dataSeriesIndex:B,dataPointIndex:k,x1:w,y1:m,x2:x,y2:n,x3:v,y3:p,x4:v,y4:q,borderThickness:E,color:e};c.strokeStyle=e;c.beginPath();c.lineWidth=E;b.lineWidth=Math.max(E,4);"candlestick"===s.type?(c.moveTo(v-A,n),c.lineTo(v-A,Math.min(m,q)),c.stroke(),c.moveTo(v-A,Math.max(m,q)),c.lineTo(v-A,p),c.stroke(),ba(c,w,Math.min(m,q),x,Math.max(m,q),G[k].y[0]<=G[k].y[3]?s.risingColor:l,E,e,y,y,!1,!1,s.fillOpacity),r&&(e=V(D),b.strokeStyle=e,b.moveTo(v-A,n),b.lineTo(v-A,Math.min(m,
427
- q)),b.stroke(),b.moveTo(v-A,Math.max(m,q)),b.lineTo(v-A,p),b.stroke(),ba(b,w,Math.min(m,q),x,Math.max(m,q),e,0,null,!1,!1,!1,!1))):"ohlc"===s.type&&(c.moveTo(v-A,n),c.lineTo(v-A,p),c.stroke(),c.beginPath(),c.moveTo(v,m),c.lineTo(w,m),c.stroke(),c.beginPath(),c.moveTo(v,q),c.lineTo(x,q),c.stroke(),r&&(e=V(D),b.strokeStyle=e,b.moveTo(v-A,n),b.lineTo(v-A,p),b.stroke(),b.beginPath(),b.moveTo(v,m),b.lineTo(w,m),b.stroke(),b.beginPath(),b.moveTo(v,q),b.lineTo(x,q),b.stroke()));(G[k].indexLabel||s.indexLabel||
428
- G[k].indexLabelFormatter||s.indexLabelFormatter)&&this._indexLabels.push({chartType:s.type,dataPoint:G[k],dataSeries:s,point:{x:w+(x-w)/2,y:a.axisY.reversed?p:n},direction:1,bounds:{x1:w,y1:Math.min(n,p),x2:x,y2:Math.max(n,p)},color:e})}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),
429
- this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(d.x1,d.y1,d.width,d.height),b.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.fadeInAnimation,easingFunction:t.easing.easeInQuad,animationBase:0}}};w.prototype.renderBoxAndWhisker=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h,b=this._eventManager.ghostCtx;if(!(0>=a.dataSeriesIndexes.length)){var e=null,l=this.plotArea,
430
- d=0,k,v,m,n,p,q,g,e=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,d=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.015*this.width,z=a.axisX.dataInfo.minDiff;isFinite(z)||(z=0.3*Math.abs(a.axisX.range));z=this.options.dataPointWidth?this.dataPointWidth:0.7*l.width*(a.axisX.logarithmic?Math.log(z)/Math.log(a.axisX.range):Math.abs(z)/Math.abs(a.axisX.range))<<0;this.dataPointMaxWidth&&e>
431
- d&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,d));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&d<e)&&(d=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,e));z<e&&(z=e);z>d&&(z=d);c.save();r&&b.save();c.beginPath();c.rect(l.x1,l.y1,l.width,l.height);c.clip();r&&(b.beginPath(),b.rect(l.x1,l.y1,l.width,l.height),b.clip());for(var u=!1,u=!!a.axisY.reversed,B=0;B<a.dataSeriesIndexes.length;B++){var s=a.dataSeriesIndexes[B],G=this.data[s],y=G.dataPoints;
432
- if(0<y.length)for(var w=5<z&&G.bevelEnabled?!0:!1,d=0;d<y.length;d++)if(y[d].getTime?g=y[d].x.getTime():g=y[d].x,!(g<a.axisX.dataInfo.viewPortMin||g>a.axisX.dataInfo.viewPortMax)&&!f(y[d].y)&&y[d].y.length&&"number"===typeof y[d].y[0]&&"number"===typeof y[d].y[1]&&"number"===typeof y[d].y[2]&&"number"===typeof y[d].y[3]&&"number"===typeof y[d].y[4]&&5===y[d].y.length){k=a.axisX.convertValueToPixel(g);v=a.axisY.convertValueToPixel(y[d].y[0]);m=a.axisY.convertValueToPixel(y[d].y[1]);n=a.axisY.convertValueToPixel(y[d].y[2]);
424
+ this.dataPointWidth:-Infinity,e));z<e&&(z=e);z>l&&(z=l);c.save();r&&b.save();c.beginPath();c.rect(d.x1,d.y1,d.width,d.height);c.clip();r&&(b.beginPath(),b.rect(d.x1,d.y1,d.width,d.height),b.clip());for(var v=0;v<a.dataSeriesIndexes.length;v++){var B=a.dataSeriesIndexes[v],t=this.data[B],G=t.dataPoints;if(0<G.length)for(var y=5<z&&t.bevelEnabled?!0:!1,k=0;k<G.length;k++)if(G[k].getTime?g=G[k].x.getTime():g=G[k].x,!(g<a.axisX.dataInfo.viewPortMin||g>a.axisX.dataInfo.viewPortMax)&&!f(G[k].y)&&G[k].y.length&&
425
+ "number"===typeof G[k].y[0]&&"number"===typeof G[k].y[1]&&"number"===typeof G[k].y[2]&&"number"===typeof G[k].y[3]){u=a.axisX.convertValueToPixel(g);m=a.axisY.convertValueToPixel(G[k].y[0]);n=a.axisY.convertValueToPixel(G[k].y[1]);p=a.axisY.convertValueToPixel(G[k].y[2]);q=a.axisY.convertValueToPixel(G[k].y[3]);var w=u-z/2<<0,x=w+z<<0,l=t.options.fallingColor?t.fallingColor:t._colorSet[0],e=G[k].color?G[k].color:t._colorSet[0],E=Math.round(Math.max(1,0.15*z)),A=0===E%2?0:0.5,D=t.dataPointIds[k];this._eventManager.objectMap[D]=
426
+ {id:D,objectType:"dataPoint",dataSeriesIndex:B,dataPointIndex:k,x1:w,y1:m,x2:x,y2:n,x3:u,y3:p,x4:u,y4:q,borderThickness:E,color:e};c.strokeStyle=e;c.beginPath();c.lineWidth=E;b.lineWidth=Math.max(E,4);"candlestick"===t.type?(c.moveTo(u-A,n),c.lineTo(u-A,Math.min(m,q)),c.stroke(),c.moveTo(u-A,Math.max(m,q)),c.lineTo(u-A,p),c.stroke(),ba(c,w,Math.min(m,q),x,Math.max(m,q),G[k].y[0]<=G[k].y[3]?t.risingColor:l,E,e,y,y,!1,!1,t.fillOpacity),r&&(e=V(D),b.strokeStyle=e,b.moveTo(u-A,n),b.lineTo(u-A,Math.min(m,
427
+ q)),b.stroke(),b.moveTo(u-A,Math.max(m,q)),b.lineTo(u-A,p),b.stroke(),ba(b,w,Math.min(m,q),x,Math.max(m,q),e,0,null,!1,!1,!1,!1))):"ohlc"===t.type&&(c.moveTo(u-A,n),c.lineTo(u-A,p),c.stroke(),c.beginPath(),c.moveTo(u,m),c.lineTo(w,m),c.stroke(),c.beginPath(),c.moveTo(u,q),c.lineTo(x,q),c.stroke(),r&&(e=V(D),b.strokeStyle=e,b.moveTo(u-A,n),b.lineTo(u-A,p),b.stroke(),b.beginPath(),b.moveTo(u,m),b.lineTo(w,m),b.stroke(),b.beginPath(),b.moveTo(u,q),b.lineTo(x,q),b.stroke()));(G[k].indexLabel||t.indexLabel||
428
+ G[k].indexLabelFormatter||t.indexLabelFormatter)&&this._indexLabels.push({chartType:t.type,dataPoint:G[k],dataSeries:t,point:{x:w+(x-w)/2,y:a.axisY.reversed?p:n},direction:1,bounds:{x1:w,y1:Math.min(n,p),x2:x,y2:Math.max(n,p)},color:e})}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),
429
+ this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(d.x1,d.y1,d.width,d.height),b.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.fadeInAnimation,easingFunction:s.easing.easeInQuad,animationBase:0}}};w.prototype.renderBoxAndWhisker=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h,b=this._eventManager.ghostCtx;if(!(0>=a.dataSeriesIndexes.length)){var e=null,l=this.plotArea,
430
+ d=0,k,u,m,n,p,q,g,e=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,d=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.015*this.width,z=a.axisX.dataInfo.minDiff;isFinite(z)||(z=0.3*Math.abs(a.axisX.range));z=this.options.dataPointWidth?this.dataPointWidth:0.7*l.width*(a.axisX.logarithmic?Math.log(z)/Math.log(a.axisX.range):Math.abs(z)/Math.abs(a.axisX.range))<<0;this.dataPointMaxWidth&&e>
431
+ d&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,d));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&d<e)&&(d=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,e));z<e&&(z=e);z>d&&(z=d);c.save();r&&b.save();c.beginPath();c.rect(l.x1,l.y1,l.width,l.height);c.clip();r&&(b.beginPath(),b.rect(l.x1,l.y1,l.width,l.height),b.clip());for(var v=!1,v=!!a.axisY.reversed,B=0;B<a.dataSeriesIndexes.length;B++){var t=a.dataSeriesIndexes[B],G=this.data[t],y=G.dataPoints;
432
+ if(0<y.length)for(var w=5<z&&G.bevelEnabled?!0:!1,d=0;d<y.length;d++)if(y[d].getTime?g=y[d].x.getTime():g=y[d].x,!(g<a.axisX.dataInfo.viewPortMin||g>a.axisX.dataInfo.viewPortMax)&&!f(y[d].y)&&y[d].y.length&&"number"===typeof y[d].y[0]&&"number"===typeof y[d].y[1]&&"number"===typeof y[d].y[2]&&"number"===typeof y[d].y[3]&&"number"===typeof y[d].y[4]&&5===y[d].y.length){k=a.axisX.convertValueToPixel(g);u=a.axisY.convertValueToPixel(y[d].y[0]);m=a.axisY.convertValueToPixel(y[d].y[1]);n=a.axisY.convertValueToPixel(y[d].y[2]);
433
433
  p=a.axisY.convertValueToPixel(y[d].y[3]);q=a.axisY.convertValueToPixel(y[d].y[4]);var x=k-z/2<<0,E=k+z/2<<0,e=y[d].color?y[d].color:G._colorSet[0],A=Math.round(Math.max(1,0.15*z)),D=0===A%2?0:0.5,Y=y[d].whiskerColor?y[d].whiskerColor:y[d].color?G.whiskerColor?G.whiskerColor:y[d].color:G.whiskerColor?G.whiskerColor:e,W="number"===typeof y[d].whiskerThickness?y[d].whiskerThickness:"number"===typeof G.options.whiskerThickness?G.whiskerThickness:A,fa=y[d].whiskerDashType?y[d].whiskerDashType:G.whiskerDashType,
434
434
  ca=f(y[d].whiskerLength)?f(G.options.whiskerLength)?z:G.whiskerLength:y[d].whiskerLength,ca="number"===typeof ca?0>=ca?0:ca>=z?z:ca:"string"===typeof ca?parseInt(ca)*z/100>z?z:parseInt(ca)*z/100:z,ka=1===Math.round(W)%2?0.5:0,va=y[d].stemColor?y[d].stemColor:y[d].color?G.stemColor?G.stemColor:y[d].color:G.stemColor?G.stemColor:e,oa="number"===typeof y[d].stemThickness?y[d].stemThickness:"number"===typeof G.options.stemThickness?G.stemThickness:A,H=1===Math.round(oa)%2?0.5:0,K=y[d].stemDashType?y[d].stemDashType:
435
- G.stemDashType,F=y[d].lineColor?y[d].lineColor:y[d].color?G.lineColor?G.lineColor:y[d].color:G.lineColor?G.lineColor:e,J="number"===typeof y[d].lineThickness?y[d].lineThickness:"number"===typeof G.options.lineThickness?G.lineThickness:A,L=y[d].lineDashType?y[d].lineDashType:G.lineDashType,S=1===Math.round(J)%2?0.5:0,O=G.upperBoxColor,Q=G.lowerBoxColor,P=f(G.options.fillOpacity)?1:G.fillOpacity,U=G.dataPointIds[d];this._eventManager.objectMap[U]={id:U,objectType:"dataPoint",dataSeriesIndex:s,dataPointIndex:d,
436
- x1:x,y1:v,x2:E,y2:m,x3:k,y3:n,x4:k,y4:p,y5:q,borderThickness:A,color:e,stemThickness:oa,stemColor:va,whiskerThickness:W,whiskerLength:ca,whiskerColor:Y,lineThickness:J,lineColor:F};c.save();0<oa&&(c.beginPath(),c.strokeStyle=va,c.lineWidth=oa,c.setLineDash&&c.setLineDash(R(K,oa)),c.moveTo(k-H,m),c.lineTo(k-H,v),c.stroke(),c.moveTo(k-H,p),c.lineTo(k-H,n),c.stroke());c.restore();b.lineWidth=Math.max(A,4);c.beginPath();ba(c,x,Math.min(q,m),E,Math.max(m,q),Q,0,e,u?w:!1,u?!1:w,!1,!1,P);c.beginPath();ba(c,
437
- x,Math.min(n,q),E,Math.max(q,n),O,0,e,u?!1:w,u?w:!1,!1,!1,P);c.beginPath();c.lineWidth=A;c.strokeStyle=e;c.rect(x-D,Math.min(m,n)-D,E-x+2*D,Math.max(m,n)-Math.min(m,n)+2*D);c.stroke();c.save();0<J&&(c.beginPath(),c.globalAlpha=1,c.setLineDash&&c.setLineDash(R(L,J)),c.strokeStyle=F,c.lineWidth=J,c.moveTo(x,q-S),c.lineTo(E,q-S),c.stroke());c.restore();c.save();0<W&&(c.beginPath(),c.setLineDash&&c.setLineDash(R(fa,W)),c.strokeStyle=Y,c.lineWidth=W,c.moveTo(k-ca/2<<0,p-ka),c.lineTo(k+ca/2<<0,p-ka),c.stroke(),
438
- c.moveTo(k-ca/2<<0,v+ka),c.lineTo(k+ca/2<<0,v+ka),c.stroke());c.restore();r&&(e=V(U),b.strokeStyle=e,b.lineWidth=oa,0<oa&&(b.moveTo(k-D-H,m),b.lineTo(k-D-H,Math.max(v,p)),b.stroke(),b.moveTo(k-D-H,Math.min(v,p)),b.lineTo(k-D-H,n),b.stroke()),ba(b,x,Math.max(m,n),E,Math.min(m,n),e,0,null,!1,!1,!1,!1),0<W&&(b.beginPath(),b.lineWidth=W,b.moveTo(k+ca/2,p-ka),b.lineTo(k-ca/2,p-ka),b.stroke(),b.moveTo(k+ca/2,v+ka),b.lineTo(k-ca/2,v+ka),b.stroke()));(y[d].indexLabel||G.indexLabel||y[d].indexLabelFormatter||
439
- G.indexLabelFormatter)&&this._indexLabels.push({chartType:G.type,dataPoint:y[d],dataSeries:G,point:{x:x+(E-x)/2,y:a.axisY.reversed?v:p},direction:1,bounds:{x1:x,y1:Math.min(v,p),x2:E,y2:Math.max(v,p)},color:e})}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,
440
- 0,0,this.width,this.height),c.clearRect(l.x1,l.y1,l.width,l.height),b.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.fadeInAnimation,easingFunction:t.easing.easeInQuad,animationBase:0}}};w.prototype.renderRangeColumn=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=0,d,k,v,l=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:
435
+ G.stemDashType,F=y[d].lineColor?y[d].lineColor:y[d].color?G.lineColor?G.lineColor:y[d].color:G.lineColor?G.lineColor:e,J="number"===typeof y[d].lineThickness?y[d].lineThickness:"number"===typeof G.options.lineThickness?G.lineThickness:A,L=y[d].lineDashType?y[d].lineDashType:G.lineDashType,S=1===Math.round(J)%2?0.5:0,O=G.upperBoxColor,Q=G.lowerBoxColor,P=f(G.options.fillOpacity)?1:G.fillOpacity,U=G.dataPointIds[d];this._eventManager.objectMap[U]={id:U,objectType:"dataPoint",dataSeriesIndex:t,dataPointIndex:d,
436
+ x1:x,y1:u,x2:E,y2:m,x3:k,y3:n,x4:k,y4:p,y5:q,borderThickness:A,color:e,stemThickness:oa,stemColor:va,whiskerThickness:W,whiskerLength:ca,whiskerColor:Y,lineThickness:J,lineColor:F};c.save();0<oa&&(c.beginPath(),c.strokeStyle=va,c.lineWidth=oa,c.setLineDash&&c.setLineDash(R(K,oa)),c.moveTo(k-H,m),c.lineTo(k-H,u),c.stroke(),c.moveTo(k-H,p),c.lineTo(k-H,n),c.stroke());c.restore();b.lineWidth=Math.max(A,4);c.beginPath();ba(c,x,Math.min(q,m),E,Math.max(m,q),Q,0,e,v?w:!1,v?!1:w,!1,!1,P);c.beginPath();ba(c,
437
+ x,Math.min(n,q),E,Math.max(q,n),O,0,e,v?!1:w,v?w:!1,!1,!1,P);c.beginPath();c.lineWidth=A;c.strokeStyle=e;c.rect(x-D,Math.min(m,n)-D,E-x+2*D,Math.max(m,n)-Math.min(m,n)+2*D);c.stroke();c.save();0<J&&(c.beginPath(),c.globalAlpha=1,c.setLineDash&&c.setLineDash(R(L,J)),c.strokeStyle=F,c.lineWidth=J,c.moveTo(x,q-S),c.lineTo(E,q-S),c.stroke());c.restore();c.save();0<W&&(c.beginPath(),c.setLineDash&&c.setLineDash(R(fa,W)),c.strokeStyle=Y,c.lineWidth=W,c.moveTo(k-ca/2<<0,p-ka),c.lineTo(k+ca/2<<0,p-ka),c.stroke(),
438
+ c.moveTo(k-ca/2<<0,u+ka),c.lineTo(k+ca/2<<0,u+ka),c.stroke());c.restore();r&&(e=V(U),b.strokeStyle=e,b.lineWidth=oa,0<oa&&(b.moveTo(k-D-H,m),b.lineTo(k-D-H,Math.max(u,p)),b.stroke(),b.moveTo(k-D-H,Math.min(u,p)),b.lineTo(k-D-H,n),b.stroke()),ba(b,x,Math.max(m,n),E,Math.min(m,n),e,0,null,!1,!1,!1,!1),0<W&&(b.beginPath(),b.lineWidth=W,b.moveTo(k+ca/2,p-ka),b.lineTo(k-ca/2,p-ka),b.stroke(),b.moveTo(k+ca/2,u+ka),b.lineTo(k-ca/2,u+ka),b.stroke()));(y[d].indexLabel||G.indexLabel||y[d].indexLabelFormatter||
439
+ G.indexLabelFormatter)&&this._indexLabels.push({chartType:G.type,dataPoint:y[d],dataSeries:G,point:{x:x+(E-x)/2,y:a.axisY.reversed?u:p},direction:1,bounds:{x1:x,y1:Math.min(u,p),x2:E,y2:Math.max(u,p)},color:e})}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,
440
+ 0,0,this.width,this.height),c.clearRect(l.x1,l.y1,l.width,l.height),b.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.fadeInAnimation,easingFunction:s.easing.easeInQuad,animationBase:0}}};w.prototype.renderRangeColumn=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=0,d,k,u,l=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:
441
441
  1;d=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.03*this.width;var m=a.axisX.dataInfo.minDiff;isFinite(m)||(m=0.3*Math.abs(a.axisX.range));m=this.options.dataPointWidth?this.dataPointWidth:0.9*(e.width*(a.axisX.logarithmic?Math.log(m)/Math.log(a.axisX.range):Math.abs(m)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&l>d&&(l=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,d));!this.dataPointMaxWidth&&
442
442
  (this.dataPointMinWidth&&d<l)&&(d=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,l));m<l&&(m=l);m>d&&(m=d);c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(var n=0;n<a.dataSeriesIndexes.length;n++){var p=a.dataSeriesIndexes[n],q=this.data[p],g=q.dataPoints;if(0<g.length)for(var z=
443
- 5<m&&q.bevelEnabled?!0:!1,l=0;l<g.length;l++)if(g[l].getTime?v=g[l].x.getTime():v=g[l].x,!(v<a.axisX.dataInfo.viewPortMin||v>a.axisX.dataInfo.viewPortMax)&&!f(g[l].y)&&g[l].y.length&&"number"===typeof g[l].y[0]&&"number"===typeof g[l].y[1]){b=a.axisX.convertValueToPixel(v);d=a.axisY.convertValueToPixel(g[l].y[0]);k=a.axisY.convertValueToPixel(g[l].y[1]);var u=a.axisX.reversed?b+a.plotType.totalDataSeries*m/2-(a.previousDataSeriesCount+n)*m<<0:b-a.plotType.totalDataSeries*m/2+(a.previousDataSeriesCount+
444
- n)*m<<0,B=a.axisX.reversed?u-m<<0:u+m<<0,b=g[l].color?g[l].color:q._colorSet[l%q._colorSet.length];if(d>k){var s=d;d=k;k=s}s=q.dataPointIds[l];this._eventManager.objectMap[s]={id:s,objectType:"dataPoint",dataSeriesIndex:p,dataPointIndex:l,x1:u,y1:d,x2:B,y2:k};ba(c,a.axisX.reversed?B:u,d,a.axisX.reversed?u:B,k,b,0,b,z,z,!1,!1,q.fillOpacity);b=V(s);r&&ba(this._eventManager.ghostCtx,a.axisX.reversed?B:u,d,a.axisX.reversed?u:B,k,b,0,null,!1,!1,!1,!1);if(g[l].indexLabel||q.indexLabel||g[l].indexLabelFormatter||
445
- q.indexLabelFormatter)this._indexLabels.push({chartType:"rangeColumn",dataPoint:g[l],dataSeries:q,indexKeyword:0,point:{x:u+(B-u)/2,y:g[l].y[1]>=g[l].y[0]?k:d},direction:g[l].y[1]>=g[l].y[0]?-1:1,bounds:{x1:u,y1:Math.min(d,k),x2:B,y2:Math.max(d,k)},color:b}),this._indexLabels.push({chartType:"rangeColumn",dataPoint:g[l],dataSeries:q,indexKeyword:1,point:{x:u+(B-u)/2,y:g[l].y[1]>=g[l].y[0]?d:k},direction:g[l].y[1]>=g[l].y[0]?1:-1,bounds:{x1:u,y1:Math.min(d,k),x2:B,y2:Math.max(d,k)},color:b})}}r&&(h.drawImage(this._preRenderCanvas,
446
- 0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.fadeInAnimation,easingFunction:t.easing.easeInQuad,
447
- animationBase:0}}};w.prototype.renderError=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h,b=a.axisY._position?"left"===a.axisY._position||"right"===a.axisY._position?!1:!0:!1;if(!(0>=a.dataSeriesIndexes.length)){var e=null,l=!1,d=this.plotArea,k=0,v,m,n,p,q,g,z,u=a.axisX.dataInfo.minDiff;isFinite(u)||(u=0.3*Math.abs(a.axisX.range));c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(d.x1,d.y1,d.width,d.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),
448
- this._eventManager.ghostCtx.rect(d.x1,d.y1,d.width,d.height),this._eventManager.ghostCtx.clip());for(var B=0,s=0;s<this.data.length;s++)!this.data[s].type.match(/(bar|column)/ig)||!this.data[s].visible||this.data[s].type.match(/(stacked)/ig)&&B||B++;for(var G=0;G<a.dataSeriesIndexes.length;G++){var y=a.dataSeriesIndexes[G],w=this.data[y],x=w.dataPoints,E=f(w._linkedSeries)?!1:w._linkedSeries.type.match(/(bar|column)/ig)&&w._linkedSeries.visible?!0:!1,A=0;if(E)for(e=w._linkedSeries.id,s=0;s<e;s++)!this.data[s].type.match(/(bar|column)/ig)||
449
- !this.data[s].visible||this.data[s].type.match(/(stacked)/ig)&&A||(this.data[s].type.match(/(range)/ig)&&(l=!0),A++);e=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;k=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:b?Math.min(0.15*this.height,0.9*(this.plotArea.height/(E?B:1)))<<0:0.3*this.width;l&&(k=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:
450
- b?Math.min(0.15*this.height,0.9*(this.plotArea.height/(E?B:1)))<<0:0.03*this.width);s=this.options.dataPointWidth?this.dataPointWidth:0.9*((b?d.height:d.width)*(a.axisX.logarithmic?Math.log(u)/Math.log(a.axisX.range):Math.abs(u)/Math.abs(a.axisX.range))/(E?B:1))<<0;this.dataPointMaxWidth&&e>k&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,k));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&k<e)&&(k=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,e));s<e&&
451
- (s=e);s>k&&(s=k);if(0<x.length)for(var D=w._colorSet,k=0;k<x.length;k++){var e=w.lineColor=w.options.color?w.options.color:D[0],Y={color:x[k].whiskerColor?x[k].whiskerColor:x[k].color?w.whiskerColor?w.whiskerColor:x[k].color:w.whiskerColor?w.whiskerColor:e,thickness:f(x[k].whiskerThickness)?w.whiskerThickness:x[k].whiskerThickness,dashType:x[k].whiskerDashType?x[k].whiskerDashType:w.whiskerDashType,length:f(x[k].whiskerLength)?f(w.options.whiskerLength)?s:w.options.whiskerLength:x[k].whiskerLength,
452
- trimLength:f(x[k].whiskerLength)?f(w.options.whiskerLength)?50:0:0};Y.length="number"===typeof Y.length?0>=Y.length?0:Y.length>=s?s:Y.length:"string"===typeof Y.length?parseInt(Y.length)*s/100>s?s:parseInt(Y.length)*s/100>s:s;Y.thickness="number"===typeof Y.thickness?0>Y.thickness?0:Math.round(Y.thickness):2;var W={color:x[k].stemColor?x[k].stemColor:x[k].color?w.stemColor?w.stemColor:x[k].color:w.stemColor?w.stemColor:e,thickness:x[k].stemThickness?x[k].stemThickness:w.stemThickness,dashType:x[k].stemDashType?
453
- x[k].stemDashType:w.stemDashType};W.thickness="number"===typeof W.thickness?0>W.thickness?0:Math.round(W.thickness):2;x[k].getTime?z=x[k].x.getTime():z=x[k].x;if(!(z<a.axisX.dataInfo.viewPortMin||z>a.axisX.dataInfo.viewPortMax)&&!f(x[k].y)&&x[k].y.length&&"number"===typeof x[k].y[0]&&"number"===typeof x[k].y[1]){var fa=a.axisX.convertValueToPixel(z);b?m=fa:v=fa;fa=a.axisY.convertValueToPixel(x[k].y[0]);b?n=fa:q=fa;fa=a.axisY.convertValueToPixel(x[k].y[1]);b?p=fa:g=fa;b?(q=a.axisX.reversed?m+(E?B:
454
- 1)*s/2-(E?A-1:0)*s<<0:m-(E?B:1)*s/2+(E?A-1:0)*s<<0,g=a.axisX.reversed?q-s<<0:q+s<<0):(n=a.axisX.reversed?v+(E?B:1)*s/2-(E?A-1:0)*s<<0:v-(E?B:1)*s/2+(E?A-1:0)*s<<0,p=a.axisX.reversed?n-s<<0:n+s<<0);!b&&q>g&&(fa=q,q=g,g=fa);b&&n>p&&(fa=n,n=p,p=fa);fa=w.dataPointIds[k];this._eventManager.objectMap[fa]={id:fa,objectType:"dataPoint",dataSeriesIndex:y,dataPointIndex:k,x1:Math.min(n,p),y1:Math.min(q,g),x2:Math.max(p,n),y2:Math.max(g,q),isXYSwapped:b,stemProperties:W,whiskerProperties:Y};F(c,Math.min(n,p),
443
+ 5<m&&q.bevelEnabled?!0:!1,l=0;l<g.length;l++)if(g[l].getTime?u=g[l].x.getTime():u=g[l].x,!(u<a.axisX.dataInfo.viewPortMin||u>a.axisX.dataInfo.viewPortMax)&&!f(g[l].y)&&g[l].y.length&&"number"===typeof g[l].y[0]&&"number"===typeof g[l].y[1]){b=a.axisX.convertValueToPixel(u);d=a.axisY.convertValueToPixel(g[l].y[0]);k=a.axisY.convertValueToPixel(g[l].y[1]);var v=a.axisX.reversed?b+a.plotType.totalDataSeries*m/2-(a.previousDataSeriesCount+n)*m<<0:b-a.plotType.totalDataSeries*m/2+(a.previousDataSeriesCount+
444
+ n)*m<<0,B=a.axisX.reversed?v-m<<0:v+m<<0,b=g[l].color?g[l].color:q._colorSet[l%q._colorSet.length];if(d>k){var t=d;d=k;k=t}t=q.dataPointIds[l];this._eventManager.objectMap[t]={id:t,objectType:"dataPoint",dataSeriesIndex:p,dataPointIndex:l,x1:v,y1:d,x2:B,y2:k};ba(c,a.axisX.reversed?B:v,d,a.axisX.reversed?v:B,k,b,0,b,z,z,!1,!1,q.fillOpacity);b=V(t);r&&ba(this._eventManager.ghostCtx,a.axisX.reversed?B:v,d,a.axisX.reversed?v:B,k,b,0,null,!1,!1,!1,!1);if(g[l].indexLabel||q.indexLabel||g[l].indexLabelFormatter||
445
+ q.indexLabelFormatter)this._indexLabels.push({chartType:"rangeColumn",dataPoint:g[l],dataSeries:q,indexKeyword:0,point:{x:v+(B-v)/2,y:g[l].y[1]>=g[l].y[0]?k:d},direction:g[l].y[1]>=g[l].y[0]?-1:1,bounds:{x1:v,y1:Math.min(d,k),x2:B,y2:Math.max(d,k)},color:b}),this._indexLabels.push({chartType:"rangeColumn",dataPoint:g[l],dataSeries:q,indexKeyword:1,point:{x:v+(B-v)/2,y:g[l].y[1]>=g[l].y[0]?d:k},direction:g[l].y[1]>=g[l].y[0]?1:-1,bounds:{x1:v,y1:Math.min(d,k),x2:B,y2:Math.max(d,k)},color:b})}}r&&(h.drawImage(this._preRenderCanvas,
446
+ 0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.fadeInAnimation,easingFunction:s.easing.easeInQuad,
447
+ animationBase:0}}};w.prototype.renderError=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h,b=a.axisY._position?"left"===a.axisY._position||"right"===a.axisY._position?!1:!0:!1;if(!(0>=a.dataSeriesIndexes.length)){var e=null,l=!1,d=this.plotArea,k=0,u,m,n,p,q,g,z,v=a.axisX.dataInfo.minDiff;isFinite(v)||(v=0.3*Math.abs(a.axisX.range));c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(d.x1,d.y1,d.width,d.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),
448
+ this._eventManager.ghostCtx.rect(d.x1,d.y1,d.width,d.height),this._eventManager.ghostCtx.clip());for(var B=0,t=0;t<this.data.length;t++)!this.data[t].type.match(/(bar|column)/ig)||!this.data[t].visible||this.data[t].type.match(/(stacked)/ig)&&B||B++;for(var G=0;G<a.dataSeriesIndexes.length;G++){var y=a.dataSeriesIndexes[G],w=this.data[y],x=w.dataPoints,E=f(w._linkedSeries)?!1:w._linkedSeries.type.match(/(bar|column)/ig)&&w._linkedSeries.visible?!0:!1,A=0;if(E)for(e=w._linkedSeries.id,t=0;t<e;t++)!this.data[t].type.match(/(bar|column)/ig)||
449
+ !this.data[t].visible||this.data[t].type.match(/(stacked)/ig)&&A||(this.data[t].type.match(/(range)/ig)&&(l=!0),A++);e=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;k=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:b?Math.min(0.15*this.height,0.9*(this.plotArea.height/(E?B:1)))<<0:0.3*this.width;l&&(k=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:
450
+ b?Math.min(0.15*this.height,0.9*(this.plotArea.height/(E?B:1)))<<0:0.03*this.width);t=this.options.dataPointWidth?this.dataPointWidth:0.9*((b?d.height:d.width)*(a.axisX.logarithmic?Math.log(v)/Math.log(a.axisX.range):Math.abs(v)/Math.abs(a.axisX.range))/(E?B:1))<<0;this.dataPointMaxWidth&&e>k&&(e=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,k));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&k<e)&&(k=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,e));t<e&&
451
+ (t=e);t>k&&(t=k);if(0<x.length)for(var D=w._colorSet,k=0;k<x.length;k++){var e=w.lineColor=w.options.color?w.options.color:D[0],Y={color:x[k].whiskerColor?x[k].whiskerColor:x[k].color?w.whiskerColor?w.whiskerColor:x[k].color:w.whiskerColor?w.whiskerColor:e,thickness:f(x[k].whiskerThickness)?w.whiskerThickness:x[k].whiskerThickness,dashType:x[k].whiskerDashType?x[k].whiskerDashType:w.whiskerDashType,length:f(x[k].whiskerLength)?f(w.options.whiskerLength)?t:w.options.whiskerLength:x[k].whiskerLength,
452
+ trimLength:f(x[k].whiskerLength)?f(w.options.whiskerLength)?50:0:0};Y.length="number"===typeof Y.length?0>=Y.length?0:Y.length>=t?t:Y.length:"string"===typeof Y.length?parseInt(Y.length)*t/100>t?t:parseInt(Y.length)*t/100>t:t;Y.thickness="number"===typeof Y.thickness?0>Y.thickness?0:Math.round(Y.thickness):2;var W={color:x[k].stemColor?x[k].stemColor:x[k].color?w.stemColor?w.stemColor:x[k].color:w.stemColor?w.stemColor:e,thickness:x[k].stemThickness?x[k].stemThickness:w.stemThickness,dashType:x[k].stemDashType?
453
+ x[k].stemDashType:w.stemDashType};W.thickness="number"===typeof W.thickness?0>W.thickness?0:Math.round(W.thickness):2;x[k].getTime?z=x[k].x.getTime():z=x[k].x;if(!(z<a.axisX.dataInfo.viewPortMin||z>a.axisX.dataInfo.viewPortMax)&&!f(x[k].y)&&x[k].y.length&&"number"===typeof x[k].y[0]&&"number"===typeof x[k].y[1]){var fa=a.axisX.convertValueToPixel(z);b?m=fa:u=fa;fa=a.axisY.convertValueToPixel(x[k].y[0]);b?n=fa:q=fa;fa=a.axisY.convertValueToPixel(x[k].y[1]);b?p=fa:g=fa;b?(q=a.axisX.reversed?m+(E?B:
454
+ 1)*t/2-(E?A-1:0)*t<<0:m-(E?B:1)*t/2+(E?A-1:0)*t<<0,g=a.axisX.reversed?q-t<<0:q+t<<0):(n=a.axisX.reversed?u+(E?B:1)*t/2-(E?A-1:0)*t<<0:u-(E?B:1)*t/2+(E?A-1:0)*t<<0,p=a.axisX.reversed?n-t<<0:n+t<<0);!b&&q>g&&(fa=q,q=g,g=fa);b&&n>p&&(fa=n,n=p,p=fa);fa=w.dataPointIds[k];this._eventManager.objectMap[fa]={id:fa,objectType:"dataPoint",dataSeriesIndex:y,dataPointIndex:k,x1:Math.min(n,p),y1:Math.min(q,g),x2:Math.max(p,n),y2:Math.max(g,q),isXYSwapped:b,stemProperties:W,whiskerProperties:Y};F(c,Math.min(n,p),
455
455
  Math.min(q,g),Math.max(p,n),Math.max(g,q),e,Y,W,b);r&&F(this._eventManager.ghostCtx,n,q,p,g,e,Y,W,b);if(x[k].indexLabel||w.indexLabel||x[k].indexLabelFormatter||w.indexLabelFormatter)this._indexLabels.push({chartType:"error",dataPoint:x[k],dataSeries:w,indexKeyword:0,point:{x:b?x[k].y[1]>=x[k].y[0]?n:p:n+(p-n)/2,y:b?q+(g-q)/2:x[k].y[1]>=x[k].y[0]?g:q},direction:x[k].y[1]>=x[k].y[0]?-1:1,bounds:{x1:b?Math.min(n,p):n,y1:b?q:Math.min(q,g),x2:b?Math.max(n,p):p,y2:b?g:Math.max(q,g)},color:e,axisSwapped:b}),
456
456
  this._indexLabels.push({chartType:"error",dataPoint:x[k],dataSeries:w,indexKeyword:1,point:{x:b?x[k].y[1]>=x[k].y[0]?p:n:n+(p-n)/2,y:b?q+(g-q)/2:x[k].y[1]>=x[k].y[0]?q:g},direction:x[k].y[1]>=x[k].y[0]?1:-1,bounds:{x1:b?Math.min(n,p):n,y1:b?q:Math.min(q,g),x2:b?Math.max(n,p):p,y2:b?g:Math.max(q,g)},color:e,axisSwapped:b})}}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),
457
- a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(d.x1,d.y1,d.width,d.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.fadeInAnimation,easingFunction:t.easing.easeInQuad,animationBase:0}}};w.prototype.renderRangeBar=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:
458
- h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=0,d,k,v,m,l=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;d=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.height,0.9*(this.plotArea.height/a.plotType.totalDataSeries))<<0;var n=a.axisX.dataInfo.minDiff;isFinite(n)||(n=0.3*Math.abs(a.axisX.range));n=this.options.dataPointWidth?this.dataPointWidth:0.9*
457
+ a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(d.x1,d.y1,d.width,d.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.fadeInAnimation,easingFunction:s.easing.easeInQuad,animationBase:0}}};w.prototype.renderRangeBar=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:
458
+ h;if(!(0>=a.dataSeriesIndexes.length)){var b=null,e=this.plotArea,l=0,d,k,u,m,l=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;d=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.height,0.9*(this.plotArea.height/a.plotType.totalDataSeries))<<0;var n=a.axisX.dataInfo.minDiff;isFinite(n)||(n=0.3*Math.abs(a.axisX.range));n=this.options.dataPointWidth?this.dataPointWidth:0.9*
459
459
  (e.height*(a.axisX.logarithmic?Math.log(n)/Math.log(a.axisX.range):Math.abs(n)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&l>d&&(l=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,d));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&d<l)&&(d=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,l));n<l&&(n=l);n>d&&(n=d);c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(e.x1,e.y1,e.width,e.height);c.clip();r&&(this._eventManager.ghostCtx.beginPath(),
460
- this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(var p=0;p<a.dataSeriesIndexes.length;p++){var q=a.dataSeriesIndexes[p],g=this.data[q],z=g.dataPoints;if(0<z.length){var u=5<n&&g.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(l=0;l<z.length;l++)if(z[l].getTime?m=z[l].x.getTime():m=z[l].x,!(m<a.axisX.dataInfo.viewPortMin||m>a.axisX.dataInfo.viewPortMax)&&!f(z[l].y)&&z[l].y.length&&"number"===typeof z[l].y[0]&&"number"===typeof z[l].y[1]){d=a.axisY.convertValueToPixel(z[l].y[0]);
461
- k=a.axisY.convertValueToPixel(z[l].y[1]);v=a.axisX.convertValueToPixel(m);v=a.axisX.reversed?v+a.plotType.totalDataSeries*n/2-(a.previousDataSeriesCount+p)*n<<0:v-a.plotType.totalDataSeries*n/2+(a.previousDataSeriesCount+p)*n<<0;var B=a.axisX.reversed?v-n<<0:v+n<<0;d>k&&(b=d,d=k,k=b);b=z[l].color?z[l].color:g._colorSet[l%g._colorSet.length];ba(c,d,a.axisX.reversed?B:v,k,a.axisX.reversed?v:B,b,0,null,u,!1,!1,!1,g.fillOpacity);b=g.dataPointIds[l];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",
462
- dataSeriesIndex:q,dataPointIndex:l,x1:d,y1:v,x2:k,y2:B};b=V(b);r&&ba(this._eventManager.ghostCtx,d,a.axisX.reversed?B:v,k,a.axisX.reversed?v:B,b,0,null,!1,!1,!1,!1);if(z[l].indexLabel||g.indexLabel||z[l].indexLabelFormatter||g.indexLabelFormatter)this._indexLabels.push({chartType:"rangeBar",dataPoint:z[l],dataSeries:g,indexKeyword:0,point:{x:z[l].y[1]>=z[l].y[0]?d:k,y:v+(B-v)/2},direction:z[l].y[1]>=z[l].y[0]?-1:1,bounds:{x1:Math.min(d,k),y1:v,x2:Math.max(d,k),y2:B},color:b}),this._indexLabels.push({chartType:"rangeBar",
463
- dataPoint:z[l],dataSeries:g,indexKeyword:1,point:{x:z[l].y[1]>=z[l].y[0]?k:d,y:v+(B-v)/2},direction:z[l].y[1]>=z[l].y[0]?1:-1,bounds:{x1:Math.min(d,k),y1:v,x2:Math.max(d,k),y2:B},color:b})}}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,
464
- 0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.fadeInAnimation,easingFunction:t.easing.easeInQuad,animationBase:0}}};w.prototype.renderRangeArea=function(a){function h(){if(w){for(var a=null,c=k.length-1;0<=c;c--)a=k[c],b.lineTo(a.x,a.y2),e.lineTo(a.x,a.y2);b.closePath();b.globalAlpha=n.fillOpacity;b.fill();b.globalAlpha=1;e.fill();if(0<n.lineThickness){b.beginPath();
465
- b.moveTo(a.x,a.y2);for(c=0;c<k.length;c++)a=k[c],b.lineTo(a.x,a.y2);b.moveTo(k[0].x,k[0].y1);for(c=0;c<k.length;c++)a=k[c],b.lineTo(a.x,a.y1);b.stroke()}b.beginPath();b.moveTo(z,v);e.beginPath();e.moveTo(z,v);w={x:z,y:v};k=[];k.push({x:z,y1:v,y2:B})}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=r?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,l=[],f=this.plotArea;b.save();r&&e.save();b.beginPath();b.rect(f.x1,f.y1,f.width,f.height);b.clip();r&&(e.beginPath(),
466
- e.rect(f.x1,f.y1,f.width,f.height),e.clip());for(var d=0;d<a.dataSeriesIndexes.length;d++){var k=[],m=a.dataSeriesIndexes[d],n=this.data[m],p=n.dataPoints,l=n.id;this._eventManager.objectMap[l]={objectType:"dataSeries",dataSeriesIndex:m};l=V(l);e.fillStyle=l;var l=[],q=!0,g=0,z,v,B,s,w=null;if(0<p.length){var y=n._colorSet[g%n._colorSet.length],x=n.lineColor=n.options.lineColor||y,A=x;b.fillStyle=y;b.strokeStyle=x;b.lineWidth=n.lineThickness;var E="solid";if(b.setLineDash){var D=R(n.nullDataLineDashType,
467
- n.lineThickness),E=n.lineDashType,K=R(E,n.lineThickness);b.setLineDash(K)}for(var Y=!0;g<p.length;g++)if(s=p[g].x.getTime?p[g].x.getTime():p[g].x,!(s<a.axisX.dataInfo.viewPortMin||s>a.axisX.dataInfo.viewPortMax&&(!n.connectNullData||!Y)))if(null!==p[g].y&&p[g].y.length&&"number"===typeof p[g].y[0]&&"number"===typeof p[g].y[1]){z=a.axisX.convertValueToPixel(s);v=a.axisY.convertValueToPixel(p[g].y[0]);B=a.axisY.convertValueToPixel(p[g].y[1]);q||Y?(n.connectNullData&&!q?(b.setLineDash&&(n.options.nullDataLineDashType||
468
- E===n.lineDashType&&n.lineDashType!==n.nullDataLineDashType)&&(k[k.length-1].newLineDashArray=K,E=n.nullDataLineDashType,b.setLineDash(D)),b.lineTo(z,v),r&&e.lineTo(z,v),k.push({x:z,y1:v,y2:B})):(b.beginPath(),b.moveTo(z,v),w={x:z,y:v},k=[],k.push({x:z,y1:v,y2:B}),r&&(e.beginPath(),e.moveTo(z,v))),Y=q=!1):(b.lineTo(z,v),k.push({x:z,y1:v,y2:B}),r&&e.lineTo(z,v),0==g%250&&h());s=n.dataPointIds[g];this._eventManager.objectMap[s]={id:s,objectType:"dataPoint",dataSeriesIndex:m,dataPointIndex:g,x1:z,y1:v,
469
- y2:B};g<p.length-1&&(A!==(p[g].lineColor||x)||E!==(p[g].lineDashType||n.lineDashType))&&(h(),A=p[g].lineColor||x,k[k.length-1].newStrokeStyle=A,b.strokeStyle=A,b.setLineDash&&(p[g].lineDashType?(E=p[g].lineDashType,k[k.length-1].newLineDashArray=R(E,n.lineThickness),b.setLineDash(k[k.length-1].newLineDashArray)):(E=n.lineDashType,k[k.length-1].newLineDashArray=K,b.setLineDash(K))));if(0!==p[g].markerSize&&(0<p[g].markerSize||0<n.markerSize)){var W=n.getMarkerProperties(g,z,B,b);l.push(W);var fa=V(s);
470
- r&&l.push({x:z,y:B,ctx:e,type:W.type,size:W.size,color:fa,borderColor:fa,borderThickness:W.borderThickness});W=n.getMarkerProperties(g,z,v,b);l.push(W);fa=V(s);r&&l.push({x:z,y:v,ctx:e,type:W.type,size:W.size,color:fa,borderColor:fa,borderThickness:W.borderThickness})}if(p[g].indexLabel||n.indexLabel||p[g].indexLabelFormatter||n.indexLabelFormatter)this._indexLabels.push({chartType:"rangeArea",dataPoint:p[g],dataSeries:n,indexKeyword:0,point:{x:z,y:v},direction:p[g].y[0]>p[g].y[1]===a.axisY.reversed?
471
- -1:1,color:y}),this._indexLabels.push({chartType:"rangeArea",dataPoint:p[g],dataSeries:n,indexKeyword:1,point:{x:z,y:B},direction:p[g].y[0]>p[g].y[1]===a.axisY.reversed?1:-1,color:y})}else Y||q||h(),Y=!0;h();u.drawMarkers(l)}}r&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&
472
- this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:t.xClipAnimation,easingFunction:t.easing.linear,animationBase:0}}};w.prototype.renderRangeSplineArea=function(a){function h(a,c){var h=x(w,2);if(0<h.length){if(0<m.lineThickness){b.strokeStyle=c;b.setLineDash&&b.setLineDash(a);b.beginPath();b.moveTo(h[0].x,h[0].y);for(var g=
460
+ this._eventManager.ghostCtx.rect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.clip());for(var p=0;p<a.dataSeriesIndexes.length;p++){var q=a.dataSeriesIndexes[p],g=this.data[q],z=g.dataPoints;if(0<z.length){var v=5<n&&g.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(l=0;l<z.length;l++)if(z[l].getTime?m=z[l].x.getTime():m=z[l].x,!(m<a.axisX.dataInfo.viewPortMin||m>a.axisX.dataInfo.viewPortMax)&&!f(z[l].y)&&z[l].y.length&&"number"===typeof z[l].y[0]&&"number"===typeof z[l].y[1]){d=a.axisY.convertValueToPixel(z[l].y[0]);
461
+ k=a.axisY.convertValueToPixel(z[l].y[1]);u=a.axisX.convertValueToPixel(m);u=a.axisX.reversed?u+a.plotType.totalDataSeries*n/2-(a.previousDataSeriesCount+p)*n<<0:u-a.plotType.totalDataSeries*n/2+(a.previousDataSeriesCount+p)*n<<0;var B=a.axisX.reversed?u-n<<0:u+n<<0;d>k&&(b=d,d=k,k=b);b=z[l].color?z[l].color:g._colorSet[l%g._colorSet.length];ba(c,d,a.axisX.reversed?B:u,k,a.axisX.reversed?u:B,b,0,null,v,!1,!1,!1,g.fillOpacity);b=g.dataPointIds[l];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",
462
+ dataSeriesIndex:q,dataPointIndex:l,x1:d,y1:u,x2:k,y2:B};b=V(b);r&&ba(this._eventManager.ghostCtx,d,a.axisX.reversed?B:u,k,a.axisX.reversed?u:B,b,0,null,!1,!1,!1,!1);if(z[l].indexLabel||g.indexLabel||z[l].indexLabelFormatter||g.indexLabelFormatter)this._indexLabels.push({chartType:"rangeBar",dataPoint:z[l],dataSeries:g,indexKeyword:0,point:{x:z[l].y[1]>=z[l].y[0]?d:k,y:u+(B-u)/2},direction:z[l].y[1]>=z[l].y[0]?-1:1,bounds:{x1:Math.min(d,k),y1:u,x2:Math.max(d,k),y2:B},color:b}),this._indexLabels.push({chartType:"rangeBar",
463
+ dataPoint:z[l],dataSeries:g,indexKeyword:1,point:{x:z[l].y[1]>=z[l].y[0]?k:d,y:u+(B-u)/2},direction:z[l].y[1]>=z[l].y[0]?1:-1,bounds:{x1:Math.min(d,k),y1:u,x2:Math.max(d,k),y2:B},color:b})}}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,
464
+ 0,0,this.width,this.height),c.clearRect(e.x1,e.y1,e.width,e.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.fadeInAnimation,easingFunction:s.easing.easeInQuad,animationBase:0}}};w.prototype.renderRangeArea=function(a){function h(){if(w){for(var a=null,c=k.length-1;0<=c;c--)a=k[c],b.lineTo(a.x,a.y2),e.lineTo(a.x,a.y2);b.closePath();b.globalAlpha=n.fillOpacity;b.fill();b.globalAlpha=1;e.fill();if(0<n.lineThickness){b.beginPath();
465
+ b.moveTo(a.x,a.y2);for(c=0;c<k.length;c++)a=k[c],b.lineTo(a.x,a.y2);b.moveTo(k[0].x,k[0].y1);for(c=0;c<k.length;c++)a=k[c],b.lineTo(a.x,a.y1);b.stroke()}b.beginPath();b.moveTo(z,u);e.beginPath();e.moveTo(z,u);w={x:z,y:u};k=[];k.push({x:z,y1:u,y2:B})}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=r?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,l=[],f=this.plotArea;b.save();r&&e.save();b.beginPath();b.rect(f.x1,f.y1,f.width,f.height);b.clip();r&&(e.beginPath(),
466
+ e.rect(f.x1,f.y1,f.width,f.height),e.clip());for(var d=0;d<a.dataSeriesIndexes.length;d++){var k=[],m=a.dataSeriesIndexes[d],n=this.data[m],p=n.dataPoints,l=n.id;this._eventManager.objectMap[l]={objectType:"dataSeries",dataSeriesIndex:m};l=V(l);e.fillStyle=l;var l=[],q=!0,g=0,z,u,B,t,w=null;if(0<p.length){var y=n._colorSet[g%n._colorSet.length],x=n.lineColor=n.options.lineColor||y,A=x;b.fillStyle=y;b.strokeStyle=x;b.lineWidth=n.lineThickness;var E="solid";if(b.setLineDash){var D=R(n.nullDataLineDashType,
467
+ n.lineThickness),E=n.lineDashType,K=R(E,n.lineThickness);b.setLineDash(K)}for(var Y=!0;g<p.length;g++)if(t=p[g].x.getTime?p[g].x.getTime():p[g].x,!(t<a.axisX.dataInfo.viewPortMin||t>a.axisX.dataInfo.viewPortMax&&(!n.connectNullData||!Y)))if(null!==p[g].y&&p[g].y.length&&"number"===typeof p[g].y[0]&&"number"===typeof p[g].y[1]){z=a.axisX.convertValueToPixel(t);u=a.axisY.convertValueToPixel(p[g].y[0]);B=a.axisY.convertValueToPixel(p[g].y[1]);q||Y?(n.connectNullData&&!q?(b.setLineDash&&(n.options.nullDataLineDashType||
468
+ E===n.lineDashType&&n.lineDashType!==n.nullDataLineDashType)&&(k[k.length-1].newLineDashArray=K,E=n.nullDataLineDashType,b.setLineDash(D)),b.lineTo(z,u),r&&e.lineTo(z,u),k.push({x:z,y1:u,y2:B})):(b.beginPath(),b.moveTo(z,u),w={x:z,y:u},k=[],k.push({x:z,y1:u,y2:B}),r&&(e.beginPath(),e.moveTo(z,u))),Y=q=!1):(b.lineTo(z,u),k.push({x:z,y1:u,y2:B}),r&&e.lineTo(z,u),0==g%250&&h());t=n.dataPointIds[g];this._eventManager.objectMap[t]={id:t,objectType:"dataPoint",dataSeriesIndex:m,dataPointIndex:g,x1:z,y1:u,
469
+ y2:B};g<p.length-1&&(A!==(p[g].lineColor||x)||E!==(p[g].lineDashType||n.lineDashType))&&(h(),A=p[g].lineColor||x,k[k.length-1].newStrokeStyle=A,b.strokeStyle=A,b.setLineDash&&(p[g].lineDashType?(E=p[g].lineDashType,k[k.length-1].newLineDashArray=R(E,n.lineThickness),b.setLineDash(k[k.length-1].newLineDashArray)):(E=n.lineDashType,k[k.length-1].newLineDashArray=K,b.setLineDash(K))));if(0!==p[g].markerSize&&(0<p[g].markerSize||0<n.markerSize)){var W=n.getMarkerProperties(g,z,B,b);l.push(W);var fa=V(t);
470
+ r&&l.push({x:z,y:B,ctx:e,type:W.type,size:W.size,color:fa,borderColor:fa,borderThickness:W.borderThickness});W=n.getMarkerProperties(g,z,u,b);l.push(W);fa=V(t);r&&l.push({x:z,y:u,ctx:e,type:W.type,size:W.size,color:fa,borderColor:fa,borderThickness:W.borderThickness})}if(p[g].indexLabel||n.indexLabel||p[g].indexLabelFormatter||n.indexLabelFormatter)this._indexLabels.push({chartType:"rangeArea",dataPoint:p[g],dataSeries:n,indexKeyword:0,point:{x:z,y:u},direction:p[g].y[0]>p[g].y[1]===a.axisY.reversed?
471
+ -1:1,color:y}),this._indexLabels.push({chartType:"rangeArea",dataPoint:p[g],dataSeries:n,indexKeyword:1,point:{x:z,y:B},direction:p[g].y[0]>p[g].y[1]===a.axisY.reversed?1:-1,color:y})}else Y||q||h(),Y=!0;h();v.drawMarkers(l)}}r&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&
472
+ this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:s.xClipAnimation,easingFunction:s.easing.linear,animationBase:0}}};w.prototype.renderRangeSplineArea=function(a){function h(a,c){var h=x(w,2);if(0<h.length){if(0<m.lineThickness){b.strokeStyle=c;b.setLineDash&&b.setLineDash(a);b.beginPath();b.moveTo(h[0].x,h[0].y);for(var g=
473
473
  0;g<h.length-3;g+=3){if(h[g].newStrokeStyle||h[g].newLineDashArray)b.stroke(),b.beginPath(),b.moveTo(h[g].x,h[g].y),h[g].newStrokeStyle&&(b.strokeStyle=h[g].newStrokeStyle),h[g].newLineDashArray&&b.setLineDash(h[g].newLineDashArray);b.bezierCurveTo(h[g+1].x,h[g+1].y,h[g+2].x,h[g+2].y,h[g+3].x,h[g+3].y)}}b.beginPath();b.moveTo(h[0].x,h[0].y);r&&(e.beginPath(),e.moveTo(h[0].x,h[0].y));for(g=0;g<h.length-3;g+=3)b.bezierCurveTo(h[g+1].x,h[g+1].y,h[g+2].x,h[g+2].y,h[g+3].x,h[g+3].y),r&&e.bezierCurveTo(h[g+
474
474
  1].x,h[g+1].y,h[g+2].x,h[g+2].y,h[g+3].x,h[g+3].y);h=x(B,2);b.lineTo(B[B.length-1].x,B[B.length-1].y);for(g=h.length-1;2<g;g-=3)b.bezierCurveTo(h[g-1].x,h[g-1].y,h[g-2].x,h[g-2].y,h[g-3].x,h[g-3].y),r&&e.bezierCurveTo(h[g-1].x,h[g-1].y,h[g-2].x,h[g-2].y,h[g-3].x,h[g-3].y);b.closePath();b.globalAlpha=m.fillOpacity;b.fill();r&&(e.closePath(),e.fill());b.globalAlpha=1;if(0<m.lineThickness){b.strokeStyle=c;b.setLineDash&&b.setLineDash(a);b.beginPath();b.moveTo(h[0].x,h[0].y);for(var l=g=0;g<h.length-
475
475
  3;g+=3,l++){if(w[l].newStrokeStyle||w[l].newLineDashArray)b.stroke(),b.beginPath(),b.moveTo(h[g].x,h[g].y),w[l].newStrokeStyle&&(b.strokeStyle=w[l].newStrokeStyle),w[l].newLineDashArray&&b.setLineDash(w[l].newLineDashArray);b.bezierCurveTo(h[g+1].x,h[g+1].y,h[g+2].x,h[g+2].y,h[g+3].x,h[g+3].y)}h=x(w,2);b.moveTo(h[0].x,h[0].y);for(l=g=0;g<h.length-3;g+=3,l++){if(w[l].newStrokeStyle||w[l].newLineDashArray)b.stroke(),b.beginPath(),b.moveTo(h[g].x,h[g].y),w[l].newStrokeStyle&&(b.strokeStyle=w[l].newStrokeStyle),
476
476
  w[l].newLineDashArray&&b.setLineDash(w[l].newLineDashArray);b.bezierCurveTo(h[g+1].x,h[g+1].y,h[g+2].x,h[g+2].y,h[g+3].x,h[g+3].y)}b.stroke()}b.beginPath()}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=r?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var e=this._eventManager.ghostCtx,l=[],f=this.plotArea;b.save();r&&e.save();b.beginPath();b.rect(f.x1,f.y1,f.width,f.height);b.clip();r&&(e.beginPath(),e.rect(f.x1,f.y1,f.width,f.height),e.clip());for(var d=0;d<a.dataSeriesIndexes.length;d++){var k=
477
- a.dataSeriesIndexes[d],m=this.data[k],n=m.dataPoints,l=m.id;this._eventManager.objectMap[l]={objectType:"dataSeries",dataSeriesIndex:k};l=V(l);e.fillStyle=l;var l=[],p=0,q,g,v,w=[],B=[];if(0<n.length){var s=m._colorSet[p%m._colorSet.length],G=m.lineColor=m.options.lineColor||s,y=G;b.fillStyle=s;b.lineWidth=m.lineThickness;var A="solid",D;if(b.setLineDash){var E=R(m.nullDataLineDashType,m.lineThickness),A=m.lineDashType;D=R(A,m.lineThickness)}for(g=!1;p<n.length;p++)if(q=n[p].x.getTime?n[p].x.getTime():
478
- n[p].x,!(q<a.axisX.dataInfo.viewPortMin||q>a.axisX.dataInfo.viewPortMax&&(!m.connectNullData||!g)))if(null!==n[p].y&&n[p].y.length&&"number"===typeof n[p].y[0]&&"number"===typeof n[p].y[1]){q=a.axisX.convertValueToPixel(q);g=a.axisY.convertValueToPixel(n[p].y[0]);v=a.axisY.convertValueToPixel(n[p].y[1]);var F=m.dataPointIds[p];this._eventManager.objectMap[F]={id:F,objectType:"dataPoint",dataSeriesIndex:k,dataPointIndex:p,x1:q,y1:g,y2:v};w[w.length]={x:q,y:g};B[B.length]={x:q,y:v};p<n.length-1&&(y!==
477
+ a.dataSeriesIndexes[d],m=this.data[k],n=m.dataPoints,l=m.id;this._eventManager.objectMap[l]={objectType:"dataSeries",dataSeriesIndex:k};l=V(l);e.fillStyle=l;var l=[],p=0,q,g,u,w=[],B=[];if(0<n.length){var t=m._colorSet[p%m._colorSet.length],G=m.lineColor=m.options.lineColor||t,y=G;b.fillStyle=t;b.lineWidth=m.lineThickness;var A="solid",D;if(b.setLineDash){var E=R(m.nullDataLineDashType,m.lineThickness),A=m.lineDashType;D=R(A,m.lineThickness)}for(g=!1;p<n.length;p++)if(q=n[p].x.getTime?n[p].x.getTime():
478
+ n[p].x,!(q<a.axisX.dataInfo.viewPortMin||q>a.axisX.dataInfo.viewPortMax&&(!m.connectNullData||!g)))if(null!==n[p].y&&n[p].y.length&&"number"===typeof n[p].y[0]&&"number"===typeof n[p].y[1]){q=a.axisX.convertValueToPixel(q);g=a.axisY.convertValueToPixel(n[p].y[0]);u=a.axisY.convertValueToPixel(n[p].y[1]);var F=m.dataPointIds[p];this._eventManager.objectMap[F]={id:F,objectType:"dataPoint",dataSeriesIndex:k,dataPointIndex:p,x1:q,y1:g,y2:u};w[w.length]={x:q,y:g};B[B.length]={x:q,y:u};p<n.length-1&&(y!==
479
479
  (n[p].lineColor||G)||A!==(n[p].lineDashType||m.lineDashType))&&(y=n[p].lineColor||G,w[w.length-1].newStrokeStyle=y,b.setLineDash&&(n[p].lineDashType?(A=n[p].lineDashType,w[w.length-1].newLineDashArray=R(A,m.lineThickness)):(A=m.lineDashType,w[w.length-1].newLineDashArray=D)));if(0!==n[p].markerSize&&(0<n[p].markerSize||0<m.markerSize)){var J=m.getMarkerProperties(p,q,g,b);l.push(J);var Y=V(F);r&&l.push({x:q,y:g,ctx:e,type:J.type,size:J.size,color:Y,borderColor:Y,borderThickness:J.borderThickness});
480
- J=m.getMarkerProperties(p,q,v,b);l.push(J);Y=V(F);r&&l.push({x:q,y:v,ctx:e,type:J.type,size:J.size,color:Y,borderColor:Y,borderThickness:J.borderThickness})}if(n[p].indexLabel||m.indexLabel||n[p].indexLabelFormatter||m.indexLabelFormatter)this._indexLabels.push({chartType:"rangeSplineArea",dataPoint:n[p],dataSeries:m,indexKeyword:0,point:{x:q,y:g},direction:n[p].y[0]<=n[p].y[1]?-1:1,color:s}),this._indexLabels.push({chartType:"rangeSplineArea",dataPoint:n[p],dataSeries:m,indexKeyword:1,point:{x:q,
481
- y:v},direction:n[p].y[0]<=n[p].y[1]?1:-1,color:s});g=!1}else 0<p&&!g&&(m.connectNullData?b.setLineDash&&(0<w.length&&(m.options.nullDataLineDashType||!n[p-1].lineDashType))&&(w[w.length-1].newLineDashArray=E,A=m.nullDataLineDashType):(h(D,G),w=[],B=[])),g=!0;h(D,G);u.drawMarkers(l)}}r&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,
482
- 0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:t.xClipAnimation,easingFunction:t.easing.linear,animationBase:0}}};w.prototype.renderWaterfall=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx,
480
+ J=m.getMarkerProperties(p,q,u,b);l.push(J);Y=V(F);r&&l.push({x:q,y:u,ctx:e,type:J.type,size:J.size,color:Y,borderColor:Y,borderThickness:J.borderThickness})}if(n[p].indexLabel||m.indexLabel||n[p].indexLabelFormatter||m.indexLabelFormatter)this._indexLabels.push({chartType:"rangeSplineArea",dataPoint:n[p],dataSeries:m,indexKeyword:0,point:{x:q,y:g},direction:n[p].y[0]<=n[p].y[1]?-1:1,color:t}),this._indexLabels.push({chartType:"rangeSplineArea",dataPoint:n[p],dataSeries:m,indexKeyword:1,point:{x:q,
481
+ y:u},direction:n[p].y[0]<=n[p].y[1]?1:-1,color:t});g=!1}else 0<p&&!g&&(m.connectNullData?b.setLineDash&&(0<w.length&&(m.options.nullDataLineDashType||!n[p-1].lineDashType))&&(w[w.length-1].newLineDashArray=E,A=m.nullDataLineDashType):(h(D,G),w=[],B=[])),g=!0;h(D,G);v.drawMarkers(l)}}r&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,
482
+ 0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:s.xClipAnimation,easingFunction:s.easing.linear,animationBase:0}}};w.prototype.renderWaterfall=function(a){var h=a.targetCanvasCtx||this.plotArea.ctx,c=r?this._preRenderCtx:h;if(!(0>=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx,
483
483
  e=null,l=this.plotArea,f=0,d,k,m,n,p=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;k=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.width,0.9*(this.plotArea.width/a.plotType.totalDataSeries))<<0;var q=a.axisX.dataInfo.minDiff;isFinite(q)||(q=0.3*Math.abs(a.axisX.range));q=this.options.dataPointWidth?
484
484
  this.dataPointWidth:0.6*(l.width*(a.axisX.logarithmic?Math.log(q)/Math.log(a.axisX.range):Math.abs(q)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&f>k&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,k));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&k<f)&&(k=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,f));q<f&&(q=f);q>k&&(q=k);c.save();r&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(l.x1,l.y1,l.width,l.height);
485
- c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(l.x1,l.y1,l.width,l.height),this._eventManager.ghostCtx.clip());for(var g=0;g<a.dataSeriesIndexes.length;g++){var v=a.dataSeriesIndexes[g],u=this.data[v],B=u.dataPoints,e=u._colorSet[0];u.risingColor=u.options.risingColor?u.options.risingColor:e;u.fallingColor=u.options.fallingColor?u.options.fallingColor:"#e40a0a";var s="number"===typeof u.options.lineThickness?Math.round(u.lineThickness):1,w=1===Math.round(s)%
486
- 2?-0.5:0;if(0<B.length)for(var y=5<q&&u.bevelEnabled?!0:!1,x=!1,A=null,E=null,f=0;f<B.length;f++)if(B[f].getTime?n=B[f].x.getTime():n=B[f].x,"number"!==typeof B[f].y){if(0<f&&!x&&u.connectNullData)var D=u.options.nullDataLineDashType||!B[f-1].lineDashType?u.nullDataLineDashType:B[f-1].lineDashType;x=!0}else{d=a.axisX.convertValueToPixel(n);k=0===u.dataPointEOs[f].cumulativeSum?p:a.axisY.convertValueToPixel(u.dataPointEOs[f].cumulativeSum);m=0===u.dataPointEOs[f].cumulativeSumYStartValue?p:a.axisY.convertValueToPixel(u.dataPointEOs[f].cumulativeSumYStartValue);
487
- d=a.axisX.reversed?d+a.plotType.totalDataSeries*q/2-(a.previousDataSeriesCount+g)*q<<0:d-a.plotType.totalDataSeries*q/2+(a.previousDataSeriesCount+g)*q<<0;var K=a.axisX.reversed?d-q<<0:d+q<<0;k>m&&(e=k,k=m,m=e);a.axisY.reversed&&(e=k,k=m,m=e);e=u.dataPointIds[f];this._eventManager.objectMap[e]={id:e,objectType:"dataPoint",dataSeriesIndex:v,dataPointIndex:f,x1:d,y1:k,x2:K,y2:m};var Y=B[f].color?B[f].color:0<B[f].y?u.risingColor:u.fallingColor;ba(c,a.axisX.reversed?K:d,a.axisY.reversed?m:k,a.axisX.reversed?
488
- d:K,a.axisY.reversed?k:m,Y,0,Y,y,y,!1,!1,u.fillOpacity);e=V(e);r&&ba(this._eventManager.ghostCtx,a.axisX.reversed?K:d,k,a.axisX.reversed?d:K,m,e,0,null,!1,!1,!1,!1);var W,Y=d;W="undefined"!==typeof B[f].isIntermediateSum&&!0===B[f].isIntermediateSum||"undefined"!==typeof B[f].isCumulativeSum&&!0===B[f].isCumulativeSum?0<B[f].y?k:m:0<B[f].y?m:k;0<f&&A&&(!x||u.connectNullData)&&(x&&c.setLineDash&&c.setLineDash(R(D,s)),c.beginPath(),c.moveTo(A,E-w),c.lineTo(Y,W-w),0<s&&c.stroke(),r&&(b.beginPath(),b.moveTo(A,
489
- E-w),b.lineTo(Y,W-w),0<s&&b.stroke()));x=!1;A=K;E=0<B[f].y?k:m;Y=B[f].lineDashType?B[f].lineDashType:u.options.lineDashType?u.options.lineDashType:"shortDash";c.strokeStyle=B[f].lineColor?B[f].lineColor:u.options.lineColor?u.options.lineColor:"#9e9e9e";c.lineWidth=s;c.setLineDash&&(Y=R(Y,s),c.setLineDash(Y));(B[f].indexLabel||u.indexLabel||B[f].indexLabelFormatter||u.indexLabelFormatter)&&this._indexLabels.push({chartType:"waterfall",dataPoint:B[f],dataSeries:u,point:{x:d+(K-d)/2,y:0<=B[f].y?k:m},
485
+ c.clip();r&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(l.x1,l.y1,l.width,l.height),this._eventManager.ghostCtx.clip());for(var g=0;g<a.dataSeriesIndexes.length;g++){var u=a.dataSeriesIndexes[g],v=this.data[u],B=v.dataPoints,e=v._colorSet[0];v.risingColor=v.options.risingColor?v.options.risingColor:e;v.fallingColor=v.options.fallingColor?v.options.fallingColor:"#e40a0a";var t="number"===typeof v.options.lineThickness?Math.round(v.lineThickness):1,w=1===Math.round(t)%
486
+ 2?-0.5:0;if(0<B.length)for(var y=5<q&&v.bevelEnabled?!0:!1,x=!1,A=null,E=null,f=0;f<B.length;f++)if(B[f].getTime?n=B[f].x.getTime():n=B[f].x,"number"!==typeof B[f].y){if(0<f&&!x&&v.connectNullData)var D=v.options.nullDataLineDashType||!B[f-1].lineDashType?v.nullDataLineDashType:B[f-1].lineDashType;x=!0}else{d=a.axisX.convertValueToPixel(n);k=0===v.dataPointEOs[f].cumulativeSum?p:a.axisY.convertValueToPixel(v.dataPointEOs[f].cumulativeSum);m=0===v.dataPointEOs[f].cumulativeSumYStartValue?p:a.axisY.convertValueToPixel(v.dataPointEOs[f].cumulativeSumYStartValue);
487
+ d=a.axisX.reversed?d+a.plotType.totalDataSeries*q/2-(a.previousDataSeriesCount+g)*q<<0:d-a.plotType.totalDataSeries*q/2+(a.previousDataSeriesCount+g)*q<<0;var K=a.axisX.reversed?d-q<<0:d+q<<0;k>m&&(e=k,k=m,m=e);a.axisY.reversed&&(e=k,k=m,m=e);e=v.dataPointIds[f];this._eventManager.objectMap[e]={id:e,objectType:"dataPoint",dataSeriesIndex:u,dataPointIndex:f,x1:d,y1:k,x2:K,y2:m};var Y=B[f].color?B[f].color:0<B[f].y?v.risingColor:v.fallingColor;ba(c,a.axisX.reversed?K:d,a.axisY.reversed?m:k,a.axisX.reversed?
488
+ d:K,a.axisY.reversed?k:m,Y,0,Y,y,y,!1,!1,v.fillOpacity);e=V(e);r&&ba(this._eventManager.ghostCtx,a.axisX.reversed?K:d,k,a.axisX.reversed?d:K,m,e,0,null,!1,!1,!1,!1);var W,Y=d;W="undefined"!==typeof B[f].isIntermediateSum&&!0===B[f].isIntermediateSum||"undefined"!==typeof B[f].isCumulativeSum&&!0===B[f].isCumulativeSum?0<B[f].y?k:m:0<B[f].y?m:k;0<f&&A&&(!x||v.connectNullData)&&(x&&c.setLineDash&&c.setLineDash(R(D,t)),c.beginPath(),c.moveTo(A,E-w),c.lineTo(Y,W-w),0<t&&c.stroke(),r&&(b.beginPath(),b.moveTo(A,
489
+ E-w),b.lineTo(Y,W-w),0<t&&b.stroke()));x=!1;A=K;E=0<B[f].y?k:m;Y=B[f].lineDashType?B[f].lineDashType:v.options.lineDashType?v.options.lineDashType:"shortDash";c.strokeStyle=B[f].lineColor?B[f].lineColor:v.options.lineColor?v.options.lineColor:"#9e9e9e";c.lineWidth=t;c.setLineDash&&(Y=R(Y,t),c.setLineDash(Y));(B[f].indexLabel||v.indexLabel||B[f].indexLabelFormatter||v.indexLabelFormatter)&&this._indexLabels.push({chartType:"waterfall",dataPoint:B[f],dataSeries:v,point:{x:d+(K-d)/2,y:0<=B[f].y?k:m},
490
490
  direction:0>B[f].y===a.axisY.reversed?1:-1,bounds:{x1:d,y1:Math.min(k,m),x2:K,y2:Math.max(k,m)},color:e})}}r&&(h.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(l.x1,l.y1,l.width,
491
- l.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:t.fadeInAnimation,easingFunction:t.easing.easeInQuad,animationBase:0}}};var d=function(a,h,c,b,e,l,f,d,k){if(!(0>c)){"undefined"===typeof d&&(d=1);if(!r){var m=Number((f%(2*Math.PI)).toFixed(8));Number((l%(2*Math.PI)).toFixed(8))===m&&(f-=1E-4)}a.save();a.globalAlpha=d;"pie"===e?(a.beginPath(),a.moveTo(h.x,h.y),a.arc(h.x,h.y,c,l,f,!1),a.fillStyle=b,a.strokeStyle="white",a.lineWidth=
491
+ l.height),this._eventManager.ghostCtx.restore());c.restore();return{source:h,dest:this.plotArea.ctx,animationCallback:s.fadeInAnimation,easingFunction:s.easing.easeInQuad,animationBase:0}}};var d=function(a,h,c,b,e,l,f,d,k){if(!(0>c)){"undefined"===typeof d&&(d=1);if(!r){var m=Number((f%(2*Math.PI)).toFixed(8));Number((l%(2*Math.PI)).toFixed(8))===m&&(f-=1E-4)}a.save();a.globalAlpha=d;"pie"===e?(a.beginPath(),a.moveTo(h.x,h.y),a.arc(h.x,h.y,c,l,f,!1),a.fillStyle=b,a.strokeStyle="white",a.lineWidth=
492
492
  2,a.closePath(),a.fill()):"doughnut"===e&&(a.beginPath(),a.arc(h.x,h.y,c,l,f,!1),0<=k&&a.arc(h.x,h.y,k*c,f,l,!0),a.closePath(),a.fillStyle=b,a.strokeStyle="white",a.lineWidth=2,a.fill());a.globalAlpha=1;a.restore()}};w.prototype.renderPie=function(a){function h(){if(m&&n){var a=0,b=0,c=0,h=0;f(m.options.indexLabelMaxWidth)&&(m.indexLabelMaxWidth=0.33*q.width);for(var e=0;e<n.length;e++){var l=n[e],d=m.dataPointIds[e];g[e].id=d;g[e].objectType="dataPoint";g[e].dataPointIndex=e;g[e].dataSeriesIndex=
493
- 0;var p=g[e],k={percent:null,total:null},C=null,k=v.getPercentAndTotal(m,l);if(m.indexLabelFormatter||l.indexLabelFormatter)C={chart:v.options,dataSeries:m,dataPoint:l,total:k.total,percent:k.percent};k=l.indexLabelFormatter?l.indexLabelFormatter(C):l.indexLabel?v.replaceKeywordsWithValue(l.indexLabel,l,m,e):m.indexLabelFormatter?m.indexLabelFormatter(C):m.indexLabel?v.replaceKeywordsWithValue(m.indexLabel,l,m,e):l.label?l.label:"";v._eventManager.objectMap[d]=p;p.center={x:y.x,y:y.y};p.y=l.y;p.radius=
493
+ 0;var p=g[e],k={percent:null,total:null},C=null,k=u.getPercentAndTotal(m,l);if(m.indexLabelFormatter||l.indexLabelFormatter)C={chart:u.options,dataSeries:m,dataPoint:l,total:k.total,percent:k.percent};k=l.indexLabelFormatter?l.indexLabelFormatter(C):l.indexLabel?u.replaceKeywordsWithValue(l.indexLabel,l,m,e):m.indexLabelFormatter?m.indexLabelFormatter(C):m.indexLabel?u.replaceKeywordsWithValue(m.indexLabel,l,m,e):l.label?l.label:"";u._eventManager.objectMap[d]=p;p.center={x:y.x,y:y.y};p.y=l.y;p.radius=
494
494
  E;p.percentInnerRadius=K;p.indexLabelText=k;p.indexLabelPlacement=m.indexLabelPlacement;p.indexLabelLineColor=l.indexLabelLineColor?l.indexLabelLineColor:m.options.indexLabelLineColor?m.options.indexLabelLineColor:l.color?l.color:m._colorSet[e%m._colorSet.length];p.indexLabelLineThickness=f(l.indexLabelLineThickness)?m.indexLabelLineThickness:l.indexLabelLineThickness;p.indexLabelLineDashType=l.indexLabelLineDashType?l.indexLabelLineDashType:m.indexLabelLineDashType;p.indexLabelFontColor=l.indexLabelFontColor?
495
495
  l.indexLabelFontColor:m.indexLabelFontColor;p.indexLabelFontStyle=l.indexLabelFontStyle?l.indexLabelFontStyle:m.indexLabelFontStyle;p.indexLabelFontWeight=l.indexLabelFontWeight?l.indexLabelFontWeight:m.indexLabelFontWeight;p.indexLabelFontSize=f(l.indexLabelFontSize)?m.indexLabelFontSize:l.indexLabelFontSize;p.indexLabelFontFamily=l.indexLabelFontFamily?l.indexLabelFontFamily:m.indexLabelFontFamily;p.indexLabelBackgroundColor=l.indexLabelBackgroundColor?l.indexLabelBackgroundColor:m.options.indexLabelBackgroundColor?
496
496
  m.options.indexLabelBackgroundColor:m.indexLabelBackgroundColor;p.indexLabelMaxWidth=l.indexLabelMaxWidth?l.indexLabelMaxWidth:m.indexLabelMaxWidth;p.indexLabelWrap="undefined"!==typeof l.indexLabelWrap?l.indexLabelWrap:m.indexLabelWrap;p.indexLabelTextAlign=l.indexLabelTextAlign?l.indexLabelTextAlign:m.indexLabelTextAlign?m.indexLabelTextAlign:"left";p.startAngle=0===e?m.startAngle?m.startAngle/180*Math.PI:0:g[e-1].endAngle;p.startAngle=(p.startAngle+2*Math.PI)%(2*Math.PI);p.endAngle=p.startAngle+
497
- 2*Math.PI/x*Math.abs(l.y);l=(p.endAngle+p.startAngle)/2;l=(l+2*Math.PI)%(2*Math.PI);p.midAngle=l;if(p.midAngle>Math.PI/2-s&&p.midAngle<Math.PI/2+s){if(0===a||g[c].midAngle>p.midAngle)c=e;a++}else if(p.midAngle>3*Math.PI/2-s&&p.midAngle<3*Math.PI/2+s){if(0===b||g[h].midAngle>p.midAngle)h=e;b++}p.hemisphere=l>Math.PI/2&&l<=3*Math.PI/2?"left":"right";p.indexLabelTextBlock=new ma(v.plotArea.ctx,{fontSize:p.indexLabelFontSize,fontFamily:p.indexLabelFontFamily,fontColor:p.indexLabelFontColor,fontStyle:p.indexLabelFontStyle,
498
- fontWeight:p.indexLabelFontWeight,textAlign:p.indexLabelTextAlign,backgroundColor:p.indexLabelBackgroundColor,maxWidth:p.indexLabelMaxWidth,maxHeight:p.indexLabelWrap?5*p.indexLabelFontSize:1.5*p.indexLabelFontSize,text:p.indexLabelText,padding:0,textBaseline:"middle"});p.indexLabelTextBlock.measureText()}d=l=0;k=!1;for(e=0;e<n.length;e++)p=g[(c+e)%n.length],1<a&&(p.midAngle>Math.PI/2-s&&p.midAngle<Math.PI/2+s)&&(l<=a/2&&!k?(p.hemisphere="right",l++):(p.hemisphere="left",k=!0));k=!1;for(e=0;e<n.length;e++)p=
499
- g[(h+e)%n.length],1<b&&(p.midAngle>3*Math.PI/2-s&&p.midAngle<3*Math.PI/2+s)&&(d<=b/2&&!k?(p.hemisphere="left",d++):(p.hemisphere="right",k=!0))}}function c(a,b){var c=v.plotArea.ctx;c.clearRect(q.x1,q.y1,q.width,q.height);c.fillStyle=v.backgroundColor;c.fillRect(q.x1,q.y1,q.width,q.height);for(c=0;c<n.length;c++){var h=g[c].startAngle,e=g[c].endAngle;if(e>h){var l=0.07*E*Math.cos(g[c].midAngle),f=0.07*E*Math.sin(g[c].midAngle),k=!1;if(n[c].exploded){if(1E-9<Math.abs(g[c].center.x-(y.x+l))||1E-9<Math.abs(g[c].center.y-
500
- (y.y+f)))g[c].center.x=y.x+l*a,g[c].center.y=y.y+f*a,k=!0}else if(0<Math.abs(g[c].center.x-y.x)||0<Math.abs(g[c].center.y-y.y))g[c].center.x=y.x+l*(1-a),g[c].center.y=y.y+f*(1-a),k=!0;k&&b&&(l={},l.dataSeries=m,l.dataPoint=m.dataPoints[c],l.index=c,v.toolTip.highlightObjects([l]));d(v.plotArea.ctx,g[c].center,g[c].radius,n[c].color?n[c].color:m._colorSet[c%m._colorSet.length],m.type,h,e,m.fillOpacity,g[c].percentInnerRadius)}}c=v.plotArea.ctx;c.save();c.fillStyle="black";c.strokeStyle="grey";c.textBaseline=
497
+ 2*Math.PI/x*Math.abs(l.y);l=(p.endAngle+p.startAngle)/2;l=(l+2*Math.PI)%(2*Math.PI);p.midAngle=l;if(p.midAngle>Math.PI/2-t&&p.midAngle<Math.PI/2+t){if(0===a||g[c].midAngle>p.midAngle)c=e;a++}else if(p.midAngle>3*Math.PI/2-t&&p.midAngle<3*Math.PI/2+t){if(0===b||g[h].midAngle>p.midAngle)h=e;b++}p.hemisphere=l>Math.PI/2&&l<=3*Math.PI/2?"left":"right";p.indexLabelTextBlock=new ma(u.plotArea.ctx,{fontSize:p.indexLabelFontSize,fontFamily:p.indexLabelFontFamily,fontColor:p.indexLabelFontColor,fontStyle:p.indexLabelFontStyle,
498
+ fontWeight:p.indexLabelFontWeight,textAlign:p.indexLabelTextAlign,backgroundColor:p.indexLabelBackgroundColor,maxWidth:p.indexLabelMaxWidth,maxHeight:p.indexLabelWrap?5*p.indexLabelFontSize:1.5*p.indexLabelFontSize,text:p.indexLabelText,padding:0,textBaseline:"middle"});p.indexLabelTextBlock.measureText()}d=l=0;k=!1;for(e=0;e<n.length;e++)p=g[(c+e)%n.length],1<a&&(p.midAngle>Math.PI/2-t&&p.midAngle<Math.PI/2+t)&&(l<=a/2&&!k?(p.hemisphere="right",l++):(p.hemisphere="left",k=!0));k=!1;for(e=0;e<n.length;e++)p=
499
+ g[(h+e)%n.length],1<b&&(p.midAngle>3*Math.PI/2-t&&p.midAngle<3*Math.PI/2+t)&&(d<=b/2&&!k?(p.hemisphere="left",d++):(p.hemisphere="right",k=!0))}}function c(a,b){var c=u.plotArea.ctx;c.clearRect(q.x1,q.y1,q.width,q.height);c.fillStyle=u.backgroundColor;c.fillRect(q.x1,q.y1,q.width,q.height);for(c=0;c<n.length;c++){var h=g[c].startAngle,e=g[c].endAngle;if(e>h){var l=0.07*E*Math.cos(g[c].midAngle),f=0.07*E*Math.sin(g[c].midAngle),k=!1;if(n[c].exploded){if(1E-9<Math.abs(g[c].center.x-(y.x+l))||1E-9<Math.abs(g[c].center.y-
500
+ (y.y+f)))g[c].center.x=y.x+l*a,g[c].center.y=y.y+f*a,k=!0}else if(0<Math.abs(g[c].center.x-y.x)||0<Math.abs(g[c].center.y-y.y))g[c].center.x=y.x+l*(1-a),g[c].center.y=y.y+f*(1-a),k=!0;k&&b&&(l={},l.dataSeries=m,l.dataPoint=m.dataPoints[c],l.index=c,u.toolTip.highlightObjects([l]));d(u.plotArea.ctx,g[c].center,g[c].radius,n[c].color?n[c].color:m._colorSet[c%m._colorSet.length],m.type,h,e,m.fillOpacity,g[c].percentInnerRadius)}}c=u.plotArea.ctx;c.save();c.fillStyle="black";c.strokeStyle="grey";c.textBaseline=
501
501
  "middle";c.lineJoin="round";for(h=h=0;h<n.length;h++)e=g[h],e.indexLabelText&&(e.indexLabelTextBlock.y-=e.indexLabelTextBlock.height/2-e.indexLabelTextBlock.fontSize/2,l=0,l="left"===e.hemisphere?"inside"!==m.indexLabelPlacement?-(e.indexLabelTextBlock.width+p):-e.indexLabelTextBlock.width/2:"inside"!==m.indexLabelPlacement?p:-e.indexLabelTextBlock.width/2,e.indexLabelTextBlock.x+=l,e.indexLabelTextBlock.render(!0),e.indexLabelTextBlock.x-=l,e.indexLabelTextBlock.y+=e.indexLabelTextBlock.height/2-
502
502
  e.indexLabelTextBlock.fontSize/2,"inside"!==e.indexLabelPlacement&&0<e.indexLabelLineThickness&&(l=e.center.x+E*Math.cos(e.midAngle),f=e.center.y+E*Math.sin(e.midAngle),c.strokeStyle=e.indexLabelLineColor,c.lineWidth=e.indexLabelLineThickness,c.setLineDash&&c.setLineDash(R(e.indexLabelLineDashType,e.indexLabelLineThickness)),c.beginPath(),c.moveTo(l,f),c.lineTo(e.indexLabelTextBlock.x,e.indexLabelTextBlock.y),c.lineTo(e.indexLabelTextBlock.x+("left"===e.hemisphere?-p:p),e.indexLabelTextBlock.y),c.stroke()),
503
503
  c.lineJoin="miter");c.save()}function b(a,b){var c=0,c=a.indexLabelTextBlock.y-a.indexLabelTextBlock.height/2,h=a.indexLabelTextBlock.y+a.indexLabelTextBlock.height/2,e=b.indexLabelTextBlock.y-b.indexLabelTextBlock.height/2,g=b.indexLabelTextBlock.y+b.indexLabelTextBlock.height/2;return c=b.indexLabelTextBlock.y>a.indexLabelTextBlock.y?e-h:c-g}function e(a){for(var c=null,h=1;h<n.length;h++)if(c=(a+h+g.length)%g.length,g[c].hemisphere!==g[a].hemisphere){c=null;break}else if(g[c].indexLabelText&&c!==
@@ -505,50 +505,50 @@ a&&(0>b(g[c],g[a])||("right"===g[a].hemisphere?g[c].indexLabelTextBlock.y>=g[a].
505
505
  2+c<d&&(c=-(d-(p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2+c))):p.indexLabelTextBlock.y+p.indexLabelTextBlock.height/2<d&&p.indexLabelTextBlock.y+p.indexLabelTextBlock.height/2+c>m&&(c=p.indexLabelTextBlock.y+p.indexLabelTextBlock.height/2+c-m);c=p.indexLabelTextBlock.y+c;d=0;d="right"===p.hemisphere?y.x+Math.sqrt(Math.pow(r,2)-Math.pow(c-y.y,2)):y.x-Math.sqrt(Math.pow(r,2)-Math.pow(c-y.y,2));k=y.x+E*Math.cos(p.midAngle);q=y.y+E*Math.sin(p.midAngle);q=Math.sqrt(Math.pow(d-k,2)+Math.pow(c-
506
506
  q,2));k=Math.acos(E/r);q=Math.acos((r*r+E*E-q*q)/(2*E*r));c=q<k?c-p.indexLabelTextBlock.y:0;d=null;for(m=1;m<n.length;m++)if(d=(a-m+g.length)%g.length,g[d].hemisphere!==g[a].hemisphere){d=null;break}else if(g[d].indexLabelText&&g[d].hemisphere===g[a].hemisphere&&d!==a&&(0>b(g[d],g[a])||("right"===g[a].hemisphere?g[d].indexLabelTextBlock.y<=g[a].indexLabelTextBlock.y:g[d].indexLabelTextBlock.y>=g[a].indexLabelTextBlock.y)))break;else d=null;k=d;q=e(a);m=d=0;0>c?(m="right"===p.hemisphere?k:q,f=c,null!==
507
507
  m&&(k=-c,c=p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2-(g[m].indexLabelTextBlock.y+g[m].indexLabelTextBlock.height/2),c-k<z&&(d=-k,m=l(m,d,h+1),+m.toFixed(w)>+d.toFixed(w)&&(f=c>z?-(c-z):-(k-(m-d)))))):0<c&&(m="right"===p.hemisphere?q:k,f=c,null!==m&&(k=c,c=g[m].indexLabelTextBlock.y-g[m].indexLabelTextBlock.height/2-(p.indexLabelTextBlock.y+p.indexLabelTextBlock.height/2),c-k<z&&(d=k,m=l(m,d,h+1),+m.toFixed(w)<+d.toFixed(w)&&(f=c>z?c-z:k-(d-m)))));f&&(h=p.indexLabelTextBlock.y+f,c=0,c=
508
- "right"===p.hemisphere?y.x+Math.sqrt(Math.pow(r,2)-Math.pow(h-y.y,2)):y.x-Math.sqrt(Math.pow(r,2)-Math.pow(h-y.y,2)),p.midAngle>Math.PI/2-s&&p.midAngle<Math.PI/2+s?(d=(a-1+g.length)%g.length,d=g[d],a=g[(a+1+g.length)%g.length],"left"===p.hemisphere&&"right"===d.hemisphere&&c>d.indexLabelTextBlock.x?c=d.indexLabelTextBlock.x-15:"right"===p.hemisphere&&("left"===a.hemisphere&&c<a.indexLabelTextBlock.x)&&(c=a.indexLabelTextBlock.x+15)):p.midAngle>3*Math.PI/2-s&&p.midAngle<3*Math.PI/2+s&&(d=(a-1+g.length)%
509
- g.length,d=g[d],a=g[(a+1+g.length)%g.length],"right"===p.hemisphere&&"left"===d.hemisphere&&c<d.indexLabelTextBlock.x?c=d.indexLabelTextBlock.x+15:"left"===p.hemisphere&&("right"===a.hemisphere&&c>a.indexLabelTextBlock.x)&&(c=a.indexLabelTextBlock.x-15)),p.indexLabelTextBlock.y=h,p.indexLabelTextBlock.x=c,p.indexLabelAngle=Math.atan2(p.indexLabelTextBlock.y-y.y,p.indexLabelTextBlock.x-y.x))}return f}function k(){var a=v.plotArea.ctx;a.fillStyle="grey";a.strokeStyle="grey";a.font="16px Arial";a.textBaseline=
510
- "middle";for(var c=a=0,h=0,f=!0,c=0;10>c&&(1>c||0<h);c++){if(m.radius||!m.radius&&"undefined"!==typeof m.innerRadius&&null!==m.innerRadius&&E-h<=D)f=!1;f&&(E-=h);h=0;if("inside"!==m.indexLabelPlacement){r=E*u;for(a=0;a<n.length;a++){var d=g[a];d.indexLabelTextBlock.x=y.x+r*Math.cos(d.midAngle);d.indexLabelTextBlock.y=y.y+r*Math.sin(d.midAngle);d.indexLabelAngle=d.midAngle;d.radius=E;d.percentInnerRadius=K}for(var C,s,a=0;a<n.length;a++){var d=g[a],t=e(a);if(null!==t){C=g[a];s=g[t];var x=0,x=b(C,s)-
511
- z;if(0>x){for(var A=s=0,ua=0;ua<n.length;ua++)ua!==a&&g[ua].hemisphere===d.hemisphere&&(g[ua].indexLabelTextBlock.y<d.indexLabelTextBlock.y?s++:A++);s=x/(s+A||1)*A;var A=-1*(x-s),N=ua=0;"right"===d.hemisphere?(ua=l(a,s),A=-1*(x-ua),N=l(t,A),+N.toFixed(w)<+A.toFixed(w)&&+ua.toFixed(w)<=+s.toFixed(w)&&l(a,-(A-N))):(ua=l(t,s),A=-1*(x-ua),N=l(a,A),+N.toFixed(w)<+A.toFixed(w)&&+ua.toFixed(w)<=+s.toFixed(w)&&l(t,-(A-N)))}}}}else for(a=0;a<n.length;a++)d=g[a],r="pie"===m.type?0.7*E:0.85*E,t=y.x+r*Math.cos(d.midAngle),
512
- s=y.y+r*Math.sin(d.midAngle),d.indexLabelTextBlock.x=t,d.indexLabelTextBlock.y=s;for(a=0;a<n.length;a++)if(d=g[a],t=d.indexLabelTextBlock.measureText(),0!==t.height&&0!==t.width)t=t=0,"right"===d.hemisphere?(t=q.x2-(d.indexLabelTextBlock.x+d.indexLabelTextBlock.width+p),t*=-1):t=q.x1-(d.indexLabelTextBlock.x-d.indexLabelTextBlock.width-p),0<t&&(!f&&d.indexLabelText&&(s="right"===d.hemisphere?q.x2-d.indexLabelTextBlock.x:d.indexLabelTextBlock.x-q.x1,0.3*d.indexLabelTextBlock.maxWidth>s?d.indexLabelText=
513
- "":d.indexLabelTextBlock.maxWidth=0.85*s,0.3*d.indexLabelTextBlock.maxWidth<s&&(d.indexLabelTextBlock.x-="right"===d.hemisphere?2:-2)),Math.abs(d.indexLabelTextBlock.y-d.indexLabelTextBlock.height/2-y.y)<E||Math.abs(d.indexLabelTextBlock.y+d.indexLabelTextBlock.height/2-y.y)<E)&&(t/=Math.abs(Math.cos(d.indexLabelAngle)),9<t&&(t*=0.3),t>h&&(h=t)),t=t=0,0<d.indexLabelAngle&&d.indexLabelAngle<Math.PI?(t=q.y2-(d.indexLabelTextBlock.y+d.indexLabelTextBlock.height/2+5),t*=-1):t=q.y1-(d.indexLabelTextBlock.y-
514
- d.indexLabelTextBlock.height/2-5),0<t&&(!f&&d.indexLabelText&&(s=0<d.indexLabelAngle&&d.indexLabelAngle<Math.PI?-1:1,0===l(a,t*s)&&l(a,2*s)),Math.abs(d.indexLabelTextBlock.x-y.x)<E&&(t/=Math.abs(Math.sin(d.indexLabelAngle)),9<t&&(t*=0.3),t>h&&(h=t)));var F=function(a,b,c){for(var h=[],e=0;h.push(g[b]),b!==c;b=(b+1+n.length)%n.length);h.sort(function(a,b){return a.y-b.y});for(b=0;b<h.length;b++)if(c=h[b],e<0.7*a)e+=c.indexLabelTextBlock.height,c.indexLabelTextBlock.text="",c.indexLabelText="",c.indexLabelTextBlock.measureText();
515
- else break};(function(){for(var a=-1,c=-1,h=0,l=!1,f=0;f<n.length;f++)if(l=!1,C=g[f],C.indexLabelText){var d=e(f);if(null!==d){var m=g[d];x=0;x=b(C,m);var q;if(q=0>x){q=C.indexLabelTextBlock.x;var k=C.indexLabelTextBlock.y-C.indexLabelTextBlock.height/2,s=C.indexLabelTextBlock.y+C.indexLabelTextBlock.height/2,t=m.indexLabelTextBlock.y-m.indexLabelTextBlock.height/2,v=m.indexLabelTextBlock.x+m.indexLabelTextBlock.width,r=m.indexLabelTextBlock.y+m.indexLabelTextBlock.height/2;q=C.indexLabelTextBlock.x+
516
- C.indexLabelTextBlock.width<m.indexLabelTextBlock.x-p||q>v+p||k>r+p||s<t-p?!1:!0}q?(0>a&&(a=f),d!==a&&(c=d,h+=-x),0===f%Math.max(n.length/10,3)&&(l=!0)):l=!0;l&&(0<h&&0<=a&&0<=c)&&(F(h,a,c),c=a=-1,h=0)}}0<h&&F(h,a,c)})()}}function t(){v.plotArea.layoutManager.reset();v.title&&(v.title.dockInsidePlotArea||"center"===v.title.horizontalAlign&&"center"===v.title.verticalAlign)&&v.title.render();if(v.subtitles)for(var a=0;a<v.subtitles.length;a++){var b=v.subtitles[a];(b.dockInsidePlotArea||"center"===
517
- b.horizontalAlign&&"center"===b.verticalAlign)&&b.render()}v.legend&&(v.legend.dockInsidePlotArea||"center"===v.legend.horizontalAlign&&"center"===v.legend.verticalAlign)&&(v.legend.setLayout(),v.legend.render())}var v=this;if(!(0>=a.dataSeriesIndexes.length)){var m=this.data[a.dataSeriesIndexes[0]],n=m.dataPoints,p=10,q=this.plotArea,g=m.dataPointEOs,z=2,r,u=1.3,s=20/180*Math.PI,w=6,y={x:(q.x2+q.x1)/2,y:(q.y2+q.y1)/2},x=0;a=!1;for(var A=0;A<n.length;A++)x+=Math.abs(n[A].y),!a&&("undefined"!==typeof n[A].indexLabel&&
508
+ "right"===p.hemisphere?y.x+Math.sqrt(Math.pow(r,2)-Math.pow(h-y.y,2)):y.x-Math.sqrt(Math.pow(r,2)-Math.pow(h-y.y,2)),p.midAngle>Math.PI/2-t&&p.midAngle<Math.PI/2+t?(d=(a-1+g.length)%g.length,d=g[d],a=g[(a+1+g.length)%g.length],"left"===p.hemisphere&&"right"===d.hemisphere&&c>d.indexLabelTextBlock.x?c=d.indexLabelTextBlock.x-15:"right"===p.hemisphere&&("left"===a.hemisphere&&c<a.indexLabelTextBlock.x)&&(c=a.indexLabelTextBlock.x+15)):p.midAngle>3*Math.PI/2-t&&p.midAngle<3*Math.PI/2+t&&(d=(a-1+g.length)%
509
+ g.length,d=g[d],a=g[(a+1+g.length)%g.length],"right"===p.hemisphere&&"left"===d.hemisphere&&c<d.indexLabelTextBlock.x?c=d.indexLabelTextBlock.x+15:"left"===p.hemisphere&&("right"===a.hemisphere&&c>a.indexLabelTextBlock.x)&&(c=a.indexLabelTextBlock.x-15)),p.indexLabelTextBlock.y=h,p.indexLabelTextBlock.x=c,p.indexLabelAngle=Math.atan2(p.indexLabelTextBlock.y-y.y,p.indexLabelTextBlock.x-y.x))}return f}function k(){var a=u.plotArea.ctx;a.fillStyle="grey";a.strokeStyle="grey";a.font="16px Arial";a.textBaseline=
510
+ "middle";for(var c=a=0,h=0,f=!0,c=0;10>c&&(1>c||0<h);c++){if(m.radius||!m.radius&&"undefined"!==typeof m.innerRadius&&null!==m.innerRadius&&E-h<=D)f=!1;f&&(E-=h);h=0;if("inside"!==m.indexLabelPlacement){r=E*v;for(a=0;a<n.length;a++){var d=g[a];d.indexLabelTextBlock.x=y.x+r*Math.cos(d.midAngle);d.indexLabelTextBlock.y=y.y+r*Math.sin(d.midAngle);d.indexLabelAngle=d.midAngle;d.radius=E;d.percentInnerRadius=K}for(var C,t,a=0;a<n.length;a++){var d=g[a],s=e(a);if(null!==s){C=g[a];t=g[s];var x=0,x=b(C,t)-
511
+ z;if(0>x){for(var A=t=0,ua=0;ua<n.length;ua++)ua!==a&&g[ua].hemisphere===d.hemisphere&&(g[ua].indexLabelTextBlock.y<d.indexLabelTextBlock.y?t++:A++);t=x/(t+A||1)*A;var A=-1*(x-t),N=ua=0;"right"===d.hemisphere?(ua=l(a,t),A=-1*(x-ua),N=l(s,A),+N.toFixed(w)<+A.toFixed(w)&&+ua.toFixed(w)<=+t.toFixed(w)&&l(a,-(A-N))):(ua=l(s,t),A=-1*(x-ua),N=l(a,A),+N.toFixed(w)<+A.toFixed(w)&&+ua.toFixed(w)<=+t.toFixed(w)&&l(s,-(A-N)))}}}}else for(a=0;a<n.length;a++)d=g[a],r="pie"===m.type?0.7*E:0.85*E,s=y.x+r*Math.cos(d.midAngle),
512
+ t=y.y+r*Math.sin(d.midAngle),d.indexLabelTextBlock.x=s,d.indexLabelTextBlock.y=t;for(a=0;a<n.length;a++)if(d=g[a],s=d.indexLabelTextBlock.measureText(),0!==s.height&&0!==s.width)s=s=0,"right"===d.hemisphere?(s=q.x2-(d.indexLabelTextBlock.x+d.indexLabelTextBlock.width+p),s*=-1):s=q.x1-(d.indexLabelTextBlock.x-d.indexLabelTextBlock.width-p),0<s&&(!f&&d.indexLabelText&&(t="right"===d.hemisphere?q.x2-d.indexLabelTextBlock.x:d.indexLabelTextBlock.x-q.x1,0.3*d.indexLabelTextBlock.maxWidth>t?d.indexLabelText=
513
+ "":d.indexLabelTextBlock.maxWidth=0.85*t,0.3*d.indexLabelTextBlock.maxWidth<t&&(d.indexLabelTextBlock.x-="right"===d.hemisphere?2:-2)),Math.abs(d.indexLabelTextBlock.y-d.indexLabelTextBlock.height/2-y.y)<E||Math.abs(d.indexLabelTextBlock.y+d.indexLabelTextBlock.height/2-y.y)<E)&&(s/=Math.abs(Math.cos(d.indexLabelAngle)),9<s&&(s*=0.3),s>h&&(h=s)),s=s=0,0<d.indexLabelAngle&&d.indexLabelAngle<Math.PI?(s=q.y2-(d.indexLabelTextBlock.y+d.indexLabelTextBlock.height/2+5),s*=-1):s=q.y1-(d.indexLabelTextBlock.y-
514
+ d.indexLabelTextBlock.height/2-5),0<s&&(!f&&d.indexLabelText&&(t=0<d.indexLabelAngle&&d.indexLabelAngle<Math.PI?-1:1,0===l(a,s*t)&&l(a,2*t)),Math.abs(d.indexLabelTextBlock.x-y.x)<E&&(s/=Math.abs(Math.sin(d.indexLabelAngle)),9<s&&(s*=0.3),s>h&&(h=s)));var F=function(a,b,c){for(var h=[],e=0;h.push(g[b]),b!==c;b=(b+1+n.length)%n.length);h.sort(function(a,b){return a.y-b.y});for(b=0;b<h.length;b++)if(c=h[b],e<0.7*a)e+=c.indexLabelTextBlock.height,c.indexLabelTextBlock.text="",c.indexLabelText="",c.indexLabelTextBlock.measureText();
515
+ else break};(function(){for(var a=-1,c=-1,h=0,l=!1,f=0;f<n.length;f++)if(l=!1,C=g[f],C.indexLabelText){var d=e(f);if(null!==d){var m=g[d];x=0;x=b(C,m);var q;if(q=0>x){q=C.indexLabelTextBlock.x;var k=C.indexLabelTextBlock.y-C.indexLabelTextBlock.height/2,s=C.indexLabelTextBlock.y+C.indexLabelTextBlock.height/2,t=m.indexLabelTextBlock.y-m.indexLabelTextBlock.height/2,u=m.indexLabelTextBlock.x+m.indexLabelTextBlock.width,r=m.indexLabelTextBlock.y+m.indexLabelTextBlock.height/2;q=C.indexLabelTextBlock.x+
516
+ C.indexLabelTextBlock.width<m.indexLabelTextBlock.x-p||q>u+p||k>r+p||s<t-p?!1:!0}q?(0>a&&(a=f),d!==a&&(c=d,h+=-x),0===f%Math.max(n.length/10,3)&&(l=!0)):l=!0;l&&(0<h&&0<=a&&0<=c)&&(F(h,a,c),c=a=-1,h=0)}}0<h&&F(h,a,c)})()}}function s(){u.plotArea.layoutManager.reset();u.title&&(u.title.dockInsidePlotArea||"center"===u.title.horizontalAlign&&"center"===u.title.verticalAlign)&&u.title.render();if(u.subtitles)for(var a=0;a<u.subtitles.length;a++){var b=u.subtitles[a];(b.dockInsidePlotArea||"center"===
517
+ b.horizontalAlign&&"center"===b.verticalAlign)&&b.render()}u.legend&&(u.legend.dockInsidePlotArea||"center"===u.legend.horizontalAlign&&"center"===u.legend.verticalAlign)&&(u.legend.setLayout(),u.legend.render())}var u=this;if(!(0>=a.dataSeriesIndexes.length)){var m=this.data[a.dataSeriesIndexes[0]],n=m.dataPoints,p=10,q=this.plotArea,g=m.dataPointEOs,z=2,r,v=1.3,t=20/180*Math.PI,w=6,y={x:(q.x2+q.x1)/2,y:(q.y2+q.y1)/2},x=0;a=!1;for(var A=0;A<n.length;A++)x+=Math.abs(n[A].y),!a&&("undefined"!==typeof n[A].indexLabel&&
518
518
  null!==n[A].indexLabel&&0<n[A].indexLabel.toString().length)&&(a=!0),!a&&("undefined"!==typeof n[A].label&&null!==n[A].label&&0<n[A].label.toString().length)&&(a=!0);if(0!==x){a=a||"undefined"!==typeof m.indexLabel&&null!==m.indexLabel&&0<m.indexLabel.toString().length;var E="inside"!==m.indexLabelPlacement&&a?0.75*Math.min(q.width,q.height)/2:0.92*Math.min(q.width,q.height)/2;m.radius&&(E=Wa(m.radius,E));var D="undefined"!==typeof m.innerRadius&&null!==m.innerRadius?Wa(m.innerRadius,E):0.7*E;m.radius=
519
- E;"doughnut"===m.type&&(m.innerRadius=D);var K=Math.min(D/E,(E-1)/E);this.pieDoughnutClickHandler=function(a){v.isAnimating||!f(a.dataSeries.explodeOnClick)&&!a.dataSeries.explodeOnClick||(a=a.dataPoint,a.exploded=a.exploded?!1:!0,1<this.dataPoints.length&&v._animator.animate(0,500,function(a){c(a,!0);t();v.dispatchEvent("dataAnimationIterationEnd",{chart:v});v.dispatchEvent("dataAnimationEnd",{chart:v})}))};h();k();k();k();k();this.disableToolTip=!0;this._animator.animate(0,this.animatedRender?this.animationDuration:
520
- 0,function(a){var b=v.plotArea.ctx;b.clearRect(q.x1,q.y1,q.width,q.height);b.fillStyle=v.backgroundColor;b.fillRect(q.x1,q.y1,q.width,q.height);for(var b=g[0].startAngle+2*Math.PI*a,c=0;c<n.length;c++){var h=0===c?g[c].startAngle:e,e=h+(g[c].endAngle-g[c].startAngle),l=!1;e>b&&(e=b,l=!0);var f=n[c].color?n[c].color:m._colorSet[c%m._colorSet.length];e>h&&d(v.plotArea.ctx,g[c].center,g[c].radius,f,m.type,h,e,m.fillOpacity,g[c].percentInnerRadius);if(l)break}t();v.dispatchEvent("dataAnimationIterationEnd",
521
- {chart:v});1<=a&&v.dispatchEvent("dataAnimationEnd",{chart:v})},function(){v.disableToolTip=!1;v._animator.animate(0,v.animatedRender?500:0,function(a){c(a,!1);t();v.dispatchEvent("dataAnimationIterationEnd",{chart:v})});v.dispatchEvent("dataAnimationEnd",{chart:v})})}}};var v=function(a,h,c,b){"undefined"===typeof c&&(c=1);0>=Math.round(h.y4-h.y1)||(a.save(),a.globalAlpha=c,a.beginPath(),a.moveTo(Math.round(h.x1),Math.round(h.y1)),a.lineTo(Math.round(h.x2),Math.round(h.y2)),a.lineTo(Math.round(h.x3),
519
+ E;"doughnut"===m.type&&(m.innerRadius=D);var K=Math.min(D/E,(E-1)/E);this.pieDoughnutClickHandler=function(a){u.isAnimating||!f(a.dataSeries.explodeOnClick)&&!a.dataSeries.explodeOnClick||(a=a.dataPoint,a.exploded=a.exploded?!1:!0,1<this.dataPoints.length&&u._animator.animate(0,500,function(a){c(a,!0);s();u.dispatchEvent("dataAnimationIterationEnd",{chart:u});u.dispatchEvent("dataAnimationEnd",{chart:u})}))};h();k();k();k();k();this.disableToolTip=!0;this._animator.animate(0,this.animatedRender?this.animationDuration:
520
+ 0,function(a){var b=u.plotArea.ctx;b.clearRect(q.x1,q.y1,q.width,q.height);b.fillStyle=u.backgroundColor;b.fillRect(q.x1,q.y1,q.width,q.height);for(var b=g[0].startAngle+2*Math.PI*a,c=0;c<n.length;c++){var h=0===c?g[c].startAngle:e,e=h+(g[c].endAngle-g[c].startAngle),l=!1;e>b&&(e=b,l=!0);var f=n[c].color?n[c].color:m._colorSet[c%m._colorSet.length];e>h&&d(u.plotArea.ctx,g[c].center,g[c].radius,f,m.type,h,e,m.fillOpacity,g[c].percentInnerRadius);if(l)break}s();u.dispatchEvent("dataAnimationIterationEnd",
521
+ {chart:u});1<=a&&u.dispatchEvent("dataAnimationEnd",{chart:u})},function(){u.disableToolTip=!1;u._animator.animate(0,u.animatedRender?500:0,function(a){c(a,!1);s();u.dispatchEvent("dataAnimationIterationEnd",{chart:u})});u.dispatchEvent("dataAnimationEnd",{chart:u})})}}};var u=function(a,h,c,b){"undefined"===typeof c&&(c=1);0>=Math.round(h.y4-h.y1)||(a.save(),a.globalAlpha=c,a.beginPath(),a.moveTo(Math.round(h.x1),Math.round(h.y1)),a.lineTo(Math.round(h.x2),Math.round(h.y2)),a.lineTo(Math.round(h.x3),
522
522
  Math.round(h.y3)),a.lineTo(Math.round(h.x4),Math.round(h.y4)),"undefined"!==h.x5&&(a.lineTo(Math.round(h.x5),Math.round(h.y5)),a.lineTo(Math.round(h.x6),Math.round(h.y6))),a.closePath(),a.fillStyle=b?b:h.color,a.fill(),a.globalAplha=1,a.restore())};w.prototype.renderFunnel=function(a){function h(){for(var a=0,b=[],c=0;c<x.length;c++){if("undefined"===typeof x[c].y)return-1;x[c].y="number"===typeof x[c].y?x[c].y:0;a+=Math.abs(x[c].y)}if(0===a)return-1;for(c=b[0]=0;c<x.length;c++)b.push(Math.abs(x[c].y)*
523
523
  K/a);return b}function c(){var a=Z,b=$,c=S,h=aa,e,g;e=O;g=Q-M;h=Math.abs((g-e)*(b-a+(h-c))/2);c=aa-S;e=g-e;g=c*(g-Q);g=Math.abs(g);g=h+g;for(var h=[],l=0,f=0;f<x.length;f++){if("undefined"===typeof x[f].y)return-1;x[f].y="number"===typeof x[f].y?x[f].y:0;l+=Math.abs(x[f].y)}if(0===l)return-1;for(var d=h[0]=0,m=0,n,p,b=b-a,d=!1,f=0;f<x.length;f++)a=Math.abs(x[f].y)*g/l,d?n=0==Number(c.toFixed(3))?0:a/c:(p=ga*ga*b*b-4*Math.abs(ga)*a,0>p?(p=c,d=(b+p)*(e-m)/2,a-=d,n=e-m,m+=e-m,n+=0==p?0:a/p,m+=a/p,d=
524
- !0):(n=(Math.abs(ga)*b-Math.sqrt(p))/2,p=b-2*n/Math.abs(ga),m+=n,m>e&&(m-=n,p=c,d=(b+p)*(e-m)/2,a-=d,n=e-m,m+=e-m,n+=a/p,m+=a/p,d=!0),b=p)),h.push(n);return h}function b(){if(s&&x){for(var a,b,c,h,e,l,d,m,n,p,q,k,C,t,v,z=[],u=[],y={percent:null,total:null},w=null,A=0;A<x.length;A++)v=U[A],v="undefined"!==typeof v.x5?(v.y2+v.y4)/2:(v.y2+v.y3)/2,v=g(v).x2+1,z[A]=L-v-V;v=0.5*V;for(var A=0,ha=x.length-1;A<x.length||0<=ha;A++,ha--){b=s.reversed?x[ha]:x[A];a=b.color?b.color:s.reversed?s._colorSet[(x.length-
525
- 1-A)%s._colorSet.length]:s._colorSet[A%s._colorSet.length];c=b.indexLabelPlacement||s.indexLabelPlacement||"outside";t=b.indexLabelTextAlign||s.indexLabelTextAlign||"left";h=b.indexLabelBackgroundColor||s.indexLabelBackgroundColor||(r?"transparent":null);e=b.indexLabelFontColor||s.indexLabelFontColor||"#979797";l=f(b.indexLabelFontSize)?s.indexLabelFontSize:b.indexLabelFontSize;d=b.indexLabelFontStyle||s.indexLabelFontStyle||"normal";m=b.indexLabelFontFamily||s.indexLabelFontFamily||"arial";n=b.indexLabelFontWeight||
526
- s.indexLabelFontWeight||"normal";a=b.indexLabelLineColor||s.options.indexLabelLineColor||a;p="number"===typeof b.indexLabelLineThickness?b.indexLabelLineThickness:"number"===typeof s.indexLabelLineThickness?s.indexLabelLineThickness:2;q=b.indexLabelLineDashType||s.indexLabelLineDashType||"solid";k="undefined"!==typeof b.indexLabelWrap?b.indexLabelWrap:"undefined"!==typeof s.indexLabelWrap?s.indexLabelWrap:!0;C=s.dataPointIds[A];B._eventManager.objectMap[C]={id:C,objectType:"dataPoint",dataPointIndex:A,
527
- dataSeriesIndex:0,funnelSection:U[s.reversed?x.length-1-A:A]};"inside"===s.indexLabelPlacement&&(z[A]=A!==ia?s.reversed?U[A].x2-U[A].x1:U[A].x3-U[A].x4:U[A].x3-U[A].x6,20>z[A]&&(z[A]=A!==ia?s.reversed?U[A].x3-U[A].x4:U[A].x2-U[A].x1:U[A].x2-U[A].x1,z[A]/=2));C=b.indexLabelMaxWidth?b.indexLabelMaxWidth:s.options.indexLabelMaxWidth?s.indexLabelMaxWidth:z[A];if(C>z[A]||0>C)C=z[A];u[A]="inside"===s.indexLabelPlacement?k?Math.max(U[A].height,l):1.5*l:!1;y=B.getPercentAndTotal(s,b);if(s.indexLabelFormatter||
528
- b.indexLabelFormatter)w={chart:B.options,dataSeries:s,dataPoint:b,total:y.total,percent:y.percent};b=b.indexLabelFormatter?b.indexLabelFormatter(w):b.indexLabel?B.replaceKeywordsWithValue(b.indexLabel,b,s,A):s.indexLabelFormatter?s.indexLabelFormatter(w):s.indexLabel?B.replaceKeywordsWithValue(s.indexLabel,b,s,A):b.label?b.label:"";0>=p&&(p=0);1E3>C&&1E3-C<v&&(C+=1E3-C);f(s.options.indexLabelMaxWidth)&&(s.indexLabelMaxWidth=f(s.indexLabelMaxWidth)?C:Math.max(C,s.indexLabelMaxWidth));P.roundRect||
529
- Da(P);c=new ma(P,{fontSize:l,fontFamily:m,fontColor:e,fontStyle:d,fontWeight:n,horizontalAlign:c,textAlign:t,backgroundColor:h,maxWidth:C,maxHeight:!1===u[A]?k?4.28571429*l:1.5*l:u[A],text:b,padding:ja,textBaseline:"middle"});c.measureText();c.height=c.height===2*c.padding?0:c.height;c.width=c.width===2*c.padding?0:c.width;I.push({textBlock:c,id:s.reversed?ha:A,isDirty:!1,lineColor:a,lineThickness:p,lineDashType:q,height:c.height<c.maxHeight?c.height:c.maxHeight,width:c.width<c.maxWidth?c.width:c.maxWidth})}}}
530
- function e(){var a,b,c,h,e,g=[];e=!1;c=0;for(var l,f=L-$-V/2,f=s.options.indexLabelMaxWidth?s.indexLabelMaxWidth>f?f:s.indexLabelMaxWidth:f,d=I.length-1;0<=d;d--){l=x[I[d].id];c=I[d];h=c.textBlock;b=(a=q(d)<U.length?I[q(d)]:null)?a.textBlock:null;c=c.height;a&&h.y+c+ja>b.y&&(e=!0);c=l.indexLabelMaxWidth||f;if(c>f||0>c)c=f;g.push(c)}if(e)for(d=I.length-1;0<=d;d--)a=U[d],I[d].textBlock.maxWidth=g[g.length-(d+1)],I[d].textBlock.measureText(),I[d].textBlock.height=I[d].textBlock.height===2*I[d].textBlock.padding?
531
- 0:I[d].textBlock.height,I[d].textBlock.width=I[d].textBlock.width===2*I[d].textBlock.padding?0:I[d].textBlock.width,I[d].textBlock.x=L-f,c=I[d].textBlock.height<I[d].textBlock.maxHeight?I[d].textBlock.height:I[d].textBlock.maxHeight,e=I[d].textBlock.width<I[d].textBlock.maxWidth?I[d].textBlock.width:I[d].textBlock.maxWidth,I[d].height=c,I[d].width=e,c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,I[d].textBlock.y=c-I[d].height/2,s.reversed?(I[d].textBlock.y+I[d].height>T+A&&(I[d].textBlock.y=
532
- T+A-I[d].height),I[d].textBlock.y<ba-A&&(I[d].textBlock.y=ba-A)):(I[d].textBlock.y<T-A&&(I[d].textBlock.y=T-A),I[d].textBlock.y+I[d].height>ba+A&&(I[d].textBlock.y=ba+A-I[d].height))}function l(){var a,b,c,h;if("inside"!==s.indexLabelPlacement)for(var e=0;e<U.length;e++)0==I[e].textBlock.text.length?I[e].isDirty=!0:(a=U[e],c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,b=s.reversed?"undefined"!==typeof a.x5?c>da?g(c).x2+1:(a.x2+a.x3)/2+1:(a.x2+a.x3)/2+1:"undefined"!==typeof a.x5?c<da?g(c).x2+
533
- 1:(a.x4+a.x3)/2+1:(a.x2+a.x3)/2+1,I[e].textBlock.x=b+V,I[e].textBlock.y=c-I[e].height/2,s.reversed?(I[e].textBlock.y+I[e].height>T+A&&(I[e].textBlock.y=T+A-I[e].height),I[e].textBlock.y<ba-A&&(I[e].textBlock.y=ba-A)):(I[e].textBlock.y<T-A&&(I[e].textBlock.y=T-A),I[e].textBlock.y+I[e].height>ba+A&&(I[e].textBlock.y=ba+A-I[e].height)));else for(e=0;e<U.length;e++)0==I[e].textBlock.text.length?I[e].isDirty=!0:(a=U[e],b=a.height,c=I[e].height,h=I[e].width,b>=c?(b=e!=ia?(a.x4+a.x3)/2-h/2:(a.x5+a.x4)/2-
524
+ !0):(n=(Math.abs(ga)*b-Math.sqrt(p))/2,p=b-2*n/Math.abs(ga),m+=n,m>e&&(m-=n,p=c,d=(b+p)*(e-m)/2,a-=d,n=e-m,m+=e-m,n+=a/p,m+=a/p,d=!0),b=p)),h.push(n);return h}function b(){if(t&&x){for(var a,b,c,h,e,l,d,m,n,p,q,k,C,s,u,z=[],v=[],y={percent:null,total:null},w=null,A=0;A<x.length;A++)u=U[A],u="undefined"!==typeof u.x5?(u.y2+u.y4)/2:(u.y2+u.y3)/2,u=g(u).x2+1,z[A]=L-u-V;u=0.5*V;for(var A=0,ha=x.length-1;A<x.length||0<=ha;A++,ha--){b=t.reversed?x[ha]:x[A];a=b.color?b.color:t.reversed?t._colorSet[(x.length-
525
+ 1-A)%t._colorSet.length]:t._colorSet[A%t._colorSet.length];c=b.indexLabelPlacement||t.indexLabelPlacement||"outside";s=b.indexLabelTextAlign||t.indexLabelTextAlign||"left";h=b.indexLabelBackgroundColor||t.indexLabelBackgroundColor||(r?"transparent":null);e=b.indexLabelFontColor||t.indexLabelFontColor||"#979797";l=f(b.indexLabelFontSize)?t.indexLabelFontSize:b.indexLabelFontSize;d=b.indexLabelFontStyle||t.indexLabelFontStyle||"normal";m=b.indexLabelFontFamily||t.indexLabelFontFamily||"arial";n=b.indexLabelFontWeight||
526
+ t.indexLabelFontWeight||"normal";a=b.indexLabelLineColor||t.options.indexLabelLineColor||a;p="number"===typeof b.indexLabelLineThickness?b.indexLabelLineThickness:"number"===typeof t.indexLabelLineThickness?t.indexLabelLineThickness:2;q=b.indexLabelLineDashType||t.indexLabelLineDashType||"solid";k="undefined"!==typeof b.indexLabelWrap?b.indexLabelWrap:"undefined"!==typeof t.indexLabelWrap?t.indexLabelWrap:!0;C=t.dataPointIds[A];B._eventManager.objectMap[C]={id:C,objectType:"dataPoint",dataPointIndex:A,
527
+ dataSeriesIndex:0,funnelSection:U[t.reversed?x.length-1-A:A]};"inside"===t.indexLabelPlacement&&(z[A]=A!==ia?t.reversed?U[A].x2-U[A].x1:U[A].x3-U[A].x4:U[A].x3-U[A].x6,20>z[A]&&(z[A]=A!==ia?t.reversed?U[A].x3-U[A].x4:U[A].x2-U[A].x1:U[A].x2-U[A].x1,z[A]/=2));C=b.indexLabelMaxWidth?b.indexLabelMaxWidth:t.options.indexLabelMaxWidth?t.indexLabelMaxWidth:z[A];if(C>z[A]||0>C)C=z[A];v[A]="inside"===t.indexLabelPlacement?k?Math.max(U[A].height,l):1.5*l:!1;y=B.getPercentAndTotal(t,b);if(t.indexLabelFormatter||
528
+ b.indexLabelFormatter)w={chart:B.options,dataSeries:t,dataPoint:b,total:y.total,percent:y.percent};b=b.indexLabelFormatter?b.indexLabelFormatter(w):b.indexLabel?B.replaceKeywordsWithValue(b.indexLabel,b,t,A):t.indexLabelFormatter?t.indexLabelFormatter(w):t.indexLabel?B.replaceKeywordsWithValue(t.indexLabel,b,t,A):b.label?b.label:"";0>=p&&(p=0);1E3>C&&1E3-C<u&&(C+=1E3-C);f(t.options.indexLabelMaxWidth)&&(t.indexLabelMaxWidth=f(t.indexLabelMaxWidth)?C:Math.max(C,t.indexLabelMaxWidth));P.roundRect||
529
+ Da(P);c=new ma(P,{fontSize:l,fontFamily:m,fontColor:e,fontStyle:d,fontWeight:n,horizontalAlign:c,textAlign:s,backgroundColor:h,maxWidth:C,maxHeight:!1===v[A]?k?4.28571429*l:1.5*l:v[A],text:b,padding:ja,textBaseline:"middle"});c.measureText();c.height=c.height===2*c.padding?0:c.height;c.width=c.width===2*c.padding?0:c.width;I.push({textBlock:c,id:t.reversed?ha:A,isDirty:!1,lineColor:a,lineThickness:p,lineDashType:q,height:c.height<c.maxHeight?c.height:c.maxHeight,width:c.width<c.maxWidth?c.width:c.maxWidth})}}}
530
+ function e(){var a,b,c,h,e,g=[];e=!1;c=0;for(var l,f=L-$-V/2,f=t.options.indexLabelMaxWidth?t.indexLabelMaxWidth>f?f:t.indexLabelMaxWidth:f,d=I.length-1;0<=d;d--){l=x[I[d].id];c=I[d];h=c.textBlock;b=(a=q(d)<U.length?I[q(d)]:null)?a.textBlock:null;c=c.height;a&&h.y+c+ja>b.y&&(e=!0);c=l.indexLabelMaxWidth||f;if(c>f||0>c)c=f;g.push(c)}if(e)for(d=I.length-1;0<=d;d--)a=U[d],I[d].textBlock.maxWidth=g[g.length-(d+1)],I[d].textBlock.measureText(),I[d].textBlock.height=I[d].textBlock.height===2*I[d].textBlock.padding?
531
+ 0:I[d].textBlock.height,I[d].textBlock.width=I[d].textBlock.width===2*I[d].textBlock.padding?0:I[d].textBlock.width,I[d].textBlock.x=L-f,c=I[d].textBlock.height<I[d].textBlock.maxHeight?I[d].textBlock.height:I[d].textBlock.maxHeight,e=I[d].textBlock.width<I[d].textBlock.maxWidth?I[d].textBlock.width:I[d].textBlock.maxWidth,I[d].height=c,I[d].width=e,c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,I[d].textBlock.y=c-I[d].height/2,t.reversed?(I[d].textBlock.y+I[d].height>T+A&&(I[d].textBlock.y=
532
+ T+A-I[d].height),I[d].textBlock.y<ba-A&&(I[d].textBlock.y=ba-A)):(I[d].textBlock.y<T-A&&(I[d].textBlock.y=T-A),I[d].textBlock.y+I[d].height>ba+A&&(I[d].textBlock.y=ba+A-I[d].height))}function l(){var a,b,c,h;if("inside"!==t.indexLabelPlacement)for(var e=0;e<U.length;e++)0==I[e].textBlock.text.length?I[e].isDirty=!0:(a=U[e],c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,b=t.reversed?"undefined"!==typeof a.x5?c>da?g(c).x2+1:(a.x2+a.x3)/2+1:(a.x2+a.x3)/2+1:"undefined"!==typeof a.x5?c<da?g(c).x2+
533
+ 1:(a.x4+a.x3)/2+1:(a.x2+a.x3)/2+1,I[e].textBlock.x=b+V,I[e].textBlock.y=c-I[e].height/2,t.reversed?(I[e].textBlock.y+I[e].height>T+A&&(I[e].textBlock.y=T+A-I[e].height),I[e].textBlock.y<ba-A&&(I[e].textBlock.y=ba-A)):(I[e].textBlock.y<T-A&&(I[e].textBlock.y=T-A),I[e].textBlock.y+I[e].height>ba+A&&(I[e].textBlock.y=ba+A-I[e].height)));else for(e=0;e<U.length;e++)0==I[e].textBlock.text.length?I[e].isDirty=!0:(a=U[e],b=a.height,c=I[e].height,h=I[e].width,b>=c?(b=e!=ia?(a.x4+a.x3)/2-h/2:(a.x5+a.x4)/2-
534
534
  h/2,c=e!=ia?(a.y1+a.y3)/2-c/2:(a.y1+a.y4)/2-c/2,I[e].textBlock.x=b,I[e].textBlock.y=c):I[e].isDirty=!0)}function d(){function a(b,c){var h;if(0>b||b>=I.length)return 0;var e,g=I[b].textBlock;if(0>c){c*=-1;e=p(b);h=k(e,b);if(h>=c)return g.y-=c,c;if(0==b)return 0<h&&(g.y-=h),h;h+=a(e,-(c-h));0<h&&(g.y-=h);return h}e=q(b);h=k(b,e);if(h>=c)return g.y+=c,c;if(b==U.length-1)return 0<h&&(g.y+=h),h;h+=a(e,c-h);0<h&&(g.y+=h);return h}function b(){var a,h,e,g,l=0,d;g=(Q-O+2*A)/n;d=n;for(var f,m=1;m<d;m++){e=
535
535
  m*g;for(var k=I.length-1;0<=k;k--)!I[k].isDirty&&(I[k].textBlock.y<e&&I[k].textBlock.y+I[k].height>e)&&(f=q(k),!(f>=I.length-1)&&I[k].textBlock.y+I[k].height+ja>I[f].textBlock.y&&(I[k].textBlock.y=I[k].textBlock.y+I[k].height-e>e-I[k].textBlock.y?e+1:e-I[k].height-1))}for(f=U.length-1;0<f;f--)if(!I[f].isDirty){e=p(f);if(0>e&&(e=0,I[e].isDirty))break;if(I[f].textBlock.y<I[e].textBlock.y+I[e].height){h=h||f;g=f;for(d=0;I[g].textBlock.y<I[e].textBlock.y+I[e].height+ja;){a=a||I[g].textBlock.y+I[g].height;
536
536
  d+=I[g].height;d+=ja;g=e;if(0>=g){g=0;d+=I[g].height;break}e=p(g);if(0>e){g=0;d+=I[g].height;break}}if(g!=f){l=I[g].textBlock.y;a-=l;a=d-a;l=c(a,h,g);break}}}return l}function c(a,b,h){var e=[],g=0,l=0;for(a=Math.abs(a);h<=b;h++)e.push(U[h]);e.sort(function(a,b){return a.height-b.height});for(h=0;h<e.length;h++)if(b=e[h],g<a)l++,g+=I[b.id].height+ja,I[b.id].textBlock.text="",I[b.id].indexLabelText="",I[b.id].isDirty=!0,I[b.id].textBlock.measureText();else break;return l}for(var h,e,g,l,f,m,n=1,C=
537
- 0;C<2*n;C++){for(var s=I.length-1;0<=s&&!(0<=p(s)&&p(s),g=I[s],l=g.textBlock,m=(f=q(s)<U.length?I[q(s)]:null)?f.textBlock:null,h=+g.height.toFixed(6),e=+l.y.toFixed(6),!g.isDirty&&(f&&e+h+ja>+m.y.toFixed(6))&&(h=l.y+h+ja-m.y,e=a(s,-h),e<h&&(0<e&&(h-=e),e=a(q(s),h),e!=h)));s--);b()}}function k(a,b){return(b<U.length?I[b].textBlock.y:s.reversed?T+A:ba+A)-(0>a?s.reversed?ba-A:T-A:I[a].textBlock.y+I[a].height+ja)}function u(a,b,c){var h,e,g,d=[],f=A,p=[];-1!==b&&(0<=ea.indexOf(b)?(e=ea.indexOf(b),ea.splice(e,
538
- 1)):(ea.push(b),ea=ea.sort(function(a,b){return a-b})));if(0===ea.length)d=na;else{e=A*(1!=ea.length||0!=ea[0]&&ea[0]!=U.length-1?2:1)/m();for(var k=0;k<U.length;k++){if(1==ea.length&&0==ea[0]){if(0===k){d.push(na[k]);h=f;continue}}else 0===k&&(h=-1*f);d.push(na[k]+h);if(0<=ea.indexOf(k)||k<U.length&&0<=ea.indexOf(k+1))h+=e}}g=function(){for(var a=[],b=0;b<U.length;b++)a.push(d[b]-U[b].y1);return a}();var q={startTime:(new Date).getTime(),duration:c||500,easingFunction:function(a,b,c,h){return t.easing.easeOutQuart(a,
539
- b,c,h)},changeSection:function(a){for(var b,c,h=0;h<U.length;h++)b=g[h],c=U[h],b*=a,"undefined"===typeof p[h]&&(p[h]=0),0>p&&(p*=-1),c.y1+=b-p[h],c.y2+=b-p[h],c.y3+=b-p[h],c.y4+=b-p[h],c.y5&&(c.y5+=b-p[h],c.y6+=b-p[h]),p[h]=b}};a._animator.animate(0,c,function(c){var h=a.plotArea.ctx||a.ctx;pa=!0;h.clearRect(y.x1,y.y1,y.x2-y.x1,y.y2-y.y1);h.fillStyle=a.backgroundColor;h.fillRect(y.x1,y.y1,y.width,y.height);q.changeSection(c,b);var e={};e.dataSeries=s;e.dataPoint=s.reversed?s.dataPoints[x.length-1-
540
- b]:s.dataPoints[b];e.index=s.reversed?x.length-1-b:b;a.toolTip.highlightObjects([e]);for(e=0;e<U.length;e++)v(h,U[e],s.fillOpacity);w(h);J&&("inside"!==s.indexLabelPlacement?n(h):l(),z(h));1<=c&&(pa=!1)},null,t.easing.easeOutQuart)}function m(){for(var a=0,b=0;b<U.length-1;b++)(0<=ea.indexOf(b)||0<=ea.indexOf(b+1))&&a++;return a}function n(a){for(var b,c,h,e,l=0;l<U.length;l++)e=1===I[l].lineThickness%2?0.5:0,c=((U[l].y2+U[l].y4)/2<<0)+e,b=g(c).x2-1,h=I[l].textBlock.x,e=(I[l].textBlock.y+I[l].height/
537
+ 0;C<2*n;C++){for(var s=I.length-1;0<=s&&!(0<=p(s)&&p(s),g=I[s],l=g.textBlock,m=(f=q(s)<U.length?I[q(s)]:null)?f.textBlock:null,h=+g.height.toFixed(6),e=+l.y.toFixed(6),!g.isDirty&&(f&&e+h+ja>+m.y.toFixed(6))&&(h=l.y+h+ja-m.y,e=a(s,-h),e<h&&(0<e&&(h-=e),e=a(q(s),h),e!=h)));s--);b()}}function k(a,b){return(b<U.length?I[b].textBlock.y:t.reversed?T+A:ba+A)-(0>a?t.reversed?ba-A:T-A:I[a].textBlock.y+I[a].height+ja)}function v(a,b,c){var h,e,g,d=[],f=A,p=[];-1!==b&&(0<=ea.indexOf(b)?(e=ea.indexOf(b),ea.splice(e,
538
+ 1)):(ea.push(b),ea=ea.sort(function(a,b){return a-b})));if(0===ea.length)d=na;else{e=A*(1!=ea.length||0!=ea[0]&&ea[0]!=U.length-1?2:1)/m();for(var k=0;k<U.length;k++){if(1==ea.length&&0==ea[0]){if(0===k){d.push(na[k]);h=f;continue}}else 0===k&&(h=-1*f);d.push(na[k]+h);if(0<=ea.indexOf(k)||k<U.length&&0<=ea.indexOf(k+1))h+=e}}g=function(){for(var a=[],b=0;b<U.length;b++)a.push(d[b]-U[b].y1);return a}();var q={startTime:(new Date).getTime(),duration:c||500,easingFunction:function(a,b,c,h){return s.easing.easeOutQuart(a,
539
+ b,c,h)},changeSection:function(a){for(var b,c,h=0;h<U.length;h++)b=g[h],c=U[h],b*=a,"undefined"===typeof p[h]&&(p[h]=0),0>p&&(p*=-1),c.y1+=b-p[h],c.y2+=b-p[h],c.y3+=b-p[h],c.y4+=b-p[h],c.y5&&(c.y5+=b-p[h],c.y6+=b-p[h]),p[h]=b}};a._animator.animate(0,c,function(c){var h=a.plotArea.ctx||a.ctx;pa=!0;h.clearRect(y.x1,y.y1,y.x2-y.x1,y.y2-y.y1);h.fillStyle=a.backgroundColor;h.fillRect(y.x1,y.y1,y.width,y.height);q.changeSection(c,b);var e={};e.dataSeries=t;e.dataPoint=t.reversed?t.dataPoints[x.length-1-
540
+ b]:t.dataPoints[b];e.index=t.reversed?x.length-1-b:b;a.toolTip.highlightObjects([e]);for(e=0;e<U.length;e++)u(h,U[e],t.fillOpacity);w(h);J&&("inside"!==t.indexLabelPlacement?n(h):l(),z(h));1<=c&&(pa=!1)},null,s.easing.easeOutQuart)}function m(){for(var a=0,b=0;b<U.length-1;b++)(0<=ea.indexOf(b)||0<=ea.indexOf(b+1))&&a++;return a}function n(a){for(var b,c,h,e,l=0;l<U.length;l++)e=1===I[l].lineThickness%2?0.5:0,c=((U[l].y2+U[l].y4)/2<<0)+e,b=g(c).x2-1,h=I[l].textBlock.x,e=(I[l].textBlock.y+I[l].height/
541
541
  2<<0)+e,I[l].isDirty||0==I[l].lineThickness||(a.strokeStyle=I[l].lineColor,a.lineWidth=I[l].lineThickness,a.setLineDash&&a.setLineDash(R(I[l].lineDashType,I[l].lineThickness)),a.beginPath(),a.moveTo(b,c),a.lineTo(h,e),a.stroke())}function p(a){for(a-=1;-1<=a&&-1!=a&&I[a].isDirty;a--);return a}function q(a){for(a+=1;a<=U.length&&a!=U.length&&I[a].isDirty;a++);return a}function g(a){for(var b,c=0;c<x.length;c++)if(U[c].y1<a&&U[c].y4>a){b=U[c];break}return b?(a=b.y6?a>b.y6?b.x3+(b.x4-b.x3)/(b.y4-b.y3)*
542
542
  (a-b.y3):b.x2+(b.x3-b.x2)/(b.y3-b.y2)*(a-b.y2):b.x2+(b.x3-b.x2)/(b.y3-b.y2)*(a-b.y2),{x1:a,x2:a}):-1}function z(a){for(var b=0;b<U.length;b++)I[b].isDirty||(a&&(I[b].textBlock.ctx=a),I[b].textBlock.y+=I[b].textBlock._lineHeight/2,I[b].textBlock.render(!0),I[b].textBlock.y-=I[b].textBlock._lineHeight/2)}function w(a){B.plotArea.layoutManager.reset();a.roundRect||Da(a);B.title&&(B.title.dockInsidePlotArea||"center"===B.title.horizontalAlign&&"center"===B.title.verticalAlign)&&(B.title.ctx=a,B.title.render());
543
- if(B.subtitles)for(var b=0;b<B.subtitles.length;b++){var c=B.subtitles[b];if(c.dockInsidePlotArea||"center"===c.horizontalAlign&&"center"===c.verticalAlign)B.subtitles.ctx=a,c.render()}B.legend&&(B.legend.dockInsidePlotArea||"center"===B.legend.horizontalAlign&&"center"===B.legend.verticalAlign)&&(B.legend.ctx=a,B.legend.setLayout(),B.legend.render());Ba.fNg&&Ba.fNg(B)}var B=this;if(!(0>=a.dataSeriesIndexes.length)){for(var s=this.data[a.dataSeriesIndexes[0]],x=s.dataPoints,y=this.plotArea,A=0.025*
544
- y.width,D=0.01*y.width,E=0,K=y.height-2*A,F=Math.min(y.width-2*D,2.8*y.height),J=!1,W=0;W<x.length;W++)if(!J&&("undefined"!==typeof x[W].indexLabel&&null!==x[W].indexLabel&&0<x[W].indexLabel.toString().length)&&(J=!0),!J&&("undefined"!==typeof x[W].label&&null!==x[W].label&&0<x[W].label.toString().length)&&(J=!0),!J&&"function"===typeof s.indexLabelFormatter||"function"===typeof x[W].indexLabelFormatter)J=!0;J=J||"undefined"!==typeof s.indexLabel&&null!==s.indexLabel&&0<s.indexLabel.toString().length;
545
- "inside"!==s.indexLabelPlacement&&J||(D=(y.width-0.75*F)/2);var W=y.x1+D,L=y.x2-D,O=y.y1+A,Q=y.y2-A,P=a.targetCanvasCtx||this.plotArea.ctx||this.ctx;if(0!=s.length&&(s.dataPoints&&s.visible)&&0!==x.length){var M,H;a=75*F/100;var V=30*(L-a)/100;"funnel"===s.type?(M=f(s.options.neckHeight)?0.35*K:s.neckHeight,H=f(s.options.neckWidth)?0.25*a:s.neckWidth,"string"===typeof M&&M.match(/%$/)?(M=parseInt(M),M=M*K/100):M=parseInt(M),"string"===typeof H&&H.match(/%$/)?(H=parseInt(H),H=H*a/100):H=parseInt(H),
546
- M>K?M=K:0>=M&&(M=0),H>a?H=a-0.5:0>=H&&(H=0)):"pyramid"===s.type&&(H=M=0,s.reversed=s.reversed?!1:!0);var D=W+a/2,Z=W,$=W+a,T=s.reversed?Q:O,S=D-H/2,aa=D+H/2,da=s.reversed?O+M:Q-M,ba=s.reversed?O:Q;a=[];var D=[],U=[],F=[],X=O,ia,ga=(da-T)/(S-Z),la=-ga,W="area"===(s.valueRepresents?s.valueRepresents:"height")?c():h();if(-1!==W){if(s.reversed)for(F.push(X),H=W.length-1;0<H;H--)X+=W[H],F.push(X);else for(H=0;H<W.length;H++)X+=W[H],F.push(X);if(s.reversed)for(H=0;H<W.length;H++)F[H]<da?(a.push(S),D.push(aa),
547
- ia=H):(a.push((F[H]-T+ga*Z)/ga),D.push((F[H]-T+la*$)/la));else for(H=0;H<W.length;H++)F[H]<da?(a.push((F[H]-T+ga*Z)/ga),D.push((F[H]-T+la*$)/la),ia=H):(a.push(S),D.push(aa));for(H=0;H<W.length-1;H++)X=s.reversed?x[x.length-1-H].color?x[x.length-1-H].color:s._colorSet[(x.length-1-H)%s._colorSet.length]:x[H].color?x[H].color:s._colorSet[H%s._colorSet.length],H===ia?U.push({x1:a[H],y1:F[H],x2:D[H],y2:F[H],x3:aa,y3:da,x4:D[H+1],y4:F[H+1],x5:a[H+1],y5:F[H+1],x6:S,y6:da,id:H,height:F[H+1]-F[H],color:X}):
548
- U.push({x1:a[H],y1:F[H],x2:D[H],y2:F[H],x3:D[H+1],y3:F[H+1],x4:a[H+1],y4:F[H+1],id:H,height:F[H+1]-F[H],color:X});var ja=2,I=[],pa=!1,ea=[],na=[],W=!1;a=a=0;Ea(ea);for(H=0;H<x.length;H++)x[H].exploded&&(W=!0,s.reversed?ea.push(x.length-1-H):ea.push(H));P.clearRect(y.x1,y.y1,y.width,y.height);P.fillStyle=B.backgroundColor;P.fillRect(y.x1,y.y1,y.width,y.height);if(J&&s.visible&&(b(),l(),"inside"!==s.indexLabelPlacement)){e();d();for(H=0;H<x.length;H++)I[H].isDirty||(a=I[H].textBlock.x+I[H].width,a=
549
- (L-a)/2,0==H&&(E=a),E>a&&(E=a));for(H=0;H<U.length;H++)U[H].x1+=E,U[H].x2+=E,U[H].x3+=E,U[H].x4+=E,U[H].x5&&(U[H].x5+=E,U[H].x6+=E),I[H].textBlock.x+=E}for(H=0;H<U.length;H++)E=U[H],v(P,E,s.fillOpacity),na.push(E.y1);w(P);J&&s.visible&&("inside"===s.indexLabelPlacement||B.animationEnabled||n(P),B.animationEnabled||z());if(!J)for(H=0;H<x.length;H++)E=s.dataPointIds[H],a={id:E,objectType:"dataPoint",dataPointIndex:H,dataSeriesIndex:0,funnelSection:U[s.reversed?x.length-1-H:H]},B._eventManager.objectMap[E]=
550
- a;!B.animationEnabled&&W?u(B,-1,0):B.animationEnabled&&!B.animatedRender&&u(B,-1,0);this.funnelPyramidClickHandler=function(a){var b=-1;if(!pa&&!B.isAnimating&&(f(a.dataSeries.explodeOnClick)||a.dataSeries.explodeOnClick)&&(b=s.reversed?x.length-1-a.dataPointIndex:a.dataPointIndex,0<=b)){a=b;if("funnel"===s.type||"pyramid"===s.type)s.reversed?x[x.length-1-a].exploded=x[x.length-1-a].exploded?!1:!0:x[a].exploded=x[a].exploded?!1:!0;u(B,b,500)}};return{source:P,dest:this.plotArea.ctx,animationCallback:function(a,
551
- b){t.fadeInAnimation(a,b);1<=a&&(u(B,-1,500),w(B.plotArea.ctx||B.ctx))},easingFunction:t.easing.easeInQuad,animationBase:0}}}}};w.prototype.requestAnimFrame=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){window.setTimeout(a,1E3/60)}}();w.prototype.cancelRequestAnimFrame=window.cancelAnimationFrame||window.webkitCancelRequestAnimationFrame||window.mozCancelRequestAnimationFrame||
543
+ if(B.subtitles)for(var b=0;b<B.subtitles.length;b++){var c=B.subtitles[b];if(c.dockInsidePlotArea||"center"===c.horizontalAlign&&"center"===c.verticalAlign)B.subtitles.ctx=a,c.render()}B.legend&&(B.legend.dockInsidePlotArea||"center"===B.legend.horizontalAlign&&"center"===B.legend.verticalAlign)&&(B.legend.ctx=a,B.legend.setLayout(),B.legend.render());Ba.fNg&&Ba.fNg(B)}var B=this;if(!(0>=a.dataSeriesIndexes.length)){for(var t=this.data[a.dataSeriesIndexes[0]],x=t.dataPoints,y=this.plotArea,A=0.025*
544
+ y.width,D=0.01*y.width,E=0,K=y.height-2*A,F=Math.min(y.width-2*D,2.8*y.height),J=!1,W=0;W<x.length;W++)if(!J&&("undefined"!==typeof x[W].indexLabel&&null!==x[W].indexLabel&&0<x[W].indexLabel.toString().length)&&(J=!0),!J&&("undefined"!==typeof x[W].label&&null!==x[W].label&&0<x[W].label.toString().length)&&(J=!0),!J&&"function"===typeof t.indexLabelFormatter||"function"===typeof x[W].indexLabelFormatter)J=!0;J=J||"undefined"!==typeof t.indexLabel&&null!==t.indexLabel&&0<t.indexLabel.toString().length;
545
+ "inside"!==t.indexLabelPlacement&&J||(D=(y.width-0.75*F)/2);var W=y.x1+D,L=y.x2-D,O=y.y1+A,Q=y.y2-A,P=a.targetCanvasCtx||this.plotArea.ctx||this.ctx;if(0!=t.length&&(t.dataPoints&&t.visible)&&0!==x.length){var M,H;a=75*F/100;var V=30*(L-a)/100;"funnel"===t.type?(M=f(t.options.neckHeight)?0.35*K:t.neckHeight,H=f(t.options.neckWidth)?0.25*a:t.neckWidth,"string"===typeof M&&M.match(/%$/)?(M=parseInt(M),M=M*K/100):M=parseInt(M),"string"===typeof H&&H.match(/%$/)?(H=parseInt(H),H=H*a/100):H=parseInt(H),
546
+ M>K?M=K:0>=M&&(M=0),H>a?H=a-0.5:0>=H&&(H=0)):"pyramid"===t.type&&(H=M=0,t.reversed=t.reversed?!1:!0);var D=W+a/2,Z=W,$=W+a,T=t.reversed?Q:O,S=D-H/2,aa=D+H/2,da=t.reversed?O+M:Q-M,ba=t.reversed?O:Q;a=[];var D=[],U=[],F=[],X=O,ia,ga=(da-T)/(S-Z),la=-ga,W="area"===(t.valueRepresents?t.valueRepresents:"height")?c():h();if(-1!==W){if(t.reversed)for(F.push(X),H=W.length-1;0<H;H--)X+=W[H],F.push(X);else for(H=0;H<W.length;H++)X+=W[H],F.push(X);if(t.reversed)for(H=0;H<W.length;H++)F[H]<da?(a.push(S),D.push(aa),
547
+ ia=H):(a.push((F[H]-T+ga*Z)/ga),D.push((F[H]-T+la*$)/la));else for(H=0;H<W.length;H++)F[H]<da?(a.push((F[H]-T+ga*Z)/ga),D.push((F[H]-T+la*$)/la),ia=H):(a.push(S),D.push(aa));for(H=0;H<W.length-1;H++)X=t.reversed?x[x.length-1-H].color?x[x.length-1-H].color:t._colorSet[(x.length-1-H)%t._colorSet.length]:x[H].color?x[H].color:t._colorSet[H%t._colorSet.length],H===ia?U.push({x1:a[H],y1:F[H],x2:D[H],y2:F[H],x3:aa,y3:da,x4:D[H+1],y4:F[H+1],x5:a[H+1],y5:F[H+1],x6:S,y6:da,id:H,height:F[H+1]-F[H],color:X}):
548
+ U.push({x1:a[H],y1:F[H],x2:D[H],y2:F[H],x3:D[H+1],y3:F[H+1],x4:a[H+1],y4:F[H+1],id:H,height:F[H+1]-F[H],color:X});var ja=2,I=[],pa=!1,ea=[],na=[],W=!1;a=a=0;Ea(ea);for(H=0;H<x.length;H++)x[H].exploded&&(W=!0,t.reversed?ea.push(x.length-1-H):ea.push(H));P.clearRect(y.x1,y.y1,y.width,y.height);P.fillStyle=B.backgroundColor;P.fillRect(y.x1,y.y1,y.width,y.height);if(J&&t.visible&&(b(),l(),"inside"!==t.indexLabelPlacement)){e();d();for(H=0;H<x.length;H++)I[H].isDirty||(a=I[H].textBlock.x+I[H].width,a=
549
+ (L-a)/2,0==H&&(E=a),E>a&&(E=a));for(H=0;H<U.length;H++)U[H].x1+=E,U[H].x2+=E,U[H].x3+=E,U[H].x4+=E,U[H].x5&&(U[H].x5+=E,U[H].x6+=E),I[H].textBlock.x+=E}for(H=0;H<U.length;H++)E=U[H],u(P,E,t.fillOpacity),na.push(E.y1);w(P);J&&t.visible&&("inside"===t.indexLabelPlacement||B.animationEnabled||n(P),B.animationEnabled||z());if(!J)for(H=0;H<x.length;H++)E=t.dataPointIds[H],a={id:E,objectType:"dataPoint",dataPointIndex:H,dataSeriesIndex:0,funnelSection:U[t.reversed?x.length-1-H:H]},B._eventManager.objectMap[E]=
550
+ a;!B.animationEnabled&&W?v(B,-1,0):B.animationEnabled&&!B.animatedRender&&v(B,-1,0);this.funnelPyramidClickHandler=function(a){var b=-1;if(!pa&&!B.isAnimating&&(f(a.dataSeries.explodeOnClick)||a.dataSeries.explodeOnClick)&&(b=t.reversed?x.length-1-a.dataPointIndex:a.dataPointIndex,0<=b)){a=b;if("funnel"===t.type||"pyramid"===t.type)t.reversed?x[x.length-1-a].exploded=x[x.length-1-a].exploded?!1:!0:x[a].exploded=x[a].exploded?!1:!0;v(B,b,500)}};return{source:P,dest:this.plotArea.ctx,animationCallback:function(a,
551
+ b){s.fadeInAnimation(a,b);1<=a&&(v(B,-1,500),w(B.plotArea.ctx||B.ctx))},easingFunction:s.easing.easeInQuad,animationBase:0}}}}};w.prototype.requestAnimFrame=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){window.setTimeout(a,1E3/60)}}();w.prototype.cancelRequestAnimFrame=window.cancelAnimationFrame||window.webkitCancelRequestAnimationFrame||window.mozCancelRequestAnimationFrame||
552
552
  window.oCancelRequestAnimationFrame||window.msCancelRequestAnimationFrame||clearTimeout;w.prototype.set=function(a,h,c){c="undefined"===typeof c?!0:c;"options"===a?(this.options=h,c&&this.render()):w.base.set.call(this,a,h,c)};w.prototype.exportChart=function(a){a="undefined"===typeof a?{}:a;var h=a.format?a.format:"png",c=a.fileName?a.fileName:this.exportFileName;if(a.toDataURL)return this.canvas.toDataURL("image/"+h);db(this.canvas,h,c)};w.prototype.print=function(){var a=this.exportChart({toDataURL:!0}),
553
553
  h=document.createElement("iframe");h.setAttribute("class","canvasjs-chart-print-frame");O(h,{position:"absolute",width:"100%",border:"0px",margin:"0px 0px 0px 0px",padding:"0px 0px 0px 0px"});h.style.height=this.height+"px";this._canvasJSContainer.appendChild(h);var c=this,b=h.contentWindow||h.contentDocument.document||h.contentDocument;b.document.open();b.document.write('<!DOCTYPE HTML>\n<html><body><img src="'+a+'"/><body/></html>');b.document.body&&b.document.body.style&&(b.document.body.style.margin=
554
554
  "0px 0px 0px 0px",b.document.body.style.padding="0px 0px 0px 0px");b.document.close();setTimeout(function(){b.focus();b.print();setTimeout(function(){c._canvasJSContainer.removeChild(h)},1E3)},500)};w.prototype.getPercentAndTotal=function(a,h){var c=null,b=null,e=c=null;if(0<=a.type.indexOf("stacked"))b=0,c=h.x.getTime?h.x.getTime():h.x,c in a.plotUnit.yTotals&&(b=a.plotUnit.yTotals[c],c=a.plotUnit.yAbsTotals[c],e=isNaN(h.y)?0:0===c?0:100*(h.y/c));else if("pie"===a.type||"doughnut"===a.type||"funnel"===
@@ -557,41 +557,41 @@ f:k.total,d=isNaN(k.percent)?d:k.percent;do{k="";if(c.percentFormatString)k=c.pe
557
557
  function(a){if('"'===a[0]&&'"'===a[a.length-1]||"'"===a[0]&&"'"===a[a.length-1])return a.slice(1,a.length-1);a=Pa(a.slice(1,a.length-1));a=a.replace("#index",e);var d=null;try{var g=a.match(/(.*?)\s*\[\s*(.*?)\s*\]/);g&&0<g.length&&(d=Pa(g[2]),a=Pa(g[1]))}catch(f){}g=null;if("color"===a)return"waterfall"===c.type?h.color?h.color:0<h.y?c.risingColor:c.fallingColor:"error"===c.type?c.color?c.color:c._colorSet[d%c._colorSet.length]:h.color?h.color:c.color?c.color:c._colorSet[b%c._colorSet.length];if(h.hasOwnProperty(a))g=
558
558
  h;else if(c.hasOwnProperty(a))g=c;else return"";g=g[a];null!==d&&(g=g[d]);return"x"===a?(c.axisX&&"dateTime"===c.axisX.valueType||"dateTime"===c.xValueType||h.x&&h.x.getTime)&&!c.axisX.logarithmic?ea(g,h.xValueFormatString?h.xValueFormatString:c.xValueFormatString?c.xValueFormatString:c.xValueFormatString=l.axisX&&l.axisX.autoValueFormatString?l.axisX.autoValueFormatString:"DD MMM YY",l._cultureInfo):da(g,h.xValueFormatString?h.xValueFormatString:c.xValueFormatString?c.xValueFormatString:c.xValueFormatString=
559
559
  "#,##0.########",l._cultureInfo):"y"===a?da(g,h.yValueFormatString?h.yValueFormatString:c.yValueFormatString?c.yValueFormatString:c.yValueFormatString="#,##0.########",l._cultureInfo):"z"===a?da(g,h.zValueFormatString?h.zValueFormatString:c.zValueFormatString?c.zValueFormatString:c.zValueFormatString="#,##0.########",l._cultureInfo):g})};ga(L,$);L.prototype.setLayout=function(){var a=this.dockInsidePlotArea?this.chart.plotArea:this.chart,h=a.layoutManager.getFreeSpace(),c=null,b=0,e=0,l=0,d=0,k=this.markerMargin=
560
- this.chart.options.legend&&!f(this.chart.options.legend.markerMargin)?this.chart.options.legend.markerMargin:0.3*this.fontSize;this.height=0;var t=[],m=[];if("top"===this.verticalAlign||"bottom"===this.verticalAlign)this.orientation="horizontal",c=this.verticalAlign,l=this.maxWidth=null!==this.maxWidth?this.maxWidth:h.width,d=this.maxHeight=null!==this.maxHeight?this.maxHeight:0.5*h.height;else if("center"===this.verticalAlign){this.orientation="vertical";if("left"===this.horizontalAlign||"center"===
560
+ this.chart.options.legend&&!f(this.chart.options.legend.markerMargin)?this.chart.options.legend.markerMargin:0.3*this.fontSize;this.height=0;var s=[],m=[];if("top"===this.verticalAlign||"bottom"===this.verticalAlign)this.orientation="horizontal",c=this.verticalAlign,l=this.maxWidth=null!==this.maxWidth?this.maxWidth:h.width,d=this.maxHeight=null!==this.maxHeight?this.maxHeight:0.5*h.height;else if("center"===this.verticalAlign){this.orientation="vertical";if("left"===this.horizontalAlign||"center"===
561
561
  this.horizontalAlign||"right"===this.horizontalAlign)c=this.horizontalAlign;l=this.maxWidth=null!==this.maxWidth?this.maxWidth:0.5*h.width;d=this.maxHeight=null!==this.maxHeight?this.maxHeight:h.height}this.errorMarkerColor=[];for(var n=0;n<this.dataSeries.length;n++){var p=this.dataSeries[n];if(p.dataPoints&&p.dataPoints.length)if("pie"!==p.type&&"doughnut"!==p.type&&"funnel"!==p.type&&"pyramid"!==p.type){var q=p.legendMarkerType=p.legendMarkerType?p.legendMarkerType:"line"!==p.type&&"stepLine"!==
562
- p.type&&"spline"!==p.type&&"scatter"!==p.type&&"bubble"!==p.type||!p.markerType?"error"===p.type&&p._linkedSeries?p._linkedSeries.legendMarkerType?p._linkedSeries.legendMarkerType:P.getDefaultLegendMarker(p._linkedSeries.type):P.getDefaultLegendMarker(p.type):p.markerType,g=p.legendText?p.legendText:this.itemTextFormatter?this.itemTextFormatter({chart:this.chart,legend:this.options,dataSeries:p,dataPoint:null}):p.name,v=p.legendMarkerColor=p.legendMarkerColor?p.legendMarkerColor:p.markerColor?p.markerColor:
563
- "error"===p.type?f(p.whiskerColor)?p._colorSet[0]:p.whiskerColor:p._colorSet[0],r=p.markerSize||"line"!==p.type&&"stepLine"!==p.type&&"spline"!==p.type?0.75*this.lineHeight:0,u=p.legendMarkerBorderColor?p.legendMarkerBorderColor:p.markerBorderColor,s=p.legendMarkerBorderThickness?p.legendMarkerBorderThickness:p.markerBorderThickness?Math.max(1,Math.round(0.2*r)):0;"error"===p.type&&this.errorMarkerColor.push(v);g=this.chart.replaceKeywordsWithValue(g,p.dataPoints[0],p,n);q={markerType:q,markerColor:v,
564
- text:g,textBlock:null,chartType:p.type,markerSize:r,lineColor:p._colorSet[0],dataSeriesIndex:p.index,dataPointIndex:null,markerBorderColor:u,markerBorderThickness:s};t.push(q)}else for(var w=0;w<p.dataPoints.length;w++){var y=p.dataPoints[w],q=y.legendMarkerType?y.legendMarkerType:p.legendMarkerType?p.legendMarkerType:P.getDefaultLegendMarker(p.type),g=y.legendText?y.legendText:p.legendText?p.legendText:this.itemTextFormatter?this.itemTextFormatter({chart:this.chart,legend:this.options,dataSeries:p,
565
- dataPoint:y}):y.name?y.name:"DataPoint: "+(w+1),v=y.legendMarkerColor?y.legendMarkerColor:p.legendMarkerColor?p.legendMarkerColor:y.color?y.color:p.color?p.color:p._colorSet[w%p._colorSet.length],r=0.75*this.lineHeight,u=y.legendMarkerBorderColor?y.legendMarkerBorderColor:p.legendMarkerBorderColor?p.legendMarkerBorderColor:y.markerBorderColor?y.markerBorderColor:p.markerBorderColor,s=y.legendMarkerBorderThickness?y.legendMarkerBorderThickness:p.legendMarkerBorderThickness?p.legendMarkerBorderThickness:
566
- y.markerBorderThickness||p.markerBorderThickness?Math.max(1,Math.round(0.2*r)):0,g=this.chart.replaceKeywordsWithValue(g,y,p,w),q={markerType:q,markerColor:v,text:g,textBlock:null,chartType:p.type,markerSize:r,dataSeriesIndex:n,dataPointIndex:w,markerBorderColor:u,markerBorderThickness:s};(y.showInLegend||p.showInLegend&&!1!==y.showInLegend)&&t.push(q)}}!0===this.reversed&&t.reverse();if(0<t.length){p=null;g=y=w=0;y=null!==this.itemWidth?null!==this.itemMaxWidth?Math.min(this.itemWidth,this.itemMaxWidth,
567
- l):this.itemMaxWidth=Math.min(this.itemWidth,l):null!==this.itemMaxWidth?Math.min(this.itemMaxWidth,l):this.itemMaxWidth=l;r=0===r?0.75*this.lineHeight:r;y=(this.itemMaxWidth?this.itemMaxWidth:y)-(r+k);for(n=0;n<t.length;n++){q=t[n];v=y;if("line"===q.chartType||"spline"===q.chartType||"stepLine"===q.chartType)v-=2*0.1*this.lineHeight;if(!(0>=d||"undefined"===typeof d||0>=v||"undefined"===typeof v))if("horizontal"===this.orientation){q.textBlock=new ma(this.ctx,{x:0,y:0,maxWidth:v,maxHeight:this.itemWrap?
562
+ p.type&&"spline"!==p.type&&"scatter"!==p.type&&"bubble"!==p.type||!p.markerType?"error"===p.type&&p._linkedSeries?p._linkedSeries.legendMarkerType?p._linkedSeries.legendMarkerType:P.getDefaultLegendMarker(p._linkedSeries.type):P.getDefaultLegendMarker(p.type):p.markerType,g=p.legendText?p.legendText:this.itemTextFormatter?this.itemTextFormatter({chart:this.chart,legend:this.options,dataSeries:p,dataPoint:null}):p.name,u=p.legendMarkerColor=p.legendMarkerColor?p.legendMarkerColor:p.markerColor?p.markerColor:
563
+ "error"===p.type?f(p.whiskerColor)?p._colorSet[0]:p.whiskerColor:p._colorSet[0],r=p.markerSize||"line"!==p.type&&"stepLine"!==p.type&&"spline"!==p.type?0.75*this.lineHeight:0,v=p.legendMarkerBorderColor?p.legendMarkerBorderColor:p.markerBorderColor,t=p.legendMarkerBorderThickness?p.legendMarkerBorderThickness:p.markerBorderThickness?Math.max(1,Math.round(0.2*r)):0;"error"===p.type&&this.errorMarkerColor.push(u);g=this.chart.replaceKeywordsWithValue(g,p.dataPoints[0],p,n);q={markerType:q,markerColor:u,
564
+ text:g,textBlock:null,chartType:p.type,markerSize:r,lineColor:p._colorSet[0],dataSeriesIndex:p.index,dataPointIndex:null,markerBorderColor:v,markerBorderThickness:t};s.push(q)}else for(var w=0;w<p.dataPoints.length;w++){var y=p.dataPoints[w],q=y.legendMarkerType?y.legendMarkerType:p.legendMarkerType?p.legendMarkerType:P.getDefaultLegendMarker(p.type),g=y.legendText?y.legendText:p.legendText?p.legendText:this.itemTextFormatter?this.itemTextFormatter({chart:this.chart,legend:this.options,dataSeries:p,
565
+ dataPoint:y}):y.name?y.name:"DataPoint: "+(w+1),u=y.legendMarkerColor?y.legendMarkerColor:p.legendMarkerColor?p.legendMarkerColor:y.color?y.color:p.color?p.color:p._colorSet[w%p._colorSet.length],r=0.75*this.lineHeight,v=y.legendMarkerBorderColor?y.legendMarkerBorderColor:p.legendMarkerBorderColor?p.legendMarkerBorderColor:y.markerBorderColor?y.markerBorderColor:p.markerBorderColor,t=y.legendMarkerBorderThickness?y.legendMarkerBorderThickness:p.legendMarkerBorderThickness?p.legendMarkerBorderThickness:
566
+ y.markerBorderThickness||p.markerBorderThickness?Math.max(1,Math.round(0.2*r)):0,g=this.chart.replaceKeywordsWithValue(g,y,p,w),q={markerType:q,markerColor:u,text:g,textBlock:null,chartType:p.type,markerSize:r,dataSeriesIndex:n,dataPointIndex:w,markerBorderColor:v,markerBorderThickness:t};(y.showInLegend||p.showInLegend&&!1!==y.showInLegend)&&s.push(q)}}!0===this.reversed&&s.reverse();if(0<s.length){p=null;g=y=w=0;y=null!==this.itemWidth?null!==this.itemMaxWidth?Math.min(this.itemWidth,this.itemMaxWidth,
567
+ l):this.itemMaxWidth=Math.min(this.itemWidth,l):null!==this.itemMaxWidth?Math.min(this.itemMaxWidth,l):this.itemMaxWidth=l;r=0===r?0.75*this.lineHeight:r;y=(this.itemMaxWidth?this.itemMaxWidth:y)-(r+k);for(n=0;n<s.length;n++){q=s[n];u=y;if("line"===q.chartType||"spline"===q.chartType||"stepLine"===q.chartType)u-=2*0.1*this.lineHeight;if(!(0>=d||"undefined"===typeof d||0>=u||"undefined"===typeof u))if("horizontal"===this.orientation){q.textBlock=new ma(this.ctx,{x:0,y:0,maxWidth:u,maxHeight:this.itemWrap?
568
568
  d:this.lineHeight,angle:0,text:q.text,horizontalAlign:"left",fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"});q.textBlock.measureText();null!==this.itemWidth&&(q.textBlock.width=this.itemWidth-(r+k+("line"===q.chartType||"spline"===q.chartType||"stepLine"===q.chartType?2*0.1*this.lineHeight:0)));if(!p||p.width+Math.round(q.textBlock.width+r+k+(0===p.width?0:this.horizontalSpacing)+("line"===q.chartType||
569
569
  "spline"===q.chartType||"stepLine"===q.chartType?2*0.1*this.lineHeight:0))>l)p={items:[],width:0},m.push(p),this.height+=g,g=0;g=Math.max(g,q.textBlock.height?q.textBlock.height:this.lineHeight);q.textBlock.x=p.width;q.textBlock.y=0;p.width+=Math.round(q.textBlock.width+r+k+(0===p.width?0:this.horizontalSpacing)+("line"===q.chartType||"spline"===q.chartType||"stepLine"===q.chartType?2*0.1*this.lineHeight:0));p.items.push(q);this.width=Math.max(p.width,this.width)}else q.textBlock=new ma(this.ctx,
570
570
  {x:0,y:0,maxWidth:y,maxHeight:!0===this.itemWrap?d:1.5*this.fontSize,angle:0,text:q.text,horizontalAlign:"left",fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"}),q.textBlock.measureText(),null!==this.itemWidth&&(q.textBlock.width=this.itemWidth-(r+k+("line"===q.chartType||"spline"===q.chartType||"stepLine"===q.chartType?2*0.1*this.lineHeight:0))),this.height<d-this.lineHeight?(p={items:[],width:0},
571
571
  m.push(p)):(p=m[w],w=(w+1)%m.length),p&&(this.height+=q.textBlock.height?q.textBlock.height:this.lineHeight,q.textBlock.x=p.width,q.textBlock.y=0,p.width+=Math.round(q.textBlock.width+r+k+(0===p.width?0:this.horizontalSpacing)+("line"===q.chartType||"spline"===q.chartType||"stepLine"===q.chartType?2*0.1*this.lineHeight:0)),p.items.push(q),this.width=Math.max(p.width,this.width))}this.height=!1===this.itemWrap?m.length*this.lineHeight:this.height+g;this.height=Math.min(d,this.height);this.width=Math.min(l,
572
572
  this.width)}"top"===this.verticalAlign?(e="left"===this.horizontalAlign?h.x1:"right"===this.horizontalAlign?h.x2-this.width:h.x1+h.width/2-this.width/2,b=h.y1):"center"===this.verticalAlign?(e="left"===this.horizontalAlign?h.x1:"right"===this.horizontalAlign?h.x2-this.width:h.x1+h.width/2-this.width/2,b=h.y1+h.height/2-this.height/2):"bottom"===this.verticalAlign&&(e="left"===this.horizontalAlign?h.x1:"right"===this.horizontalAlign?h.x2-this.width:h.x1+h.width/2-this.width/2,b=h.y2-this.height);this.items=
573
- t;for(n=0;n<this.items.length;n++)q=t[n],q.id=++this.chart._eventManager.lastObjectId,this.chart._eventManager.objectMap[q.id]={id:q.id,objectType:"legendItem",legendItemIndex:n,dataSeriesIndex:q.dataSeriesIndex,dataPointIndex:q.dataPointIndex};this.markerSize=r;this.rows=m;0<t.length&&a.layoutManager.registerSpace(c,{width:this.width+2+2,height:this.height+5+5});this.bounds={x1:e,y1:b,x2:e+this.width,y2:b+this.height}};L.prototype.render=function(){var a=this.bounds.x1,h=this.bounds.y1,c=this.markerMargin,
574
- b=this.maxWidth,e=this.maxHeight,l=this.markerSize,d=this.rows;(0<this.borderThickness&&this.borderColor||this.backgroundColor)&&this.ctx.roundRect(a,h,this.width,this.height,this.cornerRadius,this.borderThickness,this.backgroundColor,this.borderColor);for(var f=0,k=0;k<d.length;k++){for(var m=d[k],n=0,p=0;p<m.items.length;p++){var q=m.items[p],g=q.textBlock.x+a+(0===p?0.2*l:this.horizontalSpacing),t=h+f,v=g;this.chart.data[q.dataSeriesIndex].visible||(this.ctx.globalAlpha=0.5);this.ctx.save();this.ctx.beginPath();
575
- this.ctx.rect(a,h,b,Math.max(e-e%this.lineHeight,0));this.ctx.clip();if("line"===q.chartType||"stepLine"===q.chartType||"spline"===q.chartType)this.ctx.strokeStyle=q.lineColor,this.ctx.lineWidth=Math.ceil(this.lineHeight/8),this.ctx.beginPath(),this.ctx.moveTo(g-0.1*this.lineHeight,t+this.lineHeight/2),this.ctx.lineTo(g+0.85*this.lineHeight,t+this.lineHeight/2),this.ctx.stroke(),v-=0.1*this.lineHeight;if("error"===q.chartType){this.ctx.strokeStyle=this.errorMarkerColor[0];this.ctx.lineWidth=l/8;this.ctx.beginPath();
576
- var r=g-0.08*this.lineHeight+0.1*this.lineHeight,s=t+0.15*this.lineHeight,w=0.7*this.lineHeight,y=w+0.02*this.lineHeight;this.ctx.moveTo(r,s);this.ctx.lineTo(r+w,s);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(r+w/2,s);this.ctx.lineTo(r+w/2,s+y);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(r,s+y);this.ctx.lineTo(r+w,s+y);this.ctx.stroke();this.errorMarkerColor.shift()}u.drawMarker(g+l/2,t+this.lineHeight/2,this.ctx,q.markerType,"error"===q.chartType||"line"===q.chartType||"spline"===
577
- q.chartType?q.markerSize/2:q.markerSize,q.markerColor,q.markerBorderColor,q.markerBorderThickness);q.textBlock.x=g+c+l;if("line"===q.chartType||"stepLine"===q.chartType||"spline"===q.chartType)q.textBlock.x+=0.1*this.lineHeight;q.textBlock.y=Math.round(t+this.lineHeight/2);q.textBlock.render(!0);this.ctx.restore();n=0<p?Math.max(n,q.textBlock.height?q.textBlock.height:this.lineHeight):q.textBlock.height?q.textBlock.height:this.lineHeight;this.chart.data[q.dataSeriesIndex].visible||(this.ctx.globalAlpha=
578
- 1);g=V(q.id);this.ghostCtx.fillStyle=g;this.ghostCtx.beginPath();this.ghostCtx.fillRect(v,q.textBlock.y-this.lineHeight/2,q.textBlock.x+q.textBlock.width-v,q.textBlock.height?q.textBlock.height:this.lineHeight);q.x1=this.chart._eventManager.objectMap[q.id].x1=v;q.y1=this.chart._eventManager.objectMap[q.id].y1=q.textBlock.y-this.lineHeight/2;q.x2=this.chart._eventManager.objectMap[q.id].x2=q.textBlock.x+q.textBlock.width;q.y2=this.chart._eventManager.objectMap[q.id].y2=q.textBlock.y+(q.textBlock.height?
573
+ s;for(n=0;n<this.items.length;n++)q=s[n],q.id=++this.chart._eventManager.lastObjectId,this.chart._eventManager.objectMap[q.id]={id:q.id,objectType:"legendItem",legendItemIndex:n,dataSeriesIndex:q.dataSeriesIndex,dataPointIndex:q.dataPointIndex};this.markerSize=r;this.rows=m;0<s.length&&a.layoutManager.registerSpace(c,{width:this.width+2+2,height:this.height+5+5});this.bounds={x1:e,y1:b,x2:e+this.width,y2:b+this.height}};L.prototype.render=function(){var a=this.bounds.x1,h=this.bounds.y1,c=this.markerMargin,
574
+ b=this.maxWidth,e=this.maxHeight,l=this.markerSize,d=this.rows;(0<this.borderThickness&&this.borderColor||this.backgroundColor)&&this.ctx.roundRect(a,h,this.width,this.height,this.cornerRadius,this.borderThickness,this.backgroundColor,this.borderColor);for(var f=0,k=0;k<d.length;k++){for(var m=d[k],n=0,p=0;p<m.items.length;p++){var q=m.items[p],g=q.textBlock.x+a+(0===p?0.2*l:this.horizontalSpacing),s=h+f,u=g;this.chart.data[q.dataSeriesIndex].visible||(this.ctx.globalAlpha=0.5);this.ctx.save();this.ctx.beginPath();
575
+ this.ctx.rect(a,h,b,Math.max(e-e%this.lineHeight,0));this.ctx.clip();if("line"===q.chartType||"stepLine"===q.chartType||"spline"===q.chartType)this.ctx.strokeStyle=q.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"===q.chartType){this.ctx.strokeStyle=this.errorMarkerColor[0];this.ctx.lineWidth=l/8;this.ctx.beginPath();
576
+ var r=g-0.08*this.lineHeight+0.1*this.lineHeight,t=s+0.15*this.lineHeight,w=0.7*this.lineHeight,y=w+0.02*this.lineHeight;this.ctx.moveTo(r,t);this.ctx.lineTo(r+w,t);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(r+w/2,t);this.ctx.lineTo(r+w/2,t+y);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(r,t+y);this.ctx.lineTo(r+w,t+y);this.ctx.stroke();this.errorMarkerColor.shift()}v.drawMarker(g+l/2,s+this.lineHeight/2,this.ctx,q.markerType,"error"===q.chartType||"line"===q.chartType||"spline"===
577
+ q.chartType?q.markerSize/2:q.markerSize,q.markerColor,q.markerBorderColor,q.markerBorderThickness);q.textBlock.x=g+c+l;if("line"===q.chartType||"stepLine"===q.chartType||"spline"===q.chartType)q.textBlock.x+=0.1*this.lineHeight;q.textBlock.y=Math.round(s+this.lineHeight/2);q.textBlock.render(!0);this.ctx.restore();n=0<p?Math.max(n,q.textBlock.height?q.textBlock.height:this.lineHeight):q.textBlock.height?q.textBlock.height:this.lineHeight;this.chart.data[q.dataSeriesIndex].visible||(this.ctx.globalAlpha=
578
+ 1);g=V(q.id);this.ghostCtx.fillStyle=g;this.ghostCtx.beginPath();this.ghostCtx.fillRect(u,q.textBlock.y-this.lineHeight/2,q.textBlock.x+q.textBlock.width-u,q.textBlock.height?q.textBlock.height:this.lineHeight);q.x1=this.chart._eventManager.objectMap[q.id].x1=u;q.y1=this.chart._eventManager.objectMap[q.id].y1=q.textBlock.y-this.lineHeight/2;q.x2=this.chart._eventManager.objectMap[q.id].x2=q.textBlock.x+q.textBlock.width;q.y2=this.chart._eventManager.objectMap[q.id].y2=q.textBlock.y+(q.textBlock.height?
579
579
  q.textBlock.height:this.lineHeight)-this.lineHeight/2}f+=n}};ga(P,$);P.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||"stackedArea"===a||"stackedColumn100"===a||"stackedLine100"===a||"stackedArea100"===a||"candlestick"===a||"ohlc"===a||"rangeColumn"===a||"rangeArea"===a||"rangeSplineArea"===a||"boxAndWhisker"===
580
580
  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};P.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"===
581
581
  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||"funnel"===a||"pyramid"===a)return"triangle";if("error"===a)return"none";window.console.log("Unknown Chart Type: "+a);return null};P.prototype.getDataPointAtX=function(a,h){if(!this.dataPoints||0===this.dataPoints.length)return null;
582
582
  var c={dataPoint:null,distance:Infinity,index:NaN},b=null,e=0,l=0,d=1,f=Infinity,k=0,m=0,n=0;"none"!==this.chart.plotInfo.axisPlacement&&(this.axisX.logarithmic?(n=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x),n=1<n?Math.min(Math.max((this.dataPoints.length-1)/n*Math.log(a/this.dataPoints[0].x)>>0,0),this.dataPoints.length):0):(n=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,n=0<n?Math.min(Math.max((this.dataPoints.length-1)/n*(a-this.dataPoints[0].x)>>
583
583
  0,0),this.dataPoints.length):0));for(;;){l=0<d?n+e:n-e;if(0<=l&&l<this.dataPoints.length){var b=this.dataPoints[l],p=this.axisX.logarithmic?b.x>a?b.x/a:a/b.x:Math.abs(b.x-a);p<c.distance&&(c.dataPoint=b,c.distance=p,c.index=l);b=p;b<=f?f=b:0<d?k++:m++;if(1E3<k&&1E3<m)break}else if(0>n-e&&n+e>=this.dataPoints.length)break;-1===d?(e++,d=1):d=-1}return h||(c.dataPoint.x.getTime?c.dataPoint.x.getTime():c.dataPoint.x)!==(a.getTime?a.getTime():a)?h&&null!==c.dataPoint?c:null:c};P.prototype.getDataPointAtXY=
584
- function(a,h,c){if(!this.dataPoints||0===this.dataPoints.length||a<this.chart.plotArea.x1||a>this.chart.plotArea.x2||h<this.chart.plotArea.y1||h>this.chart.plotArea.y2)return null;c=c||!1;var b=[],e=0,l=0,d=1,k=!1,t=Infinity,m=0,n=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:h}),this.axisX.logarithmic)var q=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x),p=1<q?Math.min(Math.max((this.dataPoints.length-
585
- 1)/q*Math.log(p/this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;else q=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0<q?Math.min(Math.max((this.dataPoints.length-1)/q*(p-this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;for(;;){l=0<d?p+e:p-e;if(0<=l&&l<this.dataPoints.length){var q=this.chart._eventManager.objectMap[this.dataPointIds[l]],g=this.dataPoints[l],v=null;if(q){switch(this.type){case "column":case "stackedColumn":case "stackedColumn100":case "bar":case "stackedBar":case "stackedBar100":case "rangeColumn":case "rangeBar":case "waterfall":case "error":a>=
586
- q.x1&&(a<=q.x2&&h>=q.y1&&h<=q.y2)&&(b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:Math.min(Math.abs(q.x1-a),Math.abs(q.x2-a),Math.abs(q.y1-h),Math.abs(q.y2-h))}),k=!0);break;case "line":case "stepLine":case "spline":case "area":case "stepArea":case "stackedArea":case "stackedArea100":case "splineArea":case "scatter":var r=qa("markerSize",g,this)||4,u=c?20:r,v=Math.sqrt(Math.pow(q.x1-a,2)+Math.pow(q.y1-h,2));v<=u&&b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:v});q=
587
- Math.abs(q.x1-a);q<=t?t=q:0<d?m++:n++;v<=r/2&&(k=!0);break;case "rangeArea":case "rangeSplineArea":r=qa("markerSize",g,this)||4;u=c?20:r;v=Math.min(Math.sqrt(Math.pow(q.x1-a,2)+Math.pow(q.y1-h,2)),Math.sqrt(Math.pow(q.x1-a,2)+Math.pow(q.y2-h,2)));v<=u&&b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:v});q=Math.abs(q.x1-a);q<=t?t=q:0<d?m++:n++;v<=r/2&&(k=!0);break;case "bubble":r=q.size;v=Math.sqrt(Math.pow(q.x1-a,2)+Math.pow(q.y1-h,2));v<=r/2&&(b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,
588
- distance:v}),k=!0);break;case "pie":case "doughnut":r=q.center;u="doughnut"===this.type?q.percentInnerRadius*q.radius:0;v=Math.sqrt(Math.pow(r.x-a,2)+Math.pow(r.y-h,2));v<q.radius&&v>u&&(v=Math.atan2(h-r.y,a-r.x),0>v&&(v+=2*Math.PI),v=Number(((180*(v/Math.PI)%360+360)%360).toFixed(12)),r=Number(((180*(q.startAngle/Math.PI)%360+360)%360).toFixed(12)),u=Number(((180*(q.endAngle/Math.PI)%360+360)%360).toFixed(12)),0===u&&1<q.endAngle&&(u=360),r>=u&&(0!==g.y&&!f(g.y))&&(u+=360,v<r&&(v+=360)),v>r&&v<u&&
589
- (b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:0}),k=!0));break;case "funnel":case "pyramid":v=q.funnelSection;h>v.y1&&h<v.y4&&(v.y6?h>v.y6?(l=v.x6+(v.x5-v.x6)/(v.y5-v.y6)*(h-v.y6),v=v.x3+(v.x4-v.x3)/(v.y4-v.y3)*(h-v.y3)):(l=v.x1+(v.x6-v.x1)/(v.y6-v.y1)*(h-v.y1),v=v.x2+(v.x3-v.x2)/(v.y3-v.y2)*(h-v.y2)):(l=v.x1+(v.x4-v.x1)/(v.y4-v.y1)*(h-v.y1),v=v.x2+(v.x3-v.x2)/(v.y3-v.y2)*(h-v.y2)),a>l&&a<v&&(b.push({dataPoint:g,dataPointIndex:q.dataPointIndex,dataSeries:this,distance:0}),k=!0));
584
+ function(a,h,c){if(!this.dataPoints||0===this.dataPoints.length||a<this.chart.plotArea.x1||a>this.chart.plotArea.x2||h<this.chart.plotArea.y1||h>this.chart.plotArea.y2)return null;c=c||!1;var b=[],e=0,l=0,d=1,k=!1,s=Infinity,m=0,n=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:h}),this.axisX.logarithmic)var q=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x),p=1<q?Math.min(Math.max((this.dataPoints.length-
585
+ 1)/q*Math.log(p/this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;else q=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0<q?Math.min(Math.max((this.dataPoints.length-1)/q*(p-this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;for(;;){l=0<d?p+e:p-e;if(0<=l&&l<this.dataPoints.length){var q=this.chart._eventManager.objectMap[this.dataPointIds[l]],g=this.dataPoints[l],u=null;if(q){switch(this.type){case "column":case "stackedColumn":case "stackedColumn100":case "bar":case "stackedBar":case "stackedBar100":case "rangeColumn":case "rangeBar":case "waterfall":case "error":a>=
586
+ q.x1&&(a<=q.x2&&h>=q.y1&&h<=q.y2)&&(b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:Math.min(Math.abs(q.x1-a),Math.abs(q.x2-a),Math.abs(q.y1-h),Math.abs(q.y2-h))}),k=!0);break;case "line":case "stepLine":case "spline":case "area":case "stepArea":case "stackedArea":case "stackedArea100":case "splineArea":case "scatter":var r=qa("markerSize",g,this)||4,v=c?20:r,u=Math.sqrt(Math.pow(q.x1-a,2)+Math.pow(q.y1-h,2));u<=v&&b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:u});q=
587
+ Math.abs(q.x1-a);q<=s?s=q:0<d?m++:n++;u<=r/2&&(k=!0);break;case "rangeArea":case "rangeSplineArea":r=qa("markerSize",g,this)||4;v=c?20:r;u=Math.min(Math.sqrt(Math.pow(q.x1-a,2)+Math.pow(q.y1-h,2)),Math.sqrt(Math.pow(q.x1-a,2)+Math.pow(q.y2-h,2)));u<=v&&b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:u});q=Math.abs(q.x1-a);q<=s?s=q:0<d?m++:n++;u<=r/2&&(k=!0);break;case "bubble":r=q.size;u=Math.sqrt(Math.pow(q.x1-a,2)+Math.pow(q.y1-h,2));u<=r/2&&(b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,
588
+ distance:u}),k=!0);break;case "pie":case "doughnut":r=q.center;v="doughnut"===this.type?q.percentInnerRadius*q.radius:0;u=Math.sqrt(Math.pow(r.x-a,2)+Math.pow(r.y-h,2));u<q.radius&&u>v&&(u=Math.atan2(h-r.y,a-r.x),0>u&&(u+=2*Math.PI),u=Number(((180*(u/Math.PI)%360+360)%360).toFixed(12)),r=Number(((180*(q.startAngle/Math.PI)%360+360)%360).toFixed(12)),v=Number(((180*(q.endAngle/Math.PI)%360+360)%360).toFixed(12)),0===v&&1<q.endAngle&&(v=360),r>=v&&(0!==g.y&&!f(g.y))&&(v+=360,u<r&&(u+=360)),u>r&&u<v&&
589
+ (b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:0}),k=!0));break;case "funnel":case "pyramid":u=q.funnelSection;h>u.y1&&h<u.y4&&(u.y6?h>u.y6?(l=u.x6+(u.x5-u.x6)/(u.y5-u.y6)*(h-u.y6),u=u.x3+(u.x4-u.x3)/(u.y4-u.y3)*(h-u.y3)):(l=u.x1+(u.x6-u.x1)/(u.y6-u.y1)*(h-u.y1),u=u.x2+(u.x3-u.x2)/(u.y3-u.y2)*(h-u.y2)):(l=u.x1+(u.x4-u.x1)/(u.y4-u.y1)*(h-u.y1),u=u.x2+(u.x3-u.x2)/(u.y3-u.y2)*(h-u.y2)),a>l&&a<u&&(b.push({dataPoint:g,dataPointIndex:q.dataPointIndex,dataSeries:this,distance:0}),k=!0));
590
590
  break;case "boxAndWhisker":if(a>=q.x1-q.borderThickness/2&&a<=q.x2+q.borderThickness/2&&h>=q.y4-q.borderThickness/2&&h<=q.y1+q.borderThickness/2||Math.abs(q.x2-a+q.x1-a)<q.borderThickness&&h>=q.y1&&h<=q.y4)b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:Math.min(Math.abs(q.x1-a),Math.abs(q.x2-a),Math.abs(q.y2-h),Math.abs(q.y3-h))}),k=!0;break;case "candlestick":if(a>=q.x1-q.borderThickness/2&&a<=q.x2+q.borderThickness/2&&h>=q.y2-q.borderThickness/2&&h<=q.y3+q.borderThickness/2||Math.abs(q.x2-
591
591
  a+q.x1-a)<q.borderThickness&&h>=q.y1&&h<=q.y4)b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:Math.min(Math.abs(q.x1-a),Math.abs(q.x2-a),Math.abs(q.y2-h),Math.abs(q.y3-h))}),k=!0;break;case "ohlc":if(Math.abs(q.x2-a+q.x1-a)<q.borderThickness&&h>=q.y2&&h<=q.y3||a>=q.x1&&a<=(q.x2+q.x1)/2&&h>=q.y1-q.borderThickness/2&&h<=q.y1+q.borderThickness/2||a>=(q.x1+q.x2)/2&&a<=q.x2&&h>=q.y4-q.borderThickness/2&&h<=q.y4+q.borderThickness/2)b.push({dataPoint:g,dataPointIndex:l,dataSeries:this,distance:Math.min(Math.abs(q.x1-
592
592
  a),Math.abs(q.x2-a),Math.abs(q.y2-h),Math.abs(q.y3-h))}),k=!0}if(k||1E3<m&&1E3<n)break}}else if(0>p-e&&p+e>=this.dataPoints.length)break;-1===d?(e++,d=1):d=-1}a=null;for(h=0;h<b.length;h++)a?b[h].distance<=a.distance&&(a=b[h]):a=b[h];return a};P.prototype.getMarkerProperties=function(a,h,c,b){var e=this.dataPoints,l=e[a].markerColor?e[a].markerColor:this.markerColor?this.markerColor:e[a].color?e[a].color:this.color?this.color:this._colorSet[a%this._colorSet.length],d=e[a].markerBorderColor?e[a].markerBorderColor:
593
- this.markerBorderColor?this.markerBorderColor:null,k=f(e[a].markerBorderThickness)?this.markerBorderThickness?this.markerBorderThickness:null:e[a].markerBorderThickness,v=e[a].markerType?e[a].markerType:this.markerType;a=f(e[a].markerSize)?this.markerSize:e[a].markerSize;return{x:h,y:c,ctx:b,type:v,size:a,color:l,borderColor:d,borderThickness:k}};ga(A,$);A.prototype.createExtraLabelsForLog=function(a){a=(a||0)+1;if(!(5<a)){var h=this.logLabelValues[0]||this.intervalStartPosition;if(Math.log(this.range)/
594
- Math.log(h/this.viewportMinimum)<this.noTicks-1){for(var c=A.getNiceNumber((h-this.viewportMinimum)/Math.min(Math.max(2,this.noTicks-this.logLabelValues.length),3),!0),b=Math.ceil(this.viewportMinimum/c)*c;b<h;b+=c)b<this.viewportMinimum||this.logLabelValues.push(b);this.logLabelValues.sort(Ya);this.createExtraLabelsForLog(a)}}};A.prototype.createLabels=function(){var a,h,c=0,b=0,e,l=0,d=0,b=0,b=this.interval,k=0,v,m=0.6*this.chart.height,n;a=!1;var p=this.scaleBreaks?this.scaleBreaks._appliedBreaks:
593
+ this.markerBorderColor?this.markerBorderColor:null,k=f(e[a].markerBorderThickness)?this.markerBorderThickness?this.markerBorderThickness:null:e[a].markerBorderThickness,u=e[a].markerType?e[a].markerType:this.markerType;a=f(e[a].markerSize)?this.markerSize:e[a].markerSize;return{x:h,y:c,ctx:b,type:u,size:a,color:l,borderColor:d,borderThickness:k}};ga(A,$);A.prototype.createExtraLabelsForLog=function(a){a=(a||0)+1;if(!(5<a)){var h=this.logLabelValues[0]||this.intervalStartPosition;if(Math.log(this.range)/
594
+ Math.log(h/this.viewportMinimum)<this.noTicks-1){for(var c=A.getNiceNumber((h-this.viewportMinimum)/Math.min(Math.max(2,this.noTicks-this.logLabelValues.length),3),!0),b=Math.ceil(this.viewportMinimum/c)*c;b<h;b+=c)b<this.viewportMinimum||this.logLabelValues.push(b);this.logLabelValues.sort(Ya);this.createExtraLabelsForLog(a)}}};A.prototype.createLabels=function(){var a,h,c=0,b=0,e,l=0,d=0,b=0,b=this.interval,k=0,u,m=0.6*this.chart.height,n;a=!1;var p=this.scaleBreaks?this.scaleBreaks._appliedBreaks:
595
595
  [],q=p.length?f(this.scaleBreaks.firstBreakIndex)?0:this.scaleBreaks.firstBreakIndex:0;if("axisX"!==this.type||"dateTime"!==this.valueType||this.logarithmic){e=this.viewportMaximum;if(this.labels){a=Math.ceil(b);for(var b=Math.ceil(this.intervalStartPosition),g=!1,c=b;c<this.viewportMaximum;c+=a)if(this.labels[c])g=!0;else{g=!1;break}g&&(this.interval=a,this.intervalStartPosition=b)}if(this.logarithmic&&!this.equidistantInterval)for(this.logLabelValues||(this.logLabelValues=[],this.createExtraLabelsForLog()),
596
596
  b=0,g=q;b<this.logLabelValues.length;b++)if(c=this.logLabelValues[b],c<this.viewportMinimum)b++;else{for(;g<p.length&&c>p[g].endValue;g++);a=g<p.length&&c>=p[g].startValue&&c<=p[g].endValue;n=c;a||(a=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.options,value:n,label:this.labels[n]?this.labels[n]:null}):"axisX"===this.type&&this.labels[n]?this.labels[n]:da(n,this.valueFormatString,this.chart._cultureInfo),a=new ma(this.ctx,{x:0,y:0,maxWidth:l,maxHeight:d,angle:this.labelAngle,
597
597
  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:0}),this._labels.push({position:n,textBlock:a,effectiveHeight:null}))}g=q;for(c=this.intervalStartPosition;c<=e;c=parseFloat(1E-12>this.interval?
@@ -602,26 +602,26 @@ value:new Date(n),label:this.labels[n]?this.labels[n]:null}):"axisX"===this.type
602
602
  fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle"}),this._labels.push({position:n,textBlock:a,effectiveHeight:null,breaksLabelType:void 0}))}if("bottom"===this._position||"top"===this._position)k=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))/
603
603
  Math.log(this.range):this.lineCoordinates.width/(this.logarithmic&&this.equidistantInterval?Math.log(this.range)/Math.log(this.logarithmBase):Math.abs(this.range))*aa[this.intervalType+"Duration"]*this.interval,l="undefined"===typeof this.options.labelMaxWidth?0.5*this.chart.width>>0:this.options.labelMaxWidth,this.chart.panEnabled||(d="undefined"===typeof this.options.labelWrap||this.labelWrap?0.8*this.chart.height>>0:1.5*this.labelFontSize);else if("left"===this._position||"right"===this._position)k=
604
604
  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/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))*aa[this.intervalType+"Duration"]*this.interval,this.chart.panEnabled||(l="undefined"===
605
- typeof this.options.labelMaxWidth?0.3*this.chart.width>>0:this.options.labelMaxWidth),d="undefined"===typeof this.options.labelWrap||this.labelWrap?0.3*this.chart.height>>0:1.5*this.labelFontSize;for(b=0;b<this._labels.length;b++){a=this._labels[b].textBlock;a.maxWidth=l;a.maxHeight=d;var t=a.measureText();v=t.height}e=[];q=p=0;if(this.labelAutoFit||this.options.labelAutoFit)if(f(this.labelAngle)||(this.labelAngle=(this.labelAngle%360+360)%360,90<this.labelAngle&&270>this.labelAngle?this.labelAngle-=
605
+ typeof this.options.labelMaxWidth?0.3*this.chart.width>>0:this.options.labelMaxWidth),d="undefined"===typeof this.options.labelWrap||this.labelWrap?0.3*this.chart.height>>0:1.5*this.labelFontSize;for(b=0;b<this._labels.length;b++){a=this._labels[b].textBlock;a.maxWidth=l;a.maxHeight=d;var s=a.measureText();u=s.height}e=[];q=p=0;if(this.labelAutoFit||this.options.labelAutoFit)if(f(this.labelAngle)||(this.labelAngle=(this.labelAngle%360+360)%360,90<this.labelAngle&&270>this.labelAngle?this.labelAngle-=
606
606
  180:270<=this.labelAngle&&360>=this.labelAngle&&(this.labelAngle-=360)),"bottom"===this._position||"top"===this._position)if(l=0.9*k>>0,q=0,!this.chart.panEnabled&&1<=this._labels.length){this.sessionVariables.labelFontSize=this.labelFontSize;this.sessionVariables.labelMaxWidth=l;this.sessionVariables.labelMaxHeight=d;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;
607
- for(var u,g=a.text.split(" "),b=0;b<g.length;b++)n=g[b],this.ctx.font=a.fontStyle+" "+a.fontWeight+" "+a.fontSize+"px "+a.fontFamily,n=this.ctx.measureText(n),n.width>q&&(u=c,q=n.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;t=a.measureText();for(g=c+1;g<this._labels.length;g++)if(!this._labels[g].breaksLabelType){h=this._labels[g].textBlock;h=h.measureText();break}e.push(a.height);this.sessionVariables.labelMaxHeight=
607
+ for(var v,g=a.text.split(" "),b=0;b<g.length;b++)n=g[b],this.ctx.font=a.fontStyle+" "+a.fontWeight+" "+a.fontSize+"px "+a.fontFamily,n=this.ctx.measureText(n),n.width>q&&(v=c,q=n.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;s=a.measureText();for(g=c+1;g<this._labels.length;g++)if(!this._labels[g].breaksLabelType){h=this._labels[g].textBlock;h=h.measureText();break}e.push(a.height);this.sessionVariables.labelMaxHeight=
608
608
  Math.max.apply(Math,e);Math.cos(Math.PI/180*Math.abs(this.labelAngle));Math.sin(Math.PI/180*Math.abs(this.labelAngle));b=l*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(d-a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle));if(f(this.options.labelAngle)&&isNaN(this.options.labelAngle)&&0!==this.options.labelAngle)if(this.sessionVariables.labelMaxHeight=0===this.labelAngle?d:Math.min((b-l*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)),b),
609
- n=(m-(v+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(-25)))/Math.sin(Math.PI/180*Math.abs(-25)),!f(this.options.labelWrap))this.labelWrap?f(this.options.labelMaxWidth)?(this.sessionVariables.labelMaxWidth=Math.min(Math.max(l,q),n),this.sessionVariables.labelWrap=this.labelWrap,h&&t.width+h.width>>0>2*l&&(this.sessionVariables.labelAngle=-25)):(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>
610
- l?-25:this.sessionVariables.labelAngle):f(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxHeight=d,this.sessionVariables.labelMaxWidth=l,h&&t.width+h.width>>0>2*l&&(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=n)):(this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>l?-25:this.sessionVariables.labelAngle,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=
611
- d,this.sessionVariables.labelWrap=this.labelWrap);else{if(f(this.options.labelWrap))if(!f(this.options.labelMaxWidth))this.options.labelMaxWidth<l?(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=b):(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=d);else if(!f(h))if(b=t.width+h.width>>0,g=this.labelFontSize,q<l)b-2*l>p&&(p=b-2*l,b>=2*l&&b<2.2*l?(this.sessionVariables.labelMaxWidth=
609
+ n=(m-(u+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(-25)))/Math.sin(Math.PI/180*Math.abs(-25)),!f(this.options.labelWrap))this.labelWrap?f(this.options.labelMaxWidth)?(this.sessionVariables.labelMaxWidth=Math.min(Math.max(l,q),n),this.sessionVariables.labelWrap=this.labelWrap,h&&s.width+h.width>>0>2*l&&(this.sessionVariables.labelAngle=-25)):(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>
610
+ l?-25:this.sessionVariables.labelAngle):f(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxHeight=d,this.sessionVariables.labelMaxWidth=l,h&&s.width+h.width>>0>2*l&&(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=n)):(this.sessionVariables.labelAngle=this.sessionVariables.labelMaxWidth>l?-25:this.sessionVariables.labelAngle,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=
611
+ d,this.sessionVariables.labelWrap=this.labelWrap);else{if(f(this.options.labelWrap))if(!f(this.options.labelMaxWidth))this.options.labelMaxWidth<l?(this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=b):(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth,this.sessionVariables.labelMaxHeight=d);else if(!f(h))if(b=s.width+h.width>>0,g=this.labelFontSize,q<l)b-2*l>p&&(p=b-2*l,b>=2*l&&b<2.2*l?(this.sessionVariables.labelMaxWidth=
612
612
  l,f(this.options.labelFontSize)&&12<g&&(g=Math.floor(12/13*g),a.measureText()),this.sessionVariables.labelFontSize=f(this.options.labelFontSize)?g:this.options.labelFontSize,this.sessionVariables.labelAngle=this.labelAngle):b>=2.2*l&&b<2.8*l?(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=n,this.sessionVariables.labelFontSize=g):b>=2.8*l&&b<3.2*l?(this.sessionVariables.labelMaxWidth=Math.max(l,q),this.sessionVariables.labelWrap=!0,f(this.options.labelFontSize)&&12<this.labelFontSize&&
613
613
  (this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=f(this.options.labelFontSize)?g:this.options.labelFontSize,this.sessionVariables.labelAngle=this.labelAngle):b>=3.2*l&&b<3.6*l?(this.sessionVariables.labelAngle=-25,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=n,this.sessionVariables.labelFontSize=this.labelFontSize):b>3.6*l&&b<5*l?(f(this.options.labelFontSize)&&12<g&&(g=Math.floor(12/13*g),a.measureText()),this.sessionVariables.labelFontSize=
614
- f(this.options.labelFontSize)?g:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=n):b>5*l&&(this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=l,this.sessionVariables.labelFontSize=g,this.sessionVariables.labelMaxHeight=d,this.sessionVariables.labelAngle=this.labelAngle));else if(u===c&&(0===u&&q+this._labels[u+1].textBlock.measureText().width-2*l>p||u===this._labels.length-1&&q+this._labels[u-
615
- 1].textBlock.measureText().width-2*l>p||0<u&&u<this._labels.length-1&&q+this._labels[u+1].textBlock.measureText().width-2*l>p&&q+this._labels[u-1].textBlock.measureText().width-2*l>p))p=0===u?q+this._labels[u+1].textBlock.measureText().width-2*l:q+this._labels[u-1].textBlock.measureText().width-2*l,this.sessionVariables.labelFontSize=f(this.options.labelFontSize)?g:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=
616
- n;else if(0===p)for(this.sessionVariables.labelFontSize=f(this.options.labelFontSize)?g: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(l,q),n),t=a.measureText(),b<this._labels.length-1&&(g=b+1,h=this._labels[g].textBlock,h.maxWidth=this.sessionVariables.labelMaxWidth=Math.min(Math.max(l,q),n),h=h.measureText(),t.width+h.width>>0>2*l&&(this.sessionVariables.labelAngle=
617
- -25))}else(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxHeight=0===this.labelAngle?d:Math.min((b-l*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)),b),n=0!=this.labelAngle?(m-(v+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)):l,this.sessionVariables.labelMaxHeight=this.labelWrap?(m-n*Math.sin(Math.PI/180*Math.abs(this.labelAngle)))/Math.cos(Math.PI/180*Math.abs(this.labelAngle)):
614
+ f(this.options.labelFontSize)?g:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=n):b>5*l&&(this.sessionVariables.labelWrap=!0,this.sessionVariables.labelMaxWidth=l,this.sessionVariables.labelFontSize=g,this.sessionVariables.labelMaxHeight=d,this.sessionVariables.labelAngle=this.labelAngle));else if(v===c&&(0===v&&q+this._labels[v+1].textBlock.measureText().width-2*l>p||v===this._labels.length-1&&q+this._labels[v-
615
+ 1].textBlock.measureText().width-2*l>p||0<v&&v<this._labels.length-1&&q+this._labels[v+1].textBlock.measureText().width-2*l>p&&q+this._labels[v-1].textBlock.measureText().width-2*l>p))p=0===v?q+this._labels[v+1].textBlock.measureText().width-2*l:q+this._labels[v-1].textBlock.measureText().width-2*l,this.sessionVariables.labelFontSize=f(this.options.labelFontSize)?g:this.options.labelFontSize,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelAngle=-25,this.sessionVariables.labelMaxWidth=
616
+ n;else if(0===p)for(this.sessionVariables.labelFontSize=f(this.options.labelFontSize)?g: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(l,q),n),s=a.measureText(),b<this._labels.length-1&&(g=b+1,h=this._labels[g].textBlock,h.maxWidth=this.sessionVariables.labelMaxWidth=Math.min(Math.max(l,q),n),h=h.measureText(),s.width+h.width>>0>2*l&&(this.sessionVariables.labelAngle=
617
+ -25))}else(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxHeight=0===this.labelAngle?d:Math.min((b-l*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)),b),n=0!=this.labelAngle?(m-(u+a.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle)))/Math.sin(Math.PI/180*Math.abs(this.labelAngle)):l,this.sessionVariables.labelMaxHeight=this.labelWrap?(m-n*Math.sin(Math.PI/180*Math.abs(this.labelAngle)))/Math.cos(Math.PI/180*Math.abs(this.labelAngle)):
618
618
  1.5*this.labelFontSize,f(this.options.labelWrap))?f(this.options.labelWrap)&&(this.labelWrap&&!f(this.options.labelMaxWidth)?(this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:n,this.sessionVariables.labelMaxHeight=d):(this.sessionVariables.labelAngle=this.labelAngle,this.sessionVariables.labelMaxWidth=n,this.sessionVariables.labelMaxHeight=b<0.9*k?0.9*k:b,this.sessionVariables.labelWrap=this.labelWrap)):(this.options.labelWrap?
619
619
  (this.sessionVariables.labelWrap=this.labelWrap,this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:n):(f(this.options.labelMaxWidth),this.sessionVariables.labelMaxWidth=this.options.labelMaxWidth?this.options.labelMaxWidth:n,this.sessionVariables.labelWrap=this.labelWrap),this.sessionVariables.labelMaxHeight=d)}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,
620
620
  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=this._labels[c].textBlock,a.maxWidth=this.labelMaxWidth=f(this.options.labelMaxWidth)?f(this.sessionVariables.labelMaxWidth)?this.sessionVariables.labelMaxWidth=l:this.sessionVariables.labelMaxWidth:this.options.labelMaxWidth,a.fontSize=this.labelFontSize=f(this.options.labelFontSize)?
621
621
  f(this.sessionVariables.labelFontSize)?this.sessionVariables.labelFontSize=this.labelFontSize:this.sessionVariables.labelFontSize:this.options.labelFontSize,a.angle=this.labelAngle=f(this.options.labelAngle)?f(this.sessionVariables.labelAngle)?this.sessionVariables.labelAngle=this.labelAngle:this.sessionVariables.labelAngle:this.labelAngle,a.wrap=this.labelWrap=f(this.options.labelWrap)?f(this.sessionVariables.labelWrap)?this.sessionVariables.labelWrap=this.labelWrap:this.sessionVariables.labelWrap:
622
622
  this.options.labelWrap,a.maxHeight=f(this.sessionVariables.labelMaxHeight)?this.sessionVariables.labelMaxHeight=d:this.sessionVariables.labelMaxHeight,a.measureText();else if("left"===this._position||"right"===this._position)if(l=f(this.options.labelMaxWidth)?0.3*this.chart.width>>0:this.options.labelMaxWidth,d="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=
623
- this.labelFontSize;this.sessionVariables.labelMaxWidth=l;this.sessionVariables.labelMaxHeight=d;this.sessionVariables.labelAngle=f(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle;this.sessionVariables.labelWrap=this.labelWrap;for(c=0;c<this._labels.length;c++)if(!this._labels[c].breaksLabelType){a=this._labels[c].textBlock;t=a.measureText();for(g=c+1;g<this._labels.length;g++)if(!this._labels[g].breaksLabelType){h=this._labels[g].textBlock;h=h.measureText();break}e.push(a.height);
624
- this.sessionVariables.labelMaxHeight=Math.max.apply(Math,e);b=l*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(d-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));f(this.options.labelAngle)&&isNaN(this.options.labelAngle)&&0!==this.options.labelAngle?f(this.options.labelWrap)?f(this.options.labelWrap)&&(f(this.options.labelMaxWidth)?f(h)||(k=t.height+h.height>>0,k-2*d>q&&(q=k-2*d,k>=2*d&&
623
+ this.labelFontSize;this.sessionVariables.labelMaxWidth=l;this.sessionVariables.labelMaxHeight=d;this.sessionVariables.labelAngle=f(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle;this.sessionVariables.labelWrap=this.labelWrap;for(c=0;c<this._labels.length;c++)if(!this._labels[c].breaksLabelType){a=this._labels[c].textBlock;s=a.measureText();for(g=c+1;g<this._labels.length;g++)if(!this._labels[g].breaksLabelType){h=this._labels[g].textBlock;h=h.measureText();break}e.push(a.height);
624
+ this.sessionVariables.labelMaxHeight=Math.max.apply(Math,e);b=l*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(d-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));f(this.options.labelAngle)&&isNaN(this.options.labelAngle)&&0!==this.options.labelAngle?f(this.options.labelWrap)?f(this.options.labelWrap)&&(f(this.options.labelMaxWidth)?f(h)||(k=s.height+h.height>>0,k-2*d>q&&(q=k-2*d,k>=2*d&&
625
625
  k<2.4*d?(f(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelMaxHeight=d,this.sessionVariables.labelFontSize=f(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize):k>=2.4*d&&k<2.8*d?(this.sessionVariables.labelMaxHeight=b,this.sessionVariables.labelFontSize=this.labelFontSize,this.sessionVariables.labelWrap=!0):k>=2.8*d&&k<3.2*d?(this.sessionVariables.labelMaxHeight=d,this.sessionVariables.labelWrap=
626
626
  !0,f(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=f(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelAngle=f(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle):k>=3.2*d&&k<3.6*d?(this.sessionVariables.labelMaxHeight=b,this.sessionVariables.labelWrap=!0,this.sessionVariables.labelFontSize=this.labelFontSize):k>3.6*
627
627
  d&&k<10*d?(f(this.options.labelFontSize)&&12<this.labelFontSize&&(this.labelFontSize=Math.floor(12/13*this.labelFontSize),a.measureText()),this.sessionVariables.labelFontSize=f(this.options.labelFontSize)?this.labelFontSize:this.options.labelFontSize,this.sessionVariables.labelMaxWidth=l,this.sessionVariables.labelMaxHeight=d,this.sessionVariables.labelAngle=f(this.sessionVariables.labelAngle)?0:this.sessionVariables.labelAngle):k>10*d&&k<50*d&&(f(this.options.labelFontSize)&&12<this.labelFontSize&&
@@ -641,46 +641,46 @@ this._stripLineLabels[h].stripLine.labelPlacement&&(this._stripLineLabels[h].str
641
641
  a<l&&(a=l),this.stripLineLabelEffectiveWidth=this._stripLineLabels[h].effectiveWidth=l)}return(this.title?this._titleTextBlock.measureText().height+2:0)+a+("inside"===this.tickPlacement?0<this._index?this.tickLength:0:this.tickLength)+c};A.prototype.createLabelsAndCalculateHeight=function(){var a=0;this._labels=[];this._stripLineLabels=[];var h,c=0,b=this.chart.isNavigator?0:5;if("bottom"===this._position||"top"===this._position){this.createLabels();if("inside"!=this.labelPlacement||"inside"===this.labelPlacement&&
642
642
  0<this._index)for(c=0;c<this._labels.length;c++){h=this._labels[c].textBlock;var e=h.measureText(),l=0,l=0===this.labelAngle?e.height:e.width*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(e.height-h.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle));a<l&&(this.labelEffectiveHeight=a=l);this._labels[c].effectiveHeight=l}for(c=0;c<this._stripLineLabels.length;c++)"outside"===this._stripLineLabels[c].stripLine.labelPlacement&&(this._stripLineLabels[c].stripLine.value>=this.viewportMinimum&&
643
643
  this._stripLineLabels[c].stripLine.value<=this.viewportMaximum)&&(h=this._stripLineLabels[c].textBlock,e=h.measureText(),l=0===this.labelAngle?e.height:e.width*Math.sin(Math.PI/180*Math.abs(this.labelAngle))+(e.height-h.fontSize/2)*Math.cos(Math.PI/180*Math.abs(this.labelAngle)),"inside"===this.tickPlacement&&(l+=this.tickLength),"inside"===this.labelPlacement&&(a+=0<this._index?l:0),a<l&&(a=l),this.stripLineLabelEffectiveHeight=this._stripLineLabels[c].effectiveHeight=l)}return(this.title?this._titleTextBlock.measureText().height+
644
- 2:0)+a+("inside"===this.tickPlacement?0<this._index?this.tickLength:0:this.tickLength)+b};A.setLayout=function(a,h,c,b,e,l){var d,k,v,m,n=a[0]?a[0].chart:h[0].chart,p=n.isNavigator?0:10,q=n._axes;if(a&&0<a.length)for(var g=0;g<a.length;g++)a[g]&&a[g].calculateAxisParameters();if(h&&0<h.length)for(g=0;g<h.length;g++)h[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<q.length;g++)if(q[g]&&
645
- q[g].scaleBreaks&&q[g].scaleBreaks._appliedBreaks.length)for(var t=q[g].scaleBreaks._appliedBreaks,r=0;r<t.length&&!(t[r].startValue>q[g].viewportMaximum);r++)t[r].endValue<q[g].viewportMinimum||(f(q[g].scaleBreaks.firstBreakIndex)&&(q[g].scaleBreaks.firstBreakIndex=r),t[r].startValue>=q[g].viewPortMinimum&&(q[g].scaleBreaks.lastBreakIndex=r));for(var u=r=0,s=0,w=0,y=0,x=0,A=0,E,D,F=k=0,K,J,L,t=K=J=L=!1,g=0;g<q.length;g++)q[g]&&q[g].title&&(q[g]._titleTextBlock=new ma(q[g].ctx,{text:q[g].title,horizontalAlign:"center",
644
+ 2:0)+a+("inside"===this.tickPlacement?0<this._index?this.tickLength:0:this.tickLength)+b};A.setLayout=function(a,h,c,b,e,l){var d,k,u,m,n=a[0]?a[0].chart:h[0].chart,p=n.isNavigator?0:10,q=n._axes;if(a&&0<a.length)for(var g=0;g<a.length;g++)a[g]&&a[g].calculateAxisParameters();if(h&&0<h.length)for(g=0;g<h.length;g++)h[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<q.length;g++)if(q[g]&&
645
+ q[g].scaleBreaks&&q[g].scaleBreaks._appliedBreaks.length)for(var s=q[g].scaleBreaks._appliedBreaks,r=0;r<s.length&&!(s[r].startValue>q[g].viewportMaximum);r++)s[r].endValue<q[g].viewportMinimum||(f(q[g].scaleBreaks.firstBreakIndex)&&(q[g].scaleBreaks.firstBreakIndex=r),s[r].startValue>=q[g].viewPortMinimum&&(q[g].scaleBreaks.lastBreakIndex=r));for(var v=r=0,t=0,w=0,y=0,x=0,A=0,E,D,F=k=0,K,J,L,s=K=J=L=!1,g=0;g<q.length;g++)q[g]&&q[g].title&&(q[g]._titleTextBlock=new ma(q[g].ctx,{text:q[g].title,horizontalAlign:"center",
646
646
  fontSize:q[g].titleFontSize,fontFamily:q[g].titleFontFamily,fontWeight:q[g].titleFontWeight,fontColor:q[g].titleFontColor,fontStyle:q[g].titleFontStyle,borderColor:q[g].titleBorderColor,borderThickness:q[g].titleBorderThickness,backgroundColor:q[g].titleBackgroundColor,cornerRadius:q[g].titleCornerRadius,textBaseline:"middle"}));for(g=0;g<q.length;g++)if(q[g].title)switch(q[g]._position){case "left":q[g]._titleTextBlock.maxWidth=q[g].titleMaxWidth||l.height;q[g]._titleTextBlock.maxHeight=q[g].titleWrap?
647
647
  0.8*l.width:1.5*q[g].titleFontSize;q[g]._titleTextBlock.angle=-90;break;case "right":q[g]._titleTextBlock.maxWidth=q[g].titleMaxWidth||l.height;q[g]._titleTextBlock.maxHeight=q[g].titleWrap?0.8*l.width:1.5*q[g].titleFontSize;q[g]._titleTextBlock.angle=90;break;default:q[g]._titleTextBlock.maxWidth=q[g].titleMaxWidth||l.width,q[g]._titleTextBlock.maxHeight=q[g].titleWrap?0.8*l.height:1.5*q[g].titleFontSize,q[g]._titleTextBlock.angle=0}if("normal"===e){for(var w=[],y=[],x=[],A=[],O=[],P=[],Q=[],M=[];4>
648
648
  r;){var H=0,V=0,R=0,Z=0,T=e=0,S=0,ba=0,$=0,X=0,U=0,aa=0;if(c&&0<c.length)for(x=[],g=U=0;g<c.length;g++)x.push(Math.ceil(c[g]?c[g].createLabelsAndCalculateWidth():0)),U+=x[g],S+=c[g]&&!n.isNavigator?c[g].margin:0;else x.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateWidth():0));Q.push(x);if(b&&0<b.length)for(A=[],g=aa=0;g<b.length;g++)A.push(Math.ceil(b[g]?b[g].createLabelsAndCalculateWidth():0)),aa+=A[g],ba+=b[g]?b[g].margin:0;else A.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateWidth():0));
649
- M.push(A);d=Math.round(l.x1+U+S);v=Math.round(l.x2-aa-ba>n.width-p?n.width-p:l.x2-aa-ba);if(a&&0<a.length)for(w=[],g=$=0;g<a.length;g++)a[g]&&(a[g].lineCoordinates={}),a[g].lineCoordinates.width=Math.abs(v-d),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[g],e+=a[g]&&!n.isNavigator?a[g].margin:0;else w.push(Math.ceil(a[0]?
650
- a[0].createLabelsAndCalculateHeight():0));O.push(w);if(h&&0<h.length)for(y=[],g=X=0;g<h.length;g++)h[g]&&(h[g].lineCoordinates={}),h[g].lineCoordinates.width=Math.abs(v-d),h[g].title&&(h[g]._titleTextBlock.maxWidth=0<h[g].titleMaxWidth&&h[g].titleMaxWidth<h[g].lineCoordinates.width?h[g].titleMaxWidth:h[g].lineCoordinates.width),y.push(Math.ceil(h[g]?h[g].createLabelsAndCalculateHeight():0)),X+=y[g],T+=h[g]&&!n.isNavigator?h[g].margin:0;else y.push(Math.ceil(h[0]?h[0].createLabelsAndCalculateHeight():
651
- 0));P.push(y);if(a&&0<a.length)for(g=0;g<a.length;g++)a[g]&&(a[g].lineCoordinates.x1=d,v=Math.round(l.x2-aa-ba>n.width-p?n.width-p:l.x2-aa-ba),a[g]._labels&&1<a[g]._labels.length&&(k=m=0,m=a[g]._labels[1],k="dateTime"===a[g].valueType?a[g]._labels[a[g]._labels.length-2]:a[g]._labels[a[g]._labels.length-1],u=m.textBlock.width*Math.cos(Math.PI/180*Math.abs(m.textBlock.angle))+(m.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(m.textBlock.angle)),s=k.textBlock.width*Math.cos(Math.PI/
652
- 180*Math.abs(k.textBlock.angle))+(k.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle))),!a[g]||(!a[g].labelAutoFit||f(E)||f(D)||n.isNavigator||n.stockChart)||(k=0,0<a[g].labelAngle?D+s>v&&(k+=0<a[g].labelAngle?D+s-v-aa:0):0>a[g].labelAngle?E-u<d&&E-u<a[g].viewportMinimum&&(F=d-(S+a[g].tickLength+x+E-u+a[g].labelFontSize/2)):0===a[g].labelAngle&&(D+s>v&&(k=D+s/2-v-aa),E-u<d&&E-u<a[g].viewportMinimum&&(F=d-S-a[g].tickLength-x-E+u/2)),a[g].viewportMaximum===a[g].maximum&&
653
- a[g].viewportMinimum===a[g].minimum&&0<a[g].labelAngle&&0<k?v-=k:a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0>a[g].labelAngle&&0<F?d+=F:a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0===a[g].labelAngle&&(0<F&&(d+=F),0<k&&(v-=k))),n.panEnabled?$=f(n.sessionVariables.axisX.height)?n.sessionVariables.axisX.height=$:n.sessionVariables.axisX.height:n.sessionVariables.axisX.height=$,k=Math.round(l.y2-$-e+H),m=Math.round(l.y2),a[g].lineCoordinates.x2=
654
- v,a[g].lineCoordinates.width=v-d,a[g].lineCoordinates.y1=k,a[g].lineCoordinates.y2=k,"inside"===a[g].labelPlacement&&0<g&&(a[g].lineCoordinates.y1=a[g-1].lineCoordinates.y2+H+(a[g].labelEffectiveHeight||0),a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2),"inside"===a[g].tickPlacement&&0<g&&(a[g].lineCoordinates.y1+=a[g].tickLength,a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2),a[g].bounds={x1:d,y1:k,x2:v,y2:m-($+e-w[g]-H),width:v-d},a[g].bounds.height=a[g].bounds.y2-
655
- a[g].bounds.y1),H+=w[g]+a[g].margin;if(h&&0<h.length)for(g=0;g<h.length;g++)h[g].lineCoordinates.x1=Math.round(l.x1+U+S),h[g].lineCoordinates.x2=Math.round(l.x2-aa-ba>n.width-p?n.width-p:l.x2-aa-ba),h[g].lineCoordinates.width=Math.abs(v-d),h[g]._labels&&1<h[g]._labels.length&&(m=h[g]._labels[1],k="dateTime"===h[g].valueType?h[g]._labels[h[g]._labels.length-2]:h[g]._labels[h[g]._labels.length-1],u=m.textBlock.width*Math.cos(Math.PI/180*Math.abs(m.textBlock.angle))+(m.textBlock.height-k.textBlock.fontSize/
656
- 2)*Math.sin(Math.PI/180*Math.abs(m.textBlock.angle)),s=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle))),n.panEnabled?X=f(n.sessionVariables.axisX2.height)?n.sessionVariables.axisX2.height=X:n.sessionVariables.axisX2.height:n.sessionVariables.axisX2.height=X,k=Math.round(l.y1),m=h[g].lineCoordinates.y1=k+X+T-V,h[g].lineCoordinates.y2=k,"inside"===h[g].labelPlacement&&0<g&&(h[g].lineCoordinates.y1=
657
- h[g-1].lineCoordinates.y1-V-(h[g].labelEffectiveHeight||0)),"inside"===h[g].tickPlacement&&0<g&&(h[g].lineCoordinates.y1-=h[g].tickLength),h[g].bounds={x1:d,y1:k+(X+T-y[g]-V),x2:v,y2:m,width:v-d},h[g].bounds.height=h[g].bounds.y2-h[g].bounds.y1,V+=y[g]+h[g].margin;if(c&&0<c.length)for(g=0;g<c.length;g++)S=n.isNavigator?0:10,c[g]&&(d=Math.round(a[0]?a[0].lineCoordinates.x1:h[0].lineCoordinates.x1),S=c[g]._labels&&0<c[g]._labels.length?c[g]._labels[c[g]._labels.length-1].textBlock.height/2:p,k=Math.round(l.y1+
658
- X+T<Math.max(S,p)?Math.max(S,p):l.y1+X+T),v=Math.round(a[0]?a[0].lineCoordinates.x1:h[0].lineCoordinates.x1),S=0<a.length?0:c[g]._labels&&0<c[g]._labels.length?c[g]._labels[0].textBlock.height/2:p,m=Math.round(l.y2-$-e-S),c[g].lineCoordinates={x1:d-R,y1:k,x2:v-R,y2:m,height:Math.abs(m-k)},"inside"===c[g].labelPlacement&&0<g&&(c[g].lineCoordinates.x1=c[g-1].lineCoordinates.x1-R-(c[g].labelEffectiveWidth||0),c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),"inside"===c[g].tickPlacement&&
659
- 0<g&&(c[g].lineCoordinates.x1-=c[g].tickLength,c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),c[g].bounds={x1:d-(x[g]+R),y1:k,x2:v-R,y2:m,height:m-k},c[g].bounds.width=c[g].bounds.x2-c[g].bounds.x1,c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.height?c[g].titleMaxWidth:c[g].lineCoordinates.height),R+=x[g]+c[g].margin);if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&(d=Math.round(a[0]?a[0].lineCoordinates.x2:h[0].lineCoordinates.x2),
660
- v=Math.round(d),S=b[g]._labels&&0<b[g]._labels.length?b[g]._labels[b[g]._labels.length-1].textBlock.height/2:0,k=Math.round(l.y1+X+T<Math.max(S,p)?Math.max(S,p):l.y1+X+T),S=0<a.length?0:b[g]._labels&&0<b[g]._labels.length?b[g]._labels[0].textBlock.height/2:0,m=Math.round(l.y2-($+e+S)),b[g].lineCoordinates={x1:d+Z,y1:k,x2:d+Z,y2:m,height:Math.abs(m-k)},"inside"===b[g].labelPlacement&&0<g&&(b[g].lineCoordinates.x1=b[g-1].lineCoordinates.x2+Z+(b[g].labelEffectiveWidth||0),b[g].lineCoordinates.x2=b[g].lineCoordinates.x1+
661
- b[g].lineThickness/2),"inside"===b[g].tickPlacement&&0<g&&(b[g].lineCoordinates.x1+=b[g].tickLength,b[g].lineCoordinates.x2=b[g].lineCoordinates.x1+b[g].lineThickness/2),b[g].bounds={x1:d+Z,y1:k,x2:v+(A[g]+Z),y2:m,height:m-k},b[g].bounds.width=b[g].bounds.x2-b[g].bounds.x1,b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.height?b[g].titleMaxWidth:b[g].lineCoordinates.height),Z+=A[g]+b[g].margin);if(a&&0<a.length)for(g=0;g<a.length;g++)a[g]&&
662
- (a[g].calculateValueToPixelConversionParameters(),a[g].calculateBreaksSizeInValues(),a[g]._labels&&1<a[g]._labels.length&&(E=(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,d=a[g]._labels[a[g]._labels.length-("dateTime"===a[g].valueType?2:1)].position,d=a[g].getApparentDifference(a[g].viewportMinimum,d),D=a[g].logarithmic?
663
- (1<d?Math.log(d)/a[g].conversionParameters.lnLogarithmBase*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1:(0<d?d*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1));if(h&&0<h.length)for(g=0;g<h.length;g++)h[g].calculateValueToPixelConversionParameters(),h[g].calculateBreaksSizeInValues(),h[g]._labels&&1<h[g]._labels.length&&(E=(h[g].logarithmic?Math.log(h[g]._labels[1].position/h[g].viewportMinimum)/h[g].conversionParameters.lnLogarithmBase:h[g]._labels[1].position-
664
- h[g].viewportMinimum)*Math.abs(h[g].conversionParameters.pixelPerUnit)+h[g].lineCoordinates.x1,d=h[g]._labels[h[g]._labels.length-("dateTime"===h[g].valueType?2:1)].position,d=h[g].getApparentDifference(h[g].viewportMinimum,d),D=h[g].logarithmic?(1<d?Math.log(d)/h[g].conversionParameters.lnLogarithmBase*Math.abs(h[g].conversionParameters.pixelPerUnit):0)+h[g].lineCoordinates.x1:(0<d?d*Math.abs(h[g].conversionParameters.pixelPerUnit):0)+h[g].lineCoordinates.x1);for(g=0;g<q.length;g++)"axisY"===q[g].type&&
665
- (q[g].calculateValueToPixelConversionParameters(),q[g].calculateBreaksSizeInValues());if(0<r){if(a&&0<a.length)for(g=0;g<a.length;g++)t=O[r-1][g]===O[r][g]?!0:!1;else t=!0;if(h&&0<h.length)for(g=0;g<h.length;g++)K=P[r-1][g]===P[r][g]?!0:!1;else K=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)J=Q[r-1][g]===Q[r][g]?!0:!1;else J=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)L=M[r-1][g]===M[r][g]?!0:!1;else L=!0}if(t&&K&&J&&L)break;r++}if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),
666
- a[g].calculateBreaksInPixels();if(h&&0<h.length)for(g=0;g<h.length;g++)h[g].calculateStripLinesThicknessInValues(),h[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=[];E=[];F=[];u=[];D=[];s=[];O=[];for(P=[];4>r;){$=Z=R=ba=S=T=e=M=Q=H=X=0;if(a&&0<a.length)for(F=[],g=Z=0;g<a.length;g++)F.push(Math.ceil(a[g]?
667
- a[g].createLabelsAndCalculateWidth():0)),Z+=F[g],e+=a[g]&&!n.isNavigator?a[g].margin:0;else F.push(Math.ceil(a[0]?a[0].createLabelsAndCalculateWidth():0));O.push(F);if(h&&0<h.length)for(u=[],g=$=0;g<h.length;g++)u.push(Math.ceil(h[g]?h[g].createLabelsAndCalculateWidth():0)),$+=u[g],T+=h[g]?h[g].margin:0;else u.push(Math.ceil(h[0]?h[0].createLabelsAndCalculateWidth():0));P.push(u);if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].lineCoordinates={},d=Math.round(l.x1+Z+e),v=Math.round(l.x2-$-T>n.width-10?
668
- n.width-10:l.x2-$-T),c[g].labelAutoFit&&!f(w)&&(0<!a.length&&(d=0>c[g].labelAngle?Math.max(d,w):0===c[g].labelAngle?Math.max(d,w/2):d),0<!h.length&&(v=0<c[g].labelAngle?v-y/2:0===c[g].labelAngle?v-y/2:v)),c[g].lineCoordinates.x1=d,c[g].lineCoordinates.x2=v,c[g].lineCoordinates.width=Math.abs(v-d),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=
669
- {},d=Math.round(l.x1+Z+e),v=Math.round(l.x2-$-T>b[g].chart.width-10?b[g].chart.width-10:l.x2-$-T),b[g]&&b[g].labelAutoFit&&!f(x)&&(0<!a.length&&(d=0<b[g].labelAngle?Math.max(d,x):0===b[g].labelAngle?Math.max(d,x/2):d),0<!h.length&&(v-=A/2)),b[g].lineCoordinates.x1=d,b[g].lineCoordinates.x2=v,b[g].lineCoordinates.width=Math.abs(v-d),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=
670
- [],g=R=0;g<c.length;g++)p.push(Math.ceil(c[g]?c[g].createLabelsAndCalculateHeight():0)),R+=p[g]+c[g].margin,S+=c[g].margin;else p.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateHeight():0));D.push(p);if(b&&0<b.length)for(E=[],g=0;g<b.length;g++)E.push(Math.ceil(b[g]?b[g].createLabelsAndCalculateHeight():0)),ba+=b[g].margin;else E.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateHeight():0));s.push(E);if(c&&0<c.length)for(g=0;g<c.length;g++)0<c[g]._labels.length&&(m=c[g]._labels[0],k=c[g]._labels[c[g]._labels.length-
649
+ M.push(A);d=Math.round(l.x1+U+S);u=Math.round(l.x2-aa-ba>n.width-p?n.width-p:l.x2-aa-ba);if(a&&0<a.length)for(w=[],g=$=0;g<a.length;g++)a[g]&&(a[g].lineCoordinates={}),a[g].lineCoordinates.width=Math.abs(u-d),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[g],e+=a[g]&&!n.isNavigator?a[g].margin:0;else w.push(Math.ceil(a[0]?
650
+ a[0].createLabelsAndCalculateHeight():0));O.push(w);if(h&&0<h.length)for(y=[],g=X=0;g<h.length;g++)h[g]&&(h[g].lineCoordinates={}),h[g].lineCoordinates.width=Math.abs(u-d),h[g].title&&(h[g]._titleTextBlock.maxWidth=0<h[g].titleMaxWidth&&h[g].titleMaxWidth<h[g].lineCoordinates.width?h[g].titleMaxWidth:h[g].lineCoordinates.width),y.push(Math.ceil(h[g]?h[g].createLabelsAndCalculateHeight():0)),X+=y[g],T+=h[g]&&!n.isNavigator?h[g].margin:0;else y.push(Math.ceil(h[0]?h[0].createLabelsAndCalculateHeight():
651
+ 0));P.push(y);if(a&&0<a.length)for(g=0;g<a.length;g++)a[g]&&(a[g].lineCoordinates.x1=d,u=Math.round(l.x2-aa-ba>n.width-p?n.width-p:l.x2-aa-ba),a[g]._labels&&1<a[g]._labels.length&&(k=m=0,m=a[g]._labels[1],k="dateTime"===a[g].valueType?a[g]._labels[a[g]._labels.length-2]:a[g]._labels[a[g]._labels.length-1],v=m.textBlock.width*Math.cos(Math.PI/180*Math.abs(m.textBlock.angle))+(m.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(m.textBlock.angle)),t=k.textBlock.width*Math.cos(Math.PI/
652
+ 180*Math.abs(k.textBlock.angle))+(k.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle))),!a[g]||(!a[g].labelAutoFit||f(E)||f(D)||n.isNavigator||n.stockChart)||(k=0,0<a[g].labelAngle?D+t>u&&(k+=0<a[g].labelAngle?D+t-u-aa:0):0>a[g].labelAngle?E-v<d&&E-v<a[g].viewportMinimum&&(F=d-(S+a[g].tickLength+x+E-v+a[g].labelFontSize/2)):0===a[g].labelAngle&&(D+t>u&&(k=D+t/2-u-aa),E-v<d&&E-v<a[g].viewportMinimum&&(F=d-S-a[g].tickLength-x-E+v/2)),a[g].viewportMaximum===a[g].maximum&&
653
+ a[g].viewportMinimum===a[g].minimum&&0<a[g].labelAngle&&0<k?u-=k:a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0>a[g].labelAngle&&0<F?d+=F:a[g].viewportMaximum===a[g].maximum&&a[g].viewportMinimum===a[g].minimum&&0===a[g].labelAngle&&(0<F&&(d+=F),0<k&&(u-=k))),n.panEnabled?$=f(n.sessionVariables.axisX.height)||n.stockChart?n.sessionVariables.axisX.height=$:n.sessionVariables.axisX.height:n.sessionVariables.axisX.height=$,k=Math.round(l.y2-$-e+H),m=Math.round(l.y2),a[g].lineCoordinates.x2=
654
+ u,a[g].lineCoordinates.width=u-d,a[g].lineCoordinates.y1=k,a[g].lineCoordinates.y2=k,"inside"===a[g].labelPlacement&&0<g&&(a[g].lineCoordinates.y1=a[g-1].lineCoordinates.y2+H+(a[g].labelEffectiveHeight||0),a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2),"inside"===a[g].tickPlacement&&0<g&&(a[g].lineCoordinates.y1+=a[g].tickLength,a[g].lineCoordinates.y2=a[g].lineCoordinates.y1+a[g].lineThickness/2),a[g].bounds={x1:d,y1:k,x2:u,y2:m-($+e-w[g]-H),width:u-d},a[g].bounds.height=a[g].bounds.y2-
655
+ a[g].bounds.y1),H+=w[g]+a[g].margin;if(h&&0<h.length)for(g=0;g<h.length;g++)h[g].lineCoordinates.x1=Math.round(l.x1+U+S),h[g].lineCoordinates.x2=Math.round(l.x2-aa-ba>n.width-p?n.width-p:l.x2-aa-ba),h[g].lineCoordinates.width=Math.abs(u-d),h[g]._labels&&1<h[g]._labels.length&&(m=h[g]._labels[1],k="dateTime"===h[g].valueType?h[g]._labels[h[g]._labels.length-2]:h[g]._labels[h[g]._labels.length-1],v=m.textBlock.width*Math.cos(Math.PI/180*Math.abs(m.textBlock.angle))+(m.textBlock.height-k.textBlock.fontSize/
656
+ 2)*Math.sin(Math.PI/180*Math.abs(m.textBlock.angle)),t=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle))),n.panEnabled?X=f(n.sessionVariables.axisX2.height)||n.stockChart?n.sessionVariables.axisX2.height=X:n.sessionVariables.axisX2.height:n.sessionVariables.axisX2.height=X,k=Math.round(l.y1),m=h[g].lineCoordinates.y1=k+X+T-V,h[g].lineCoordinates.y2=k,"inside"===h[g].labelPlacement&&0<g&&
657
+ (h[g].lineCoordinates.y1=h[g-1].lineCoordinates.y1-V-(h[g].labelEffectiveHeight||0)),"inside"===h[g].tickPlacement&&0<g&&(h[g].lineCoordinates.y1-=h[g].tickLength),h[g].bounds={x1:d,y1:k+(X+T-y[g]-V),x2:u,y2:m,width:u-d},h[g].bounds.height=h[g].bounds.y2-h[g].bounds.y1,V+=y[g]+h[g].margin;if(c&&0<c.length)for(g=0;g<c.length;g++)S=n.isNavigator?0:10,c[g]&&(d=Math.round(a[0]?a[0].lineCoordinates.x1:h[0].lineCoordinates.x1),S=c[g]._labels&&0<c[g]._labels.length?c[g]._labels[c[g]._labels.length-1].textBlock.height/
658
+ 2:p,k=Math.round(l.y1+X+T<Math.max(S,p)?Math.max(S,p):l.y1+X+T),u=Math.round(a[0]?a[0].lineCoordinates.x1:h[0].lineCoordinates.x1),S=0<a.length?0:c[g]._labels&&0<c[g]._labels.length?c[g]._labels[0].textBlock.height/2:p,m=Math.round(l.y2-$-e-S),c[g].lineCoordinates={x1:d-R,y1:k,x2:u-R,y2:m,height:Math.abs(m-k)},"inside"===c[g].labelPlacement&&0<g&&(c[g].lineCoordinates.x1=c[g-1].lineCoordinates.x1-R-(c[g].labelEffectiveWidth||0),c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),
659
+ "inside"===c[g].tickPlacement&&0<g&&(c[g].lineCoordinates.x1-=c[g].tickLength,c[g].lineCoordinates.x2=c[g].lineCoordinates.x1+c[g].lineThickness/2),c[g].bounds={x1:d-(x[g]+R),y1:k,x2:u-R,y2:m,height:m-k},c[g].bounds.width=c[g].bounds.x2-c[g].bounds.x1,c[g].title&&(c[g]._titleTextBlock.maxWidth=0<c[g].titleMaxWidth&&c[g].titleMaxWidth<c[g].lineCoordinates.height?c[g].titleMaxWidth:c[g].lineCoordinates.height),R+=x[g]+c[g].margin);if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&(d=Math.round(a[0]?a[0].lineCoordinates.x2:
660
+ h[0].lineCoordinates.x2),u=Math.round(d),S=b[g]._labels&&0<b[g]._labels.length?b[g]._labels[b[g]._labels.length-1].textBlock.height/2:0,k=Math.round(l.y1+X+T<Math.max(S,p)?Math.max(S,p):l.y1+X+T),S=0<a.length?0:b[g]._labels&&0<b[g]._labels.length?b[g]._labels[0].textBlock.height/2:0,m=Math.round(l.y2-($+e+S)),b[g].lineCoordinates={x1:d+Z,y1:k,x2:d+Z,y2:m,height:Math.abs(m-k)},"inside"===b[g].labelPlacement&&0<g&&(b[g].lineCoordinates.x1=b[g-1].lineCoordinates.x2+Z+(b[g].labelEffectiveWidth||0),b[g].lineCoordinates.x2=
661
+ b[g].lineCoordinates.x1+b[g].lineThickness/2),"inside"===b[g].tickPlacement&&0<g&&(b[g].lineCoordinates.x1+=b[g].tickLength,b[g].lineCoordinates.x2=b[g].lineCoordinates.x1+b[g].lineThickness/2),b[g].bounds={x1:d+Z,y1:k,x2:u+(A[g]+Z),y2:m,height:m-k},b[g].bounds.width=b[g].bounds.x2-b[g].bounds.x1,b[g].title&&(b[g]._titleTextBlock.maxWidth=0<b[g].titleMaxWidth&&b[g].titleMaxWidth<b[g].lineCoordinates.height?b[g].titleMaxWidth:b[g].lineCoordinates.height),Z+=A[g]+b[g].margin);if(a&&0<a.length)for(g=
662
+ 0;g<a.length;g++)a[g]&&(a[g].calculateValueToPixelConversionParameters(),a[g].calculateBreaksSizeInValues(),a[g]._labels&&1<a[g]._labels.length&&(E=(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,d=a[g]._labels[a[g]._labels.length-("dateTime"===a[g].valueType?2:1)].position,d=a[g].getApparentDifference(a[g].viewportMinimum,
663
+ d),D=a[g].logarithmic?(1<d?Math.log(d)/a[g].conversionParameters.lnLogarithmBase*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1:(0<d?d*Math.abs(a[g].conversionParameters.pixelPerUnit):0)+a[g].lineCoordinates.x1));if(h&&0<h.length)for(g=0;g<h.length;g++)h[g].calculateValueToPixelConversionParameters(),h[g].calculateBreaksSizeInValues(),h[g]._labels&&1<h[g]._labels.length&&(E=(h[g].logarithmic?Math.log(h[g]._labels[1].position/h[g].viewportMinimum)/h[g].conversionParameters.lnLogarithmBase:
664
+ h[g]._labels[1].position-h[g].viewportMinimum)*Math.abs(h[g].conversionParameters.pixelPerUnit)+h[g].lineCoordinates.x1,d=h[g]._labels[h[g]._labels.length-("dateTime"===h[g].valueType?2:1)].position,d=h[g].getApparentDifference(h[g].viewportMinimum,d),D=h[g].logarithmic?(1<d?Math.log(d)/h[g].conversionParameters.lnLogarithmBase*Math.abs(h[g].conversionParameters.pixelPerUnit):0)+h[g].lineCoordinates.x1:(0<d?d*Math.abs(h[g].conversionParameters.pixelPerUnit):0)+h[g].lineCoordinates.x1);for(g=0;g<q.length;g++)"axisY"===
665
+ q[g].type&&(q[g].calculateValueToPixelConversionParameters(),q[g].calculateBreaksSizeInValues());if(0<r){if(a&&0<a.length)for(g=0;g<a.length;g++)s=O[r-1][g]===O[r][g]?!0:!1;else s=!0;if(h&&0<h.length)for(g=0;g<h.length;g++)K=P[r-1][g]===P[r][g]?!0:!1;else K=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)J=Q[r-1][g]===Q[r][g]?!0:!1;else J=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)L=M[r-1][g]===M[r][g]?!0:!1;else L=!0}if(s&&K&&J&&L)break;r++}if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),
666
+ a[g].calculateBreaksInPixels();if(h&&0<h.length)for(g=0;g<h.length;g++)h[g].calculateStripLinesThicknessInValues(),h[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=[];E=[];F=[];v=[];D=[];t=[];O=[];for(P=[];4>r;){$=Z=R=ba=S=T=e=M=Q=H=X=0;if(a&&0<a.length)for(F=[],g=Z=0;g<a.length;g++)F.push(Math.ceil(a[g]?
667
+ a[g].createLabelsAndCalculateWidth():0)),Z+=F[g],e+=a[g]&&!n.isNavigator?a[g].margin:0;else F.push(Math.ceil(a[0]?a[0].createLabelsAndCalculateWidth():0));O.push(F);if(h&&0<h.length)for(v=[],g=$=0;g<h.length;g++)v.push(Math.ceil(h[g]?h[g].createLabelsAndCalculateWidth():0)),$+=v[g],T+=h[g]?h[g].margin:0;else v.push(Math.ceil(h[0]?h[0].createLabelsAndCalculateWidth():0));P.push(v);if(c&&0<c.length)for(g=0;g<c.length;g++)c[g].lineCoordinates={},d=Math.round(l.x1+Z+e),u=Math.round(l.x2-$-T>n.width-10?
668
+ n.width-10:l.x2-$-T),c[g].labelAutoFit&&!f(w)&&(0<!a.length&&(d=0>c[g].labelAngle?Math.max(d,w):0===c[g].labelAngle?Math.max(d,w/2):d),0<!h.length&&(u=0<c[g].labelAngle?u-y/2:0===c[g].labelAngle?u-y/2:u)),c[g].lineCoordinates.x1=d,c[g].lineCoordinates.x2=u,c[g].lineCoordinates.width=Math.abs(u-d),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=
669
+ {},d=Math.round(l.x1+Z+e),u=Math.round(l.x2-$-T>b[g].chart.width-10?b[g].chart.width-10:l.x2-$-T),b[g]&&b[g].labelAutoFit&&!f(x)&&(0<!a.length&&(d=0<b[g].labelAngle?Math.max(d,x):0===b[g].labelAngle?Math.max(d,x/2):d),0<!h.length&&(u-=A/2)),b[g].lineCoordinates.x1=d,b[g].lineCoordinates.x2=u,b[g].lineCoordinates.width=Math.abs(u-d),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=
670
+ [],g=R=0;g<c.length;g++)p.push(Math.ceil(c[g]?c[g].createLabelsAndCalculateHeight():0)),R+=p[g]+c[g].margin,S+=c[g].margin;else p.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateHeight():0));D.push(p);if(b&&0<b.length)for(E=[],g=0;g<b.length;g++)E.push(Math.ceil(b[g]?b[g].createLabelsAndCalculateHeight():0)),ba+=b[g].margin;else E.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateHeight():0));t.push(E);if(c&&0<c.length)for(g=0;g<c.length;g++)0<c[g]._labels.length&&(m=c[g]._labels[0],k=c[g]._labels[c[g]._labels.length-
671
671
  1],w=m.textBlock.width*Math.cos(Math.PI/180*Math.abs(m.textBlock.angle))+(m.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(m.textBlock.angle)),y=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle)));if(b&&0<b.length)for(g=0;g<b.length;g++)b[g]&&0<b[g]._labels.length&&(m=b[g]._labels[0],k=b[g]._labels[b[g]._labels.length-1],x=m.textBlock.width*Math.cos(Math.PI/180*Math.abs(m.textBlock.angle))+
672
672
  (m.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(m.textBlock.angle)),A=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(k.textBlock.angle)));if(n.panEnabled)for(g=0;g<c.length;g++)p[g]=f(n.sessionVariables.axisY[g].height)?n.sessionVariables.axisY[g].height=p[g]:n.sessionVariables.axisY[g].height;else for(g=0;g<c.length;g++)n.sessionVariables.axisY[g].height=p[g];if(c&&0<c.length)for(g=
673
673
  c.length-1;0<=g;g--)k=Math.round(l.y2),m=Math.round(l.y2>c[g].chart.height?c[g].chart.height:l.y2),c[g].lineCoordinates.y1=k-(p[g]+c[g].margin+X),c[g].lineCoordinates.y2=k-(p[g]+c[g].margin+X),"inside"===c[g].labelPlacement&&0<g&&(c[g].lineCoordinates.y1=c[g].lineCoordinates.y1+p[g]-(c[g]._titleTextBlock?c[g]._titleTextBlock.height:0)-c[g].tickLength-(c[g].stripLineLabelEffectiveHeight||0)-5,c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/2),"inside"===c[g].tickPlacement&&0<g&&
674
- (c[g].lineCoordinates.y1+=c[g].tickLength,c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/2),c[g].bounds={x1:d,y1:k-(p[g]+X+c[g].margin),x2:v,y2:m-(X+c[g].margin),width:v-d,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),X+=p[g]+c[g].margin;if(b&&0<b.length)for(g=b.length-1;0<=g;g--)b[g]&&(k=Math.round(l.y1),m=Math.round(l.y1+(E[g]+b[g].margin+H)),b[g].lineCoordinates.y1=
675
- m,b[g].lineCoordinates.y2=m,"inside"===b[g].labelPlacement&&0<g&&(b[g].lineCoordinates.y1=m-E[g]+(b[g]._titleTextBlock?b[g]._titleTextBlock.height:0)+b[g].tickLength+(b[g].stripLineLabelEffectiveHeight||0),b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),"inside"===b[g].tickPlacement&&0<g&&(b[g].lineCoordinates.y1-=b[g].tickLength,b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),b[g].bounds={x1:d,y1:k+(b[g].margin+H),x2:v,y2:m,width:v-d},b[g].bounds.height=
676
- 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),H+=E[g]+b[g].margin);if(a&&0<a.length)for(g=0;g<a.length;g++){S=a[g]._labels&&0<a[g]._labels.length?a[g]._labels[0].textBlock.fontSize/2:0;d=Math.round(l.x1+e);k=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:l.y1<Math.max(S,10)?Math.max(S,10):l.y1):l.y1<Math.max(S,10)?Math.max(S,10):l.y1;v=Math.round(l.x1+
677
- Z+e);m=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:l.y2-R>n.height-Math.max(S,10)?n.height-Math.max(S,10):l.y2-R):l.y2>n.height-Math.max(S,10)?n.height-Math.max(S,10):l.y2;if(c&&0<c.length)for(S=0;S<c.length;S++)c[S]&&c[S].labelAutoFit&&(v=c[S].lineCoordinates.x1,d=0>c[S].labelAngle||0===c[S].labelAngle?v-Z:d);if(b&&0<b.length)for(S=0;S<b.length;S++)b[S]&&b[S].labelAutoFit&&(v=b[S].lineCoordinates.x1,d=v-Z);a[g].lineCoordinates={x1:v-Q,y1:k,x2:v-Q,y2:m,height:Math.abs(m-k)};"inside"===a[g].labelPlacement&&
678
- 0<g&&(a[g].lineCoordinates.x1=a[g].lineCoordinates.x1-(F[g]-(a[g]._titleTextBlock?a[g]._titleTextBlock.height:0))+a[g].tickLength+(a[g].stripLineLabelEffectiveWidth||0),a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);"inside"===a[g].tickPlacement&&0<g&&(a[g].lineCoordinates.x1-=a[g].tickLength,a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);a[g].bounds={x1:v-(F[g]+Q),y1:k,x2:v-Q,y2:m,height:m-k};a[g].bounds.width=a[g].bounds.x2-a[g].bounds.x1;a[g].title&&
674
+ (c[g].lineCoordinates.y1+=c[g].tickLength,c[g].lineCoordinates.y2=c[g].lineCoordinates.y1+c[g].lineThickness/2),c[g].bounds={x1:d,y1:k-(p[g]+X+c[g].margin),x2:u,y2:m-(X+c[g].margin),width:u-d,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),X+=p[g]+c[g].margin;if(b&&0<b.length)for(g=b.length-1;0<=g;g--)b[g]&&(k=Math.round(l.y1),m=Math.round(l.y1+(E[g]+b[g].margin+H)),b[g].lineCoordinates.y1=
675
+ m,b[g].lineCoordinates.y2=m,"inside"===b[g].labelPlacement&&0<g&&(b[g].lineCoordinates.y1=m-E[g]+(b[g]._titleTextBlock?b[g]._titleTextBlock.height:0)+b[g].tickLength+(b[g].stripLineLabelEffectiveHeight||0),b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),"inside"===b[g].tickPlacement&&0<g&&(b[g].lineCoordinates.y1-=b[g].tickLength,b[g].lineCoordinates.y2=b[g].lineCoordinates.y1-b[g].lineThickness/2),b[g].bounds={x1:d,y1:k+(b[g].margin+H),x2:u,y2:m,width:u-d},b[g].bounds.height=
676
+ 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),H+=E[g]+b[g].margin);if(a&&0<a.length)for(g=0;g<a.length;g++){S=a[g]._labels&&0<a[g]._labels.length?a[g]._labels[0].textBlock.fontSize/2:0;d=Math.round(l.x1+e);k=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:l.y1<Math.max(S,10)?Math.max(S,10):l.y1):l.y1<Math.max(S,10)?Math.max(S,10):l.y1;u=Math.round(l.x1+
677
+ Z+e);m=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:l.y2-R>n.height-Math.max(S,10)?n.height-Math.max(S,10):l.y2-R):l.y2>n.height-Math.max(S,10)?n.height-Math.max(S,10):l.y2;if(c&&0<c.length)for(S=0;S<c.length;S++)c[S]&&c[S].labelAutoFit&&(u=c[S].lineCoordinates.x1,d=0>c[S].labelAngle||0===c[S].labelAngle?u-Z:d);if(b&&0<b.length)for(S=0;S<b.length;S++)b[S]&&b[S].labelAutoFit&&(u=b[S].lineCoordinates.x1,d=u-Z);a[g].lineCoordinates={x1:u-Q,y1:k,x2:u-Q,y2:m,height:Math.abs(m-k)};"inside"===a[g].labelPlacement&&
678
+ 0<g&&(a[g].lineCoordinates.x1=a[g].lineCoordinates.x1-(F[g]-(a[g]._titleTextBlock?a[g]._titleTextBlock.height:0))+a[g].tickLength+(a[g].stripLineLabelEffectiveWidth||0),a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);"inside"===a[g].tickPlacement&&0<g&&(a[g].lineCoordinates.x1-=a[g].tickLength,a[g].lineCoordinates.x2=a[g].lineCoordinates.x1+a[g].lineThickness/2);a[g].bounds={x1:u-(F[g]+Q),y1:k,x2:u-Q,y2:m,height:m-k};a[g].bounds.width=a[g].bounds.x2-a[g].bounds.x1;a[g].title&&
679
679
  (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();Q+=F[g]+a[g].margin}if(h&&0<h.length)for(g=0;g<h.length;g++){S=h[g]._labels&&0<h[g]._labels.length?h[g]._labels[0].textBlock.fontSize/2:0;d=Math.round(l.x1-e);k=b&&0<b.length?Math.round(b[0]?b[0].lineCoordinates.y2:l.y1<Math.max(S,10)?Math.max(S,10):l.y1):l.y1<Math.max(S,
680
- 10)?Math.max(S,10):l.y1;v=Math.round(l.x2-$-T);m=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:l.y2-R>n.height-Math.max(S,10)?n.height-Math.max(S,10):l.y2-R):l.y2>n.height-Math.max(S,10)?n.height-Math.max(S,10):l.y2;if(c&&0<c.length)for(S=0;S<c.length;S++)c[S]&&c[S].labelAutoFit&&(v=0>c[S].labelAngle?Math.max(v,w):0===c[S].labelAngle?Math.max(v,w/2):v,d=0>c[S].labelAngle||0===c[S].labelAngle?v-$:d);if(b&&0<b.length)for(S=0;S<b.length;S++)b[S]&&b[S].labelAutoFit&&(v=b[S].lineCoordinates.x2,
681
- d=v-$);h[g].lineCoordinates={x1:v+M,y1:k,x2:v+M,y2:m,height:Math.abs(m-k)};"inside"===h[g].labelPlacement&&0<g&&(h[g].lineCoordinates.x1=h[g].lineCoordinates.x1+(u[g]-(h[g]._titleTextBlock?h[g]._titleTextBlock.height:0)-2)-h[g].tickLength-(h[g].stripLineLabelEffectiveWidth||0),h[g].lineCoordinates.x2=h[g].lineCoordinates.x1+h[g].lineThickness/2);"inside"===h[g].tickPlacement&&0<g&&(h[g].lineCoordinates.x1+=h[g].tickLength,h[g].lineCoordinates.x2=h[g].lineCoordinates.x1+h[g].lineThickness/2);h[g].bounds=
682
- {x1:h[g].lineCoordinates.x1,y1:k,x2:v+u[g]+M,y2:m,width:v-d,height:m-k};h[g].bounds.width=h[g].bounds.x2-h[g].bounds.x1;h[g].title&&(h[g]._titleTextBlock.maxWidth=0<h[g].titleMaxWidth&&h[g].titleMaxWidth<h[g].lineCoordinates.height?h[g].titleMaxWidth:h[g].lineCoordinates.height);h[g].calculateValueToPixelConversionParameters();h[g].calculateBreaksSizeInValues();M+=u[g]+h[g].margin}for(g=0;g<q.length;g++)"axisY"===q[g].type&&(q[g].calculateValueToPixelConversionParameters(),q[g].calculateBreaksSizeInValues());
683
- if(0<r){if(a&&0<a.length)for(g=0;g<a.length;g++)t=O[r-1][g]===O[r][g]?!0:!1;else t=!0;if(h&&0<h.length)for(g=0;g<h.length;g++)K=P[r-1][g]===P[r][g]?!0:!1;else K=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)J=D[r-1][g]===D[r][g]?!0:!1;else J=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)L=s[r-1][g]===s[r][g]?!0:!1;else L=!0}if(t&&K&&J&&L)break;r++}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(),
680
+ 10)?Math.max(S,10):l.y1;u=Math.round(l.x2-$-T);m=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:l.y2-R>n.height-Math.max(S,10)?n.height-Math.max(S,10):l.y2-R):l.y2>n.height-Math.max(S,10)?n.height-Math.max(S,10):l.y2;if(c&&0<c.length)for(S=0;S<c.length;S++)c[S]&&c[S].labelAutoFit&&(u=0>c[S].labelAngle?Math.max(u,w):0===c[S].labelAngle?Math.max(u,w/2):u,d=0>c[S].labelAngle||0===c[S].labelAngle?u-$:d);if(b&&0<b.length)for(S=0;S<b.length;S++)b[S]&&b[S].labelAutoFit&&(u=b[S].lineCoordinates.x2,
681
+ d=u-$);h[g].lineCoordinates={x1:u+M,y1:k,x2:u+M,y2:m,height:Math.abs(m-k)};"inside"===h[g].labelPlacement&&0<g&&(h[g].lineCoordinates.x1=h[g].lineCoordinates.x1+(v[g]-(h[g]._titleTextBlock?h[g]._titleTextBlock.height:0)-2)-h[g].tickLength-(h[g].stripLineLabelEffectiveWidth||0),h[g].lineCoordinates.x2=h[g].lineCoordinates.x1+h[g].lineThickness/2);"inside"===h[g].tickPlacement&&0<g&&(h[g].lineCoordinates.x1+=h[g].tickLength,h[g].lineCoordinates.x2=h[g].lineCoordinates.x1+h[g].lineThickness/2);h[g].bounds=
682
+ {x1:h[g].lineCoordinates.x1,y1:k,x2:u+v[g]+M,y2:m,width:u-d,height:m-k};h[g].bounds.width=h[g].bounds.x2-h[g].bounds.x1;h[g].title&&(h[g]._titleTextBlock.maxWidth=0<h[g].titleMaxWidth&&h[g].titleMaxWidth<h[g].lineCoordinates.height?h[g].titleMaxWidth:h[g].lineCoordinates.height);h[g].calculateValueToPixelConversionParameters();h[g].calculateBreaksSizeInValues();M+=v[g]+h[g].margin}for(g=0;g<q.length;g++)"axisY"===q[g].type&&(q[g].calculateValueToPixelConversionParameters(),q[g].calculateBreaksSizeInValues());
683
+ if(0<r){if(a&&0<a.length)for(g=0;g<a.length;g++)s=O[r-1][g]===O[r][g]?!0:!1;else s=!0;if(h&&0<h.length)for(g=0;g<h.length;g++)K=P[r-1][g]===P[r][g]?!0:!1;else K=!0;if(c&&0<c.length)for(g=0;g<c.length;g++)J=D[r-1][g]===D[r][g]?!0:!1;else J=!0;if(b&&0<b.length)for(g=0;g<b.length;g++)L=t[r-1][g]===t[r][g]?!0:!1;else L=!0}if(s&&K&&J&&L)break;r++}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(),
684
684
  b[g].calculateBreaksInPixels();if(a&&0<a.length)for(g=0;g<a.length;g++)a[g].calculateStripLinesThicknessInValues(),a[g].calculateBreaksInPixels();if(h&&0<h.length)for(g=0;g<h.length;g++)h[g].calculateStripLinesThicknessInValues(),h[g].calculateBreaksInPixels()}};A.render=function(a,h,c,b,e){var l=a[0]?a[0].chart:h[0].chart;e=l.ctx;l.alignVerticalAxes&&l.alignVerticalAxes();e.save();e.beginPath();a&&a.length&&e.rect(5,a[0].bounds.y1,a[0].chart.width-10,a[a.length-1].bounds.y2);h&&h.length&&e.rect(5,
685
685
  h[h.length-1].bounds.y1,h[0].chart.width-10,h[0].bounds.y2);e.clip();if(a&&0<a.length)for(var d=0;d<a.length;d++)a[d].renderLabelsTicksAndTitle();if(h&&0<h.length)for(d=0;d<h.length;d++)h[d].renderLabelsTicksAndTitle();e.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();l.preparePlotArea();l=l.plotArea;e.save();e.beginPath();e.rect(l.x1,l.y1,Math.abs(l.x2-l.x1),Math.abs(l.y2-l.y1));e.clip();if(a&&
686
686
  0<a.length)for(d=0;d<a.length;d++)a[d].renderStripLinesOfThicknessType("value");if(h&&0<h.length)for(d=0;d<h.length;d++)h[d].renderStripLinesOfThicknessType("value");if(c&&0<c.length)for(d=0;d<c.length;d++)c[d].renderStripLinesOfThicknessType("value");if(b&&0<b.length)for(d=0;d<b.length;d++)b[d].renderStripLinesOfThicknessType("value");if(a&&0<a.length)for(d=0;d<a.length;d++)a[d].renderInterlacedColors();if(h&&0<h.length)for(d=0;d<h.length;d++)h[d].renderInterlacedColors();if(c&&0<c.length)for(d=
@@ -690,9 +690,9 @@ if(b&&0<b.length)for(d=0;d<b.length;d++)b[d].renderStripLinesOfThicknessType("pi
690
690
  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||this.chart.width,h=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c=this.conversionParameters.pixelPerUnit||a/(this.logarithmic?this.conversionParameters.maximum/this.conversionParameters.minimum:this.conversionParameters.maximum-
691
691
  this.conversionParameters.minimum),b=this.scaleBreaks&&!f(this.scaleBreaks.options.spacing),e,d=0;d<h.length;d++)e=b||!f(h[d].options.spacing),h[d].spacing=Wa(h[d].spacing,a,8,e?0.1*a:8,e?0:3)<<0,h[d].size=0>h[d].spacing?0:Math.abs(h[d].spacing/c),this.logarithmic&&(h[d].size=Math.pow(this.logarithmBase,h[d].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=
692
692
  this.scaleBreaks.lastBreakIndex=null);for(var h=0;h<a.length&&!(a[h].startValue>this.conversionParameters.maximum);h++)a[h].endValue<this.conversionParameters.minimum||(f(this.scaleBreaks.firstBreakIndex)&&(this.scaleBreaks.firstBreakIndex=h),a[h].startValue>=this.conversionParameters.minimum&&(a[h].startPixel=this.convertValueToPixel(a[h].startValue),this.scaleBreaks.lastBreakIndex=h),a[h].endValue<=this.conversionParameters.maximum&&(a[h].endPixel=this.convertValueToPixel(a[h].endValue)))}};A.prototype.renderLabelsTicksAndTitle=
693
- function(){var a=this,h=!1,c=0,b=0,e=1,d=0;0!==this.labelAngle&&360!==this.labelAngle&&(e=1.2);if("undefined"===typeof this.options.interval){if("bottom"===this._position||"top"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],e=0!==this.labelAngle&&360!==this.labelAngle?1:1.2,f,k=this.viewportMaximum,v=this.lineCoordinates.width/Math.log(this.range),m=this._labels.length-1;0<=m;m--){p=this._labels[m];if(p.position<this.viewportMinimum)break;p.position>
694
- this.viewportMaximum||!(m===this._labels.length-1||f<Math.log(k/p.position)*v/e)||(c.push(p),k=p.position,f=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(m=0;m<this._labels.length;m++)p=this._labels[m],p.position<this.viewportMinimum||(f=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+=f);c>this.lineCoordinates.width*
695
- e&&this.labelAutoFit&&(h=!0)}if("left"===this._position||"right"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],n,k=this.viewportMaximum,v=this.lineCoordinates.height/Math.log(this.range),m=this._labels.length-1;0<=m;m--){p=this._labels[m];if(p.position<this.viewportMinimum)break;p.position>this.viewportMaximum||!(m===this._labels.length-1||n<Math.log(k/p.position)*v)||(c.push(p),k=p.position,n=p.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+
693
+ function(){var a=this,h=!1,c=0,b=0,e=1,d=0;0!==this.labelAngle&&360!==this.labelAngle&&(e=1.2);if("undefined"===typeof this.options.interval){if("bottom"===this._position||"top"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],e=0!==this.labelAngle&&360!==this.labelAngle?1:1.2,f,k=this.viewportMaximum,u=this.lineCoordinates.width/Math.log(this.range),m=this._labels.length-1;0<=m;m--){p=this._labels[m];if(p.position<this.viewportMinimum)break;p.position>
694
+ this.viewportMaximum||!(m===this._labels.length-1||f<Math.log(k/p.position)*u/e)||(c.push(p),k=p.position,f=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(m=0;m<this._labels.length;m++)p=this._labels[m],p.position<this.viewportMinimum||(f=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+=f);c>this.lineCoordinates.width*
695
+ e&&this.labelAutoFit&&(h=!0)}if("left"===this._position||"right"===this._position)if(this.logarithmic&&!this.equidistantInterval&&this.labelAutoFit){for(var c=[],n,k=this.viewportMaximum,u=this.lineCoordinates.height/Math.log(this.range),m=this._labels.length-1;0<=m;m--){p=this._labels[m];if(p.position<this.viewportMinimum)break;p.position>this.viewportMaximum||!(m===this._labels.length-1||n<Math.log(k/p.position)*u)||(c.push(p),k=p.position,n=p.textBlock.height*Math.abs(Math.cos(Math.PI/180*this.labelAngle))+
696
696
  p.textBlock.width*Math.abs(Math.sin(Math.PI/180*this.labelAngle)))}this._labels=c}else{for(m=0;m<this._labels.length;m++)p=this._labels[m],p.position<this.viewportMinimum||(n=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+=n);b>this.lineCoordinates.height*e&&this.labelAutoFit&&(h=!0)}}this.logarithmic&&(!this.equidistantInterval&&this.labelAutoFit)&&this._labels.sort(function(a,b){return a.position-b.position});
697
697
  var m=0,p,q;if("bottom"===this._position){for(m=0;m<this._labels.length;m++)p=this._labels[m],p.position<this.viewportMinimum||p.position>this.viewportMaximum||(q=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?(q.x<<0)+0.5:q.x<<0,this.ctx.beginPath(),this.ctx.moveTo(b,q.y<<0),this.ctx.lineTo(b,q.y+this.tickLength<<0),this.ctx.stroke()),h&&0!==d++%2&&this.labelAutoFit||
698
698
  (0===p.textBlock.angle?(q.x-=p.textBlock.width/2,q.y="inside"===this.labelPlacement?q.y-(("inside"===this.tickPlacement?this.tickLength:0)+p.textBlock.height-p.textBlock.fontSize/2):q.y+("inside"===this.tickPlacement?0:this.tickLength)+p.textBlock.fontSize/2+5):(q.x="inside"===this.labelPlacement?0>this.labelAngle?q.x:q.x-p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):q.x-(0>this.labelAngle?p.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0),q.y="inside"===this.labelPlacement?0>this.labelAngle?
@@ -714,31 +714,31 @@ this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}else if("right"==
714
714
  this.lineCoordinates.height/2-this._titleTextBlock.width/2+this.lineCoordinates.y1,this.titleMaxWidth=this._titleTextBlock.maxWidth,this._titleTextBlock.render(!0))}d=0;if("inside"===this.labelPlacement)this.chart.addEventListener("dataAnimationIterationEnd",function(){for(m=0;m<a._labels.length;m++)p=a._labels[m],p.position<a.viewportMinimum||(p.position>a.viewportMaximum||h&&0!==d++%2&&a.labelAutoFit)||(a.ctx.save(),a.ctx.beginPath(),p.textBlock.render(!0),a.ctx.restore())},this);else for(m=0;m<
715
715
  this._labels.length;m++)p=this._labels[m],p.position<this.viewportMinimum||(p.position>this.viewportMaximum||h&&0!==d++%2&&this.labelAutoFit)||p.textBlock.render(!0)};A.prototype.renderInterlacedColors=function(){var a=this.chart.plotArea.ctx,h,c,b=this.chart.plotArea,e=0;h=!0;if(("bottom"===this._position||"top"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,e=0;e<this._labels.length;e++)h?(h=this.getPixelCoordinatesOnAxis(this._labels[e].position),c=e+1>this._labels.length-
716
716
  1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[e+1].position),a.fillRect(Math.min(c.x,h.x),b.y1,Math.abs(c.x-h.x),Math.abs(b.y1-b.y2)),h=!1):h=!0;else if(("left"===this._position||"right"===this._position)&&this.interlacedColor)for(a.fillStyle=this.interlacedColor,e=0;e<this._labels.length;e++)h?(c=this.getPixelCoordinatesOnAxis(this._labels[e].position),h=e+1>this._labels.length-1?this.getPixelCoordinatesOnAxis(this.viewportMaximum):this.getPixelCoordinatesOnAxis(this._labels[e+
717
- 1].position),a.fillRect(b.x1,Math.min(c.y,h.y),Math.abs(b.x1-b.x2),Math.abs(h.y-c.y)),h=!1):h=!0;a.beginPath()};A.prototype.renderStripLinesOfThicknessType=function(a){if(this.stripLines&&0<this.stripLines.length&&a){var h=this,c,b,e=0,d=0,k=!1;b=!1;for(var v=[],t=[],m=!1,e=0;e<this.stripLines.length;e++){var n=this.stripLines[e];n._thicknessType===a&&("pixel"===a&&(n.value<this.viewportMinimum||n.value>this.viewportMaximum||f(n.value)||isNaN(this.range))||"value"===a&&(n.startValue<=this.viewportMinimum&&
718
- n.endValue<=this.viewportMinimum||n.startValue>=this.viewportMaximum&&n.endValue>=this.viewportMaximum||f(n.startValue)||f(n.endValue)||isNaN(this.range))||v.push(n))}for(e=0;e<this._stripLineLabels.length;e++)if(n=this.stripLines[e],c=this._stripLineLabels[e],!(c.position<this.viewportMinimum||c.position>this.viewportMaximum||isNaN(this.range)))if(b=this.getPixelCoordinatesOnAxis(c.position),"outside"===c.stripLine.labelPlacement){n&&(this.ctx.strokeStyle=n.color,this.ctx.lineWidth="pixel"===n._thicknessType?
717
+ 1].position),a.fillRect(b.x1,Math.min(c.y,h.y),Math.abs(b.x1-b.x2),Math.abs(h.y-c.y)),h=!1):h=!0;a.beginPath()};A.prototype.renderStripLinesOfThicknessType=function(a){if(this.stripLines&&0<this.stripLines.length&&a){var h=this,c,b,e=0,d=0,k=!1;b=!1;for(var u=[],s=[],m=!1,e=0;e<this.stripLines.length;e++){var n=this.stripLines[e];n._thicknessType===a&&("pixel"===a&&(n.value<this.viewportMinimum||n.value>this.viewportMaximum||f(n.value)||isNaN(this.range))||"value"===a&&(n.startValue<=this.viewportMinimum&&
718
+ n.endValue<=this.viewportMinimum||n.startValue>=this.viewportMaximum&&n.endValue>=this.viewportMaximum||f(n.startValue)||f(n.endValue)||isNaN(this.range))||u.push(n))}for(e=0;e<this._stripLineLabels.length;e++)if(n=this.stripLines[e],c=this._stripLineLabels[e],!(c.position<this.viewportMinimum||c.position>this.viewportMaximum||isNaN(this.range)))if(b=this.getPixelCoordinatesOnAxis(c.position),"outside"===c.stripLine.labelPlacement){n&&(this.ctx.strokeStyle=n.color,this.ctx.lineWidth="pixel"===n._thicknessType?
719
719
  n.thickness:this.tickThickness);if("bottom"===this._position){var p=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0;this.ctx.beginPath();this.ctx.moveTo(p,b.y<<0);this.ctx.lineTo(p,b.y+this.tickLength<<0);this.ctx.stroke();0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y+=this.tickLength+c.textBlock.fontSize/2+5):(b.x-=0>this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0,b.y+=this.tickLength+Math.abs(0>this.labelAngle?c.textBlock.width*Math.sin(Math.PI/180*this.labelAngle)-5:
720
720
  5))}else"top"===this._position?(p=1===this.ctx.lineWidth%2?(b.x<<0)+0.5:b.x<<0,this.ctx.beginPath(),this.ctx.moveTo(p,b.y<<0),this.ctx.lineTo(p,b.y-this.tickLength<<0),this.ctx.stroke(),0===this.labelAngle?(b.x-=c.textBlock.width/2,b.y-=this.tickLength+c.textBlock.height-c.textBlock.fontSize/2):(b.x+=(c.textBlock.height-this.tickLength-this.labelFontSize/2)*Math.sin(Math.PI/180*this.labelAngle)-(0<this.labelAngle?c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle):0),b.y-=this.tickLength+(c.textBlock.height*
721
721
  Math.cos(Math.PI/180*this.labelAngle)+(0<this.labelAngle?c.textBlock.width*Math.sin(Math.PI/180*this.labelAngle):0)))):"left"===this._position?(p=1===this.ctx.lineWidth%2?(b.y<<0)+0.5:b.y<<0,this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,p),this.ctx.lineTo(b.x-this.tickLength<<0,p),this.ctx.stroke(),0===this.labelAngle?b.x=b.x-c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)-this.tickLength-5:(b.y-=c.textBlock.width*Math.sin(Math.PI/180*this.labelAngle),b.x=0<this.labelAngle?b.x-c.textBlock.width*
722
722
  Math.cos(Math.PI/180*this.labelAngle)-this.tickLength-5:b.x-c.textBlock.width*Math.cos(Math.PI/180*this.labelAngle)+(c.textBlock.height-c.textBlock.fontSize/2-5)*Math.sin(Math.PI/180*this.labelAngle)-this.tickLength)):"right"===this._position&&(p=1===this.ctx.lineWidth%2?(b.y<<0)+0.5:b.y<<0,this.ctx.beginPath(),this.ctx.moveTo(b.x<<0,p),this.ctx.lineTo(b.x+this.tickLength<<0,p),this.ctx.stroke(),0===this.labelAngle?b.x=b.x+this.tickLength+5:(b.y=0>this.labelAngle?b.y:b.y-(c.textBlock.height-c.textBlock.fontSize/
723
- 2-5)*Math.cos(Math.PI/180*this.labelAngle),b.x=0<this.labelAngle?b.x+(c.textBlock.height-c.textBlock.fontSize/2-5)*Math.sin(Math.PI/180*this.labelAngle)+this.tickLength:b.x+this.tickLength+5));c.textBlock.x=b.x;c.textBlock.y=b.y;t.push(c)}else n._thicknessType===a&&(c.textBlock.angle=-90,"bottom"===this._position?(c.textBlock.maxWidth=this.options.stripLines[e].labelMaxWidth?this.options.stripLines[e].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-n.thickness/
723
+ 2-5)*Math.cos(Math.PI/180*this.labelAngle),b.x=0<this.labelAngle?b.x+(c.textBlock.height-c.textBlock.fontSize/2-5)*Math.sin(Math.PI/180*this.labelAngle)+this.tickLength:b.x+this.tickLength+5));c.textBlock.x=b.x;c.textBlock.y=b.y;s.push(c)}else n._thicknessType===a&&(c.textBlock.angle=-90,"bottom"===this._position?(c.textBlock.maxWidth=this.options.stripLines[e].labelMaxWidth?this.options.stripLines[e].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-n.thickness/
724
724
  2>this.chart.plotArea.x1?f(n.startValue)?b.x-=c.textBlock.height-c.textBlock.fontSize/2+n.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/2:(c.textBlock.angle=90,f(n.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/2+n.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+
725
725
  c.textBlock.width+3:"near"===c.stripLine.labelAlign?this.chart.plotArea.y2-c.textBlock.width-3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-c.textBlock.width)/2:this.chart.plotArea.y1+3):"top"===this._position?(c.textBlock.maxWidth=this.options.stripLines[e].labelMaxWidth?this.options.stripLines[e].labelMaxWidth:this.chart.plotArea.height-3,c.textBlock.measureText(),b.x-c.textBlock.height-n.thickness/2>this.chart.plotArea.x1?f(n.startValue)?b.x-=c.textBlock.height-
726
726
  c.textBlock.fontSize/2+n.thickness/2:b.x-=c.textBlock.height/2-c.textBlock.fontSize/2:(c.textBlock.angle=90,f(n.startValue)?b.x+=c.textBlock.height-c.textBlock.fontSize/2+n.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+
727
727
  3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.y2+this.chart.plotArea.y1-c.textBlock.width)/2:this.chart.plotArea.y2-c.textBlock.width-3):"left"===this._position?(c.textBlock.maxWidth=this.options.stripLines[e].labelMaxWidth?this.options.stripLines[e].labelMaxWidth:this.chart.plotArea.width-3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-n.thickness/2>this.chart.plotArea.y1?f(n.startValue)?b.y-=c.textBlock.height-c.textBlock.fontSize/2+n.thickness/2:b.y-=c.textBlock.height/
728
728
  2-c.textBlock.fontSize/2:f(n.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+n.thickness/2:b.y+=c.textBlock.height/2-c.textBlock.fontSize+3,b.x="near"===c.stripLine.labelAlign?this.chart.plotArea.x1+3:"center"===c.stripLine.labelAlign?(this.chart.plotArea.x2+this.chart.plotArea.x1)/2-c.textBlock.width/2:this.chart.plotArea.x2-c.textBlock.width-3):"right"===this._position&&(c.textBlock.maxWidth=this.options.stripLines[e].labelMaxWidth?this.options.stripLines[e].labelMaxWidth:this.chart.plotArea.width-
729
729
  3,c.textBlock.angle=0,c.textBlock.measureText(),b.y-c.textBlock.height-n.thickness/2>this.chart.plotArea.y1?f(n.startValue)?b.y-=c.textBlock.height-c.textBlock.fontSize/2+n.thickness/2:b.y-=c.textBlock.height/2-c.textBlock.fontSize/2:f(n.startValue)?b.y+=c.textBlock.height-c.textBlock.fontSize/2+n.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)/
730
- 2-c.textBlock.width/2:this.chart.plotArea.x1+3),c.textBlock.x=b.x,c.textBlock.y=b.y,t.push(c));if(!m){b=!1;this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(e=0;e<v.length;e++)n=v[e],n.showOnTop?k||(k=!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,
731
- this.chart.plotArea.height);this.ctx.clip();for(d=0;d<v.length;d++)n=v[d],n.showOnTop&&n.render();this.ctx.restore()},n)):n.render();for(e=0;e<t.length;e++)c=t[e],c.stripLine.showOnTop?b||(b=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){for(d=0;d<t.length;d++)c=t[d],"inside"===c.stripLine.labelPlacement&&c.stripLine.showOnTop&&(h.ctx.save(),h.ctx.beginPath(),h.ctx.rect(h.chart.plotArea.x1,h.chart.plotArea.y1,h.chart.plotArea.width,h.chart.plotArea.height),h.ctx.clip(),c.textBlock.render(!0),
732
- h.ctx.restore())},c.textBlock)):"inside"===c.stripLine.labelPlacement&&c.textBlock.render(!0);this.ctx.restore();m=!0}if(m)for(b=!1,e=0;e<t.length;e++)c=t[e],"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,
730
+ 2-c.textBlock.width/2:this.chart.plotArea.x1+3),c.textBlock.x=b.x,c.textBlock.y=b.y,s.push(c));if(!m){b=!1;this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(e=0;e<u.length;e++)n=u[e],n.showOnTop?k||(k=!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,
731
+ this.chart.plotArea.height);this.ctx.clip();for(d=0;d<u.length;d++)n=u[d],n.showOnTop&&n.render();this.ctx.restore()},n)):n.render();for(e=0;e<s.length;e++)c=s[e],c.stripLine.showOnTop?b||(b=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){for(d=0;d<s.length;d++)c=s[d],"inside"===c.stripLine.labelPlacement&&c.stripLine.showOnTop&&(h.ctx.save(),h.ctx.beginPath(),h.ctx.rect(h.chart.plotArea.x1,h.chart.plotArea.y1,h.chart.plotArea.width,h.chart.plotArea.height),h.ctx.clip(),c.textBlock.render(!0),
732
+ h.ctx.restore())},c.textBlock)):"inside"===c.stripLine.labelPlacement&&c.textBlock.render(!0);this.ctx.restore();m=!0}if(m)for(b=!1,e=0;e<s.length;e++)c=s[e],"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,
733
733
  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;r?(this.maskCanvas=ra(this.chart.width,this.chart.height),this.maskCtx=this.maskCanvas.getContext("2d")):(this.maskCanvas=
734
734
  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 h=0;h<a.length;h++)a[h].endValue<this.viewportMinimum||(a[h].startValue>this.viewportMaximum||isNaN(this.range))||a[h].render(this.maskCtx);this.maskCtx.restore()}};A.prototype.renderCrosshair=function(a,h){isFinite(this.minimum)&&isFinite(this.maximum)&&
735
735
  this.crosshair.render(a,h)};A.prototype.showCrosshair=function(a){f(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 h,c=this.chart.plotArea;a.lineWidth=this.gridThickness;a.strokeStyle=this.gridColor;a.setLineDash&&
736
736
  a.setLineDash(R(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(),h=this.getPixelCoordinatesOnAxis(this._labels[b].position),h=1===a.lineWidth%2?(h.x<<0)+0.5:h.x<<0,a.moveTo(h,c.y1<<0),a.lineTo(h,c.y2<<0),a.stroke());else if("left"===this._position||"right"===this._position)for(var b=
737
737
  0;b<this._labels.length;b++)this._labels[b].position<this.viewportMinimum||(this._labels[b].position>this.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),h=this.getPixelCoordinatesOnAxis(this._labels[b].position),h=1===a.lineWidth%2?(h.y<<0)+0.5:h.y<<0,a.moveTo(c.x1<<0,h),a.lineTo(c.x2<<0,h),a.stroke());a.restore()}};A.prototype.renderAxisLine=function(){var a=this.chart.ctx,h=r?this.chart._preRenderCtx:a,c=Math.ceil(this.tickThickness/(this.reversed?-2:2)),b=Math.ceil(this.tickThickness/
738
738
  (this.reversed?2:-2)),e,d;h.save();if("bottom"===this._position||"top"===this._position){if(this.lineThickness){this.reversed?(e=this.lineCoordinates.x2,d=this.lineCoordinates.x1):(e=this.lineCoordinates.x1,d=this.lineCoordinates.x2);h.lineWidth=this.lineThickness;h.strokeStyle=this.lineColor?this.lineColor:"black";h.setLineDash&&h.setLineDash(R(this.lineDashType,this.lineThickness));var k=1===this.lineThickness%2?(this.lineCoordinates.y1<<0)+0.5:this.lineCoordinates.y1<<0;h.beginPath();if(this.scaleBreaks&&
739
- !f(this.scaleBreaks.firstBreakIndex))if(f(this.scaleBreaks.lastBreakIndex))e=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+b;else for(var v=this.scaleBreaks.firstBreakIndex;v<=this.scaleBreaks.lastBreakIndex;v++)h.moveTo(e,k),h.lineTo(this.scaleBreaks._appliedBreaks[v].startPixel+c,k),e=this.scaleBreaks._appliedBreaks[v].endPixel+b;e&&(h.moveTo(e,k),h.lineTo(d,k));h.stroke()}}else if(("left"===this._position||"right"===this._position)&&this.lineThickness){this.reversed?
739
+ !f(this.scaleBreaks.firstBreakIndex))if(f(this.scaleBreaks.lastBreakIndex))e=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+b;else for(var u=this.scaleBreaks.firstBreakIndex;u<=this.scaleBreaks.lastBreakIndex;u++)h.moveTo(e,k),h.lineTo(this.scaleBreaks._appliedBreaks[u].startPixel+c,k),e=this.scaleBreaks._appliedBreaks[u].endPixel+b;e&&(h.moveTo(e,k),h.lineTo(d,k));h.stroke()}}else if(("left"===this._position||"right"===this._position)&&this.lineThickness){this.reversed?
740
740
  (e=this.lineCoordinates.y1,d=this.lineCoordinates.y2):(e=this.lineCoordinates.y2,d=this.lineCoordinates.y1);h.lineWidth=this.lineThickness;h.strokeStyle=this.lineColor;h.setLineDash&&h.setLineDash(R(this.lineDashType,this.lineThickness));k=1===this.lineThickness%2?(this.lineCoordinates.x1<<0)+0.5:this.lineCoordinates.x1<<0;h.beginPath();if(this.scaleBreaks&&!f(this.scaleBreaks.firstBreakIndex))if(f(this.scaleBreaks.lastBreakIndex))e=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+
741
- c;else for(v=this.scaleBreaks.firstBreakIndex;v<=this.scaleBreaks.lastBreakIndex;v++)h.moveTo(k,e),h.lineTo(k,this.scaleBreaks._appliedBreaks[v].startPixel+b),e=this.scaleBreaks._appliedBreaks[v].endPixel+c;e&&(h.moveTo(k,e),h.lineTo(k,d));h.stroke()}r&&(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),h.clearRect(0,0,this.chart.width,
741
+ c;else for(u=this.scaleBreaks.firstBreakIndex;u<=this.scaleBreaks.lastBreakIndex;u++)h.moveTo(k,e),h.lineTo(k,this.scaleBreaks._appliedBreaks[u].startPixel+b),e=this.scaleBreaks._appliedBreaks[u].endPixel+c;e&&(h.moveTo(k,e),h.lineTo(k,d));h.stroke()}r&&(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),h.clearRect(0,0,this.chart.width,
742
742
  this.chart.height));h.restore()};A.prototype.getPixelCoordinatesOnAxis=function(a){var h={};if("bottom"===this._position||"top"===this._position)h.x=this.convertValueToPixel(a),h.y=this.lineCoordinates.y1;if("left"===this._position||"right"===this._position)h.y=this.convertValueToPixel(a),h.x=this.lineCoordinates.x2;return h};A.prototype.convertPixelToValue=function(a){if("undefined"===typeof a)return null;var h=0,c=0,b,h=!0,e=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c="number"===typeof a?
743
743
  a:"left"===this._position||"right"===this._position?a.y:a.x;if(this.logarithmic){a=b=Math.pow(this.logarithmBase,(c-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit);if(c<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed)for(c=0;c<e.length;c++){if(!(e[c].endValue<this.conversionParameters.minimum))if(h)if(e[c].startValue<this.conversionParameters.minimum){if(1<e[c].size&&this.conversionParameters.minimum*Math.pow(e[c].endValue/
744
744
  e[c].startValue,Math.log(b)/Math.log(e[c].size))<e[c].endValue){a=Math.pow(e[c].endValue/e[c].startValue,Math.log(b)/Math.log(e[c].size));break}else a*=e[c].endValue/this.conversionParameters.minimum/Math.pow(e[c].size,Math.log(e[c].endValue/this.conversionParameters.minimum)/Math.log(e[c].endValue/e[c].startValue)),b/=Math.pow(e[c].size,Math.log(e[c].endValue/this.conversionParameters.minimum)/Math.log(e[c].endValue/e[c].startValue));h=!1}else if(b>e[c].startValue/this.conversionParameters.minimum){b/=
@@ -789,7 +789,7 @@ this.interval)*this.interval;this.valueFormatString||(this.valueFormatString=A.g
789
789
  (b=null!==this.viewportMinimum?this.viewportMinimum:this.dataInfo.viewPortMin,d=null!==this.viewportMaximum?this.viewportMaximum:this.dataInfo.viewPortMax,1===d/b&&(k=Math.pow(this.logarithmBase,"undefined"===typeof this.options.interval?0.4:this.options.interval),d*=k,b/=k),l=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,
790
790
  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?(k=Math.min(d*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),d*=k,b/=k):b>d?(k=Math.min(b/d*Math.pow(this.logarithmBase,0.01),Math.pow(this.logarithmBase,5)),1<=d?b=d/k:d=b*k):(k=Math.min(d/b*Math.pow(this.logarithmBase,
791
791
  0.01),Math.pow(this.logarithmBase,0.04)),1!==d&&(d*=k),1!==b&&(b/=k)),l=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));k=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)/(isNaN(this.viewportMinimum)||null===
792
- this.viewportMinimum?b:this.viewportMinimum);var v=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)-(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);this.intervalType="number";k=Math.pow(this.logarithmBase,A.getNiceNumber(Math.abs(Math.log(k)/h),!1));this.options&&0<this.options.interval?this.interval=this.options.interval:(this.interval=A.getNiceExponent(Math.log(k)/h/(a-1),!0),c=A.getNiceNumber(v/(a-1),!0));if(null===this.viewportMinimum||
792
+ this.viewportMinimum?b:this.viewportMinimum);var u=(isNaN(this.viewportMaximum)||null===this.viewportMaximum?d:this.viewportMaximum)-(isNaN(this.viewportMinimum)||null===this.viewportMinimum?b:this.viewportMinimum);this.intervalType="number";k=Math.pow(this.logarithmBase,A.getNiceNumber(Math.abs(Math.log(k)/h),!1));this.options&&0<this.options.interval?this.interval=this.options.interval:(this.interval=A.getNiceExponent(Math.log(k)/h/(a-1),!0),c=A.getNiceNumber(u/(a-1),!0));if(null===this.viewportMinimum||
793
793
  isNaN(this.viewportMinimum))this.viewportMinimum="axisX"===this.type?b/Math.sqrt(l):Math.pow(this.logarithmBase,this.interval*Math.floor(Math.log(b)/h/this.interval));if(null===this.viewportMaximum||isNaN(this.viewportMaximum))this.viewportMaximum="axisX"===this.type?d*Math.sqrt(l):Math.pow(this.logarithmBase,this.interval*Math.ceil(Math.log(d)/h/this.interval));1===this.viewportMaximum&&1===this.viewportMinimum&&(1===this.options.viewportMinimum?this.viewportMaximum*=this.logarithmBase-1/this.logarithmBase:
794
794
  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(k)/h)/(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&&(k=Math.pow(this.logarithmBase,
795
795
  "undefined"===typeof this.options.interval?0.4:this.options.interval),d*=k,b/=k),l=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?(k=Math.pow(this.logarithmBase,this.interval),d*=k,b/=k):b>d?(k=
@@ -806,105 +806,105 @@ Math.LN10),b=a/Math.pow(10,c),b=d?1.5>b?1:3>b?2:7>b?5:10:1>=b?1:2>=b?2:5>=b?5:10
806
806
  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()||
807
807
  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};ga(M,$);ga(T,$);T.prototype.createUserOptions=function(a){if("undefined"!==typeof a||this.options._isPlaceholder){var d=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Ea(this.parent[this.optionsName]),d=this.parent.options[this.optionsName].indexOf(this.options));
808
808
  this.options="undefined"===typeof a?{}:a;this.parent.options[this.optionsName][d]=this.options}};T.prototype.render=function(a){if(0!==this.spacing||0!==this.options.lineThickness&&("undefined"!==typeof this.options.lineThickness||0!==this.parent.lineThickness)){var d=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),
809
- e=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.endValue);this.ctx.strokeStyle=this.lineColor;this.ctx.fillStyle=this.color;this.ctx.beginPath();this.ctx.globalAlpha=1;V(this.id);var f,k,v,t,m,n;a=Math.max(this.spacing,3);var p=Math.max(0,this.lineThickness);this.ctx.lineWidth=p;this.ctx.setLineDash&&this.ctx.setLineDash(R(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,k=1===p%2?(e.x<<0)+0.5:
810
- e.x<<0,"top"===this.scaleBreaks.parent._position?(e=this.chart.plotArea.y1,v=this.chart.plotArea.y2+p/2+0.5<<0):(e=this.chart.plotArea.y2,v=this.chart.plotArea.y1-p/2+0.5<<0,a*=-1),this.bounds={x1:b-p/2,y1:e,x2:k+p/2,y2:v},this.ctx.moveTo(b,e),"straight"===this.type||"top"===this.scaleBreaks.parent._position&&0>=a||"bottom"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(b,v),this.ctx.lineTo(k,v),this.ctx.lineTo(k,e);else if("wavy"===this.type){t=b;m=e;f=0.5;n=(v-m)/a/3;for(var q=0;q<n;q++)this.ctx.bezierCurveTo(t+
811
- f*a,m+a,t+f*a,m+2*a,t,m+3*a),m+=3*a,f*=-1;this.ctx.bezierCurveTo(t+f*a,m+a,t+f*a,m+2*a,t,m+3*a);t=k;f*=-1;this.ctx.lineTo(t,m);for(q=0;q<n;q++)this.ctx.bezierCurveTo(t+f*a,m-a,t+f*a,m-2*a,t,m-3*a),m-=3*a,f*=-1}else{if("zigzag"===this.type){f=-1;m=e+a;t=b+a;n=(v-m)/a/2;for(q=0;q<n;q++)this.ctx.lineTo(t,m),t+=2*f*a,m+=2*a,f*=-1;this.ctx.lineTo(t,m);t+=k-b;for(q=0;q<n+1;q++)this.ctx.lineTo(t,m),t+=2*f*a,m-=2*a,f*=-1;this.ctx.lineTo(t+f*a,m+a)}}else if("left"===this.scaleBreaks.parent._position||"right"===
812
- this.scaleBreaks.parent._position)if(e=1===p%2?(e.y<<0)+0.5:e.y<<0,v=1===p%2?(b.y<<0)+0.5:b.y<<0,"left"===this.scaleBreaks.parent._position?(b=this.chart.plotArea.x1,k=this.chart.plotArea.x2+p/2+0.5<<0):(b=this.chart.plotArea.x2,k=this.chart.plotArea.x1-p/2+0.5<<0,a*=-1),this.bounds={x1:b,y1:e-p/2,x2:k,y2:v+p/2},this.ctx.moveTo(b,e),"straight"===this.type||"left"===this.scaleBreaks.parent._position&&0>=a||"right"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(k,e),this.ctx.lineTo(k,v),
813
- this.ctx.lineTo(b,v);else if("wavy"===this.type){t=b;m=e;f=0.5;n=(k-t)/a/3;for(q=0;q<n;q++)this.ctx.bezierCurveTo(t+a,m+f*a,t+2*a,m+f*a,t+3*a,m),t+=3*a,f*=-1;this.ctx.bezierCurveTo(t+a,m+f*a,t+2*a,m+f*a,t+3*a,m);m=v;f*=-1;this.ctx.lineTo(t,m);for(q=0;q<n;q++)this.ctx.bezierCurveTo(t-a,m+f*a,t-2*a,m+f*a,t-3*a,m),t-=3*a,f*=-1}else if("zigzag"===this.type){f=1;m=e-a;t=b+a;n=(k-t)/a/2;for(q=0;q<n;q++)this.ctx.lineTo(t,m),m+=2*f*a,t+=2*a,f*=-1;this.ctx.lineTo(t,m);m+=v-e;for(q=0;q<n+1;q++)this.ctx.lineTo(t,
814
- m),m+=2*f*a,t-=2*a,f*=-1;this.ctx.lineTo(t+a,m+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=d}};ga(Q,$);Q.prototype.createUserOptions=function(a){if("undefined"!==typeof a||this.options._isPlaceholder){var d=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Ea(this.parent.stripLines),d=this.parent.options.stripLines.indexOf(this.options));
809
+ e=this.scaleBreaks.parent.getPixelCoordinatesOnAxis(this.endValue);this.ctx.strokeStyle=this.lineColor;this.ctx.fillStyle=this.color;this.ctx.beginPath();this.ctx.globalAlpha=1;V(this.id);var f,k,u,s,m,n;a=Math.max(this.spacing,3);var p=Math.max(0,this.lineThickness);this.ctx.lineWidth=p;this.ctx.setLineDash&&this.ctx.setLineDash(R(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,k=1===p%2?(e.x<<0)+0.5:
810
+ e.x<<0,"top"===this.scaleBreaks.parent._position?(e=this.chart.plotArea.y1,u=this.chart.plotArea.y2+p/2+0.5<<0):(e=this.chart.plotArea.y2,u=this.chart.plotArea.y1-p/2+0.5<<0,a*=-1),this.bounds={x1:b-p/2,y1:e,x2:k+p/2,y2:u},this.ctx.moveTo(b,e),"straight"===this.type||"top"===this.scaleBreaks.parent._position&&0>=a||"bottom"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(b,u),this.ctx.lineTo(k,u),this.ctx.lineTo(k,e);else if("wavy"===this.type){s=b;m=e;f=0.5;n=(u-m)/a/3;for(var q=0;q<n;q++)this.ctx.bezierCurveTo(s+
811
+ f*a,m+a,s+f*a,m+2*a,s,m+3*a),m+=3*a,f*=-1;this.ctx.bezierCurveTo(s+f*a,m+a,s+f*a,m+2*a,s,m+3*a);s=k;f*=-1;this.ctx.lineTo(s,m);for(q=0;q<n;q++)this.ctx.bezierCurveTo(s+f*a,m-a,s+f*a,m-2*a,s,m-3*a),m-=3*a,f*=-1}else{if("zigzag"===this.type){f=-1;m=e+a;s=b+a;n=(u-m)/a/2;for(q=0;q<n;q++)this.ctx.lineTo(s,m),s+=2*f*a,m+=2*a,f*=-1;this.ctx.lineTo(s,m);s+=k-b;for(q=0;q<n+1;q++)this.ctx.lineTo(s,m),s+=2*f*a,m-=2*a,f*=-1;this.ctx.lineTo(s+f*a,m+a)}}else if("left"===this.scaleBreaks.parent._position||"right"===
812
+ this.scaleBreaks.parent._position)if(e=1===p%2?(e.y<<0)+0.5:e.y<<0,u=1===p%2?(b.y<<0)+0.5:b.y<<0,"left"===this.scaleBreaks.parent._position?(b=this.chart.plotArea.x1,k=this.chart.plotArea.x2+p/2+0.5<<0):(b=this.chart.plotArea.x2,k=this.chart.plotArea.x1-p/2+0.5<<0,a*=-1),this.bounds={x1:b,y1:e-p/2,x2:k,y2:u+p/2},this.ctx.moveTo(b,e),"straight"===this.type||"left"===this.scaleBreaks.parent._position&&0>=a||"right"===this.scaleBreaks.parent._position&&0<=a)this.ctx.lineTo(k,e),this.ctx.lineTo(k,u),
813
+ this.ctx.lineTo(b,u);else if("wavy"===this.type){s=b;m=e;f=0.5;n=(k-s)/a/3;for(q=0;q<n;q++)this.ctx.bezierCurveTo(s+a,m+f*a,s+2*a,m+f*a,s+3*a,m),s+=3*a,f*=-1;this.ctx.bezierCurveTo(s+a,m+f*a,s+2*a,m+f*a,s+3*a,m);m=u;f*=-1;this.ctx.lineTo(s,m);for(q=0;q<n;q++)this.ctx.bezierCurveTo(s-a,m+f*a,s-2*a,m+f*a,s-3*a,m),s-=3*a,f*=-1}else if("zigzag"===this.type){f=1;m=e-a;s=b+a;n=(k-s)/a/2;for(q=0;q<n;q++)this.ctx.lineTo(s,m),m+=2*f*a,s+=2*a,f*=-1;this.ctx.lineTo(s,m);m+=u-e;for(q=0;q<n+1;q++)this.ctx.lineTo(s,
814
+ m),m+=2*f*a,s-=2*a,f*=-1;this.ctx.lineTo(s+a,m+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=d}};ga(Q,$);Q.prototype.createUserOptions=function(a){if("undefined"!==typeof a||this.options._isPlaceholder){var d=0;this.parent.options._isPlaceholder&&this.parent.createUserOptions();this.options._isPlaceholder||(Ea(this.parent.stripLines),d=this.parent.options.stripLines.indexOf(this.options));
815
815
  this.options="undefined"===typeof a?{}:a;this.parent.options.stripLines[d]=this.options}};Q.prototype.render=function(){this.ctx.save();var a=this.parent.getPixelCoordinatesOnAxis(this.value),d=Math.abs("pixel"===this._thicknessType?this.thickness:Math.abs(this.parent.convertValueToPixel(this.endValue)-this.parent.convertValueToPixel(this.startValue)));if(0<d){var c=null===this.opacity?1:this.opacity;this.ctx.strokeStyle=this.color;this.ctx.beginPath();var b=this.ctx.globalAlpha;this.ctx.globalAlpha=
816
- c;V(this.id);var e,f,k,v;this.ctx.lineWidth=d;this.ctx.setLineDash&&this.ctx.setLineDash(R(this.lineDashType,d));if("bottom"===this.parent._position||"top"===this.parent._position)e=f=1===this.ctx.lineWidth%2?(a.x<<0)+0.5:a.x<<0,k=this.chart.plotArea.y1,v=this.chart.plotArea.y2,this.bounds={x1:e-d/2,y1:k,x2:f+d/2,y2:v};else if("left"===this.parent._position||"right"===this.parent._position)k=v=1===this.ctx.lineWidth%2?(a.y<<0)+0.5:a.y<<0,e=this.chart.plotArea.x1,f=this.chart.plotArea.x2,this.bounds=
817
- {x1:e,y1:k-d/2,x2:f,y2:v+d/2};this.ctx.moveTo(e,k);this.ctx.lineTo(f,v);this.ctx.stroke();this.ctx.globalAlpha=b}this.ctx.restore()};ga(X,$);X.prototype.showAt=function(a){if(!this.enabled)return!1;var d=this.chart,c=!1;d.resetOverlayedCanvas();d.clearedOverlayedCanvas=this.parent.type;this.chart.renderCrosshairs(this.parent);if("xySwapped"===d.plotInfo.axisPlacement)if("bottom"===this.parent._position)for(var b=0;b<d.axisY.length;b++)this.parent===d.axisY[b]&&(d.axisY[b]._crosshairValue=a>=d.axisY[b].viewportMinimum&&
816
+ c;V(this.id);var e,f,k,u;this.ctx.lineWidth=d;this.ctx.setLineDash&&this.ctx.setLineDash(R(this.lineDashType,d));if("bottom"===this.parent._position||"top"===this.parent._position)e=f=1===this.ctx.lineWidth%2?(a.x<<0)+0.5:a.x<<0,k=this.chart.plotArea.y1,u=this.chart.plotArea.y2,this.bounds={x1:e-d/2,y1:k,x2:f+d/2,y2:u};else if("left"===this.parent._position||"right"===this.parent._position)k=u=1===this.ctx.lineWidth%2?(a.y<<0)+0.5:a.y<<0,e=this.chart.plotArea.x1,f=this.chart.plotArea.x2,this.bounds=
817
+ {x1:e,y1:k-d/2,x2:f,y2:u+d/2};this.ctx.moveTo(e,k);this.ctx.lineTo(f,u);this.ctx.stroke();this.ctx.globalAlpha=b}this.ctx.restore()};ga(X,$);X.prototype.showAt=function(a){if(!this.enabled)return!1;var d=this.chart,c=!1;d.resetOverlayedCanvas();d.clearedOverlayedCanvas=this.parent.type;this.chart.renderCrosshairs(this.parent);if("xySwapped"===d.plotInfo.axisPlacement)if("bottom"===this.parent._position)for(var b=0;b<d.axisY.length;b++)this.parent===d.axisY[b]&&(d.axisY[b]._crosshairValue=a>=d.axisY[b].viewportMinimum&&
818
818
  a<=d.axisY[b].viewportMaximum?a:null);else if("top"===this.parent._position)for(b=0;b<d.axisY2.length;b++)this.parent===d.axisY2[b]&&(d.axisY2[b]._crosshairValue=a>=d.axisY2[b].viewportMinimum&&a<=d.axisY2[b].viewportMaximum?a:null);else if("left"===this.parent._position)for(b=0;b<d.axisX.length;b++)this.parent===d.axisX[b]&&(d.axisX[b]._crosshairValue=a>=d.axisX[b].viewportMinimum&&a<=d.axisX[b].viewportMaximum?a:null);else{if("right"===this.parent._position)for(b=0;b<d.axisX2.length;b++)this.parent===
819
819
  d.axisX2[b]&&(d.axisX2[b]._crosshairValue=a>=d.axisX2[b].viewportMinimum&&a<=d.axisX2[b].viewportMaximum?a:null)}else if("bottom"===this.parent._position)for(b=0;b<d.axisX.length;b++)this.parent===d.axisX[b]&&(d.axisX[b]._crosshairValue=a>=d.axisX[b].viewportMinimum&&a<=d.axisX[b].viewportMaximum?a:null);else if("top"===this.parent._position)for(b=0;b<d.axisX2.length;b++)this.parent===d.axisX2[b]&&(d.axisX2[b]._crosshairValue=a>=d.axisX2[b].viewportMinimum&&a<=d.axisX2[b].viewportMaximum?a:null);
820
820
  else if("left"===this.parent._position)for(b=0;b<d.axisY.length;b++)this.parent===d.axisY[b]&&(d.axisY[b]._crosshairValue=a>=d.axisY[b].viewportMinimum&&a<=d.axisY[b].viewportMaximum?a:null);else if("right"===this.parent._position)for(b=0;b<d.axisY2.length;b++)this.parent===d.axisY2[b]&&(d.axisY2[b]._crosshairValue=a>=d.axisY2[b].viewportMinimum&&a<=d.axisY2[b].viewportMaximum?a:null);for(b=0;b<d.axisX.length;b++)a=d.axisX[b]._crosshairValue,d.axisX[b].crosshair&&(d.axisX[b].crosshair.enabled&&!f(a)&&
821
821
  a>=d.axisX[b].viewportMinimum&&a<=d.axisX[b].viewportMaximum)&&(d.axisX[b].showCrosshair(a),d.axisX[b].crosshair._updatedValue=a,this===d.axisX[b].crosshair&&(c=!0));for(b=0;b<d.axisX2.length;b++)a=d.axisX2[b]._crosshairValue,d.axisX2[b].crosshair&&(d.axisX2[b].crosshair.enabled&&!f(a)&&a>=d.axisX2[b].viewportMinimum&&a<=d.axisX2[b].viewportMaximum)&&(d.axisX2[b].showCrosshair(a),d.axisX2[b].crosshair._updatedValue=a,this===d.axisX2[b].crosshair&&(c=!0));for(b=0;b<d.axisY.length;b++)a=d.axisY[b]._crosshairValue,
822
822
  d.axisY[b].crosshair&&(d.axisY[b].crosshair.enabled&&!f(a)&&a>=d.axisY[b].viewportMinimum&&a<=d.axisY[b].viewportMaximum)&&(d.axisY[b].showCrosshair(a),d.axisY[b].crosshair._updatedValue=a,this===d.axisY[b].crosshair&&(c=!0));for(b=0;b<d.axisY2.length;b++)a=d.axisY2[b]._crosshairValue,d.axisY2[b].crosshair&&(d.axisY2[b].crosshair.enabled&&!f(a)&&a>=d.axisY2[b].viewportMinimum&&a<=d.axisY2[b].viewportMaximum)&&(d.axisY2[b].showCrosshair(a),d.axisY2[b].crosshair._updatedValue=a,this===d.axisY2[b].crosshair&&
823
- (c=!0));this.chart.toolTip&&this.chart.toolTip._entries&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);return c};X.prototype.hide=function(){this.chart.resetOverlayedCanvas();this.chart.renderCrosshairs(this.parent);this._hidden=!0};X.prototype.render=function(a,d,c){var b,e,l,k,v=null,t=null,m=null,n="";this.valueFormatString||("dateTime"===this.parent.valueType?this.valueFormatString=this.parent.valueFormatString:(m=0,m="xySwapped"===this.chart.plotInfo.axisPlacement?50<this.parent.range?
823
+ (c=!0));this.chart.toolTip&&this.chart.toolTip._entries&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);return c};X.prototype.hide=function(){this.chart.resetOverlayedCanvas();this.chart.renderCrosshairs(this.parent);this._hidden=!0};X.prototype.render=function(a,d,c){var b,e,l,k,u=null,s=null,m=null,n="";this.valueFormatString||("dateTime"===this.parent.valueType?this.valueFormatString=this.parent.valueFormatString:(m=0,m="xySwapped"===this.chart.plotInfo.axisPlacement?50<this.parent.range?
824
824
  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,m)));var p=null===this.opacity?1:this.opacity,q=Math.abs("pixel"===this._thicknessType?this.thickness:this.parent.conversionParameters.pixelPerUnit*
825
825
  this.thickness),g=this.chart.overlaidCanvasCtx,r=g.globalAlpha;g.beginPath();g.strokeStyle=this.color;g.lineWidth=q;g.save();this.labelFontSize=Math.abs(f(this.options.labelFontSize)?this.parent.labelFontSize:this.labelFontSize);this.labelMaxWidth=f(this.options.labelMaxWidth)?0.3*this.chart.width:this.labelMaxWidth;this.labelMaxHeight=f(this.options.labelWrap)||this.labelWrap?0.3*this.chart.height:2*this.labelFontSize;0<q&&g.setLineDash&&g.setLineDash(R(this.lineDashType,q));m=new ma(g,{x:0,y:0,
826
- padding:{top:2,right:3,bottom:2,left:4},backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,maxWidth:this.labelMaxWidth,maxHeight:this.labelMaxHeight,angle:this.labelAngle,text:n,horizontalAlign:"left",fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle"});if(this.snapToDataPoint){var u=
827
- 0,n=[];if("xySwapped"===this.chart.plotInfo.axisPlacement){var w=null;if("bottom"===this.parent._position||"top"===this.parent._position)u=this.parent.dataSeries[0].axisX.convertPixelToValue({y:d});else if("left"===this.parent._position||"right"===this.parent._position)u=this.parent.convertPixelToValue({y:d});for(var s=0;s<this.parent.dataSeries.length;s++)(w=this.parent.dataSeries[s].getDataPointAtX(u,!0))&&0<=w.index&&(w.dataSeries=this.parent.dataSeries[s],null!==w.dataPoint.y&&w.dataSeries.visible&&
828
- n.push(w));w=null;if(0===n.length)return;n.sort(function(a,b){return a.distance-b.distance});var x=w=0;yPercent=cumulativeY=0;for(var u=Infinity,y,s=0;s<n.length;s++){if("rangeBar"===n[s].dataSeries.type||"error"===n[s].dataSeries.type){if(n[s].dataPoint.y)for(var D=0;D<n[s].dataPoint.y.length;D++)x=Math.abs(a-this.parent.convertValueToPixel(n[s].dataPoint.y[D])),x<=u&&(u=x,w=s)}else"stackedBar"===n[s].dataSeries.type?(cumulativeY=n[s].dataSeries.dataPointEOs[n[s].index].cumulativeY,x=Math.abs(a-
829
- this.parent.convertValueToPixel(cumulativeY)),x<=u&&(u=x,w=s)):"stackedBar100"===n[s].dataSeries.type?(x=n[0].dataPoint.x.getTime?n[0].dataPoint.x.getTime():n[0].dataPoint.x,f(y)&&(y=Math.abs(a-this.parent.convertValueToPixel(100*(n[0].dataSeries.dataPointEOs[n[0].index].cumulativeY/n[0].dataSeries.plotUnit.dataPointYSums[x])))),cumulativeY=n[s].dataSeries.dataPointEOs[n[s].index].cumulativeY,x=n[s].dataPoint.x.getTime?n[s].dataPoint.x.getTime():n[s].dataPoint.x,yPercent=100*(cumulativeY/n[s].dataSeries.plotUnit.dataPointYSums[x]),
830
- x=Math.abs(a-this.parent.convertValueToPixel(yPercent)),x<=y&&(y=x,w=s)):(x=Math.abs(a-this.parent.convertValueToPixel(n[s].dataPoint.y)),x<=u&&(u=x,w=s));f(y)||(u=Math.min(u,y))}y=n[w];s=0;if("bottom"===this.parent._position||"top"===this.parent._position){if("rangeBar"===y.dataSeries.type||"error"===y.dataSeries.type){u=Math.abs(a-this.parent.convertValueToPixel(y.dataPoint.y[0]));for(n=0;n<y.dataPoint.y.length;n++)x=Math.abs(a-this.parent.convertValueToPixel(y.dataPoint.y[n])),x<u&&(u=x,s=n);v=
831
- 1===g.lineWidth%2?(this.parent.convertValueToPixel(y.dataPoint.y[s])<<0)+0.5:this.parent.convertValueToPixel(y.dataPoint.y[s])<<0;this.value=y.dataPoint.y[s];m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.y[s]}):f(this.options.label)?da(f(c)?y.dataPoint.y[s]:c,this.valueFormatString,this.chart._cultureInfo):this.label}else"stackedBar"===y.dataSeries.type?(u=Math.abs(a-this.parent.convertValueToPixel(n[0].dataPoint.y)),
832
- cumulativeY=y.dataSeries.dataPointEOs[y.index].cumulativeY,v=1===g.lineWidth%2?(this.parent.convertValueToPixel(cumulativeY)<<0)+0.5:this.parent.convertValueToPixel(cumulativeY)<<0,this.value=cumulativeY,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.y}):f(this.options.label)?da(f(c)?y.dataPoint.y:c,this.valueFormatString,this.chart._cultureInfo):this.label):"stackedBar100"===y.dataSeries.type?(u=Math.abs(a-this.parent.convertValueToPixel(n[0].dataPoint.y)),
833
- cumulativeY=y.dataSeries.dataPointEOs[y.index].cumulativeY,x=y.dataPoint.x.getTime?y.dataPoint.x.getTime():y.dataPoint.x,yPercent=100*(cumulativeY/y.dataSeries.plotUnit.dataPointYSums[x]),v=1===g.lineWidth%2?(this.parent.convertValueToPixel(yPercent)<<0)+0.5:this.parent.convertValueToPixel(yPercent)<<0,this.value=yPercent,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:yPercent}):f(this.options.label)?da(f(c)?yPercent:c,this.valueFormatString,
834
- this.chart._cultureInfo):this.label):(v=1===g.lineWidth%2?(this.parent.convertValueToPixel(y.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(y.dataPoint.y)<<0,this.value=y.dataPoint.y,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.y}):f(this.options.label)?da(f(c)?y.dataPoint.y:c,this.valueFormatString,this.chart._cultureInfo):this.label);b=e=v;l=this.chart.plotArea.y1;k=this.chart.plotArea.y2;this.bounds={x1:b-
835
- q/2,y1:l,x2:e+q/2,y2:k};m.x=b-m.measureText().width/2;m.x+m.width>this.chart.bounds.x2?m.x=this.chart.bounds.x2-m.width:m.x<this.chart.bounds.x1&&(m.x=this.chart.bounds.x1);m.y=this.parent.lineCoordinates.y2+("top"===this.parent._position?-m.height+this.parent.tickLength:m.fontSize/2)+2;m.y+m.height>this.chart.bounds.y2?m.y=this.chart.bounds.y2-m.height:m.y<this.chart.bounds.y1&&(m.y=this.chart.bounds.y1)}else if("left"===this.parent._position||"right"===this.parent._position){l=k=t=1===g.lineWidth%
836
- 2?(this.parent.convertValueToPixel(y.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(y.dataPoint.x)<<0;b=this.chart.plotArea.x1;e=this.chart.plotArea.x2;this.bounds={x1:b,y1:l-q/2,x2:e,y2:k+q/2};s=!1;if(this.parent.labels)for(u=Math.ceil(this.parent.interval),n=0;n<this.parent.viewportMaximum;n+=u)if(this.parent.labels[n])s=!0;else{s=!1;break}if(s){if("axisX"===this.parent.type)for(u=this.parent.convertPixelToValue({y:d}),w=null,s=0;s<this.parent.dataSeries.length;s++)(w=this.parent.dataSeries[s].getDataPointAtX(u,
826
+ padding:{top:2,right:3,bottom:2,left:4},backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,maxWidth:this.labelMaxWidth,maxHeight:this.labelMaxHeight,angle:this.labelAngle,text:n,horizontalAlign:"left",fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,textBaseline:"middle"});if(this.snapToDataPoint){var v=
827
+ 0,n=[];if("xySwapped"===this.chart.plotInfo.axisPlacement){var w=null;if("bottom"===this.parent._position||"top"===this.parent._position)v=this.parent.dataSeries[0].axisX.convertPixelToValue({y:d});else if("left"===this.parent._position||"right"===this.parent._position)v=this.parent.convertPixelToValue({y:d});for(var t=0;t<this.parent.dataSeries.length;t++)(w=this.parent.dataSeries[t].getDataPointAtX(v,!0))&&0<=w.index&&(w.dataSeries=this.parent.dataSeries[t],null!==w.dataPoint.y&&w.dataSeries.visible&&
828
+ n.push(w));w=null;if(0===n.length)return;n.sort(function(a,b){return a.distance-b.distance});var x=w=0;yPercent=cumulativeY=0;for(var v=Infinity,y,t=0;t<n.length;t++){if("rangeBar"===n[t].dataSeries.type||"error"===n[t].dataSeries.type){if(n[t].dataPoint.y)for(var D=0;D<n[t].dataPoint.y.length;D++)x=Math.abs(a-this.parent.convertValueToPixel(n[t].dataPoint.y[D])),x<=v&&(v=x,w=t)}else"stackedBar"===n[t].dataSeries.type?(cumulativeY=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=Math.abs(a-
829
+ this.parent.convertValueToPixel(cumulativeY)),x<=v&&(v=x,w=t)):"stackedBar100"===n[t].dataSeries.type?(x=n[0].dataPoint.x.getTime?n[0].dataPoint.x.getTime():n[0].dataPoint.x,f(y)&&(y=Math.abs(a-this.parent.convertValueToPixel(100*(n[0].dataSeries.dataPointEOs[n[0].index].cumulativeY/n[0].dataSeries.plotUnit.dataPointYSums[x])))),cumulativeY=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=n[t].dataPoint.x.getTime?n[t].dataPoint.x.getTime():n[t].dataPoint.x,yPercent=100*(cumulativeY/n[t].dataSeries.plotUnit.dataPointYSums[x]),
830
+ x=Math.abs(a-this.parent.convertValueToPixel(yPercent)),x<=y&&(y=x,w=t)):(x=Math.abs(a-this.parent.convertValueToPixel(n[t].dataPoint.y)),x<=v&&(v=x,w=t));f(y)||(v=Math.min(v,y))}y=n[w];t=0;if("bottom"===this.parent._position||"top"===this.parent._position){if("rangeBar"===y.dataSeries.type||"error"===y.dataSeries.type){v=Math.abs(a-this.parent.convertValueToPixel(y.dataPoint.y[0]));for(n=0;n<y.dataPoint.y.length;n++)x=Math.abs(a-this.parent.convertValueToPixel(y.dataPoint.y[n])),x<v&&(v=x,t=n);u=
831
+ 1===g.lineWidth%2?(this.parent.convertValueToPixel(y.dataPoint.y[t])<<0)+0.5:this.parent.convertValueToPixel(y.dataPoint.y[t])<<0;this.value=y.dataPoint.y[t];m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.y[t]}):f(this.options.label)?da(f(c)?y.dataPoint.y[t]:c,this.valueFormatString,this.chart._cultureInfo):this.label}else"stackedBar"===y.dataSeries.type?(v=Math.abs(a-this.parent.convertValueToPixel(n[0].dataPoint.y)),
832
+ cumulativeY=y.dataSeries.dataPointEOs[y.index].cumulativeY,u=1===g.lineWidth%2?(this.parent.convertValueToPixel(cumulativeY)<<0)+0.5:this.parent.convertValueToPixel(cumulativeY)<<0,this.value=cumulativeY,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:cumulativeY}):f(this.options.label)?da(f(c)?cumulativeY:c,this.valueFormatString,this.chart._cultureInfo):this.label):"stackedBar100"===y.dataSeries.type?(v=Math.abs(a-this.parent.convertValueToPixel(n[0].dataPoint.y)),
833
+ cumulativeY=y.dataSeries.dataPointEOs[y.index].cumulativeY,x=y.dataPoint.x.getTime?y.dataPoint.x.getTime():y.dataPoint.x,yPercent=100*(cumulativeY/y.dataSeries.plotUnit.dataPointYSums[x]),u=1===g.lineWidth%2?(this.parent.convertValueToPixel(yPercent)<<0)+0.5:this.parent.convertValueToPixel(yPercent)<<0,this.value=yPercent,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:yPercent}):f(this.options.label)?da(f(c)?yPercent:c,this.valueFormatString,
834
+ this.chart._cultureInfo):this.label):(u=1===g.lineWidth%2?(this.parent.convertValueToPixel(y.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(y.dataPoint.y)<<0,this.value=y.dataPoint.y,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.y}):f(this.options.label)?da(f(c)?y.dataPoint.y:c,this.valueFormatString,this.chart._cultureInfo):this.label);b=e=u;l=this.chart.plotArea.y1;k=this.chart.plotArea.y2;this.bounds={x1:b-
835
+ q/2,y1:l,x2:e+q/2,y2:k};m.x=b-m.measureText().width/2;m.x+m.width>this.chart.bounds.x2?m.x=this.chart.bounds.x2-m.width:m.x<this.chart.bounds.x1&&(m.x=this.chart.bounds.x1);m.y=this.parent.lineCoordinates.y2+("top"===this.parent._position?-m.height+this.parent.tickLength:m.fontSize/2)+2;m.y+m.height>this.chart.bounds.y2?m.y=this.chart.bounds.y2-m.height:m.y<this.chart.bounds.y1&&(m.y=this.chart.bounds.y1)}else if("left"===this.parent._position||"right"===this.parent._position){l=k=s=1===g.lineWidth%
836
+ 2?(this.parent.convertValueToPixel(y.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(y.dataPoint.x)<<0;b=this.chart.plotArea.x1;e=this.chart.plotArea.x2;this.bounds={x1:b,y1:l-q/2,x2:e,y2:k+q/2};t=!1;if(this.parent.labels)for(v=Math.ceil(this.parent.interval),n=0;n<this.parent.viewportMaximum;n+=v)if(this.parent.labels[n])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(v=this.parent.convertPixelToValue({y:d}),w=null,t=0;t<this.parent.dataSeries.length;t++)(w=this.parent.dataSeries[t].getDataPointAtX(v,
837
837
  !0))&&0<=w.index&&(m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.x}):f(this.options.label)?w.dataPoint.label:this.label)}else m.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.x}):f(this.options.label)?da(y.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label:
838
838
  this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.x}):f(this.options.label)?ea(y.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=y.dataPoint.x;m.y=k+m.fontSize/2-m.measureText().height/2+2;m.y-m.fontSize/2<this.chart.bounds.y1?m.y=this.chart.bounds.y1+m.fontSize/2+2:m.y+m.measureText().height-m.fontSize/2>this.chart.bounds.y2&&(m.y=this.chart.bounds.y2-m.measureText().height+m.fontSize/2);"left"===
839
- this.parent._position?m.x=this.parent.lineCoordinates.x2-m.measureText().width:"right"===this.parent._position&&(m.x=this.parent.lineCoordinates.x2)}}else if("bottom"===this.parent._position||"top"===this.parent._position){u=this.parent.convertPixelToValue({x:a});for(s=0;s<this.parent.dataSeries.length;s++)(w=this.parent.dataSeries[s].getDataPointAtX(u,!0))&&0<=w.index&&(w.dataSeries=this.parent.dataSeries[s],null!==w.dataPoint.y&&w.dataSeries.visible&&n.push(w));if(0===n.length)return;n.sort(function(a,
840
- b){return a.distance-b.distance});y=n[0];b=e=v=1===g.lineWidth%2?(this.parent.convertValueToPixel(y.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(y.dataPoint.x)<<0;l=this.chart.plotArea.y1;k=this.chart.plotArea.y2;this.bounds={x1:b-q/2,y1:l,x2:e+q/2,y2:k};s=!1;if(this.parent.labels)for(u=Math.ceil(this.parent.interval),n=0;n<this.parent.viewportMaximum;n+=u)if(this.parent.labels[n])s=!0;else{s=!1;break}if(s){if("axisX"===this.parent.type)for(u=this.parent.convertPixelToValue({x:a}),w=null,
841
- s=0;s<this.parent.dataSeries.length;s++)(w=this.parent.dataSeries[s].getDataPointAtX(u,!0))&&0<=w.index&&(m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.x}):f(this.options.label)?w.dataPoint.label:this.label)}else m.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.x}):f(this.options.label)?
839
+ this.parent._position?m.x=this.parent.lineCoordinates.x2-m.measureText().width:"right"===this.parent._position&&(m.x=this.parent.lineCoordinates.x2)}}else if("bottom"===this.parent._position||"top"===this.parent._position){v=this.parent.convertPixelToValue({x:a});for(t=0;t<this.parent.dataSeries.length;t++)(w=this.parent.dataSeries[t].getDataPointAtX(v,!0))&&0<=w.index&&(w.dataSeries=this.parent.dataSeries[t],null!==w.dataPoint.y&&w.dataSeries.visible&&n.push(w));if(0===n.length)return;n.sort(function(a,
840
+ b){return a.distance-b.distance});y=n[0];b=e=u=1===g.lineWidth%2?(this.parent.convertValueToPixel(y.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(y.dataPoint.x)<<0;l=this.chart.plotArea.y1;k=this.chart.plotArea.y2;this.bounds={x1:b-q/2,y1:l,x2:e+q/2,y2:k};t=!1;if(this.parent.labels)for(v=Math.ceil(this.parent.interval),n=0;n<this.parent.viewportMaximum;n+=v)if(this.parent.labels[n])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(v=this.parent.convertPixelToValue({x:a}),w=null,
841
+ t=0;t<this.parent.dataSeries.length;t++)(w=this.parent.dataSeries[t].getDataPointAtX(v,!0))&&0<=w.index&&(m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.x}):f(this.options.label)?w.dataPoint.label:this.label)}else m.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.x}):f(this.options.label)?
842
842
  da(y.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.x}):f(this.options.label)?ea(y.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=y.dataPoint.x;m.x=b-m.measureText().width/2;m.x+m.width>this.chart.bounds.x2&&(m.x=this.chart.bounds.x2-m.width);m.x<this.chart.bounds.x1&&(m.x=this.chart.bounds.x1);"bottom"===this.parent._position?
843
- m.y=this.parent.lineCoordinates.y2+m.fontSize/2+2:"top"===this.parent._position&&(m.y=this.parent.lineCoordinates.y1-m.height+m.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position){!f(this.parent.dataSeries)&&0<this.parent.dataSeries.length&&(u=this.parent.dataSeries[0].axisX.convertPixelToValue({x:a}));for(s=0;s<this.parent.dataSeries.length;s++)(w=this.parent.dataSeries[s].getDataPointAtX(u,!0))&&0<=w.index&&(w.dataSeries=this.parent.dataSeries[s],null!==w.dataPoint.y&&
844
- w.dataSeries.visible&&n.push(w));if(0===n.length)return;n.sort(function(a,b){return a.distance-b.distance});x=w=0;u=Infinity;for(s=0;s<n.length;s++){if("rangeColumn"===n[s].dataSeries.type||"rangeArea"===n[s].dataSeries.type||"error"===n[s].dataSeries.type||"rangeSplineArea"===n[s].dataSeries.type||"candlestick"===n[s].dataSeries.type||"ohlc"===n[s].dataSeries.type||"boxAndWhisker"===n[s].dataSeries.type){if(n[s].dataPoint.y)for(D=0;D<n[s].dataPoint.y.length;D++)x=Math.abs(d-this.parent.convertValueToPixel(n[s].dataPoint.y[D])),
845
- x<=u&&(u=x,w=s)}else"stackedColumn"===n[s].dataSeries.type?(b=n[s].dataSeries.dataPointEOs[n[s].index].cumulativeY,x=Math.abs(d-this.parent.convertValueToPixel(b)),x<=u&&(u=x,w=s)):"stackedArea"===n[s].dataSeries.type?(b=n[s].dataSeries.dataPointEOs[n[s].index].cumulativeY,x=Math.abs(d-this.parent.convertValueToPixel(b)),x<=u&&(u=x,w=s)):"stackedColumn100"===n[s].dataSeries.type||"stackedArea100"===n[s].dataSeries.type?(x=n[0].dataPoint.x.getTime?n[0].dataPoint.x.getTime():n[0].dataPoint.x,f(y)&&
846
- (y=Math.abs(d-this.parent.convertValueToPixel(100*(n[0].dataSeries.dataPointEOs[n[0].index].cumulativeY/n[0].dataSeries.plotUnit.dataPointYSums[x])))),"stackedColumn100"===n[s].dataSeries.type?(t=n[s].dataSeries.dataPointEOs[n[s].index].cumulativeY,x=n[s].dataPoint.x.getTime?n[s].dataPoint.x.getTime():n[s].dataPoint.x,b=100*(t/n[s].dataSeries.plotUnit.dataPointYSums[x]),x=Math.abs(d-this.parent.convertValueToPixel(b)),x<=y&&(y=x,w=s)):"stackedArea100"===n[s].dataSeries.type&&(t=n[s].dataSeries.dataPointEOs[n[s].index].cumulativeY,
847
- x=n[s].dataPoint.x.getTime?n[s].dataPoint.x.getTime():n[s].dataPoint.x,b=100*(t/n[s].dataSeries.plotUnit.dataPointYSums[x]),x=Math.abs(d-this.parent.convertValueToPixel(b)),x<=y&&(y=x,w=s))):"waterfall"===n[s].dataSeries.type?(x=Math.abs(d-this.parent.convertValueToPixel(n[s].dataSeries.dataPointEOs[n[s].index].cumulativeSum)),x<=u&&(y=u=x,w=s)):(x=Math.abs(d-this.parent.convertValueToPixel(n[s].dataPoint.y)),x<=u&&(u=x,w=s));f(y)||(u=Math.min(u,y))}y=n[w];s=0;if("rangeColumn"===y.dataSeries.type||
848
- "rangeArea"===y.dataSeries.type||"error"===y.dataSeries.type||"rangeSplineArea"===y.dataSeries.type||"candlestick"===y.dataSeries.type||"ohlc"===y.dataSeries.type||"boxAndWhisker"===y.dataSeries.type){u=Math.abs(d-this.parent.convertValueToPixel(y.dataPoint.y[0]));for(n=0;n<y.dataPoint.y.length;n++)x=Math.abs(d-this.parent.convertValueToPixel(y.dataPoint.y[n])),x<u&&(u=x,s=n);t=1===g.lineWidth%2?(this.parent.convertValueToPixel(y.dataPoint.y[s])<<0)+0.5:this.parent.convertValueToPixel(y.dataPoint.y[s])<<
849
- 0;m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.y[s]}):f(this.options.label)?da(f(c)?y.dataPoint.y[s]:c,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=y.dataPoint.y[s]}else"stackedColumn"===y.dataSeries.type?(b=y.dataSeries.dataPointEOs[y.index].cumulativeY,t=1===g.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,
850
- axis:this.parent.options,crosshair:this.options,value:y.dataPoint.y}):f(this.options.label)?da(f(c)?y.dataPoint.y:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"stackedArea"===y.dataSeries.type?(b=y.dataSeries.dataPointEOs[y.index].cumulativeY,t=1===g.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.y}):
851
- f(this.options.label)?da(f(c)?y.dataPoint.y:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"stackedColumn100"===y.dataSeries.type?(t=y.dataSeries.dataPointEOs[y.index].cumulativeY,x=y.dataPoint.x.getTime?y.dataPoint.x.getTime():y.dataPoint.x,b=100*(t/y.dataSeries.plotUnit.dataPointYSums[x]),t=1===g.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,
852
- crosshair:this.options,value:b}):f(this.options.label)?da(f(c)?b:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"stackedArea100"===y.dataSeries.type?(t=y.dataSeries.dataPointEOs[y.index].cumulativeY,x=y.dataPoint.x.getTime?y.dataPoint.x.getTime():y.dataPoint.x,b=100*(t/y.dataSeries.plotUnit.dataPointYSums[x]),t=1===g.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,
853
- axis:this.parent.options,crosshair:this.options,value:b}):f(this.options.label)?da(f(c)?b:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"waterfall"===y.dataSeries.type?(t=1===g.lineWidth%2?(this.parent.convertValueToPixel(y.dataSeries.dataPointEOs[y.index].cumulativeSum)<<0)+0.5:this.parent.convertValueToPixel(y.dataSeries.dataPointEOs[y.index].cumulativeSum)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,
854
- value:y.dataSeries.dataPointEOs[y.index].cumulativeSum}):f(this.options.label)?da(f(c)?y.dataSeries.dataPointEOs[y.index].cumulativeSum:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=y.dataSeries.dataPointEOs[y.index].cumulativeSum):(t=1===g.lineWidth%2?(f(a)?d:this.parent.convertValueToPixel(y.dataPoint.y)<<0)+0.5:f(a)?d:this.parent.convertValueToPixel(y.dataPoint.y)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,
855
- value:f(c)?y.dataPoint.y:c}):f(this.options.label)?da(f(c)?y.dataPoint.y:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=y.dataPoint.y);l=k=t;b=this.chart.plotArea.x1;e=this.chart.plotArea.x2;this.bounds={x1:b,y1:l-q/2,x2:e,y2:k+q/2};m.y=k+m.fontSize/2-m.measureText().height/2+2;m.y-m.fontSize/2<this.chart.bounds.y1?m.y=this.chart.bounds.y1+m.fontSize/2+2:m.y+m.measureText().height-m.fontSize/2>this.chart.bounds.y2&&(m.y=this.chart.bounds.y2-m.measureText().height+m.fontSize/
856
- 2);"left"===this.parent._position?m.x=this.parent.lineCoordinates.x2-m.measureText().width:"right"===this.parent._position&&(m.x=this.parent.lineCoordinates.x2)}n=null;g.globalAlpha=p;if("bottom"===this.parent._position||"top"===this.parent._position)"top"===this.parent._position&&m.y-m.fontSize/2<this.chart.bounds.y1&&(m.y=this.chart.bounds.y1+m.fontSize/2),"bottom"===this.parent._position&&this.parent.lineCoordinates.y2-m.fontSize/2+m.measureText().height>this.chart.bounds.y2&&(m.y=this.chart.bounds.y2-
857
- m.height+m.fontSize/2+2),this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<q&&(g.moveTo(b,l),g.lineTo(e,k),g.stroke(),this._hidden=!1);if("left"===this.parent._position||"right"===this.parent._position)"left"===this.parent._position&&m.x<this.chart.bounds.x1&&(m.x=this.chart.bounds.x1),"right"===this.parent._position&&m.x+m.measureText().width>this.chart.bounds.x2&&(m.x=this.chart.bounds.x2-
858
- m.measureText().width),this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<q&&(g.moveTo(b,l),g.lineTo(e,k),g.stroke(),this._hidden=!1)}else{if("bottom"===this.parent._position||"top"===this.parent._position)b=e=v=1===g.lineWidth%2?(a<<0)+0.5:a<<0,l=this.chart.plotArea.y1,k=this.chart.plotArea.y2,this.bounds={x1:b-q/2,y1:l,x2:e+q/2,y2:k};else if("left"===this.parent._position||"right"===this.parent._position)l=
859
- k=t=1===g.lineWidth%2?(d<<0)+0.5:d<<0,b=this.chart.plotArea.x1,e=this.chart.plotArea.x2,this.bounds={x1:b,y1:l-q/2,x2:e,y2:k+q/2};if("xySwapped"===this.chart.plotInfo.axisPlacement)if("left"===this.parent._position||"right"===this.parent._position){s=!1;if(this.parent.labels)for(u=Math.ceil(this.parent.interval),n=0;n<this.parent.viewportMaximum;n+=u)if(this.parent.labels[n])s=!0;else{s=!1;break}if(s){if("axisX"===this.parent.type)for(u=this.parent.convertPixelToValue({y:d}),w=null,s=0;s<this.parent.dataSeries.length;s++)(w=
860
- this.parent.dataSeries[s].getDataPointAtX(u,!0))&&0<=w.index&&(m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(a):c}):f(this.options.label)?w.dataPoint.label:this.label)}else m.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(d):
861
- c}):f(this.options.label)?da(f(c)?this.parent.convertPixelToValue(d):c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(d):c}):f(this.options.label)?ea(f(c)?this.parent.convertPixelToValue(d):c,this.valueFormatString,this.chart._cultureInfo):this.label;m.y=d+m.fontSize/2-m.measureText().height/2+2;m.y-m.fontSize/2<this.chart.bounds.y1?m.y=this.chart.bounds.y1+
862
- m.fontSize/2+2:m.y+m.measureText().height-m.fontSize/2>this.chart.bounds.y2&&(m.y=this.chart.bounds.y2-m.measureText().height+m.fontSize/2);"left"===this.parent._position?m.x=this.parent.lineCoordinates.x1-m.measureText().width:"right"===this.parent._position&&(m.x=this.parent.lineCoordinates.x2)}else{if("bottom"===this.parent._position||"top"===this.parent._position)m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(a):
863
- c}):f(this.options.label)?da(f(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label,m.x=b-m.measureText().width/2,m.x+m.width>this.chart.bounds.x2&&(m.x=this.chart.bounds.x2-m.width),m.x<this.chart.bounds.x1&&(m.x=this.chart.bounds.x1),"bottom"===this.parent._position?m.y=this.parent.lineCoordinates.y2+m.fontSize/2+2:"top"===this.parent._position&&(m.y=this.parent.lineCoordinates.y1-m.height+m.fontSize/2+2)}else if("bottom"===this.parent._position||"top"===
864
- this.parent._position){s=!1;n="";if(this.parent.labels)for(u=Math.ceil(this.parent.interval),n=0;n<this.parent.viewportMaximum;n+=u)if(this.parent.labels[n])s=!0;else{s=!1;break}if(s){if("axisX"===this.parent.type)for(u=this.parent.convertPixelToValue({x:a}),w=null,s=0;s<this.parent.dataSeries.length;s++)(w=this.parent.dataSeries[s].getDataPointAtX(u,!0))&&0<=w.index&&(m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(a):
843
+ m.y=this.parent.lineCoordinates.y2+m.fontSize/2+2:"top"===this.parent._position&&(m.y=this.parent.lineCoordinates.y1-m.height+m.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position){!f(this.parent.dataSeries)&&0<this.parent.dataSeries.length&&(v=this.parent.dataSeries[0].axisX.convertPixelToValue({x:a}));for(t=0;t<this.parent.dataSeries.length;t++)(w=this.parent.dataSeries[t].getDataPointAtX(v,!0))&&0<=w.index&&(w.dataSeries=this.parent.dataSeries[t],null!==w.dataPoint.y&&
844
+ w.dataSeries.visible&&n.push(w));if(0===n.length)return;n.sort(function(a,b){return a.distance-b.distance});x=w=0;v=Infinity;for(t=0;t<n.length;t++){if("rangeColumn"===n[t].dataSeries.type||"rangeArea"===n[t].dataSeries.type||"error"===n[t].dataSeries.type||"rangeSplineArea"===n[t].dataSeries.type||"candlestick"===n[t].dataSeries.type||"ohlc"===n[t].dataSeries.type||"boxAndWhisker"===n[t].dataSeries.type){if(n[t].dataPoint.y)for(D=0;D<n[t].dataPoint.y.length;D++)x=Math.abs(d-this.parent.convertValueToPixel(n[t].dataPoint.y[D])),
845
+ x<=v&&(v=x,w=t)}else"stackedColumn"===n[t].dataSeries.type?(b=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=Math.abs(d-this.parent.convertValueToPixel(b)),x<=v&&(v=x,w=t)):"stackedArea"===n[t].dataSeries.type?(b=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=Math.abs(d-this.parent.convertValueToPixel(b)),x<=v&&(v=x,w=t)):"stackedColumn100"===n[t].dataSeries.type||"stackedArea100"===n[t].dataSeries.type?(x=n[0].dataPoint.x.getTime?n[0].dataPoint.x.getTime():n[0].dataPoint.x,f(y)&&
846
+ (y=Math.abs(d-this.parent.convertValueToPixel(100*(n[0].dataSeries.dataPointEOs[n[0].index].cumulativeY/n[0].dataSeries.plotUnit.dataPointYSums[x])))),"stackedColumn100"===n[t].dataSeries.type?(s=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,x=n[t].dataPoint.x.getTime?n[t].dataPoint.x.getTime():n[t].dataPoint.x,b=100*(s/n[t].dataSeries.plotUnit.dataPointYSums[x]),x=Math.abs(d-this.parent.convertValueToPixel(b)),x<=y&&(y=x,w=t)):"stackedArea100"===n[t].dataSeries.type&&(s=n[t].dataSeries.dataPointEOs[n[t].index].cumulativeY,
847
+ x=n[t].dataPoint.x.getTime?n[t].dataPoint.x.getTime():n[t].dataPoint.x,b=100*(s/n[t].dataSeries.plotUnit.dataPointYSums[x]),x=Math.abs(d-this.parent.convertValueToPixel(b)),x<=y&&(y=x,w=t))):"waterfall"===n[t].dataSeries.type?(x=Math.abs(d-this.parent.convertValueToPixel(n[t].dataSeries.dataPointEOs[n[t].index].cumulativeSum)),x<=v&&(y=v=x,w=t)):(x=Math.abs(d-this.parent.convertValueToPixel(n[t].dataPoint.y)),x<=v&&(v=x,w=t));f(y)||(v=Math.min(v,y))}y=n[w];t=0;if("rangeColumn"===y.dataSeries.type||
848
+ "rangeArea"===y.dataSeries.type||"error"===y.dataSeries.type||"rangeSplineArea"===y.dataSeries.type||"candlestick"===y.dataSeries.type||"ohlc"===y.dataSeries.type||"boxAndWhisker"===y.dataSeries.type){v=Math.abs(d-this.parent.convertValueToPixel(y.dataPoint.y[0]));for(n=0;n<y.dataPoint.y.length;n++)x=Math.abs(d-this.parent.convertValueToPixel(y.dataPoint.y[n])),x<v&&(v=x,t=n);s=1===g.lineWidth%2?(this.parent.convertValueToPixel(y.dataPoint.y[t])<<0)+0.5:this.parent.convertValueToPixel(y.dataPoint.y[t])<<
849
+ 0;m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataPoint.y[t]}):f(this.options.label)?da(f(c)?y.dataPoint.y[t]:c,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=y.dataPoint.y[t]}else"stackedColumn"===y.dataSeries.type?(b=y.dataSeries.dataPointEOs[y.index].cumulativeY,s=1===g.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,
850
+ axis:this.parent.options,crosshair:this.options,value:b}):f(this.options.label)?da(f(c)?b:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"stackedArea"===y.dataSeries.type?(b=y.dataSeries.dataPointEOs[y.index].cumulativeY,s=1===g.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:b}):f(this.options.label)?da(f(c)?
851
+ b:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"stackedColumn100"===y.dataSeries.type?(s=y.dataSeries.dataPointEOs[y.index].cumulativeY,x=y.dataPoint.x.getTime?y.dataPoint.x.getTime():y.dataPoint.x,b=100*(s/y.dataSeries.plotUnit.dataPointYSums[x]),s=1===g.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:b}):
852
+ f(this.options.label)?da(f(c)?b:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"stackedArea100"===y.dataSeries.type?(s=y.dataSeries.dataPointEOs[y.index].cumulativeY,x=y.dataPoint.x.getTime?y.dataPoint.x.getTime():y.dataPoint.x,b=100*(s/y.dataSeries.plotUnit.dataPointYSums[x]),s=1===g.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,
853
+ value:b}):f(this.options.label)?da(f(c)?b:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"waterfall"===y.dataSeries.type?(s=1===g.lineWidth%2?(this.parent.convertValueToPixel(y.dataSeries.dataPointEOs[y.index].cumulativeSum)<<0)+0.5:this.parent.convertValueToPixel(y.dataSeries.dataPointEOs[y.index].cumulativeSum)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:y.dataSeries.dataPointEOs[y.index].cumulativeSum}):
854
+ f(this.options.label)?da(f(c)?y.dataSeries.dataPointEOs[y.index].cumulativeSum:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=y.dataSeries.dataPointEOs[y.index].cumulativeSum):(s=1===g.lineWidth%2?(f(a)?d:this.parent.convertValueToPixel(y.dataPoint.y)<<0)+0.5:f(a)?d:this.parent.convertValueToPixel(y.dataPoint.y)<<0,m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?y.dataPoint.y:c}):f(this.options.label)?
855
+ da(f(c)?y.dataPoint.y:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=y.dataPoint.y);l=k=s;b=this.chart.plotArea.x1;e=this.chart.plotArea.x2;this.bounds={x1:b,y1:l-q/2,x2:e,y2:k+q/2};m.y=k+m.fontSize/2-m.measureText().height/2+2;m.y-m.fontSize/2<this.chart.bounds.y1?m.y=this.chart.bounds.y1+m.fontSize/2+2:m.y+m.measureText().height-m.fontSize/2>this.chart.bounds.y2&&(m.y=this.chart.bounds.y2-m.measureText().height+m.fontSize/2);"left"===this.parent._position?m.x=this.parent.lineCoordinates.x2-
856
+ m.measureText().width:"right"===this.parent._position&&(m.x=this.parent.lineCoordinates.x2)}n=null;g.globalAlpha=p;if("bottom"===this.parent._position||"top"===this.parent._position)"top"===this.parent._position&&m.y-m.fontSize/2<this.chart.bounds.y1&&(m.y=this.chart.bounds.y1+m.fontSize/2),"bottom"===this.parent._position&&this.parent.lineCoordinates.y2-m.fontSize/2+m.measureText().height>this.chart.bounds.y2&&(m.y=this.chart.bounds.y2-m.height+m.fontSize/2+2),this.value>=Math.min(this.parent.viewportMinimum,
857
+ this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<q&&(g.moveTo(b,l),g.lineTo(e,k),g.stroke(),this._hidden=!1);if("left"===this.parent._position||"right"===this.parent._position)"left"===this.parent._position&&m.x<this.chart.bounds.x1&&(m.x=this.chart.bounds.x1),"right"===this.parent._position&&m.x+m.measureText().width>this.chart.bounds.x2&&(m.x=this.chart.bounds.x2-m.measureText().width),this.value>=Math.min(this.parent.viewportMinimum,
858
+ this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<q&&(g.moveTo(b,l),g.lineTo(e,k),g.stroke(),this._hidden=!1)}else{if("bottom"===this.parent._position||"top"===this.parent._position)b=e=u=1===g.lineWidth%2?(a<<0)+0.5:a<<0,l=this.chart.plotArea.y1,k=this.chart.plotArea.y2,this.bounds={x1:b-q/2,y1:l,x2:e+q/2,y2:k};else if("left"===this.parent._position||"right"===this.parent._position)l=k=s=1===g.lineWidth%2?(d<<0)+0.5:d<<0,b=this.chart.plotArea.x1,
859
+ e=this.chart.plotArea.x2,this.bounds={x1:b,y1:l-q/2,x2:e,y2:k+q/2};if("xySwapped"===this.chart.plotInfo.axisPlacement)if("left"===this.parent._position||"right"===this.parent._position){t=!1;if(this.parent.labels)for(v=Math.ceil(this.parent.interval),n=0;n<this.parent.viewportMaximum;n+=v)if(this.parent.labels[n])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(v=this.parent.convertPixelToValue({y:d}),w=null,t=0;t<this.parent.dataSeries.length;t++)(w=this.parent.dataSeries[t].getDataPointAtX(v,
860
+ !0))&&0<=w.index&&(m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(a):c}):f(this.options.label)?w.dataPoint.label:this.label)}else m.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(d):c}):f(this.options.label)?da(f(c)?this.parent.convertPixelToValue(d):
861
+ c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(d):c}):f(this.options.label)?ea(f(c)?this.parent.convertPixelToValue(d):c,this.valueFormatString,this.chart._cultureInfo):this.label;m.y=d+m.fontSize/2-m.measureText().height/2+2;m.y-m.fontSize/2<this.chart.bounds.y1?m.y=this.chart.bounds.y1+m.fontSize/2+2:m.y+m.measureText().height-m.fontSize/
862
+ 2>this.chart.bounds.y2&&(m.y=this.chart.bounds.y2-m.measureText().height+m.fontSize/2);"left"===this.parent._position?m.x=this.parent.lineCoordinates.x1-m.measureText().width:"right"===this.parent._position&&(m.x=this.parent.lineCoordinates.x2)}else{if("bottom"===this.parent._position||"top"===this.parent._position)m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(a):c}):f(this.options.label)?
863
+ da(f(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label,m.x=b-m.measureText().width/2,m.x+m.width>this.chart.bounds.x2&&(m.x=this.chart.bounds.x2-m.width),m.x<this.chart.bounds.x1&&(m.x=this.chart.bounds.x1),"bottom"===this.parent._position?m.y=this.parent.lineCoordinates.y2+m.fontSize/2+2:"top"===this.parent._position&&(m.y=this.parent.lineCoordinates.y1-m.height+m.fontSize/2+2)}else if("bottom"===this.parent._position||"top"===this.parent._position){t=
864
+ !1;n="";if(this.parent.labels)for(v=Math.ceil(this.parent.interval),n=0;n<this.parent.viewportMaximum;n+=v)if(this.parent.labels[n])t=!0;else{t=!1;break}if(t){if("axisX"===this.parent.type)for(v=this.parent.convertPixelToValue({x:a}),w=null,t=0;t<this.parent.dataSeries.length;t++)(w=this.parent.dataSeries[t].getDataPointAtX(v,!0))&&0<=w.index&&(m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(a):
865
865
  c}):f(this.options.label)?f(c)?w.dataPoint.label:c:this.label)}else m.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?0<this.parent.dataSeries.length?this.parent.convertPixelToValue(a):"":c}):f(this.options.label)?da(f(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,
866
866
  axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(a):c}):f(this.options.label)?ea(f(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label;m.x=b-m.measureText().width/2;m.x+m.width>this.chart.bounds.x2&&(m.x=this.chart.bounds.x2-m.width);m.x<this.chart.bounds.x1&&(m.x=this.chart.bounds.x1);"bottom"===this.parent._position?m.y=this.parent.lineCoordinates.y2+m.fontSize/2+2:"top"===this.parent._position&&(m.y=this.parent.lineCoordinates.y1-
867
867
  m.height+m.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position)m.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:f(c)?this.parent.convertPixelToValue(d):c}):f(this.options.label)?da(f(c)?this.parent.convertPixelToValue(d):c,this.valueFormatString,this.chart._cultureInfo):this.label,m.y=d+m.fontSize/2-m.measureText().height/2+2,m.y-m.fontSize/2<this.chart.bounds.y1?m.y=this.chart.bounds.y1+m.fontSize/
868
868
  2+2:m.y+m.measureText().height-m.fontSize/2>this.chart.bounds.y2&&(m.y=this.chart.bounds.y2-m.measureText().height+m.fontSize/2),"left"===this.parent._position?m.x=this.parent.lineCoordinates.x2-m.measureText().width:"right"===this.parent._position&&(m.x=this.parent.lineCoordinates.x2);"left"===this.parent._position&&m.x<this.chart.bounds.x1?m.x=this.chart.bounds.x1:"right"===this.parent._position&&m.x+m.measureText().width>this.chart.bounds.x2?m.x=this.chart.bounds.x2-m.measureText().width:"top"===
869
869
  this.parent._position&&m.y-m.fontSize/2<this.chart.bounds.y1?m.y=this.chart.bounds.y1+m.fontSize/2:"bottom"===this.parent._position&&this.parent.lineCoordinates.y2-m.fontSize/2+m.measureText().height>this.chart.bounds.y2&&(m.y=this.chart.bounds.y2-m.height+m.fontSize/2+2);g.globalAlpha=p;0<q&&(g.moveTo(b,l),g.lineTo(e,k),g.stroke(),this._hidden=!1);this.value="bottom"===this.parent._position||"top"===this.parent._position?this.parent.convertPixelToValue(a):this.parent.convertPixelToValue(d)}if("bottom"===
870
- this.parent._position||"top"===this.parent._position)this._updatedValue=this.parent.convertPixelToValue(v);if("left"===this.parent._position||"right"===this.parent._position)this._updatedValue=this.parent.convertPixelToValue(t);this._textBlock=m;this._label=c;f(c)||this.renderLabel();g.restore();g.globalAlpha=r};X.prototype.renderLabel=function(){this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&
870
+ this.parent._position||"top"===this.parent._position)this._updatedValue=this.parent.convertPixelToValue(u);if("left"===this.parent._position||"right"===this.parent._position)this._updatedValue=this.parent.convertPixelToValue(s);this._textBlock=m;this._label=c;f(c)||this.renderLabel();g.restore();g.globalAlpha=r};X.prototype.renderLabel=function(){this.value>=Math.min(this.parent.viewportMinimum,this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&
871
871
  (f(this._textBlock)||(f(this._textBlock.text)||!("number"===typeof this._textBlock.text.valueOf()||0<this._textBlock.text.length)||this._hidden)||this._textBlock.render(!0),f(this._label)&&this.dispatchEvent("updated",{chart:this.chart,crosshair:this.options,axis:this.parent,value:this.value},this.parent))};ga(pa,$);pa.prototype._initialize=function(){this.updateOption("updated");this.updateOption("hidden");if(this.enabled){this.container=document.createElement("div");this.container.setAttribute("class",
872
872
  "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="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";
873
873
  a.style.fontWeight="normal";a.style.fontStyle=r?"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=r?"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";r||(a.style.filter="alpha(opacity = 90)",
874
874
  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;this.chart._canvasJSContainer.appendChild(this.container)}};pa.prototype.mouseMoveHandler=function(a,d){this._lastUpdated&&4>(new Date).getTime()-this._lastUpdated||(this._lastUpdated=(new Date).getTime(),this.chart.resetOverlayedCanvas(),
875
875
  this._updateToolTip(a,d),!this._updatedEventParameters||(isNaN(this._prevX)||isNaN(this._prevY))||this.dispatchEvent("updated",this._updatedEventParameters,this))};pa.prototype._updateToolTip=function(a,d,c){c="undefined"===typeof c?!0:c;this.container||this._initialize();this.enabled||this.hide();if(!this.chart.disableToolTip){if("undefined"===typeof a||"undefined"===typeof d){if(isNaN(this._prevX)||isNaN(this._prevY))return;a=this._prevX;d=this._prevY}else this._prevX=a,this._prevY=d;var b=null,
876
- e=null,l=[],k=0;if(this.shared&&this.enabled&&"none"!==this.chart.plotInfo.axisPlacement){var v=[];if(this.chart.axisX)for(var t=0;t<this.chart.axisX.length;t++){for(var k="xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX[t].convertPixelToValue({y:d}):this.chart.axisX[t].convertPixelToValue({x:a}),m=null,b=0;b<this.chart.axisX[t].dataSeries.length;b++)(m=this.chart.axisX[t].dataSeries[b].getDataPointAtX(k,c))&&0<=m.index&&(m.dataSeries=this.chart.axisX[t].dataSeries[b],null!==m.dataPoint.y&&
877
- m.dataSeries.visible&&v.push(m));m=null}if(this.chart.axisX2)for(t=0;t<this.chart.axisX2.length;t++){k="xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX2[t].convertPixelToValue({y:d}):this.chart.axisX2[t].convertPixelToValue({x:a});m=null;for(b=0;b<this.chart.axisX2[t].dataSeries.length;b++)(m=this.chart.axisX2[t].dataSeries[b].getDataPointAtX(k,c))&&0<=m.index&&(m.dataSeries=this.chart.axisX2[t].dataSeries[b],null!==m.dataPoint.y&&m.dataSeries.visible&&v.push(m));m=null}if(0===v.length)return;
878
- v.sort(function(a,b){return a.distance-b.distance});c=v[0];for(b=0;b<v.length;b++)v[b].dataPoint.x.valueOf()===c.dataPoint.x.valueOf()&&l.push(v[b]);v=null}else{if(b=this.chart.getDataPointAtXY(a,d,c))this.currentDataPointIndex=b.dataPointIndex,this.currentSeriesIndex=b.dataSeries.index;else if(r)if(b=jb(a,d,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=
876
+ e=null,l=[],k=0;if(this.shared&&this.enabled&&"none"!==this.chart.plotInfo.axisPlacement){var u=[];if(this.chart.axisX)for(var s=0;s<this.chart.axisX.length;s++){for(var k="xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX[s].convertPixelToValue({y:d}):this.chart.axisX[s].convertPixelToValue({x:a}),m=null,b=0;b<this.chart.axisX[s].dataSeries.length;b++)(m=this.chart.axisX[s].dataSeries[b].getDataPointAtX(k,c))&&0<=m.index&&(m.dataSeries=this.chart.axisX[s].dataSeries[b],null!==m.dataPoint.y&&
877
+ m.dataSeries.visible&&u.push(m));m=null}if(this.chart.axisX2)for(s=0;s<this.chart.axisX2.length;s++){k="xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX2[s].convertPixelToValue({y:d}):this.chart.axisX2[s].convertPixelToValue({x:a});m=null;for(b=0;b<this.chart.axisX2[s].dataSeries.length;b++)(m=this.chart.axisX2[s].dataSeries[b].getDataPointAtX(k,c))&&0<=m.index&&(m.dataSeries=this.chart.axisX2[s].dataSeries[b],null!==m.dataPoint.y&&m.dataSeries.visible&&u.push(m));m=null}if(0===u.length)return;
878
+ u.sort(function(a,b){return a.distance-b.distance});c=u[0];for(b=0;b<u.length;b++)u[b].dataPoint.x.valueOf()===c.dataPoint.x.valueOf()&&l.push(u[b]);u=null}else{if(b=this.chart.getDataPointAtXY(a,d,c))this.currentDataPointIndex=b.dataPointIndex,this.currentSeriesIndex=b.dataSeries.index;else if(r)if(b=jb(a,d,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=
879
879
  b.dataSeriesIndex;this.currentDataPointIndex=0<=b.dataPointIndex?b.dataPointIndex:-1}else this.currentDataPointIndex=-1;else this.currentDataPointIndex=-1;if(0<=this.currentSeriesIndex){e=this.chart.data[this.currentSeriesIndex];m={};if(0<=this.currentDataPointIndex)b=e.dataPoints[this.currentDataPointIndex],m.dataSeries=e,m.dataPoint=b,m.index=this.currentDataPointIndex,m.distance=Math.abs(b.x-k),"waterfall"===e.type&&(m.cumulativeSumYStartValue=e.dataPointEOs[this.currentDataPointIndex].cumulativeSumYStartValue,
880
- m.cumulativeSum=e.dataPointEOs[this.currentDataPointIndex].cumulativeSum);else{if(!this.enabled||"line"!==e.type&&"stepLine"!==e.type&&"spline"!==e.type&&"area"!==e.type&&"stepArea"!==e.type&&"splineArea"!==e.type&&"stackedArea"!==e.type&&"stackedArea100"!==e.type&&"rangeArea"!==e.type&&"rangeSplineArea"!==e.type&&"candlestick"!==e.type&&"ohlc"!==e.type&&"boxAndWhisker"!==e.type){"toolTip"===this.chart.clearedOverlayedCanvas&&(this.chart.resetOverlayedCanvas(),this.chart.clearedOverlayedCanvas=null);
881
- return}k=e.axisX.convertPixelToValue({x:a});m=e.getDataPointAtX(k,c);f(m)||(m.dataSeries=e,this.currentDataPointIndex=m.index,b=m.dataPoint)}if(!f(m)&&!f(m.dataPoint)&&!f(m.dataPoint.y))if(m.dataSeries.axisY)if(0<m.dataPoint.y.length){for(b=c=0;b<m.dataPoint.y.length;b++)m.dataPoint.y[b]<m.dataSeries.axisY.viewportMinimum?c--:m.dataPoint.y[b]>m.dataSeries.axisY.viewportMaximum&&c++;c<m.dataPoint.y.length&&c>-m.dataPoint.y.length&&l.push(m)}else"column"===e.type||"bar"===e.type?0>m.dataPoint.y?0>m.dataSeries.axisY.viewportMinimum&&
882
- m.dataSeries.axisY.viewportMaximum>=m.dataPoint.y&&l.push(m):m.dataSeries.axisY.viewportMinimum<=m.dataPoint.y&&0<=m.dataSeries.axisY.viewportMaximum&&l.push(m):"bubble"===e.type?(c=this.chart._eventManager.objectMap[e.dataPointIds[m.index]].size/2,m.dataPoint.y>=m.dataSeries.axisY.viewportMinimum-c&&m.dataPoint.y<=m.dataSeries.axisY.viewportMaximum+c&&l.push(m)):"waterfall"===e.type?(c=0,m.cumulativeSumYStartValue<m.dataSeries.axisY.viewportMinimum?c--:m.cumulativeSumYStartValue>m.dataSeries.axisY.viewportMaximum&&
883
- c++,m.cumulativeSum<m.dataSeries.axisY.viewportMinimum?c--:m.cumulativeSum>m.dataSeries.axisY.viewportMaximum&&c++,2>c&&-2<c&&l.push(m)):(0<=m.dataSeries.type.indexOf("100")||"stackedColumn"===e.type||"stackedBar"===e.type||m.dataPoint.y>=m.dataSeries.axisY.viewportMinimum&&m.dataPoint.y<=m.dataSeries.axisY.viewportMaximum)&&l.push(m);else l.push(m)}}if(0<l.length){if(this.highlightObjects(l),this.enabled){c="";c=this.getToolTipInnerHTML({entries:l});if(null!==c){this.contentDiv.innerHTML=c;if(this.isToolTipDefinedInData&&
884
- f(this.options.content)&&f(this.options.contentFormatter))for(k=this.contentDiv.getElementsByTagName("span"),b=0;b<k.length;b++)k[b]&&(k[b].style.color=k[b].getAttribute("data-color"));k=!1;"none"===this.container.style.display&&(k=!0,this.container.style.display="block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:r?"rgba(255,255,255,.9)":"rgb(255,255,255)",this.borderColor="waterfall"===l[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=
885
- this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:l[0].dataPoint.color?l[0].dataPoint.color:0<l[0].dataPoint.y?l[0].dataSeries.risingColor:l[0].dataSeries.fallingColor:"error"===l[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:l[0].dataSeries.color?l[0].dataSeries.color:l[0].dataSeries._colorSet[e.index%l[0].dataSeries._colorSet.length]:
886
- this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:l[0].dataPoint.color?l[0].dataPoint.color:l[0].dataSeries.color?l[0].dataSeries.color:l[0].dataSeries._colorSet[l[0].index%l[0].dataSeries._colorSet.length],this.contentDiv.style.borderWidth=this.borderThickness||0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=this.cornerRadius||0===this.cornerRadius?
887
- 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:r?"italic":
888
- "normal"}catch(n){}"pie"===l[0].dataSeries.type||"doughnut"===l[0].dataSeries.type||"funnel"===l[0].dataSeries.type||"pyramid"===l[0].dataSeries.type||"bar"===l[0].dataSeries.type||"rangeBar"===l[0].dataSeries.type||"stackedBar"===l[0].dataSeries.type||"stackedBar100"===l[0].dataSeries.type?a=a-10-this.container.clientWidth:(a=l[0].dataSeries.axisX.convertValueToPixel(l[0].dataPoint.x)-this.container.clientWidth<<0,a-=10);0>a&&(a+=this.container.clientWidth+20);a+this.container.clientWidth>Math.max(this.chart.container.clientWidth,
889
- this.chart.width)&&(a=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));d=1!==l.length||this.shared||"line"!==l[0].dataSeries.type&&"stepLine"!==l[0].dataSeries.type&&"spline"!==l[0].dataSeries.type&&"area"!==l[0].dataSeries.type&&"stepArea"!==l[0].dataSeries.type&&"splineArea"!==l[0].dataSeries.type?"bar"===l[0].dataSeries.type||"rangeBar"===l[0].dataSeries.type||"stackedBar"===l[0].dataSeries.type||"stackedBar100"===l[0].dataSeries.type?l[0].dataSeries.axisX.convertValueToPixel(l[0].dataPoint.x):
890
- d:l[0].dataSeries.axisY.convertValueToPixel(l[0].dataPoint.y);d=-d+10;0<d+this.container.clientHeight+5&&(d-=d+this.container.clientHeight+5-0);this.fixMozTransitionDelay(a,d);!this.animationEnabled||k?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);this.positionLeft=a;this.positionBottom=d;this.container.style.left=a+"px";this.container.style.bottom=d+"px"}else this.hide(!1),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,
891
- toolTip:this},this);d=[];for(b=0;b<l.length;b++)d.push({xValue:l[b].dataPoint.x,dataPoint:l[b].dataPoint,dataSeries:l[b].dataSeries,dataPointIndex:l[b].index,dataSeriesIndex:l[b].dataSeries._index});this._updatedEventParameters={chart:this.chart,toolTip:this.options,content:c,entries:d};this._entries=l}}else this.hide(),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this)}};pa.prototype.highlightObjects=function(a){var h=this.chart.overlaidCanvasCtx;f(this.chart.clearedOverlayedCanvas)||
892
- "toolTip"===this.chart.clearedOverlayedCanvas?(this.chart.resetOverlayedCanvas(),h.clearRect(0,0,this.chart.width,this.chart.height),this.chart.clearedOverlayedCanvas="toolTip"):this.chart.clearedOverlayedCanvas=null;h.save();var c=this.chart.plotArea,b=0;h.beginPath();h.rect(c.x1,c.y1,c.x2-c.x1,c.y2-c.y1);h.clip();for(c=0;c<a.length;c++){var e=a[c];if((e=this.chart._eventManager.objectMap[e.dataSeries.dataPointIds[e.index]])&&e.objectType&&"dataPoint"===e.objectType){var b=this.chart.data[e.dataSeriesIndex],
893
- l=b.dataPoints[e.dataPointIndex],k=e.dataPointIndex;!1===l.highlightEnabled||!0!==b.highlightEnabled&&!0!==l.highlightEnabled||("line"===b.type||"stepLine"===b.type||"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?(l=b.getMarkerProperties(k,e.x1,e.y1,this.chart.overlaidCanvasCtx),l.size=Math.max(1.5*l.size<<0,10),l.borderColor=l.borderColor||"#FFFFFF",
894
- l.borderThickness=l.borderThickness||Math.ceil(0.1*l.size),u.drawMarkers([l]),"undefined"!==typeof e.y2&&(l=b.getMarkerProperties(k,e.x1,e.y2,this.chart.overlaidCanvasCtx),l.size=Math.max(1.5*l.size<<0,10),l.borderColor=l.borderColor||"#FFFFFF",l.borderThickness=l.borderThickness||Math.ceil(0.1*l.size),u.drawMarkers([l]))):"bubble"===b.type?(l=b.getMarkerProperties(k,e.x1,e.y1,this.chart.overlaidCanvasCtx),l.size=e.size,l.color="white",l.borderColor="white",h.globalAlpha=0.3,u.drawMarkers([l]),h.globalAlpha=
895
- 1):"column"===b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"bar"===b.type||"rangeBar"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"rangeColumn"===b.type||"waterfall"===b.type?ba(h,e.x1,e.y1,e.x2,e.y2,"white",0,null,!1,!1,!1,!1,0.3):"pie"===b.type||"doughnut"===b.type?d(h,e.center,e.radius,"white",b.type,e.startAngle,e.endAngle,0.3,e.percentInnerRadius):"funnel"===b.type||"pyramid"===b.type?v(h,e.funnelSection,0.3,"white"):"candlestick"===b.type?(h.globalAlpha=1,h.strokeStyle=
896
- e.color,h.lineWidth=2*e.borderThickness,b=0===h.lineWidth%2?0:0.5,h.beginPath(),h.moveTo(e.x3-b,Math.min(e.y2,e.y3)),h.lineTo(e.x3-b,Math.min(e.y1,e.y4)),h.stroke(),h.beginPath(),h.moveTo(e.x3-b,Math.max(e.y1,e.y4)),h.lineTo(e.x3-b,Math.max(e.y2,e.y3)),h.stroke(),ba(h,e.x1,Math.min(e.y1,e.y4),e.x2,Math.max(e.y1,e.y4),"transparent",2*e.borderThickness,e.color,!1,!1,!1,!1),h.globalAlpha=1):"ohlc"===b.type?(h.globalAlpha=1,h.strokeStyle=e.color,h.lineWidth=2*e.borderThickness,b=0===h.lineWidth%2?0:0.5,
897
- h.beginPath(),h.moveTo(e.x3-b,e.y2),h.lineTo(e.x3-b,e.y3),h.stroke(),h.beginPath(),h.moveTo(e.x3,e.y1),h.lineTo(e.x1,e.y1),h.stroke(),h.beginPath(),h.moveTo(e.x3,e.y4),h.lineTo(e.x2,e.y4),h.stroke(),h.globalAlpha=1):"boxAndWhisker"===b.type?(h.save(),h.globalAlpha=1,h.strokeStyle=e.stemColor,h.lineWidth=2*e.stemThickness,0<e.stemThickness&&(h.beginPath(),h.moveTo(e.x3,e.y2+e.borderThickness/2),h.lineTo(e.x3,e.y1+e.whiskerThickness/2),h.stroke(),h.beginPath(),h.moveTo(e.x3,e.y4-e.whiskerThickness/
898
- 2),h.lineTo(e.x3,e.y3-e.borderThickness/2),h.stroke()),h.beginPath(),ba(h,e.x1,Math.max(e.y2,e.y3),e.x2,Math.min(e.y2,e.y3),"transparent",2*e.borderThickness,e.color,!1,!1,!1,!1),h.globalAlpha=1,h.strokeStyle=e.whiskerColor,h.lineWidth=2*e.whiskerThickness,0<e.whiskerThickness&&(h.beginPath(),h.moveTo(Math.floor(e.x3-e.whiskerLength/2),e.y4),h.lineTo(Math.ceil(e.x3+e.whiskerLength/2),e.y4),h.stroke(),h.beginPath(),h.moveTo(Math.floor(e.x3-e.whiskerLength/2),e.y1),h.lineTo(Math.ceil(e.x3+e.whiskerLength/
899
- 2),e.y1),h.stroke()),h.globalAlpha=1,h.strokeStyle=e.lineColor,h.lineWidth=2*e.lineThickness,0<e.lineThickness&&(h.beginPath(),h.moveTo(e.x1,e.y5),h.lineTo(e.x2,e.y5),h.stroke()),h.restore(),h.globalAlpha=1):"error"===b.type&&F(h,e.x1,e.y1,e.x2,e.y2,"white",e.whiskerProperties,e.stemProperties,e.isXYSwapped,0.3))}}h.restore();h.globalAlpha=1;h.beginPath()};pa.prototype.getToolTipInnerHTML=function(a){a=a.entries;var d=null,c=null,b=null,e=0,f="";this.isToolTipDefinedInData=!0;for(var k=0;k<a.length;k++)if(a[k].dataSeries.toolTipContent||
900
- a[k].dataPoint.toolTipContent){this.isToolTipDefinedInData=!1;break}if(this.isToolTipDefinedInData&&(this.content&&"function"===typeof this.content||this.contentFormatter))a={chart:this.chart,toolTip:this.options,entries:a},d=this.contentFormatter?this.contentFormatter(a):this.content(a);else if(this.shared&&"none"!==this.chart.plotInfo.axisPlacement){for(var v=null,t="",k=0;k<a.length;k++){c=a[k].dataSeries;b=a[k].dataPoint;e=a[k].index;f="";if(0===k&&this.isToolTipDefinedInData&&!this.content){this.chart.axisX&&
901
- 0<this.chart.axisX.length?t+="undefined"!==typeof this.chart.axisX[0].labels[b.x]?this.chart.axisX[0].labels[b.x]:"{x}":this.chart.axisX2&&0<this.chart.axisX2.length&&(t+="undefined"!==typeof this.chart.axisX2[0].labels[b.x]?this.chart.axisX2[0].labels[b.x]:"{x}");t+="</br>";if(!c.visible)continue;t=this.chart.replaceKeywordsWithValue(t,b,c,e)}null===b.toolTipContent||"undefined"===typeof b.toolTipContent&&null===c.options.toolTipContent||("line"===c.type||"stepLine"===c.type||"spline"===c.type||
902
- "area"===c.type||"stepArea"===c.type||"splineArea"===c.type||"column"===c.type||"bar"===c.type||"scatter"===c.type||"stackedColumn"===c.type||"stackedColumn100"===c.type||"stackedBar"===c.type||"stackedBar100"===c.type||"stackedArea"===c.type||"stackedArea100"===c.type||"waterfall"===c.type?(this.chart.axisX&&1<this.chart.axisX.length&&(f+=v!=c.axisXIndex?c.axisX.title?c.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&
903
- "function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}",v=c.axisXIndex):"bubble"===c.type?(this.chart.axisX&&1<this.chart.axisX.length&&(f+=v!=c.axisXIndex?c.axisX.title?c.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+
904
- "\"'>{name}:</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}"):"rangeColumn"===c.type||"rangeBar"===c.type||"rangeArea"===c.type||"rangeSplineArea"===c.type||"error"===c.type?(this.chart.axisX&&1<this.chart.axisX.length&&(f+=v!=c.axisXIndex?c.axisX.title?c.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.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]}"):
905
- "candlestick"===c.type||"ohlc"===c.type?(this.chart.axisX&&1<this.chart.axisX.length&&(f+=v!=c.axisXIndex?c.axisX.title?c.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.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]}"):
906
- "boxAndWhisker"===c.type&&(this.chart.axisX&&1<this.chart.axisX.length&&(f+=v!=c.axisXIndex?c.axisX.title?c.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.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]}"),
907
- null===d&&(d=""),c.visible&&(!0===this.reversed?(d=this.chart.replaceKeywordsWithValue(f,b,c,e)+d,k<a.length-1&&(d="</br>"+d)):(d+=this.chart.replaceKeywordsWithValue(f,b,c,e),k<a.length-1&&(d+="</br>"))))}null!==d&&(d=t+d)}else{c=a[0].dataSeries;b=a[0].dataPoint;e=a[0].index;if(null===b.toolTipContent||"undefined"===typeof b.toolTipContent&&null===c.options.toolTipContent)return null;"line"===c.type||"stepLine"===c.type||"spline"===c.type||"area"===c.type||"stepArea"===c.type||"splineArea"===c.type||
880
+ m.cumulativeSum=e.dataPointEOs[this.currentDataPointIndex].cumulativeSum);else if(this.enabled&&e&&("line"===e.type||"stepLine"===e.type||"spline"===e.type||"area"===e.type||"stepArea"===e.type||"splineArea"===e.type||"stackedArea"===e.type||"stackedArea100"===e.type||"rangeArea"===e.type||"rangeSplineArea"===e.type||"candlestick"===e.type||"ohlc"===e.type||"boxAndWhisker"===e.type))k=e.axisX.convertPixelToValue({x:a}),m=e.getDataPointAtX(k,c),f(m)||(m.dataSeries=e,this.currentDataPointIndex=m.index,
881
+ b=m.dataPoint);else{"toolTip"===this.chart.clearedOverlayedCanvas&&(this.chart.resetOverlayedCanvas(),this.chart.clearedOverlayedCanvas=null);return}if(!f(m)&&!f(m.dataPoint)&&!f(m.dataPoint.y))if(m.dataSeries.axisY)if(0<m.dataPoint.y.length){for(b=c=0;b<m.dataPoint.y.length;b++)m.dataPoint.y[b]<m.dataSeries.axisY.viewportMinimum?c--:m.dataPoint.y[b]>m.dataSeries.axisY.viewportMaximum&&c++;c<m.dataPoint.y.length&&c>-m.dataPoint.y.length&&l.push(m)}else"column"===e.type||"bar"===e.type?0>m.dataPoint.y?
882
+ 0>m.dataSeries.axisY.viewportMinimum&&m.dataSeries.axisY.viewportMaximum>=m.dataPoint.y&&l.push(m):m.dataSeries.axisY.viewportMinimum<=m.dataPoint.y&&0<=m.dataSeries.axisY.viewportMaximum&&l.push(m):"bubble"===e.type?(c=this.chart._eventManager.objectMap[e.dataPointIds[m.index]].size/2,m.dataPoint.y>=m.dataSeries.axisY.viewportMinimum-c&&m.dataPoint.y<=m.dataSeries.axisY.viewportMaximum+c&&l.push(m)):"waterfall"===e.type?(c=0,m.cumulativeSumYStartValue<m.dataSeries.axisY.viewportMinimum?c--:m.cumulativeSumYStartValue>
883
+ m.dataSeries.axisY.viewportMaximum&&c++,m.cumulativeSum<m.dataSeries.axisY.viewportMinimum?c--:m.cumulativeSum>m.dataSeries.axisY.viewportMaximum&&c++,2>c&&-2<c&&l.push(m)):(0<=m.dataSeries.type.indexOf("100")||"stackedColumn"===e.type||"stackedBar"===e.type||m.dataPoint.y>=m.dataSeries.axisY.viewportMinimum&&m.dataPoint.y<=m.dataSeries.axisY.viewportMaximum)&&l.push(m);else l.push(m)}}if(0<l.length){if(this.highlightObjects(l),this.enabled){c="";c=this.getToolTipInnerHTML({entries:l});if(null!==
884
+ c){this.contentDiv.innerHTML=c;if(this.isToolTipDefinedInData&&f(this.options.content)&&f(this.options.contentFormatter))for(k=this.contentDiv.getElementsByTagName("span"),b=0;b<k.length;b++)k[b]&&(k[b].style.color=k[b].getAttribute("data-color"));k=!1;"none"===this.container.style.display&&(k=!0,this.container.style.display="block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:r?"rgba(255,255,255,.9)":"rgb(255,255,255)",this.borderColor="waterfall"===l[0].dataSeries.type?
885
+ this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:l[0].dataPoint.color?l[0].dataPoint.color:0<l[0].dataPoint.y?l[0].dataSeries.risingColor:l[0].dataSeries.fallingColor:"error"===l[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:l[0].dataSeries.color?l[0].dataSeries.color:
886
+ l[0].dataSeries._colorSet[e.index%l[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:l[0].dataPoint.color?l[0].dataPoint.color:l[0].dataSeries.color?l[0].dataSeries.color:l[0].dataSeries._colorSet[l[0].index%l[0].dataSeries._colorSet.length],this.contentDiv.style.borderWidth=this.borderThickness||0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=
887
+ 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=this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=
888
+ this.fontStyle?this.fontStyle:r?"italic":"normal"}catch(n){}"pie"===l[0].dataSeries.type||"doughnut"===l[0].dataSeries.type||"funnel"===l[0].dataSeries.type||"pyramid"===l[0].dataSeries.type||"bar"===l[0].dataSeries.type||"rangeBar"===l[0].dataSeries.type||"stackedBar"===l[0].dataSeries.type||"stackedBar100"===l[0].dataSeries.type?a=a-10-this.container.clientWidth:(a=l[0].dataSeries.axisX.convertValueToPixel(l[0].dataPoint.x)-this.container.clientWidth<<0,a-=10);0>a&&(a+=this.container.clientWidth+
889
+ 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));d=1!==l.length||this.shared||"line"!==l[0].dataSeries.type&&"stepLine"!==l[0].dataSeries.type&&"spline"!==l[0].dataSeries.type&&"area"!==l[0].dataSeries.type&&"stepArea"!==l[0].dataSeries.type&&"splineArea"!==l[0].dataSeries.type?"bar"===l[0].dataSeries.type||"rangeBar"===l[0].dataSeries.type||"stackedBar"===
890
+ l[0].dataSeries.type||"stackedBar100"===l[0].dataSeries.type?l[0].dataSeries.axisX.convertValueToPixel(l[0].dataPoint.x):d:l[0].dataSeries.axisY.convertValueToPixel(l[0].dataPoint.y);d=-d+10;0<d+this.container.clientHeight+5&&(d-=d+this.container.clientHeight+5-0);this.fixMozTransitionDelay(a,d);!this.animationEnabled||k?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);this.positionLeft=a;this.positionBottom=d;this.container.style.left=
891
+ a+"px";this.container.style.bottom=d+"px"}else this.hide(!1),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,toolTip:this},this);d=[];for(b=0;b<l.length;b++)d.push({xValue:l[b].dataPoint.x,dataPoint:l[b].dataPoint,dataSeries:l[b].dataSeries,dataPointIndex:l[b].index,dataSeriesIndex:l[b].dataSeries._index});this._updatedEventParameters={chart:this.chart,toolTip:this.options,content:c,entries:d};this._entries=l}}else this.hide(),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,
892
+ toolTip:this},this)}};pa.prototype.highlightObjects=function(a){var h=this.chart.overlaidCanvasCtx;f(this.chart.clearedOverlayedCanvas)||"toolTip"===this.chart.clearedOverlayedCanvas?(this.chart.resetOverlayedCanvas(),h.clearRect(0,0,this.chart.width,this.chart.height),this.chart.clearedOverlayedCanvas="toolTip"):this.chart.clearedOverlayedCanvas=null;h.save();var c=this.chart.plotArea,b=0;h.beginPath();h.rect(c.x1,c.y1,c.x2-c.x1,c.y2-c.y1);h.clip();for(c=0;c<a.length;c++){var e=a[c];if((e=this.chart._eventManager.objectMap[e.dataSeries.dataPointIds[e.index]])&&
893
+ e.objectType&&"dataPoint"===e.objectType){var b=this.chart.data[e.dataSeriesIndex],l=b.dataPoints[e.dataPointIndex],k=e.dataPointIndex;!1===l.highlightEnabled||!0!==b.highlightEnabled&&!0!==l.highlightEnabled||("line"===b.type||"stepLine"===b.type||"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?(l=b.getMarkerProperties(k,e.x1,e.y1,this.chart.overlaidCanvasCtx),
894
+ l.size=Math.max(1.5*l.size<<0,10),l.borderColor=l.borderColor||"#FFFFFF",l.borderThickness=l.borderThickness||Math.ceil(0.1*l.size),v.drawMarkers([l]),"undefined"!==typeof e.y2&&(l=b.getMarkerProperties(k,e.x1,e.y2,this.chart.overlaidCanvasCtx),l.size=Math.max(1.5*l.size<<0,10),l.borderColor=l.borderColor||"#FFFFFF",l.borderThickness=l.borderThickness||Math.ceil(0.1*l.size),v.drawMarkers([l]))):"bubble"===b.type?(l=b.getMarkerProperties(k,e.x1,e.y1,this.chart.overlaidCanvasCtx),l.size=e.size,l.color=
895
+ "white",l.borderColor="white",h.globalAlpha=0.3,v.drawMarkers([l]),h.globalAlpha=1):"column"===b.type||"stackedColumn"===b.type||"stackedColumn100"===b.type||"bar"===b.type||"rangeBar"===b.type||"stackedBar"===b.type||"stackedBar100"===b.type||"rangeColumn"===b.type||"waterfall"===b.type?ba(h,e.x1,e.y1,e.x2,e.y2,"white",0,null,!1,!1,!1,!1,0.3):"pie"===b.type||"doughnut"===b.type?d(h,e.center,e.radius,"white",b.type,e.startAngle,e.endAngle,0.3,e.percentInnerRadius):"funnel"===b.type||"pyramid"===b.type?
896
+ u(h,e.funnelSection,0.3,"white"):"candlestick"===b.type?(h.globalAlpha=1,h.strokeStyle=e.color,h.lineWidth=2*e.borderThickness,b=0===h.lineWidth%2?0:0.5,h.beginPath(),h.moveTo(e.x3-b,Math.min(e.y2,e.y3)),h.lineTo(e.x3-b,Math.min(e.y1,e.y4)),h.stroke(),h.beginPath(),h.moveTo(e.x3-b,Math.max(e.y1,e.y4)),h.lineTo(e.x3-b,Math.max(e.y2,e.y3)),h.stroke(),ba(h,e.x1,Math.min(e.y1,e.y4),e.x2,Math.max(e.y1,e.y4),"transparent",2*e.borderThickness,e.color,!1,!1,!1,!1),h.globalAlpha=1):"ohlc"===b.type?(h.globalAlpha=
897
+ 1,h.strokeStyle=e.color,h.lineWidth=2*e.borderThickness,b=0===h.lineWidth%2?0:0.5,h.beginPath(),h.moveTo(e.x3-b,e.y2),h.lineTo(e.x3-b,e.y3),h.stroke(),h.beginPath(),h.moveTo(e.x3,e.y1),h.lineTo(e.x1,e.y1),h.stroke(),h.beginPath(),h.moveTo(e.x3,e.y4),h.lineTo(e.x2,e.y4),h.stroke(),h.globalAlpha=1):"boxAndWhisker"===b.type?(h.save(),h.globalAlpha=1,h.strokeStyle=e.stemColor,h.lineWidth=2*e.stemThickness,0<e.stemThickness&&(h.beginPath(),h.moveTo(e.x3,e.y2+e.borderThickness/2),h.lineTo(e.x3,e.y1+e.whiskerThickness/
898
+ 2),h.stroke(),h.beginPath(),h.moveTo(e.x3,e.y4-e.whiskerThickness/2),h.lineTo(e.x3,e.y3-e.borderThickness/2),h.stroke()),h.beginPath(),ba(h,e.x1,Math.max(e.y2,e.y3),e.x2,Math.min(e.y2,e.y3),"transparent",2*e.borderThickness,e.color,!1,!1,!1,!1),h.globalAlpha=1,h.strokeStyle=e.whiskerColor,h.lineWidth=2*e.whiskerThickness,0<e.whiskerThickness&&(h.beginPath(),h.moveTo(Math.floor(e.x3-e.whiskerLength/2),e.y4),h.lineTo(Math.ceil(e.x3+e.whiskerLength/2),e.y4),h.stroke(),h.beginPath(),h.moveTo(Math.floor(e.x3-
899
+ e.whiskerLength/2),e.y1),h.lineTo(Math.ceil(e.x3+e.whiskerLength/2),e.y1),h.stroke()),h.globalAlpha=1,h.strokeStyle=e.lineColor,h.lineWidth=2*e.lineThickness,0<e.lineThickness&&(h.beginPath(),h.moveTo(e.x1,e.y5),h.lineTo(e.x2,e.y5),h.stroke()),h.restore(),h.globalAlpha=1):"error"===b.type&&F(h,e.x1,e.y1,e.x2,e.y2,"white",e.whiskerProperties,e.stemProperties,e.isXYSwapped,0.3))}}h.restore();h.globalAlpha=1;h.beginPath()};pa.prototype.getToolTipInnerHTML=function(a){a=a.entries;var d=null,c=null,b=
900
+ null,e=0,f="";this.isToolTipDefinedInData=!0;for(var k=0;k<a.length;k++)if(a[k].dataSeries.toolTipContent||a[k].dataPoint.toolTipContent){this.isToolTipDefinedInData=!1;break}if(this.isToolTipDefinedInData&&(this.content&&"function"===typeof this.content||this.contentFormatter))a={chart:this.chart,toolTip:this.options,entries:a},d=this.contentFormatter?this.contentFormatter(a):this.content(a);else if(this.shared&&"none"!==this.chart.plotInfo.axisPlacement){for(var u=null,s="",k=0;k<a.length;k++){c=
901
+ a[k].dataSeries;b=a[k].dataPoint;e=a[k].index;f="";if(0===k&&this.isToolTipDefinedInData&&!this.content){this.chart.axisX&&0<this.chart.axisX.length?s+="undefined"!==typeof this.chart.axisX[0].labels[b.x]?this.chart.axisX[0].labels[b.x]:"{x}":this.chart.axisX2&&0<this.chart.axisX2.length&&(s+="undefined"!==typeof this.chart.axisX2[0].labels[b.x]?this.chart.axisX2[0].labels[b.x]:"{x}");s+="</br>";if(!c.visible)continue;s=this.chart.replaceKeywordsWithValue(s,b,c,e)}null===b.toolTipContent||"undefined"===
902
+ typeof b.toolTipContent&&null===c.options.toolTipContent||("line"===c.type||"stepLine"===c.type||"spline"===c.type||"area"===c.type||"stepArea"===c.type||"splineArea"===c.type||"column"===c.type||"bar"===c.type||"scatter"===c.type||"stackedColumn"===c.type||"stackedColumn100"===c.type||"stackedBar"===c.type||"stackedBar100"===c.type||"stackedArea"===c.type||"stackedArea100"===c.type||"waterfall"===c.type?(this.chart.axisX&&1<this.chart.axisX.length&&(f+=u!=c.axisXIndex?c.axisX.title?c.axisX.title+
903
+ "<br/>":"X:{axisXIndex}<br/>":""),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}",u=c.axisXIndex):"bubble"===c.type?(this.chart.axisX&&1<this.chart.axisX.length&&(f+=u!=c.axisXIndex?c.axisX.title?c.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&
904
+ "function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}"):"rangeColumn"===c.type||"rangeBar"===c.type||"rangeArea"===c.type||"rangeSplineArea"===c.type||"error"===c.type?(this.chart.axisX&&1<this.chart.axisX.length&&(f+=u!=c.axisXIndex?c.axisX.title?c.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&"function"!==
905
+ typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>{name}:</span>&nbsp;&nbsp;{y[0]},&nbsp;{y[1]}"):"candlestick"===c.type||"ohlc"===c.type?(this.chart.axisX&&1<this.chart.axisX.length&&(f+=u!=c.axisXIndex?c.axisX.title?c.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+
906
+ "\"'>{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"===c.type&&(this.chart.axisX&&1<this.chart.axisX.length&&(f+=u!=c.axisXIndex?c.axisX.title?c.axisX.title+"<br/>":"X:{axisXIndex}<br/>":""),f+=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.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]}"),
907
+ null===d&&(d=""),c.visible&&(!0===this.reversed?(d=this.chart.replaceKeywordsWithValue(f,b,c,e)+d,k<a.length-1&&(d="</br>"+d)):(d+=this.chart.replaceKeywordsWithValue(f,b,c,e),k<a.length-1&&(d+="</br>"))))}null!==d&&(d=s+d)}else{c=a[0].dataSeries;b=a[0].dataPoint;e=a[0].index;if(null===b.toolTipContent||"undefined"===typeof b.toolTipContent&&null===c.options.toolTipContent)return null;"line"===c.type||"stepLine"===c.type||"spline"===c.type||"area"===c.type||"stepArea"===c.type||"splineArea"===c.type||
908
908
  "column"===c.type||"bar"===c.type||"scatter"===c.type||"stackedColumn"===c.type||"stackedColumn100"===c.type||"stackedBar"===c.type||"stackedBar100"===c.type||"stackedArea"===c.type||"stackedArea100"===c.type||"waterfall"===c.type?f=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(b.label?"{label}":"{x}")+":</span>&nbsp;&nbsp;{y}":"bubble"===c.type?
909
909
  f=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(b.label?"{label}":"{x}")+":</span>&nbsp;&nbsp;{y}, &nbsp;&nbsp;{z}":"pie"===c.type||"doughnut"===c.type||"funnel"===c.type||"pyramid"===c.type?f=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?
910
910
  "":"'{color}'")+"\"'>"+(b.name?"{name}:</span>&nbsp;&nbsp;":b.label?"{label}:</span>&nbsp;&nbsp;":"</span>")+"{y}":"rangeColumn"===c.type||"rangeBar"===c.type||"rangeArea"===c.type||"rangeSplineArea"===c.type||"error"===c.type?f=b.toolTipContent?b.toolTipContent:c.toolTipContent?c.toolTipContent:this.content&&"function"!==typeof this.content?this.content:"<span data-color='\""+(this.options.fontColor?"":"'{color}'")+"\"'>"+(b.label?"{label}":"{x}")+" :</span>&nbsp;&nbsp;{y[0]}, &nbsp;{y[1]}":"candlestick"===
@@ -917,7 +917,7 @@ b.dataPoint.x<=b.dataSeries.axisX.viewportMaximum){e=!1;break}else if(b.dataPoin
917
917
  f(this.options.contentFormatter))for(b=this.contentDiv.getElementsByTagName("span"),k=0;k<b.length;k++)b[k]&&(b[k].style.color=b[k].getAttribute("data-color"));k=!1;"none"===this.container.style.display&&(k=!0,this.container.style.display="block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:r?"rgba(255,255,255,.9)":"rgb(255,255,255)",this.borderColor="waterfall"===l[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=
918
918
  this.options.borderColor?this.options.borderColor:l[0].dataPoint.color?l[0].dataPoint.color:0<l[0].dataPoint.y?l[0].dataSeries.risingColor:l[0].dataSeries.fallingColor:"error"===l[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:l[0].dataSeries.color?l[0].dataSeries.color:l[0].dataSeries._colorSet[c.index%l[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=
919
919
  this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:l[0].dataPoint.color?l[0].dataPoint.color:l[0].dataSeries.color?l[0].dataSeries.color:l[0].dataSeries._colorSet[l[0].index%l[0].dataSeries._colorSet.length],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=
920
- 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:r?"italic":"normal"}catch(v){}"pie"===l[0].dataSeries.type||"doughnut"===
920
+ 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:r?"italic":"normal"}catch(u){}"pie"===l[0].dataSeries.type||"doughnut"===
921
921
  l[0].dataSeries.type||"funnel"===l[0].dataSeries.type||"pyramid"===l[0].dataSeries.type?c=mouseX-10-this.container.clientWidth:(c="bar"===l[0].dataSeries.type||"rangeBar"===l[0].dataSeries.type||"stackedBar"===l[0].dataSeries.type||"stackedBar100"===l[0].dataSeries.type?l[0].dataSeries.axisY.convertValueToPixel(l[0].dataPoint.y)-this.container.clientWidth<<0:l[0].dataSeries.axisX.convertValueToPixel(l[0].dataPoint.x)-this.container.clientWidth<<0,c-=10);0>c&&(c+=this.container.clientWidth+20);c+this.container.clientWidth>
922
922
  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));l=1!==l.length||this.shared||"line"!==l[0].dataSeries.type&&"stepLine"!==l[0].dataSeries.type&&"spline"!==l[0].dataSeries.type&&"area"!==l[0].dataSeries.type&&"stepArea"!==l[0].dataSeries.type&&"splineArea"!==l[0].dataSeries.type?"bar"===l[0].dataSeries.type||"rangeBar"===l[0].dataSeries.type||"stackedBar"===l[0].dataSeries.type||"stackedBar100"===
923
923
  l[0].dataSeries.type?l[0].dataSeries.axisX.convertValueToPixel(l[0].dataPoint.x):l[0].dataSeries.axisY.convertValueToPixel(l[0].dataPoint.y):l[0].dataSeries.axisY.convertValueToPixel(l[0].dataPoint.y);l=-l+10;0<l+this.container.clientHeight+5&&(l-=l+this.container.clientHeight+5-0);this.fixMozTransitionDelay(c,l);!this.animationEnabled||k?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);this.container.style.left=c+"px";this.container.style.bottom=
@@ -928,14 +928,14 @@ click:"click"};d.push(b);b=this.objectMap[e.id];b.eventParameter={x:c.x,y:c.y,da
928
928
  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"},d.push(b));e=[];for(c=0;c<this.mouseoveredObjectMaps.length;c++){f=!0;for(b=0;b<d.length;b++)if(d[b].id===this.mouseoveredObjectMaps[c].id){f=!1;break}f?this.fireEvent(this.mouseoveredObjectMaps[c],"mouseout",a):e.push(this.mouseoveredObjectMaps[c])}this.mouseoveredObjectMaps=
929
929
  e;for(c=0;c<d.length;c++){e=!1;for(b=0;b<this.mouseoveredObjectMaps.length;b++)if(d[c].id===this.mouseoveredObjectMaps[b].id){e=!0;break}e||(this.fireEvent(d[c],"mouseover",a),this.mouseoveredObjectMaps.push(d[c]));"click"===a.type?this.fireEvent(d[c],"click",a):"mousemove"===a.type&&this.fireEvent(d[c],"mousemove",a)}}};ia.prototype.fireEvent=function(a,d,c){if(a&&d){var b=a.eventParameter,e=a.eventContext,f=a.eventContext.userContext;f&&(e&&f[e[d]])&&f[e[d]].call(f,b);"mouseout"!==d?f.cursor&&f.cursor!==
930
930
  c.target.style.cursor&&(c.target.style.cursor=f.cursor):(c.target.style.cursor=this.chart.panEnabled?"itemmouseout"!==e.mouseout||f.dockInsidePlotArea?"move":this.chart._defaultCursor:this.chart._defaultCursor,delete a.eventParameter,delete a.eventContext);"click"===d&&("dataPoint"===a.objectType&&this.chart.pieDoughnutClickHandler)&&this.chart.pieDoughnutClickHandler.call(this.chart.data[a.dataSeriesIndex],b);"click"===d&&("dataPoint"===a.objectType&&this.chart.funnelPyramidClickHandler)&&this.chart.funnelPyramidClickHandler.call(this.chart.data[a.dataSeriesIndex],
931
- b)}};la.prototype.animate=function(a,d,c,b,e){var f=this;this.chart.isAnimating=!0;e=e||t.easing.linear;c&&this.animations.push({startTime:(new Date).getTime()+(a?a:0),duration:d,animationCallback:c,onComplete:b});for(a=[];0<this.animations.length;)if(d=this.animations.shift(),c=(new Date).getTime(),b=0,d.startTime<=c&&(b=e(Math.min(c-d.startTime,d.duration),0,1,d.duration),b=Math.min(b,1),isNaN(b)||!isFinite(b))&&(b=1),1>b&&a.push(d),d.animationCallback(b),1<=b&&d.onComplete)d.onComplete();this.animations=
932
- a;0<this.animations.length?this.animationRequestId=this.chart.requestAnimFrame.call(window,function(){f.animate.call(f)}):this.chart.isAnimating=!1};la.prototype.cancelAllAnimations=function(){this.animations=[];this.animationRequestId&&this.chart.cancelRequestAnimFrame.call(window,this.animationRequestId);this.animationRequestId=null;this.chart.isAnimating=!1};var t={yScaleAnimation:function(a,d){if(0!==a){var c=d.dest,b=d.source.canvas,e=d.animationBase;c.drawImage(b,0,0,b.width,b.height,0,e-e*
931
+ b)}};la.prototype.animate=function(a,d,c,b,e){var f=this;this.chart.isAnimating=!0;e=e||s.easing.linear;c&&this.animations.push({startTime:(new Date).getTime()+(a?a:0),duration:d,animationCallback:c,onComplete:b});for(a=[];0<this.animations.length;)if(d=this.animations.shift(),c=(new Date).getTime(),b=0,d.startTime<=c&&(b=e(Math.min(c-d.startTime,d.duration),0,1,d.duration),b=Math.min(b,1),isNaN(b)||!isFinite(b))&&(b=1),1>b&&a.push(d),d.animationCallback(b),1<=b&&d.onComplete)d.onComplete();this.animations=
932
+ a;0<this.animations.length?this.animationRequestId=this.chart.requestAnimFrame.call(window,function(){f.animate.call(f)}):this.chart.isAnimating=!1};la.prototype.cancelAllAnimations=function(){this.animations=[];this.animationRequestId&&this.chart.cancelRequestAnimFrame.call(window,this.animationRequestId);this.animationRequestId=null;this.chart.isAnimating=!1};var s={yScaleAnimation:function(a,d){if(0!==a){var c=d.dest,b=d.source.canvas,e=d.animationBase;c.drawImage(b,0,0,b.width,b.height,0,e-e*
933
933
  a,c.canvas.width/ja,a*c.canvas.height/ja)}},xScaleAnimation:function(a,d){if(0!==a){var c=d.dest,b=d.source.canvas,e=d.animationBase;c.drawImage(b,0,0,b.width,b.height,e-e*a,0,a*c.canvas.width/ja,c.canvas.height/ja)}},xClipAnimation:function(a,d){if(0!==a){var c=d.dest,b=d.source.canvas;c.save();0<a&&c.drawImage(b,0,0,b.width*a,b.height,0,0,b.width*a/ja,b.height/ja);c.restore()}},fadeInAnimation:function(a,d){if(0!==a){var c=d.dest,b=d.source.canvas;c.save();c.globalAlpha=a;c.drawImage(b,0,0,b.width,
934
- b.height,0,0,c.canvas.width/ja,c.canvas.height/ja);c.restore()}},easing:{linear:function(a,d,c,b){return c*a/b+d},easeOutQuad:function(a,d,c,b){return-c*(a/=b)*(a-2)+d},easeOutQuart:function(a,d,c,b){return-c*((a=a/b-1)*a*a*a-1)+d},easeInQuad:function(a,d,c,b){return c*(a/=b)*a+d},easeInQuart:function(a,d,c,b){return c*(a/=b)*a*a*a+d}}},u={drawMarker:function(a,d,c,b,e,f,k,v){if(c){var t=1;c.fillStyle=f?f:"#000000";c.strokeStyle=k?k:"#000000";c.lineWidth=v?v:0;c.setLineDash&&c.setLineDash(R("solid",
935
- v));"circle"===b?(c.moveTo(a,d),c.beginPath(),c.arc(a,d,e/2,0,2*Math.PI,!1),f&&c.fill(),v&&(k?c.stroke():(t=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=t))):"square"===b?(c.beginPath(),c.rect(a-e/2,d-e/2,e,e),f&&c.fill(),v&&(k?c.stroke():(t=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=t))):"triangle"===b?(c.beginPath(),c.moveTo(a-e/2,d+e/2),c.lineTo(a+e/2,d+e/2),c.lineTo(a,d-e/2),c.closePath(),f&&c.fill(),v&&(k?c.stroke():(t=c.globalAlpha,
936
- c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=t)),c.beginPath()):"cross"===b&&(c.strokeStyle=f,c.lineWidth=e/4,c.beginPath(),c.moveTo(a-e/2,d-e/2),c.lineTo(a+e/2,d+e/2),c.stroke(),c.moveTo(a+e/2,d-e/2),c.lineTo(a-e/2,d+e/2),c.stroke())}},drawMarkers:function(a){for(var d=0;d<a.length;d++){var c=a[d];u.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return w}();Ja.version="v3.8.1 GA";window.CanvasJS&&(Ja&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=
934
+ b.height,0,0,c.canvas.width/ja,c.canvas.height/ja);c.restore()}},easing:{linear:function(a,d,c,b){return c*a/b+d},easeOutQuad:function(a,d,c,b){return-c*(a/=b)*(a-2)+d},easeOutQuart:function(a,d,c,b){return-c*((a=a/b-1)*a*a*a-1)+d},easeInQuad:function(a,d,c,b){return c*(a/=b)*a+d},easeInQuart:function(a,d,c,b){return c*(a/=b)*a*a*a+d}}},v={drawMarker:function(a,d,c,b,e,f,k,u){if(c){var s=1;c.fillStyle=f?f:"#000000";c.strokeStyle=k?k:"#000000";c.lineWidth=u?u:0;c.setLineDash&&c.setLineDash(R("solid",
935
+ u));"circle"===b?(c.moveTo(a,d),c.beginPath(),c.arc(a,d,e/2,0,2*Math.PI,!1),f&&c.fill(),u&&(k?c.stroke():(s=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=s))):"square"===b?(c.beginPath(),c.rect(a-e/2,d-e/2,e,e),f&&c.fill(),u&&(k?c.stroke():(s=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=s))):"triangle"===b?(c.beginPath(),c.moveTo(a-e/2,d+e/2),c.lineTo(a+e/2,d+e/2),c.lineTo(a,d-e/2),c.closePath(),f&&c.fill(),u&&(k?c.stroke():(s=c.globalAlpha,
936
+ c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=s)),c.beginPath()):"cross"===b&&(c.strokeStyle=f,c.lineWidth=e/4,c.beginPath(),c.moveTo(a-e/2,d-e/2),c.lineTo(a+e/2,d+e/2),c.stroke(),c.moveTo(a+e/2,d-e/2),c.lineTo(a-e/2,d+e/2),c.stroke())}},drawMarkers:function(a){for(var d=0;d<a.length;d++){var c=a[d];v.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return w}();Ja.version="v3.8.2 GA";window.CanvasJS&&(Ja&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=
937
937
  Ja);ia.StockChart={width:500,height:600,backgroundColor:"white",theme:"light1",animationEnabled:!1,animationDuration:1200,culture:"en",creditHref:"",creditText:"CanvasJS",exportEnabled:!1,exportFileName:"StockChart",colorSet:"colorSet1",rangeChanging:null,rangeChanged:null,publicProperties:{title:"readWrite",subtitles:"readWrite",toolbar:"readWrite",navigator:"readWrite",rangeSelector:"readWrite",charts:"readWrite",options:"readWrite",bounds:"readOnly",container:"readOnly",selectedColorSet:"readOnly"}};
938
- ia.Navigator={enabled:!0,width:500,height:70,verticalAlign:"bottom",horizontalAlign:"center",dynamicUpdate:!0,backgroundColor:"#fff",animationEnabled:!1,animationDuration:1200,theme:"light1",publicProperties:{slider:"readWrite",backgroundColor:"readWrite",animationEnabled:"readWrite",animationDuration:"readWrite",theme:"readWrite",axisX:"readWrite",axisY:"readWrite",axisX2:"readWrite",axisY2:"readWrite",data:"readWrite",options:"readWrite",bounds:"readOnly"}};ia.RangeSelector={enabled:!0,width:500,
938
+ ia.Navigator={enabled:!0,width:500,height:70,verticalAlign:"bottom",horizontalAlign:"left",dynamicUpdate:!0,backgroundColor:"#fff",animationEnabled:!1,animationDuration:1200,theme:"light1",publicProperties:{slider:"readWrite",backgroundColor:"readWrite",animationEnabled:"readWrite",animationDuration:"readWrite",theme:"readWrite",axisX:"readWrite",axisY:"readWrite",axisX2:"readWrite",axisY2:"readWrite",data:"readWrite",options:"readWrite",bounds:"readOnly"}};ia.RangeSelector={enabled:!0,width:500,
939
939
  height:35,label:"Range",verticalAlign:"top",horizontalAlign:"center",selectedRangeButtonIndex:null,publicProperties:{options:"readWrite",buttons:"readWrite",inputFields:"readWrite",buttonStyle:"readWrite",bounds:"readOnly"}};ia.RangeButton={range:null,rangeType:null,label:null,style:"position: inline; margin: 5px 0;text-align:center;cursor: pointer;",backgroundColorDisabled:"#ddd",publicProperties:{options:"readWrite",bounds:"readOnly"}};ia.ButtonStyle={backgroundColor:"#fff",backgroundColorOnHover:"#2196f3",
940
940
  backgroundColorOnSelect:"#2196f3",borderColor:"#2196f3",borderThickness:2,labelFontColor:"#000",labelFontColorOnHover:"#fff",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:r?"Trebuchet MS, Helvetica, sans-serif":"Arial",labelFontWeight:"normal",width:null,maxWidth:null,padding:{left:5,right:5,top:2,bottom:2},spacing:5,cursor:"pointer",publicProperties:{options:"readWrite"}};ia.InputFields={enabled:!0,startValue:null,endValue:null,valueType:"dateTime",valueFormatString:"MMM DD YYYY",publicProperties:{style:"readWrite",
941
941
  options:"readWrite"}};ia.Style={backgroundColor:"#fff",borderColor:"#2196f3",borderColorOnFocus:"#008eff",borderThickness:2,fontColor:"#000",fontSize:12,fontStyle:"normal",fontFamily:r?"Trebuchet MS, Helvetica, sans-serif":"Arial",fontWeight:"normal",width:null,maxWidth:null,padding:{left:5,right:5,top:2,bottom:2},spacing:5,cursor:"text",publicProperties:{options:"readWrite"}};ia.Slider={maskColor:"#d9e8f9",maskInverted:!1,maskOpacity:0.7,handleColor:"#ddd",handleBorderColor:"#aaa",handleBorderThickness:1,
@@ -946,181 +946,182 @@ borderColor:"#2196f3",borderColorOnFocus:"#2196f3",borderThickness:1,fontColor:M
946
946
  backgroundColorOnHover:"#FF7372",backgroundColorOnSelect:"#FF7372",borderColor:"#FF7372",borderThickness:1,labelFontColor:M,labelFontColorOnHover:"#F5F5F5",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:x,labelFontWeight:"normal",spacing:0},inputFields:{style:{backgroundColor:"#666666",borderColor:"#FF7372",borderColorOnFocus:"#FF7372",borderThickness:1,fontColor:M,fontSize:14,fontStyle:"normal",fontFamily:x,fontWeight:"normal"}}},navigator:{backgroundColor:L,slider:{maskColor:"#d9e8f9",
947
947
  maskOpacity:0.6,handleColor:"#efefef",handleBorderColor:"#666666",handleBorderThickness:1,outlineColor:"#FFFFFF",outlineThickness:1}},toolbar:za.toolbar};L="#32373A";M=T="#FAFAFA";var bb={light1:Ga,light2:Ia,dark1:za,dark2:{colorSet:"colorSet2",backgroundColor:L,title:X.title,subtitles:X.subtitles,charts:[X],rangeSelector:{buttonStyle:{backgroundColor:"#666666",backgroundColorOnHover:"#FF7372",backgroundColorOnSelect:"#FF7372",borderColor:"#FF7372",borderThickness:1,labelFontColor:M,labelFontColorOnHover:"#F5F5F5",
948
948
  labelFontSize:14,labelFontStyle:"normal",labelFontFamily:x,labelFontWeight:"normal",spacing:0},inputFields:{style:{backgroundColor:"#666666",borderColor:"#FF7372",borderColorOnFocus:"#FF7372",borderThickness:1,fontColor:M,fontSize:14,fontStyle:"normal",fontFamily:x,fontWeight:"normal"}}},navigator:{backgroundColor:L,slider:{maskColor:"#d9e8f9",maskOpacity:0.6,handleColor:"#efefef",handleBorderColor:"#666666",handleBorderThickness:1,outlineColor:"#FFFFFF",outlineThickness:1}},toolbar:X.toolbar}};T=
949
- Sa.StockChart=function(){function k(d){var f;f=document.createElement("div");f.setAttribute("class",d);O(f,{position:"absolute",textAlign:"left",cursor:"auto",webkitTapHighlightColor:"transparent"});return f}function w(d,k,t){d=document.createElement(d);d.setAttribute("class",k);O(d,{webkitTapHighlightColor:"transparent"});f(t)||d.setAttribute("type",t);return d}function F(d,k){k=k||{};this.theme=f(k.theme)||f(Ra[k.theme])?"light1":k.theme;this.predefinedThemes=bb;F.base.constructor.call(this,"StockChart",
950
- null,k,null,null);this.optionsName="stockChart";var t=this;this.sessionVariables={};this._axisXMax=this._axisXMin=null;this._containerId=d;this._objectsInitialized=!1;this.ctx=null;this.plotArea={canvas:null,ctx:null,x1:0,y1:0,x2:0,y2:0,width:0,height:0};this._dataInRenderedOrder=[];this.allDOMEventHandlers=[];if(this.container="string"===typeof this._containerId?document.getElementById(this._containerId):this._containerId){this.container.innerHTML="";var u=0,a=0;this._defaultCursor="default";u=this.options.width?
951
- this.width:0<this.container.clientWidth?this.container.clientWidth:this.width;a=this.options.height?this.height:0<this.container.clientHeight?this.container.clientHeight:this.height;this.width=u;this.height=a;this.x1=this.y1=0;this.x2=this.width;this.y2=this.height;this.selectedColorSet="undefined"!==typeof sa[this.colorSet]?sa[this.colorSet]:sa.colorSet1;this._canvasJSContainer=document.createElement("div");this._canvasJSContainer.setAttribute("class","canvasjs-stock-container");this._canvasJSContainer.style.position=
952
- "relative";this._canvasJSContainer.style.userSelect=this._canvasJSContainer.style.WebkitUserSelect=this._canvasJSContainer.style.MozUserSelect=this._canvasJSContainer.style.msUserSelect="none";this._canvasJSContainer.style.textAlign="left";this._canvasJSContainer.style.cursor="auto";this._canvasJSContainer.style.direction="ltr";this._canvasJSContainer.style.fontFamily=x;r||(this._canvasJSContainer.style.height="0px");this.container.appendChild(this._canvasJSContainer);this.canvas=ra(u,a);this.canvas.style.position=
953
- "absolute";this.canvas.getContext&&(this._canvasJSContainer.appendChild(this.canvas),this.ctx=this.canvas.getContext("2d"),this.ctx.textBaseline="top",Da(this.ctx),this.overlaidCanvas=ra(u,a),this.overlaidCanvas.style.position="absolute",this.overlaidCanvas.style.webkitTapHighlightColor="transparent",this.overlaidCanvas.getContext&&(this._canvasJSContainer.appendChild(this.overlaidCanvas),this.overlaidCanvasCtx=this.overlaidCanvas.getContext("2d"),this.overlaidCanvasCtx.textBaseline="top",Da(this.overlaidCanvasCtx)),
954
- r?this.plotArea.ctx=this.ctx:(this.plotArea.canvas=ra(u,a),this.plotArea.canvas.style.position="absolute",this.plotArea.canvas.setAttribute("class","plotAreaCanvas"),this._canvasJSContainer.appendChild(this.plotArea.canvas),this.plotArea.ctx=this.plotArea.canvas.getContext("2d")),this._toolBar=document.createElement("div"),this._toolBar.setAttribute("class","canvasjs-chart-toolbar"),O(this._toolBar,{position:"absolute",right:"1px",top:"1px",zIndex:999}),this._canvasJSContainer.appendChild(this._toolBar),
955
- this.bounds={x1:0,y1:0,x2:this.width,y2:this.height},this.charts=[],Ea(this.charts),this._eventManager=new P(this),D(this.overlaidCanvas,"click",function(a){t._mouseEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,"mousemove",function(a){t._mouseEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,"mouseup",function(a){t._mouseEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,"mousedown",function(a){t._mouseEventHandler(a);ya(t._dropdownMenu)},this.allDOMEventHandlers),
956
- D(this.overlaidCanvas,"mouseout",function(a){t._mouseEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(a){t._touchEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerMove":"touchmove",function(a){t._touchEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerUp":"touchend",function(a){t._touchEventHandler(a)},
957
- this.allDOMEventHandlers),D(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerCancel":"touchcancel",function(a){t._touchEventHandler(a)},this.allDOMEventHandlers),this.windowResizeHandler=D(window,"resize",function(){t._updateSize()&&t.render()},this.allDOMEventHandlers))}else window.console&&window.console.log('CanvasJS Error: StockChart Container with id "'+this._containerId+'" was not found')}function J(d,f){J.base.constructor.call(this,d,f);this.options=f;this.dockInsidePlotArea=
949
+ Sa.StockChart=function(){function k(d){var f;f=document.createElement("div");f.setAttribute("class",d);O(f,{position:"absolute",textAlign:"left",cursor:"auto",webkitTapHighlightColor:"transparent"});return f}function w(d,k,s){d=document.createElement(d);d.setAttribute("class",k);O(d,{webkitTapHighlightColor:"transparent"});f(s)||d.setAttribute("type",s);return d}function F(d,k){k=k||{};this.theme=f(k.theme)||f(Ra[k.theme])?"light1":k.theme;this.predefinedThemes=bb;F.base.constructor.call(this,"StockChart",
950
+ null,k,null,null);this.optionsName="stockChart";var s=this;this.sessionVariables={};this._axisXMax=this._axisXMin=null;this._containerId=d;this._objectsInitialized=!1;this.ctx=null;this.plotArea={canvas:null,ctx:null,x1:0,y1:0,x2:0,y2:0,width:0,height:0};this._dataInRenderedOrder=[];this.allDOMEventHandlers=[];if(this.container="string"===typeof this._containerId?document.getElementById(this._containerId):this._containerId){this.container.innerHTML="";var v=0,a=0;this._defaultCursor="default";v=this.options.width?
951
+ this.width:0<this.container.clientWidth?this.container.clientWidth:this.width;a=this.options.height?this.height:0<this.container.clientHeight?this.container.clientHeight:this.height;this.width=v;this.height=a;this.x1=this.y1=0;this.x2=this.width;this.y2=this.height;this.selectedColorSet="undefined"!==typeof sa[this.colorSet]?sa[this.colorSet]:sa.colorSet1;this._canvasJSContainer=document.createElement("div");this._canvasJSContainer.setAttribute("class","canvasjs-stock-container");this._canvasJSContainer.style.position=
952
+ "relative";this._canvasJSContainer.style.userSelect=this._canvasJSContainer.style.WebkitUserSelect=this._canvasJSContainer.style.MozUserSelect=this._canvasJSContainer.style.msUserSelect="none";this._canvasJSContainer.style.textAlign="left";this._canvasJSContainer.style.cursor="auto";this._canvasJSContainer.style.direction="ltr";this._canvasJSContainer.style.fontFamily=x;r||(this._canvasJSContainer.style.height="0px");this.container.appendChild(this._canvasJSContainer);this.canvas=ra(v,a);this.canvas.style.position=
953
+ "absolute";this.canvas.getContext&&(this._canvasJSContainer.appendChild(this.canvas),this.ctx=this.canvas.getContext("2d"),this.ctx.textBaseline="top",Da(this.ctx),this.overlaidCanvas=ra(v,a),this.overlaidCanvas.style.position="absolute",this.overlaidCanvas.style.webkitTapHighlightColor="transparent",this.overlaidCanvas.getContext&&(this._canvasJSContainer.appendChild(this.overlaidCanvas),this.overlaidCanvasCtx=this.overlaidCanvas.getContext("2d"),this.overlaidCanvasCtx.textBaseline="top",Da(this.overlaidCanvasCtx)),
954
+ r?this.plotArea.ctx=this.ctx:(this.plotArea.canvas=ra(v,a),this.plotArea.canvas.style.position="absolute",this.plotArea.canvas.setAttribute("class","plotAreaCanvas"),this._canvasJSContainer.appendChild(this.plotArea.canvas),this.plotArea.ctx=this.plotArea.canvas.getContext("2d")),this._toolBar=document.createElement("div"),this._toolBar.setAttribute("class","canvasjs-chart-toolbar"),O(this._toolBar,{position:"absolute",right:"1px",top:"1px",zIndex:999}),this._canvasJSContainer.appendChild(this._toolBar),
955
+ this.bounds={x1:0,y1:0,x2:this.width,y2:this.height},this.charts=[],Ea(this.charts),this._eventManager=new P(this),D(this.overlaidCanvas,"click",function(a){s._mouseEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,"mousemove",function(a){s._mouseEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,"mouseup",function(a){s._mouseEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,"mousedown",function(a){s._mouseEventHandler(a);ya(s._dropdownMenu)},this.allDOMEventHandlers),
956
+ D(this.overlaidCanvas,"mouseout",function(a){s._mouseEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(a){s._touchEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerMove":"touchmove",function(a){s._touchEventHandler(a)},this.allDOMEventHandlers),D(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerUp":"touchend",function(a){s._touchEventHandler(a)},
957
+ this.allDOMEventHandlers),D(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerCancel":"touchcancel",function(a){s._touchEventHandler(a)},this.allDOMEventHandlers),this.windowResizeHandler=D(window,"resize",function(){s._updateSize()&&s.render()},this.allDOMEventHandlers))}else window.console&&window.console.log('CanvasJS Error: StockChart Container with id "'+this._containerId+'" was not found')}function J(d,f){J.base.constructor.call(this,d,f);this.options=f;this.dockInsidePlotArea=
958
958
  !1}function L(d,f,k){L.base.constructor.call(this,d,f,k);this.options=f;this.dockInsidePlotArea=!1}function P(d){this.stockChart=d;this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=[];this.ghostCanvas=ra(this.stockChart.width,this.stockChart.height);this.ghostCtx=this.ghostCanvas.getContext("2d");this.mouseoveredObjectMaps=[]}function A(d,f){f=f||{};this.optionsName="navigator";A.base.constructor.call(this,"Navigator","navigator",f,null,d);this.parent=this.stockChart=
959
- d}function M(d,v){this.panel=k("canvasjs-slider-panel");this.parent=this.navigator=d;this.stockChart=d.stockChart;this.navigator.panel.appendChild(this.panel);M.base.constructor.call(this,"Slider","slider",v,null,d);this.options=f(v.navigator)||f(v.navigator.slider)?{}:v.navigator.slider;this.optionsName="slider";this.panMode=!1;this.sessionVariables={}}function R(d,k){R.base.constructor.call(this,"RangeSelector","rangeSelector",k,null,d);this.parent=this.stockChart=d;this.options=f(k)||f(k.rangeSelector)?
960
- {}:k.rangeSelector;this.optionsName="rangeSelector";this.ctx=d.ctx}function Q(d,k,t){Q.base.constructor.call(this,"RangeButton","rangeButton",t,k,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=d.rangeSelector;this.options=f(t)?{}:t;this.optionsName="rangeButton";this.enabled=!1;this.state="off"}function T(d,k){T.base.constructor.call(this,"InputFields","inputFields",k,null,d.rangeSelector);this.stockChart=d;this.options=f(k)||f(k.inputFields)?{}:k.inputFields;this.parent=this.rangeSelector=
961
- d.rangeSelector;this.elements=[];this._textBlocks=[];this.optionsName="inputFields";this.elements.push(w("input","canvasjs-input-field","text"));this.elements.push(w("input","canvasjs-input-field","text"));for(var t=0;t<this.elements.length;t++)this.stockChart._canvasJSContainer.appendChild(this.elements[t]);var u=this,a=null,h=null;D(this.elements[0],"focus",function(){u.enabled&&(u.elements[0].focused=!0,u._textBlocks[0].borderColor=u.style.borderColorOnFocus,u._textBlocks[0].render(!0))},this.rangeSelector.stockChart.allDOMEventHandlers);
962
- D(this.elements[0],"focusout",function(){if(u.enabled){u.elements[0].focused=!1;var a;u.stockChart.charts&&u.stockChart.charts.length&&(a=u.stockChart.charts[0].axisX&&u.stockChart.charts[0].axisX.length?u.stockChart.charts[0].axisX[0]:u.stockChart.charts[0].axisX2[0]);this.value="dateTime"===u.valueType?ea(a?a.viewportMinimum:null,"YYYY-MM-DD",u.stockChart._cultureInfo):da(a?a.viewportMinimum:null,u.valueFormatString,u.stockChart._cultureInfo);this.style.display="none";u._textBlocks[0].borderColor=
963
- u.style.borderColor;u._textBlocks[0].render(!0)}},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[1],"focus",function(){u.enabled&&(u.elements[1].focused=!0,u._textBlocks[1].borderColor=u.style.borderColorOnFocus,u._textBlocks[1].render(!0))},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[1],"focusout",function(){if(u.enabled){u.elements[1].focused=!1;var a;u.stockChart.charts&&u.stockChart.charts.length&&(a=u.stockChart.charts[0].axisX&&u.stockChart.charts[0].axisX.length?
964
- u.stockChart.charts[0].axisX[0]:u.stockChart.charts[0].axisX2[0]);this.value="dateTime"===u.valueType?ea(a?a.viewportMaximum:null,"YYYY-MM-DD",u.stockChart._cultureInfo):da(a?a.viewportMaximum:null,u.valueFormatString,u.stockChart._cultureInfo);this.style.display="none";u._textBlocks[1].borderColor=u.style.borderColor;u._textBlocks[1].render(!0)}},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[0],"change",function(c){if(u.enabled){var b,d;u.stockChart.charts&&u.stockChart.charts.length&&
965
- (u.stockChart.navigator&&u.stockChart.navigator.enabled&&(d=u.stockChart.navigator&&u.stockChart.navigator.chart&&u.stockChart.navigator.chart.axisX?u.stockChart.navigator.chart.axisX[0]:u.stockChart.navigator.chart.axisX2[0]),b=u.stockChart.charts[0].axisX&&u.stockChart.charts[0].axisX.length?u.stockChart.charts[0].axisX[0]:u.stockChart.charts[0].axisX2[0]);c="dateTime"===u.valueType?isNaN((new Date(this.value.replace(/-/g,"/"))).getTime())?null:(new Date(this.value.replace(/-/g,"/"))).getTime():
966
- this.value;a=f(d)?!f(c)&&c<(f(b)?null:b.maximum)?Math.max(f(b)?null:b.minimum,c):f(b)?null:b.minimum:!f(c)&&c<(f(d)?null:d.maximum)?Math.max(f(d)?null:d.minimum,c):f(d)?null:d.minimum;h=f(b)?null:b.viewportMaximum;u.stockChart._rangeEventParameter={stockChart:u.stockChart,source:"inputFields",index:null,minimum:a,maximum:h};u.stockChart._rangeEventParameter.type="rangeChanging";u.stockChart.dispatchEvent("rangeChanging",u.stockChart._rangeEventParameter,u.stockChart);u.stockChart.sessionVariables._axisXMin=
967
- a;u.stockChart.sessionVariables._axisXMax=h;u.stockChart._syncCharts(a,h);u.stockChart._rangeEventParameter.type="rangeChanged";u.stockChart.dispatchEvent("rangeChanged",u.stockChart._rangeEventParameter,u.stockChart);u.stockChart.rangeSelector&&u.stockChart.rangeSelector.resetRangeButtons()}},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[1],"change",function(c){if(u.enabled){var b,d;u.stockChart.charts&&u.stockChart.charts.length&&(u.stockChart.navigator&&u.stockChart.navigator.enabled&&
968
- (d=u.stockChart.navigator&&u.stockChart.navigator.chart&&u.stockChart.navigator.chart.axisX?u.stockChart.navigator.chart.axisX[0]:u.stockChart.navigator.chart.axisX2[0]),b=u.stockChart.charts[0].axisX&&u.stockChart.charts[0].axisX.length?u.stockChart.charts[0].axisX[0]:u.stockChart.charts[0].axisX2[0]);c="dateTime"===u.valueType?isNaN((new Date(this.value.replace(/-/g,"/"))).getTime())?null:(new Date(this.value.replace(/-/g,"/"))).getTime():this.value;a=b?b.viewportMinimum:null;h=f(d)?!f(c)&&c>(b?
969
- b.minimum:null)?Math.min(b?b.maximum:null,c):b?b.maximum:null:!f(c)&&c>(d?d.minimum:null)?Math.min(d?d.maximum:null,c):d?d.maximum:null;u.stockChart._rangeEventParameter={stockChart:u.stockChart,source:"inputFields",index:null,minimum:a,maximum:h};u.stockChart._rangeEventParameter.type="rangeChanging";u.stockChart.dispatchEvent("rangeChanging",u.stockChart._rangeEventParameter,u.stockChart);u.stockChart.sessionVariables._axisXMin=a;u.stockChart.sessionVariables._axisXMax=h;u.stockChart._syncCharts(a,
970
- h);u.stockChart._rangeEventParameter.type="rangeChanged";u.stockChart.dispatchEvent("rangeChanged",u.stockChart._rangeEventParameter,u.stockChart);u.stockChart.rangeSelector&&u.stockChart.rangeSelector.resetRangeButtons()}},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[0],"keydown",function(a){if(u.enabled&&13===a.keyCode){var b="dateTime"===u.valueType?ea(u.startValue,"YYYY-MM-DD"):da(u.startValue,u.valueFormatString);this.value!=b&&hb(this,"change");this.blur();a.preventDefault&&
971
- a.preventDefault()}},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[1],"keydown",function(a){if(u.enabled&&13===a.keyCode){var b="dateTime"===u.valueType?ea(u.endValue,"YYYY-MM-DD"):da(u.endValue,u.valueFormatString);this.value!=b&&hb(this,"change");this.blur();a.preventDefault&&a.preventDefault()}},this.rangeSelector.stockChart.allDOMEventHandlers)}function V(d,k){V.base.constructor.call(this,"ButtonStyle","buttonStyle",k,null,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=
959
+ d}function M(d,u){this.panel=k("canvasjs-slider-panel");this.parent=this.navigator=d;this.stockChart=d.stockChart;this.navigator.panel.appendChild(this.panel);M.base.constructor.call(this,"Slider","slider",u,null,d);this.options=f(u.navigator)||f(u.navigator.slider)?{}:u.navigator.slider;this.optionsName="slider";this.panMode=!1;this.sessionVariables={}}function R(d,k){R.base.constructor.call(this,"RangeSelector","rangeSelector",k,null,d);this.parent=this.stockChart=d;this.options=f(k)||f(k.rangeSelector)?
960
+ {}:k.rangeSelector;this.optionsName="rangeSelector";this.ctx=d.ctx}function Q(d,k,s){Q.base.constructor.call(this,"RangeButton","rangeButton",s,k,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=d.rangeSelector;this.options=f(s)?{}:s;this.optionsName="rangeButton";this.enabled=!1;this.state="off"}function T(d,k){T.base.constructor.call(this,"InputFields","inputFields",k,null,d.rangeSelector);this.stockChart=d;this.options=f(k)||f(k.inputFields)?{}:k.inputFields;this.parent=this.rangeSelector=
961
+ d.rangeSelector;this.elements=[];this._textBlocks=[];this.optionsName="inputFields";this.elements.push(w("input","canvasjs-input-field","text"));this.elements.push(w("input","canvasjs-input-field","text"));for(var s=0;s<this.elements.length;s++)this.stockChart._canvasJSContainer.appendChild(this.elements[s]);var v=this,a=null,h=null;D(this.elements[0],"focus",function(){v.enabled&&(v.elements[0].focused=!0,v._textBlocks[0].borderColor=v.style.borderColorOnFocus,v._textBlocks[0].render(!0))},this.rangeSelector.stockChart.allDOMEventHandlers);
962
+ D(this.elements[0],"focusout",function(){if(v.enabled){v.elements[0].focused=!1;var a;v.stockChart.charts&&v.stockChart.charts.length&&(a=v.stockChart.charts[0].axisX&&v.stockChart.charts[0].axisX.length?v.stockChart.charts[0].axisX[0]:v.stockChart.charts[0].axisX2[0]);this.value="dateTime"===v.valueType?ea(a?a.viewportMinimum:null,"YYYY-MM-DD",v.stockChart._cultureInfo):da(a?a.viewportMinimum:null,v.valueFormatString,v.stockChart._cultureInfo);this.style.display="none";v._textBlocks[0].borderColor=
963
+ v.style.borderColor;v._textBlocks[0].render(!0)}},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[1],"focus",function(){v.enabled&&(v.elements[1].focused=!0,v._textBlocks[1].borderColor=v.style.borderColorOnFocus,v._textBlocks[1].render(!0))},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[1],"focusout",function(){if(v.enabled){v.elements[1].focused=!1;var a;v.stockChart.charts&&v.stockChart.charts.length&&(a=v.stockChart.charts[0].axisX&&v.stockChart.charts[0].axisX.length?
964
+ v.stockChart.charts[0].axisX[0]:v.stockChart.charts[0].axisX2[0]);this.value="dateTime"===v.valueType?ea(a?a.viewportMaximum:null,"YYYY-MM-DD",v.stockChart._cultureInfo):da(a?a.viewportMaximum:null,v.valueFormatString,v.stockChart._cultureInfo);this.style.display="none";v._textBlocks[1].borderColor=v.style.borderColor;v._textBlocks[1].render(!0)}},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[0],"change",function(c){if(v.enabled){var b,d;v.stockChart.charts&&v.stockChart.charts.length&&
965
+ (v.stockChart.navigator&&v.stockChart.navigator.enabled&&(d=v.stockChart.navigator&&v.stockChart.navigator.chart&&v.stockChart.navigator.chart.axisX?v.stockChart.navigator.chart.axisX[0]:v.stockChart.navigator.chart.axisX2[0]),b=v.stockChart.charts[0].axisX&&v.stockChart.charts[0].axisX.length?v.stockChart.charts[0].axisX[0]:v.stockChart.charts[0].axisX2[0]);c="dateTime"===v.valueType?isNaN((new Date(this.value.replace(/-/g,"/"))).getTime())?null:(new Date(this.value.replace(/-/g,"/"))).getTime():
966
+ this.value;a=f(d)?!f(c)&&c<(f(b)?null:b.maximum)?Math.max(f(b)?null:b.minimum,c):f(b)?null:b.minimum:!f(c)&&c<(f(d)?null:d.maximum)?Math.max(f(d)?null:d.minimum,c):f(d)?null:d.minimum;h=f(b)?null:b.viewportMaximum;v.stockChart._rangeEventParameter={stockChart:v.stockChart,source:"inputFields",index:null,minimum:a,maximum:h};v.stockChart._rangeEventParameter.type="rangeChanging";v.stockChart.dispatchEvent("rangeChanging",v.stockChart._rangeEventParameter,v.stockChart);v.stockChart.sessionVariables._axisXMin=
967
+ a;v.stockChart.sessionVariables._axisXMax=h;v.stockChart._syncCharts(a,h);v.stockChart._rangeEventParameter.type="rangeChanged";v.stockChart.dispatchEvent("rangeChanged",v.stockChart._rangeEventParameter,v.stockChart);v.stockChart.rangeSelector&&v.stockChart.rangeSelector.resetRangeButtons()}},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[1],"change",function(c){if(v.enabled){var b,d;v.stockChart.charts&&v.stockChart.charts.length&&(v.stockChart.navigator&&v.stockChart.navigator.enabled&&
968
+ (d=v.stockChart.navigator&&v.stockChart.navigator.chart&&v.stockChart.navigator.chart.axisX?v.stockChart.navigator.chart.axisX[0]:v.stockChart.navigator.chart.axisX2[0]),b=v.stockChart.charts[0].axisX&&v.stockChart.charts[0].axisX.length?v.stockChart.charts[0].axisX[0]:v.stockChart.charts[0].axisX2[0]);c="dateTime"===v.valueType?isNaN((new Date(this.value.replace(/-/g,"/"))).getTime())?null:(new Date(this.value.replace(/-/g,"/"))).getTime():this.value;a=b?b.viewportMinimum:null;h=f(d)?!f(c)&&c>(b?
969
+ b.minimum:null)?Math.min(b?b.maximum:null,c):b?b.maximum:null:!f(c)&&c>(d?d.minimum:null)?Math.min(d?d.maximum:null,c):d?d.maximum:null;v.stockChart._rangeEventParameter={stockChart:v.stockChart,source:"inputFields",index:null,minimum:a,maximum:h};v.stockChart._rangeEventParameter.type="rangeChanging";v.stockChart.dispatchEvent("rangeChanging",v.stockChart._rangeEventParameter,v.stockChart);v.stockChart.sessionVariables._axisXMin=a;v.stockChart.sessionVariables._axisXMax=h;v.stockChart._syncCharts(a,
970
+ h);v.stockChart._rangeEventParameter.type="rangeChanged";v.stockChart.dispatchEvent("rangeChanged",v.stockChart._rangeEventParameter,v.stockChart);v.stockChart.rangeSelector&&v.stockChart.rangeSelector.resetRangeButtons()}},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[0],"keydown",function(a){if(v.enabled&&13===a.keyCode){var b="dateTime"===v.valueType?ea(v.startValue,"YYYY-MM-DD"):da(v.startValue,v.valueFormatString);this.value!=b&&hb(this,"change");this.blur();a.preventDefault&&
971
+ a.preventDefault()}},this.rangeSelector.stockChart.allDOMEventHandlers);D(this.elements[1],"keydown",function(a){if(v.enabled&&13===a.keyCode){var b="dateTime"===v.valueType?ea(v.endValue,"YYYY-MM-DD"):da(v.endValue,v.valueFormatString);this.value!=b&&hb(this,"change");this.blur();a.preventDefault&&a.preventDefault()}},this.rangeSelector.stockChart.allDOMEventHandlers)}function V(d,k){V.base.constructor.call(this,"ButtonStyle","buttonStyle",k,null,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=
972
972
  d.rangeSelector;this.options=f(k)||f(k.buttonStyle)?{}:k.buttonStyle;this.optionsName="buttonStyle"}function X(d,k){X.base.constructor.call(this,"Style","style",k,null,d.rangeSelector.inputFields);this.stockChart=d;this.parent=this.inputFields=d.rangeSelector.inputFields;this.options=f(k)||f(k.style)?{}:k.style;this.optionsName="style"}var aa=!0;ga(F,$);F.prototype._updateOptions=function(){this.updateOption("width");this.updateOption("height");this.updateOption("theme");this.updateOption("colorSet")&&
973
973
  (this.selectedColorSet="undefined"!==typeof sa[this.colorSet]?sa[this.colorSet]:sa.colorSet1);this.updateOption("backgroundColor");this.backgroundColor||(this.backgroundColor="rgba(0,0,0,0)");this.updateOption("exportEnabled");this.updateOption("exportFileName");this.updateOption("creditHref");this.updateOption("creditHref");this.updateOption("culture");this._cultureInfo=new Oa(this.options.culture);this.updateOption("animationEnabled");this.updateOption("animationDuration");this.updateOption("rangeChanging");
974
974
  this.updateOption("rangeChanged");this.toolbar=new Xa(this,this.options.toolbar);ib(this)};F._supportedChartTypes=Ea("line stepLine spline column area stepArea splineArea bubble scatter stackedColumn stackedColumn100 stackedArea stackedArea100 candlestick ohlc boxAndWhisker rangeColumn error rangeArea rangeSplineArea waterfall".split(" "));F.prototype._initialize=function(){this._updateOptions();this.animationEnabled=this.animationEnabled&&r;this._updateSize();this.clearCanvas();this.ctx.beginPath();
975
- var d,v=f(this.options.charts)?[]:this.options.charts;Ea(v);for(var t=0;t<this.charts.length;t++)d=this.charts[t],0>v.indexOf(d.options)&&(this.charts.splice(t,1),d.destroy(),this._canvasJSContainer.removeChild(d.panel),t--);this.layoutManager=new Ka(0,0,this.width,this.height,2);this.plotArea.layoutManager&&this.plotArea.layoutManager.reset();this.title=null;this.subtitles=[];this.options.title&&(this.title=new J(this,this.options.title),this.title.setLayout());if(this.options.subtitles)for(t=0;t<
976
- this.options.subtitles.length;t++)d=new L(this,this.options.subtitles[t],t),this.subtitles.push(d),d.setLayout();this.navigator=this.navigator||new A(this,this.options.navigator);this.navigator._initialize();if(this.navigator.enabled){d={theme:this.options.navigator&&this.options.navigator.theme?this.options.navigator.theme:this.theme,animationEnabled:this.options.navigator&&!f(this.options.navigator.animationEnabled)?this.options.navigator.animationEnabled:this.animationEnabled,animationDuration:this.options.navigator&&
975
+ var d,u=f(this.options.charts)?[]:this.options.charts;Ea(u);for(var s=0;s<this.charts.length;s++)d=this.charts[s],0>u.indexOf(d.options)&&(this.charts.splice(s,1),d.destroy(),this._canvasJSContainer.removeChild(d.panel),s--);this.layoutManager=new Ka(0,0,this.width,this.height,2);this.plotArea.layoutManager&&this.plotArea.layoutManager.reset();this.title=null;this.subtitles=[];this.options.title&&(this.title=new J(this,this.options.title),this.title.setLayout());if(this.options.subtitles)for(s=0;s<
976
+ this.options.subtitles.length;s++)d=new L(this,this.options.subtitles[s],s),this.subtitles.push(d),d.setLayout();this.navigator=this.navigator||new A(this,this.options.navigator);this.navigator._initialize();if(this.navigator.enabled){d={theme:this.options.navigator&&this.options.navigator.theme?this.options.navigator.theme:this.theme,animationEnabled:this.options.navigator&&!f(this.options.navigator.animationEnabled)?this.options.navigator.animationEnabled:this.animationEnabled,animationDuration:this.options.navigator&&
977
977
  this.options.navigator.animationDuration?this.options.navigator.animationDuration:this.animationDuration,culture:this.options.navigator&&this.options.navigator.culture?this.options.navigator.culture:this.culture,zoomEnabled:!1,data:this.options.navigator&&this.options.navigator.data?this.options.navigator.data:this.options.charts&&this.options.charts[0]&&this.options.charts[0].data?$a(this.options.charts[0].data):[],axisX:this.options.navigator&&this.options.navigator.axisX?this.options.navigator.axisX:
978
- {},axisY:this.options.navigator&&this.options.navigator.axisY?this.options.navigator.axisY:{},axisX2:this.options.navigator&&this.options.navigator.axisX2?this.options.navigator.axisX2:{},axisY2:this.options.navigator&&this.options.navigator.axisY2?this.options.navigator.axisY2:{},interactivityEnabled:!1,exportEnabled:!1};for(t=0;t<d.data.length;t++)!f(this.navigator.options.data)||!f(d.data[t].type)&&(f(d.data[t].type)||0<=d.data[t].type.indexOf("range")||0<=d.data[t].type.indexOf("ohlc")||0<=d.data[t].type.indexOf("candlestick")||
979
- 0<=d.data[t].type.indexOf("error"))?this.navigator.options.data&&f(this.navigator.options.data[t].type)&&(d.data[t].type="splineArea"):d.data[t].type="splineArea";if(d.axisX.length)for(t=0;t<d.axisX.length;t++)d.axisX[t].titleFontSize=f(d.axisX[t].titleFontSize)?1:d.axisX[t].titleFontSize,d.axisX[t].labelFontSize=f(d.axisX[t].labelFontSize)?12:d.axisX[t].labelFontSize,d.axisX[t].labelAngle=f(d.axisX[t].labelAngle)?0:d.axisX[t].labelAngle,d.axisX[t].labelPlacement=f(d.axisX[t].labelPlacement)?"inside":
980
- d.axisX[t].labelPlacement,d.axisX[t].tickLength=f(d.axisX[t].tickLength)?0:d.axisX[t].tickLength,d.axisX[t].lineThickness=f(d.axisX[t].lineThickness)?0:d.axisX[t].lineThickness,d.axisX[t].tickThickness=f(d.axisX[t].tickThickness)?0:d.axisX[t].tickThickness,d.axisX[t].gridThickness=f(d.axisX[t].gridThickness)?1:d.axisX[t].gridThickness;else d.axisX.titleFontSize=this.options.navigator&&this.options.navigator.axisX&&!f(this.options.navigator.axisX.titleFontSize)?this.options.navigator.axisX.titleFontSize:
978
+ {},axisY:this.options.navigator&&this.options.navigator.axisY?this.options.navigator.axisY:{},axisX2:this.options.navigator&&this.options.navigator.axisX2?this.options.navigator.axisX2:{},axisY2:this.options.navigator&&this.options.navigator.axisY2?this.options.navigator.axisY2:{},interactivityEnabled:!1,exportEnabled:!1};for(s=0;s<d.data.length;s++)!f(this.navigator.options.data)||!f(d.data[s].type)&&(f(d.data[s].type)||0<=d.data[s].type.indexOf("range")||0<=d.data[s].type.indexOf("ohlc")||0<=d.data[s].type.indexOf("candlestick")||
979
+ 0<=d.data[s].type.indexOf("error"))?this.navigator.options.data&&f(this.navigator.options.data[s].type)&&(d.data[s].type="splineArea"):d.data[s].type="splineArea";if(d.axisX.length)for(s=0;s<d.axisX.length;s++)d.axisX[s].titleFontSize=f(d.axisX[s].titleFontSize)?1:d.axisX[s].titleFontSize,d.axisX[s].labelFontSize=f(d.axisX[s].labelFontSize)?12:d.axisX[s].labelFontSize,d.axisX[s].labelAngle=f(d.axisX[s].labelAngle)?0:d.axisX[s].labelAngle,d.axisX[s].labelPlacement=f(d.axisX[s].labelPlacement)?"inside":
980
+ d.axisX[s].labelPlacement,d.axisX[s].tickLength=f(d.axisX[s].tickLength)?0:d.axisX[s].tickLength,d.axisX[s].lineThickness=f(d.axisX[s].lineThickness)?0:d.axisX[s].lineThickness,d.axisX[s].tickThickness=f(d.axisX[s].tickThickness)?0:d.axisX[s].tickThickness,d.axisX[s].gridThickness=f(d.axisX[s].gridThickness)?1:d.axisX[s].gridThickness;else d.axisX.titleFontSize=this.options.navigator&&this.options.navigator.axisX&&!f(this.options.navigator.axisX.titleFontSize)?this.options.navigator.axisX.titleFontSize:
981
981
  r?0:1,d.axisX.labelFontSize=this.options.navigator&&this.options.navigator.axisX&&!f(this.options.navigator.axisX.labelFontSize)?this.options.navigator.axisX.labelFontSize:12,d.axisX.labelAngle=this.options.navigator&&this.options.navigator.axisX&&!f(this.options.navigator.axisX.labelAngle)?this.options.navigator.axisX.labelAngle:0,d.axisX.labelPlacement=this.options.navigator&&this.options.navigator.axisX&&!f(this.options.navigator.axisX.labelPlacement)?this.options.navigator.axisX.labelPlacement:
982
982
  "inside",d.axisX.tickLength=this.options.navigator&&this.options.navigator.axisX&&!f(this.options.navigator.axisX.tickLength)?this.options.navigator.axisX.tickLength:0,d.axisX.lineThickness=this.options.navigator&&this.options.navigator.axisX&&!f(this.options.navigator.axisX.lineThickness)?this.options.navigator.axisX.lineThickness:0,d.axisX.tickThickness=this.options.navigator&&this.options.navigator.axisX&&!f(this.options.navigator.axisX.tickThickness)?this.options.navigator.axisX.tickThickness:
983
- 0,d.axisX.gridThickness=this.options.navigator&&this.options.navigator.axisX&&!f(this.options.navigator.axisX.gridThickness)?this.options.navigator.axisX.gridThickness:1;if(d.axisY.length)for(t=0;t<d.axisY.length;t++)d.axisY[t].titleFontSize=d.axisY[t].titleFontSize?d.axisY[t].titleFontSize:r?0:1,d.axisY[t].labelFontSize=d.axisY[t].labelFontSize?d.axisY[t].labelFontSize:r?0:1,d.axisY[t].labelPlacement=d.axisY[t].labelPlacement?d.axisY[t].labelPlacement:"inside",d.axisY[t].includeZero=!1,d.axisY[t].lineThickness=
984
- 0,d.axisY[t].tickThickness=0,d.axisY[t].tickLength=0,d.axisY[t].gridThickness=0;else d.axisY.titleFontSize=this.options.navigator&&this.options.navigator.axisY&&this.options.navigator.axisY.titleFontSize?this.options.navigator.axisY.titleFontSize:r?0:1,d.axisY.labelFontSize=this.options.navigator&&this.options.navigator.axisY&&this.options.navigator.axisY.labelFontSize?this.options.navigator.axisY.labelFontSize:r?0:1,d.axisY.labelPlacement=this.options.navigator&&this.options.navigator.axisY&&this.options.navigator.axisY.labelPlacement?
985
- this.options.navigator.axisY.labelPlacement:"inside",d.axisY.includeZero=!1,d.axisY.lineThickness=0,d.axisY.tickThickness=0,d.axisY.tickLength=0,d.axisY.gridThickness=0;if(d.axisX2.length)for(t=0;t<d.axisX2.length;t++)d.axisX2[t].titleFontSize=d.axisX2[t].titleFontSize?d.axisX2[t].titleFontSize:r?0:1,d.axisX2[t].labelFontSize=d.axisX2[t].labelFontSize?d.axisX2[t].labelFontSize:12,d.axisX2[t].labelAngle=f(d.axisX2[t].labelAngle)?0:d.axisX2[t].labelAngle,d.axisX2[t].labelPlacement=d.axisX2[t].labelPlacement?
986
- d.axisX2[t].labelPlacement:"inside",d.axisX2[t].tickLength=f(d.axisX2[t].tickLength)?0:d.axisX2[t].tickLength,d.axisX2[t].lineThickness=d.axisX2[t].lineThickness?d.axisX2[t].lineThickness:0,d.axisX2[t].tickThickness=d.axisX2[t].tickThickness?d.axisX2[t].tickThickness:1,d.axisX2[t].gridThickness=f(d.axisX2[t].gridThickness)?1:d.axisX2[t].gridThickness;else d.axisX2.titleFontSize=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.titleFontSize?this.options.navigator.axisX2.titleFontSize:
983
+ 0,d.axisX.gridThickness=this.options.navigator&&this.options.navigator.axisX&&!f(this.options.navigator.axisX.gridThickness)?this.options.navigator.axisX.gridThickness:1;if(d.axisY.length)for(s=0;s<d.axisY.length;s++)d.axisY[s].titleFontSize=d.axisY[s].titleFontSize?d.axisY[s].titleFontSize:r?0:1,d.axisY[s].labelFontSize=d.axisY[s].labelFontSize?d.axisY[s].labelFontSize:r?0:1,d.axisY[s].labelPlacement=d.axisY[s].labelPlacement?d.axisY[s].labelPlacement:"inside",d.axisY[s].includeZero=!1,d.axisY[s].lineThickness=
984
+ 0,d.axisY[s].tickThickness=0,d.axisY[s].tickLength=0,d.axisY[s].gridThickness=0;else d.axisY.titleFontSize=this.options.navigator&&this.options.navigator.axisY&&this.options.navigator.axisY.titleFontSize?this.options.navigator.axisY.titleFontSize:r?0:1,d.axisY.labelFontSize=this.options.navigator&&this.options.navigator.axisY&&this.options.navigator.axisY.labelFontSize?this.options.navigator.axisY.labelFontSize:r?0:1,d.axisY.labelPlacement=this.options.navigator&&this.options.navigator.axisY&&this.options.navigator.axisY.labelPlacement?
985
+ this.options.navigator.axisY.labelPlacement:"inside",d.axisY.includeZero=!1,d.axisY.lineThickness=0,d.axisY.tickThickness=0,d.axisY.tickLength=0,d.axisY.gridThickness=0;if(d.axisX2.length)for(s=0;s<d.axisX2.length;s++)d.axisX2[s].titleFontSize=d.axisX2[s].titleFontSize?d.axisX2[s].titleFontSize:r?0:1,d.axisX2[s].labelFontSize=d.axisX2[s].labelFontSize?d.axisX2[s].labelFontSize:12,d.axisX2[s].labelAngle=f(d.axisX2[s].labelAngle)?0:d.axisX2[s].labelAngle,d.axisX2[s].labelPlacement=d.axisX2[s].labelPlacement?
986
+ d.axisX2[s].labelPlacement:"inside",d.axisX2[s].tickLength=f(d.axisX2[s].tickLength)?0:d.axisX2[s].tickLength,d.axisX2[s].lineThickness=d.axisX2[s].lineThickness?d.axisX2[s].lineThickness:0,d.axisX2[s].tickThickness=d.axisX2[s].tickThickness?d.axisX2[s].tickThickness:1,d.axisX2[s].gridThickness=f(d.axisX2[s].gridThickness)?1:d.axisX2[s].gridThickness;else d.axisX2.titleFontSize=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.titleFontSize?this.options.navigator.axisX2.titleFontSize:
987
987
  r?0:1,d.axisX2.labelFontSize=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.labelFontSize?this.options.navigator.axisX2.labelFontSize:12,d.axisX2.labelAngle=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.labelAngle?this.options.navigator.axisX2.labelAngle:0,d.axisX2.labelPlacement=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.labelPlacement?this.options.navigator.axisX2.labelPlacement:
988
988
  "inside",d.axisX2.tickLength=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.tickLength?this.options.navigator.axisX2.tickLength:0,d.axisX2.lineThickness=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.lineThickness?this.options.navigator.axisX2.lineThickness:0,d.axisX2.tickThickness=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.tickThickness?this.options.navigator.axisX2.tickThickness:
989
- 1,d.axisX2.gridThickness=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.gridThickness?this.options.navigator.axisX2.gridThickness:1;if(d.axisY2.length)for(t=0;t<d.axisY2.length;t++)d.axisY2[t].titleFontSize=d.axisY2[t].titleFontSize?d.axisY2[t].titleFontSize:r?0:1,d.axisY2[t].labelFontSize=d.axisY2[t].labelFontSize?d.axisY2[t].labelFontSize:r?0:1,d.axisY2[t].labelPlacement=d.axisY2[t].labelPlacement?d.axisY2[t].labelPlacement:"inside",d.axisY2[t].includeZero=
990
- !1,d.axisY2[t].lineThickness=0,d.axisY2[t].margin=0,d.axisY2[t].tickLength=0,d.axisY2[t].tickThickness=0,d.axisY2[t].gridThickness=0;else d.axisY2.titleFontSize=this.options.navigator&&this.options.navigator.axisY2&&this.options.navigator.axisY2.titleFontSize?this.options.navigator.axisY2.titleFontSize:r?0:1,d.axisY2.labelFontSize=this.options.navigator&&this.options.navigator.axisY2&&this.options.navigator.axisY2.labelFontSize?this.options.navigator.axisY2.labelFontSize:r?0:1,d.axisY2.labelPlacement=
991
- this.options.navigator&&this.options.navigator.axisY2&&this.options.navigator.axisY2.labelPlacement?this.options.navigator.axisY2.labelPlacement:"inside",d.axisY2.includeZero=!1,d.axisY2.lineThickness=0,d.axisY2.margin=0,d.axisY2.tickLength=0,d.axisY2.tickThickness=0,d.axisY2.gridThickness=0;d.backgroundColor=this.navigator.backgroundColor;0===this.navigator.height&&(d.height=this.navigator.height);for(t=0;t<d.data.length;t++)d.data[t].markerSize=d.data[t].markerSize?d.data[t].markerSize:0;if(!this.navigator.chart){var u=
992
- k("canvasjs-chart-panel");this.navigator.panel.appendChild(u);u.style.height=this.navigator.height+"px";u.style.width=this.navigator.width+"px"}this.navigator.chart&&(this.navigator.chart.panel.style.width=this.navigator.width+"px");this.navigator.chart=this.navigator.chart||new Ja(u,d,{parent:this.navigator,isOptionsInArray:!1,index:null,predefinedThemes:bb,optionsName:"navigator",stockChart:this});this.navigator.chart._initialize();this.navigator.chart.setLayout();this.navigator.chart.selectedColorSet=
993
- this.selectedColorSet;this.navigator._chartOptions=d;this.navigator.slider=this.navigator.slider||new M(this.navigator,this.options);this.navigator.slider._initialize()}if(this.rangeSelector&&this.rangeSelector.inputFields)for(t=0;t<this.rangeSelector.inputFields.elements.length;t++)this._canvasJSContainer.removeChild(this.rangeSelector.inputFields.elements[t]);this.rangeSelector=new R(this,this.options);this.rangeSelector.buttonStyle=new V(this,this.rangeSelector.options);this.rangeSelector.inputFields=
994
- new T(this,this.rangeSelector.options);this.rangeSelector.inputFields.style=new X(this,this.rangeSelector.inputFields.options);this.rangeSelector.inputFields.style._updateOptions();this.rangeSelector.inputFields._initialize();if(this.rangeSelector.inputFields&&this.rangeSelector.inputFields.enabled)for(this.rangeSelector.inputFields._textBlocks=[],this.rangeSelector.inputFields._labels=[],this.rangeSelector.inputFieldsWidth=0,u=this.rangeSelector.inputFields.style.maxWidth=this.rangeSelector.inputFields.style.options.maxWidth?
995
- this.rangeSelector.inputFields.style.options.maxWidth:this.rangeSelector.stockChart.width/2,t=0;t<this.rangeSelector.inputFields.elements.length;t++){d=new ma(this.rangeSelector.ctx,{x:0,y:0,backgroundColor:this.rangeSelector.inputFields.style.backgroundColor,borderColor:this.rangeSelector.inputFields.style.borderColor,borderThickness:this.rangeSelector.inputFields.style.borderThickness,cornerRadius:0,maxWidth:f(this.rangeSelector.inputFields.style.options.width)?u:this.rangeSelector.inputFields.style.width,
996
- maxHeight:2*this.rangeSelector.inputFields.style.fontSize,angle:0,padding:this.rangeSelector.inputFields.style.padding,text:this.rangeSelector.inputFields.valueFormatString,horizontalAlign:"center",textAlign:"center",fontSize:this.rangeSelector.inputFields.style.fontSize,fontFamily:this.rangeSelector.inputFields.style.fontFamily,fontWeight:this.rangeSelector.inputFields.style.fontWeight,fontColor:this.rangeSelector.inputFields.style.fontColor,fontStyle:this.rangeSelector.inputFields.style.fontStyle,
997
- textBaseline:"middle"});var v=d.measureText(),a=new ma(this.rangeSelector.ctx,{x:0,y:0,backgroundColor:r?"transparent":null,borderColor:this.rangeSelector.inputFields.style.borderColor,borderThickness:0,cornerRadius:0,maxWidth:this.rangeSelector.inputFields.style.maxWidth,maxHeight:2*this.rangeSelector.inputFields.style.fontSize,angle:0,padding:this.rangeSelector.inputFields.style.padding,text:"From",horizontalAlign:"left",fontSize:this.rangeSelector.inputFields.style.fontSize,fontFamily:this.rangeSelector.inputFields.style.fontFamily,
998
- fontWeight:this.rangeSelector.inputFields.style.fontWeight,fontColor:this.rangeSelector.inputFields.style.fontColor,fontStyle:this.rangeSelector.inputFields.style.fontStyle,textBaseline:"middle"});this.rangeSelector.inputFields._textBlocks.push(d);this.rangeSelector.inputFields._labels.push(a);this.rangeSelector.inputFields._textBlocks[t].bounds={x1:null,x2:null,y1:null,y2:null,width:null,height:null};this.rangeSelector.inputFields._labels[t].bounds={x1:null,x2:null,y1:null,y2:null,width:null,height:null};
999
- this.rangeSelector.inputFieldsWidth+=v.width+this.rangeSelector.inputFields.style.spacing+a.measureText().width;this.rangeSelector.inputFieldsHeight=this.rangeSelector.inputFieldsHeight<v.height?v.height:this.rangeSelector.inputFieldsHeight;d=this.rangeSelector.inputFields._textBlocks[t];d.id=++this.rangeSelector.stockChart._eventManager.lastObjectId;this.rangeSelector.stockChart._eventManager.objectMap[d.id]={id:d.id,objectType:"inputFields",inputFieldIndex:t}}this.rangeSelector.buttonStyle._updateOptions();
1000
- this.rangeSelector._initialize();this._objectsInitialized=!0};F.prototype.render=function(d){var v=this;d&&(this.options=d);this._initialize();this.title&&this.title.render();if(this.subtitles)for(d=0;d<this.subtitles.length;d++)this.subtitles[d].render();var t;if(this.options.charts){t=Array(this.options.charts.length);var u=this.layoutManager.getFreeSpace(),a=u.height,u=u.height,h=this.options.charts.length;for(d=0;d<this.options.charts.length;d++)!f(this.options.charts[d].height)&&parseFloat(this.options.charts[d].height)&&
1001
- (t[d]=0<=this.options.charts[d].height.toString().indexOf("%")?Math.floor(Wa(this.options.charts[d].height,a,Math.floor(u/h),this.height,0)):this.options.charts[d].height,u-=t[d],h--);u=Math.floor(u/h);for(d=0;d<this.options.charts.length;d++)f(t[d])&&(t[d]=u);var c,h=this.options.charts,b=this.charts;this.charts=[];for(d=0;d<h.length;d++){u=this.layoutManager.getFreeSpace();a=h[d];a.animationEnabled=f(h[d].animationEnabled)?this.animationEnabled:h[d].animationEnabled;a.animationDuration=h[d].animationDuration?
1002
- h[d].animationDuration:this.animationDuration;a.culture=h[d].culture?h[d].culture:this.culture;a.height=h[d].height?t[d]:null;f(this.options.charts[d].backgroundColor)&&!f(this.options.backgroundColor)&&(a.backgroundColor=this.backgroundColor);for(c=b.length;0<c--&&b[c].options!==a;);0<=c?(this.charts[d]=b[c],this.charts[d].options=a):(c=k("canvasjs-chart-panel"),c.style.height=t[d]+"px",this._canvasJSContainer.appendChild(c),this.charts[d]=new Ja(c,a,{parent:this,isOptionsInArray:!0,index:d,predefinedThemes:bb,
1003
- optionsName:"charts",stockChart:this}));this.charts[d].panel.style.width=u.width+"px";this.charts[d].panel.style.top=u.y1+"px";this.charts[d].panel.style.left=u.x1+"px";this.charts[d].panel.style.height=t[d]+"px";this.charts[d].height=a.height?a.height:t[d];this.layoutManager.registerSpace("top",{width:u.width,height:t[d]})}b=null;for(d=0;d<this.charts.length;d++)if(!f(this.options.charts[d].data))for(c=0;c<this.options.charts[d].data.length;c++)t=this.options.charts[d].data[c],0<=F._supportedChartTypes.indexOf(t.type)||
1004
- f(t.type)||(aa=!1,window.console&&window.console.log("CanvasJS Error: "+t.type+" Chart is not Supported in StockChart"));if(!aa)return;this.setChartsLayout();for(d=t=0;d<this.charts.length;d++)if(f(this.charts[d].options.colorSet)){this.charts[d].selectedColorSet=[];for(c=t;c<t+this.charts[d].data.length;c++)this.charts[d].selectedColorSet.push(this.selectedColorSet[c%this.selectedColorSet.length]);t+=this.charts[d].data.length}if(this.navigator&&this.navigator.enabled)if(f(this.navigator.options.colorSet))if(this.navigator.options.data){this.navigator.chart.selectedColorSet=
1005
- [];for(c=t;c<t+this.navigator.chart.data.length;c++)this.navigator.chart.selectedColorSet.push(this.selectedColorSet[c%this.selectedColorSet.length]);t+=this.navigator.chart.data.length}else this.navigator.chart.selectedColorSet=this.charts[0].selectedColorSet;else this.navigator.chart.selectedColorSet="undefined"!==typeof sa[this.navigator.options.colorSet]?sa[this.navigator.options.colorSet]:sa.colorSet1}if(this.navigator&&this.navigator.enabled){for(d=0;d<this.navigator.chart.data.length;d++)0<=
989
+ 1,d.axisX2.gridThickness=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.gridThickness?this.options.navigator.axisX2.gridThickness:1;if(d.axisY2.length)for(s=0;s<d.axisY2.length;s++)d.axisY2[s].titleFontSize=d.axisY2[s].titleFontSize?d.axisY2[s].titleFontSize:r?0:1,d.axisY2[s].labelFontSize=d.axisY2[s].labelFontSize?d.axisY2[s].labelFontSize:r?0:1,d.axisY2[s].labelPlacement=d.axisY2[s].labelPlacement?d.axisY2[s].labelPlacement:"inside",d.axisY2[s].includeZero=
990
+ !1,d.axisY2[s].lineThickness=0,d.axisY2[s].margin=0,d.axisY2[s].tickLength=0,d.axisY2[s].tickThickness=0,d.axisY2[s].gridThickness=0;else d.axisY2.titleFontSize=this.options.navigator&&this.options.navigator.axisY2&&this.options.navigator.axisY2.titleFontSize?this.options.navigator.axisY2.titleFontSize:r?0:1,d.axisY2.labelFontSize=this.options.navigator&&this.options.navigator.axisY2&&this.options.navigator.axisY2.labelFontSize?this.options.navigator.axisY2.labelFontSize:r?0:1,d.axisY2.labelPlacement=
991
+ this.options.navigator&&this.options.navigator.axisY2&&this.options.navigator.axisY2.labelPlacement?this.options.navigator.axisY2.labelPlacement:"inside",d.axisY2.includeZero=!1,d.axisY2.lineThickness=0,d.axisY2.margin=0,d.axisY2.tickLength=0,d.axisY2.tickThickness=0,d.axisY2.gridThickness=0;d.backgroundColor=this.navigator.backgroundColor;0===this.navigator.height&&(d.height=this.navigator.height);for(s=0;s<d.data.length;s++)d.data[s].markerSize=d.data[s].markerSize?d.data[s].markerSize:0;if(!this.navigator.chart){var v=
992
+ k("canvasjs-chart-panel");this.navigator.panel.appendChild(v);v.style.height=this.navigator.height+"px";v.style.width=this.navigator.width+"px"}this.navigator.chart&&(this.navigator.chart.panel.style.width=this.navigator.width+"px",this.navigator.chart.panel.style.height=this.navigator.height+"px");this.navigator.chart=this.navigator.chart||new Ja(v,d,{parent:this.navigator,isOptionsInArray:!1,index:null,predefinedThemes:bb,optionsName:"navigator",stockChart:this});this.navigator.chart._initialize();
993
+ this.navigator.chart.setLayout();this.navigator.chart.selectedColorSet=this.selectedColorSet;this.navigator._chartOptions=d;this.navigator.slider=this.navigator.slider||new M(this.navigator,this.options);this.navigator.slider._initialize()}if(this.rangeSelector&&this.rangeSelector.inputFields)for(s=0;s<this.rangeSelector.inputFields.elements.length;s++)this._canvasJSContainer.removeChild(this.rangeSelector.inputFields.elements[s]);this.rangeSelector=new R(this,this.options);this.rangeSelector.buttonStyle=
994
+ new V(this,this.rangeSelector.options);this.rangeSelector.inputFields=new T(this,this.rangeSelector.options);this.rangeSelector.inputFields.style=new X(this,this.rangeSelector.inputFields.options);this.rangeSelector.inputFields.style._updateOptions();this.rangeSelector.inputFields._initialize();if(this.rangeSelector.inputFields&&this.rangeSelector.inputFields.enabled)for(this.rangeSelector.inputFields._textBlocks=[],this.rangeSelector.inputFields._labels=[],this.rangeSelector.inputFieldsWidth=0,v=
995
+ this.rangeSelector.inputFields.style.maxWidth=this.rangeSelector.inputFields.style.options.maxWidth?this.rangeSelector.inputFields.style.options.maxWidth:this.rangeSelector.stockChart.width/2,s=0;s<this.rangeSelector.inputFields.elements.length;s++){d=new ma(this.rangeSelector.ctx,{x:0,y:0,backgroundColor:this.rangeSelector.inputFields.style.backgroundColor,borderColor:this.rangeSelector.inputFields.style.borderColor,borderThickness:this.rangeSelector.inputFields.style.borderThickness,cornerRadius:0,
996
+ maxWidth:f(this.rangeSelector.inputFields.style.options.width)?v:this.rangeSelector.inputFields.style.width,maxHeight:2*this.rangeSelector.inputFields.style.fontSize,angle:0,padding:this.rangeSelector.inputFields.style.padding,text:this.rangeSelector.inputFields.valueFormatString,horizontalAlign:"center",textAlign:"center",fontSize:this.rangeSelector.inputFields.style.fontSize,fontFamily:this.rangeSelector.inputFields.style.fontFamily,fontWeight:this.rangeSelector.inputFields.style.fontWeight,fontColor:this.rangeSelector.inputFields.style.fontColor,
997
+ fontStyle:this.rangeSelector.inputFields.style.fontStyle,textBaseline:"middle"});var u=d.measureText(),a=new ma(this.rangeSelector.ctx,{x:0,y:0,backgroundColor:r?"transparent":null,borderColor:this.rangeSelector.inputFields.style.borderColor,borderThickness:0,cornerRadius:0,maxWidth:this.rangeSelector.inputFields.style.maxWidth,maxHeight:2*this.rangeSelector.inputFields.style.fontSize,angle:0,padding:this.rangeSelector.inputFields.style.padding,text:"From",horizontalAlign:"left",fontSize:this.rangeSelector.inputFields.style.fontSize,
998
+ fontFamily:this.rangeSelector.inputFields.style.fontFamily,fontWeight:this.rangeSelector.inputFields.style.fontWeight,fontColor:this.rangeSelector.inputFields.style.fontColor,fontStyle:this.rangeSelector.inputFields.style.fontStyle,textBaseline:"middle"});this.rangeSelector.inputFields._textBlocks.push(d);this.rangeSelector.inputFields._labels.push(a);this.rangeSelector.inputFields._textBlocks[s].bounds={x1:null,x2:null,y1:null,y2:null,width:null,height:null};this.rangeSelector.inputFields._labels[s].bounds=
999
+ {x1:null,x2:null,y1:null,y2:null,width:null,height:null};this.rangeSelector.inputFieldsWidth+=u.width+this.rangeSelector.inputFields.style.spacing+a.measureText().width;this.rangeSelector.inputFieldsHeight=this.rangeSelector.inputFieldsHeight<u.height?u.height:this.rangeSelector.inputFieldsHeight;d=this.rangeSelector.inputFields._textBlocks[s];d.id=++this.rangeSelector.stockChart._eventManager.lastObjectId;this.rangeSelector.stockChart._eventManager.objectMap[d.id]={id:d.id,objectType:"inputFields",
1000
+ inputFieldIndex:s}}this.rangeSelector.buttonStyle._updateOptions();this.rangeSelector._initialize();this._objectsInitialized=!0};F.prototype.render=function(d){var u=this;d&&(this.options=d);this._initialize();this.title&&this.title.render();if(this.subtitles)for(d=0;d<this.subtitles.length;d++)this.subtitles[d].render();var s;if(this.options.charts){s=Array(this.options.charts.length);var v=this.layoutManager.getFreeSpace(),a=v.height,v=v.height,h=this.options.charts.length;for(d=0;d<this.options.charts.length;d++)!f(this.options.charts[d].height)&&
1001
+ parseFloat(this.options.charts[d].height)&&(s[d]=0<=this.options.charts[d].height.toString().indexOf("%")?Math.floor(Wa(this.options.charts[d].height,a,Math.floor(v/h),this.height,0)):this.options.charts[d].height,v-=s[d],h--);v=Math.floor(v/h);for(d=0;d<this.options.charts.length;d++)f(s[d])&&(s[d]=v);var c,h=this.options.charts,b=this.charts;this.charts=[];for(d=0;d<h.length;d++){v=this.layoutManager.getFreeSpace();a=h[d];a.animationEnabled=f(h[d].animationEnabled)?this.animationEnabled:h[d].animationEnabled;
1002
+ a.animationDuration=h[d].animationDuration?h[d].animationDuration:this.animationDuration;a.culture=h[d].culture?h[d].culture:this.culture;for(c=b.length;0<c--&&b[c].options!==a;);0<=c?(this.charts[d]=b[c],this.charts[d].options=a):(c=k("canvasjs-chart-panel"),c.style.height=s[d]+"px",this._canvasJSContainer.appendChild(c),this.charts[d]=new Ja(c,a,{parent:this,isOptionsInArray:!0,index:d,height:s[d],predefinedThemes:bb,optionsName:"charts",stockChart:this}));this.charts[d].index=d;this.charts[d].panel.style.width=
1003
+ v.width+"px";this.charts[d].panel.style.top=v.y1+"px";this.charts[d].panel.style.left=v.x1+"px";this.charts[d].panel.style.height=s[d]+"px";this.layoutManager.registerSpace("top",{width:v.width,height:s[d]})}this._chartsHeight=s;b=null;for(d=0;d<this.charts.length;d++)if(!f(this.options.charts[d].data))for(c=0;c<this.options.charts[d].data.length;c++)s=this.options.charts[d].data[c],0<=F._supportedChartTypes.indexOf(s.type)||f(s.type)||(aa=!1,window.console&&window.console.log("CanvasJS Error: "+
1004
+ s.type+" Chart is not Supported in StockChart"));if(!aa)return;this.setChartsLayout();for(d=s=0;d<this.charts.length;d++)if(f(this.charts[d].options.colorSet)){this.charts[d].selectedColorSet=[];for(c=s;c<s+this.charts[d].data.length;c++)this.charts[d].selectedColorSet.push(this.selectedColorSet[c%this.selectedColorSet.length]);s+=this.charts[d].data.length}if(this.navigator&&this.navigator.enabled)if(f(this.navigator.options.colorSet))if(this.navigator.options.data){this.navigator.chart.selectedColorSet=
1005
+ [];for(c=s;c<s+this.navigator.chart.data.length;c++)this.navigator.chart.selectedColorSet.push(this.selectedColorSet[c%this.selectedColorSet.length]);s+=this.navigator.chart.data.length}else this.navigator.chart.selectedColorSet=this.charts[0].selectedColorSet;else this.navigator.chart.selectedColorSet="undefined"!==typeof sa[this.navigator.options.colorSet]?sa[this.navigator.options.colorSet]:sa.colorSet1}if(this.navigator&&this.navigator.enabled){for(d=0;d<this.navigator.chart.data.length;d++)0<=
1006
1006
  F._supportedChartTypes.indexOf(this.navigator.chart.data[d].type)||(aa=!1,window.console&&window.console.log("CanvasJS Error: "+this.navigator.chart.data[d].type+" Chart is not Supported in Navigator"));if(aa){var e=this.navigator.chart.axisX&&this.navigator.chart.axisX.length?this.navigator.chart.axisX[0]:this.navigator.chart.axisX2[0];e&&(e.bounds&&e.bounds.x1>this._chartsPlotAreaX1)&&(this._chartsPlotAreaX1=e.bounds.x1);this.navigator.width=this.navigator.chart.width=this.navigator.slider.fullWidth=
1007
1007
  this.navigator.options.width?this.navigator.options.width:this._chartsPlotAreaX2-this._chartsPlotAreaX1+(e&&e.bounds?e.bounds.x1:0);this.navigator.panel.style.left=this._chartsPlotAreaX1+this.layoutManager.getFreeSpace().x1-(e&&e.bounds?e.bounds.x1:0)+"px";this.navigator.panel.style.width=this.navigator.chart.panel.style.width=this.navigator.options.width?this.navigator.options.width:this._chartsPlotAreaX2-this._chartsPlotAreaX1+(e&&e.bounds?e.bounds.x1:0)+"px";0<this.navigator.height&&this.navigator.chart.render(this.navigator._chartOptions);
1008
- this.navigator.backgroundColor=this.navigator.chart.backgroundColor;this.navigator.animationEnabled=this.navigator.chart.animationEnabled;this.navigator.animationDuration=this.navigator.chart.animationDuration;this.navigator.theme=this.navigator.chart.theme;this.navigator.axisX=this.navigator.chart.axisX;this.navigator.axisX2=this.navigator.chart.axisX2;this.navigator.axisY=this.navigator.chart.axisY;this.navigator.axisY2=this.navigator.chart.axisY2;this.navigator.data=this.navigator.chart.data}}u=
1009
- t=null;c=0;h=a=null;for(d=0;d<this.charts.length;d++)for(b=this.charts[d].axisX&&this.charts[d].axisX.length?this.charts[d].axisX:this.charts[d].axisX2,t=t||(b&&0<b.length?b[0].minimum:null),u=u||(b&&0<b.length?b[0].maximum:null),c=0;c<b.length;c++)e=b[c],e.minimum<t&&(t=e.minimum),e.maximum>u&&(u=e.maximum);var l;this.navigator&&(this.navigator.chart&&aa)&&(l=this.navigator.chart.axisX&&0<this.navigator.chart.axisX.length?this.navigator.chart.axisX[0]:this.navigator.chart.axisX2[0],this._axisXMin=
1010
- this.navigator.slider.minimum=f(this.navigator.options.slider)||f(this.navigator.options.slider.minimum)?null:Math.max(l.minimum,this.navigator.slider.minimum),this._axisXMax=this.navigator.slider.maximum=f(this.navigator.options.slider)||f(this.navigator.options.slider.maximum)?null:Math.min(l.maximum,this.navigator.slider.maximum));if(this.rangeSelector&&this.rangeSelector.enabled){c=l?l.maximum-l.minimum:u-t;this.charts&&this.charts.length&&(e=this.charts[0].axisX&&this.charts[0].axisX.length?
1008
+ this.navigator.backgroundColor=this.navigator.chart.backgroundColor;this.navigator.animationEnabled=this.navigator.chart.animationEnabled;this.navigator.animationDuration=this.navigator.chart.animationDuration;this.navigator.theme=this.navigator.chart.theme;this.navigator.axisX=this.navigator.chart.axisX;this.navigator.axisX2=this.navigator.chart.axisX2;this.navigator.axisY=this.navigator.chart.axisY;this.navigator.axisY2=this.navigator.chart.axisY2;this.navigator.data=this.navigator.chart.data}}v=
1009
+ s=null;c=0;h=a=null;for(d=0;d<this.charts.length;d++)for(b=this.charts[d].axisX&&this.charts[d].axisX.length?this.charts[d].axisX:this.charts[d].axisX2,s=s||(b&&0<b.length?b[0].minimum:null),v=v||(b&&0<b.length?b[0].maximum:null),c=0;c<b.length;c++)e=b[c],e.minimum<s&&(s=e.minimum),e.maximum>v&&(v=e.maximum);var l;this.navigator&&(this.navigator.chart&&aa)&&(l=this.navigator.chart.axisX&&0<this.navigator.chart.axisX.length?this.navigator.chart.axisX[0]:this.navigator.chart.axisX2[0],this._axisXMin=
1010
+ this.navigator.slider.minimum=f(this.navigator.options.slider)||f(this.navigator.options.slider.minimum)?null:Math.max(l.minimum,this.navigator.slider.minimum),this._axisXMax=this.navigator.slider.maximum=f(this.navigator.options.slider)||f(this.navigator.options.slider.maximum)?null:Math.min(l.maximum,this.navigator.slider.maximum));if(this.rangeSelector&&this.rangeSelector.enabled){c=l?l.maximum-l.minimum:v-s;this.charts&&this.charts.length&&(e=this.charts[0].axisX&&this.charts[0].axisX.length?
1011
1011
  this.charts[0].axisX[0]:this.charts[0].axisX2[0]);for(d=0;d<this.rangeSelector.buttons.length;d++){var w=null,b=this.rangeSelector.buttons[d];"year"===b.rangeType?w=31104E6*b.range:"ytd"===b.rangeType?w="ytd":"month"===b.rangeType?w=2592E6*b.range:"week"===b.rangeType?w=6048E5*b.range:"day"===b.rangeType?w=864E5*b.range:"hour"===b.rangeType?w=36E5*b.range:"minute"===b.rangeType?w=6E4*b.range:"second"===b.rangeType?w=1E3*b.range:"millisecond"===b.rangeType?w=b.range:"all"===b.rangeType?w=null:"number"===
1012
1012
  b.rangeType&&(w=b.range);if("ytd"===b.rangeType||w<c)b.enabled=!0;b.enabled?(b.cursor=this.rangeSelector.buttonStyle.cursor,"on"===b.state&&((f(this._axisXMin)&&f(this._axisXMax)&&(b.textBlock.fontWeight="bold",b.textBlock.fontColor=this.rangeSelector.buttonStyle.labelFontColorOnHover,b.textBlock.backgroundColor=this.rangeSelector.buttonStyle.backgroundColorOnSelect),"ytd"===b.rangeType&&e)?(a=new Date(e.viewportMaximum),a.setDate(1),a.setMonth(0),a=a.getTime()):f(w)?l?(a=l.minimum,h=l.maximum):e&&
1013
1013
  (a=e.minimum,h=e.maximum):e.viewportMaximum-w<(l?l.minimum:e.minimum)?(h=l.minimum-(e.viewportMaximum-w),a=l.minimum,h=Math.min(l.maximum,e.viewportMaximum+h)):(a=e.viewportMaximum-w,h=e.viewportMaximum)),f(this._axisXMin)&&f(this._axisXMax)||(b.state="off"),this._axisXMin=f(this._axisXMin)?a:this._axisXMin,this._axisXMax=f(this._axisXMax)?h:this._axisXMax):b.cursor="not-allowed";b.mousemove=function(a){this.enabled&&"off"===this.state&&(this.textBlock.backgroundColor=a.stockChart.rangeSelector.buttonStyle.backgroundColorOnHover,
1014
1014
  this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColorOnHover,this.textBlock.render(!0))};b.mouseover=function(a){this.enabled&&"off"===this.state&&(this.textBlock.backgroundColor=a.stockChart.rangeSelector.buttonStyle.backgroundColorOnHover,this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColorOnHover,this.textBlock.render(!0))};b.mouseout=function(a){this.enabled&&"off"===this.state&&(this.textBlock.backgroundColor=a.stockChart.rangeSelector.buttonStyle.backgroundColor,
1015
- this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColor,this.textBlock.render(!0))};b.click=function(a){if(this.enabled){for(var b=0,c=null,d=null,e=0;e<v.rangeSelector.buttons.length;e++)v.rangeSelector.buttons[e]!=this&&(v.rangeSelector.buttons[e].state="off"),v.rangeSelector.buttons[e].textBlock.fontWeight=v.rangeSelector.buttonStyle.labelFontWeight,v.rangeSelector.buttons[e].textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColor,v.rangeSelector.buttons[e].textBlock.backgroundColor=
1016
- a.stockChart.rangeSelector.buttonStyle.backgroundColor,v.rangeSelector.buttons[e].textBlock.render(!0);var h;v.charts&&v.charts.length&&(h=v.charts[0].axisX&&v.charts[0].axisX.length?v.charts[0].axisX[0]:v.charts[0].axisX2[0]);var g;v.navigator&&v.navigator.chart&&(g=v.navigator.chart.axisX?v.navigator.chart.axisX[0]:v.navigator.chart.axisX2[0]);"year"===this.rangeType?b=31104E6*this.range:"month"===this.rangeType?b=2592E6*this.range:"week"===this.rangeType?b=6048E5*this.range:"day"===this.rangeType?
1015
+ this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColor,this.textBlock.render(!0))};b.click=function(a){if(this.enabled){for(var b=0,c=null,d=null,e=0;e<u.rangeSelector.buttons.length;e++)u.rangeSelector.buttons[e]!=this&&(u.rangeSelector.buttons[e].state="off"),u.rangeSelector.buttons[e].textBlock.fontWeight=u.rangeSelector.buttonStyle.labelFontWeight,u.rangeSelector.buttons[e].textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColor,u.rangeSelector.buttons[e].textBlock.backgroundColor=
1016
+ a.stockChart.rangeSelector.buttonStyle.backgroundColor,u.rangeSelector.buttons[e].textBlock.render(!0);var h;u.charts&&u.charts.length&&(h=u.charts[0].axisX&&u.charts[0].axisX.length?u.charts[0].axisX[0]:u.charts[0].axisX2[0]);var g;u.navigator&&u.navigator.chart&&(g=u.navigator.chart.axisX?u.navigator.chart.axisX[0]:u.navigator.chart.axisX2[0]);"year"===this.rangeType?b=31104E6*this.range:"month"===this.rangeType?b=2592E6*this.range:"week"===this.rangeType?b=6048E5*this.range:"day"===this.rangeType?
1017
1017
  b=864E5*this.range:"hour"===this.rangeType?b=36E5*this.range:"minute"===this.rangeType?b=6E4*this.range:"second"===this.rangeType?b=1E3*this.range:"millisecond"===this.rangeType?b=this.range:"all"===this.rangeType?b=null:"number"===this.rangeType&&(b=this.range);"ytd"===this.rangeType&&h?(c=new Date(h.viewportMaximum),c.setDate(1),c.setMonth(0),b=c.getTime(),c=Math.max(b,g?g.minimum:h.minimum),d=h.viewportMaximum):f(b)?g?(c=g.minimum,d=g.maximum):h&&(c=h.minimum,d=h.maximum):g&&h.viewportMaximum-
1018
- b<(g?g.minimum:h.minimum)?(g=v.navigator.chart.axisX[0].minimum-(h.viewportMaximum-b),c=v.navigator.chart.axisX[0].minimum,d=Math.min(v.navigator.chart.axisX[0].maximum,h.viewportMaximum+g)):(c=h.viewportMaximum-b,d=h.viewportMaximum);v._rangeEventParameter={stockChart:v,source:"buttons",index:this._index,minimum:c,maximum:d};"on"!=this.state&&(v._rangeEventParameter.type="rangeChanging",v.dispatchEvent("rangeChanging",v._rangeEventParameter,v),v._syncCharts(c,d),v.sessionVariables._axisXMin=c,v.sessionVariables._axisXMax=
1019
- d,v._rangeEventParameter.type="rangeChanged",v.dispatchEvent("rangeChanged",v._rangeEventParameter,v),this.state="on");this.textBlock.fontWeight="bold";this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColorOnHover;this.textBlock.backgroundColor=a.stockChart.rangeSelector.buttonStyle.backgroundColorOnSelect;this.textBlock.render(!0)}}}if(this.rangeSelector.inputFields&&this.rangeSelector.inputFields.enabled){this.rangeSelector.inputFields.valueType=this.options.rangeSelector&&
1020
- this.options.rangeSelector.inputFields&&this.options.rangeSelector.inputFields.valueType?this.options.rangeSelector.inputFields.valueType:this.isDateTime?"dateTime":"number";for(d=0;d<this.rangeSelector.inputFields._textBlocks.length;d++)e=this.rangeSelector.inputFields._textBlocks[d],e.mousemove=function(a){v.rangeSelector&&v.rangeSelector.inputFields&&!v.rangeSelector.inputFields.enabled||(a.inputField.cursor=a.stockChart.rangeSelector.inputFields.style.cursor)},e.mouseover=function(a){v.rangeSelector&&
1021
- v.rangeSelector.inputFields&&!v.rangeSelector.inputFields.enabled||(a.inputField.cursor=a.stockChart.rangeSelector.inputFields.style.cursor)},e.mouseout=function(a){v.rangeSelector&&v.rangeSelector.inputFields&&!v.rangeSelector.inputFields.enabled||(a.inputField.cursor="auto")},e.click=function(a){v.rangeSelector&&v.rangeSelector.inputFields&&!v.rangeSelector.inputFields.enabled||(a.stockChart.rangeSelector.inputFields.elements[a.inputFieldIndex].style.display="inline",a.stockChart.rangeSelector.inputFields.elements[a.inputFieldIndex].focus())};
1022
- if(isFinite(t)&&isFinite(u)){"dateTime"===this.rangeSelector.inputFields.valueType?(this.rangeSelector.inputFields.valueFormatString=this.options.rangeSelector&&this.options.rangeSelector.inputFields&&this.options.rangeSelector.inputFields.valueFormatString?this.options.rangeSelector.inputFields.valueFormatString:"MMM DD YYYY",this.rangeSelector.inputFields.startValue=f(this.rangeSelector.inputFields.options.startValue)?f(a)?t:a:ea(this.rangeSelector.inputFields.options.startValue,this.rangeSelector.inputFields.valueFormatString),
1023
- this.rangeSelector.inputFields.endValue=f(this.rangeSelector.inputFields.options.endValue)?f(h)?u:h:ea(this.rangeSelector.inputFields.options.endValue,this.rangeSelector.inputFields.valueFormatString)):(this.rangeSelector.inputFields.valueFormatString=this.options.rangeSelector&&this.options.rangeSelector.inputFields&&this.options.rangeSelector.inputFields.valueFormatString?this.options.rangeSelector.inputFields.valueFormatString:"#,##0.##",this.rangeSelector.inputFields.startValue=f(this.rangeSelector.inputFields.options.startValue)?
1024
- f(a)?t:a:this.rangeSelector.inputFields.options.startValue,this.rangeSelector.inputFields.endValue=f(this.rangeSelector.inputFields.options.endValue)?f(h)?u:h:this.rangeSelector.inputFields.options.endValue);if(!(f(this._axisXMin)&&f(this._axisXMax)&&f(this.rangeSelector.inputFields.options.startValue)&&f(this.rangeSelector.inputFields.options.endValue)))for(c=0;c<this.rangeSelector.buttons.length;c++)b=this.rangeSelector.buttons[c];d=ea(this.rangeSelector.inputFields.startValue,"YYYY-MM-DD'T'HH:mm:ssZ");
1018
+ b<(g?g.minimum:h.minimum)?(g=u.navigator.chart.axisX[0].minimum-(h.viewportMaximum-b),c=u.navigator.chart.axisX[0].minimum,d=Math.min(u.navigator.chart.axisX[0].maximum,h.viewportMaximum+g)):(c=h.viewportMaximum-b,d=h.viewportMaximum);u._rangeEventParameter={stockChart:u,source:"buttons",index:this._index,minimum:c,maximum:d};"on"!=this.state&&(u._rangeEventParameter.type="rangeChanging",u.dispatchEvent("rangeChanging",u._rangeEventParameter,u),u._syncCharts(c,d),u.sessionVariables._axisXMin=c,u.sessionVariables._axisXMax=
1019
+ d,u._rangeEventParameter.type="rangeChanged",u.dispatchEvent("rangeChanged",u._rangeEventParameter,u),this.state="on");this.textBlock.fontWeight="bold";this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColorOnHover;this.textBlock.backgroundColor=a.stockChart.rangeSelector.buttonStyle.backgroundColorOnSelect;this.textBlock.render(!0)}}}if(this.rangeSelector.inputFields&&this.rangeSelector.inputFields.enabled){this.rangeSelector.inputFields.valueType=this.options.rangeSelector&&
1020
+ this.options.rangeSelector.inputFields&&this.options.rangeSelector.inputFields.valueType?this.options.rangeSelector.inputFields.valueType:this.isDateTime?"dateTime":"number";for(d=0;d<this.rangeSelector.inputFields._textBlocks.length;d++)e=this.rangeSelector.inputFields._textBlocks[d],e.mousemove=function(a){u.rangeSelector&&u.rangeSelector.inputFields&&!u.rangeSelector.inputFields.enabled||(a.inputField.cursor=a.stockChart.rangeSelector.inputFields.style.cursor)},e.mouseover=function(a){u.rangeSelector&&
1021
+ u.rangeSelector.inputFields&&!u.rangeSelector.inputFields.enabled||(a.inputField.cursor=a.stockChart.rangeSelector.inputFields.style.cursor)},e.mouseout=function(a){u.rangeSelector&&u.rangeSelector.inputFields&&!u.rangeSelector.inputFields.enabled||(a.inputField.cursor="auto")},e.click=function(a){u.rangeSelector&&u.rangeSelector.inputFields&&!u.rangeSelector.inputFields.enabled||(a.stockChart.rangeSelector.inputFields.elements[a.inputFieldIndex].style.display="inline",a.stockChart.rangeSelector.inputFields.elements[a.inputFieldIndex].focus())};
1022
+ if(isFinite(s)&&isFinite(v)){"dateTime"===this.rangeSelector.inputFields.valueType?(this.rangeSelector.inputFields.valueFormatString=this.options.rangeSelector&&this.options.rangeSelector.inputFields&&this.options.rangeSelector.inputFields.valueFormatString?this.options.rangeSelector.inputFields.valueFormatString:"MMM DD YYYY",this.rangeSelector.inputFields.startValue=f(this.rangeSelector.inputFields.options.startValue)?f(a)?s:a:ea(this.rangeSelector.inputFields.options.startValue,this.rangeSelector.inputFields.valueFormatString),
1023
+ this.rangeSelector.inputFields.endValue=f(this.rangeSelector.inputFields.options.endValue)?f(h)?v:h:ea(this.rangeSelector.inputFields.options.endValue,this.rangeSelector.inputFields.valueFormatString)):(this.rangeSelector.inputFields.valueFormatString=this.options.rangeSelector&&this.options.rangeSelector.inputFields&&this.options.rangeSelector.inputFields.valueFormatString?this.options.rangeSelector.inputFields.valueFormatString:"#,##0.##",this.rangeSelector.inputFields.startValue=f(this.rangeSelector.inputFields.options.startValue)?
1024
+ f(a)?s:a:this.rangeSelector.inputFields.options.startValue,this.rangeSelector.inputFields.endValue=f(this.rangeSelector.inputFields.options.endValue)?f(h)?v:h:this.rangeSelector.inputFields.options.endValue);if(!(f(this._axisXMin)&&f(this._axisXMax)&&f(this.rangeSelector.inputFields.options.startValue)&&f(this.rangeSelector.inputFields.options.endValue)))for(c=0;c<this.rangeSelector.buttons.length;c++)b=this.rangeSelector.buttons[c];d=ea(this.rangeSelector.inputFields.startValue,"YYYY-MM-DD'T'HH:mm:ssZ");
1025
1025
  e=ea(this.rangeSelector.inputFields.endValue,"YYYY-MM-DD'T'HH:mm:ssZ");r||(d=d.replace(/-/g,"/"),e=e.replace(/-/g,"/"),d=d.replace("T"," "),e=e.replace("T"," "),d=d.replace(/(\+[0-9]{2})(\:)([0-9]{2}$)/," UTC$1$3"),e=e.replace(/(\+[0-9]{2})(\:)([0-9]{2}$)/," UTC$1$3"));this._axisXMin=f(this._axisXMin)?"dateTime"===this.rangeSelector.inputFields.valueType?(new Date(d)).getTime():this.rangeSelector.inputFields.startValue:this._axisXMin;this._axisXMax=f(this._axisXMax)?"dateTime"===this.rangeSelector.inputFields.valueType?
1026
- (new Date(e)).getTime():this.rangeSelector.inputFields.endValue:this._axisXMax}for(d=0;d<this.rangeSelector.inputFields.elements.length;d++)this.rangeSelector.inputFields.elements[d].title="dateTime"===this.rangeSelector.inputFields.valueType?"YYYY-MM-DD":this.rangeSelector.inputFields.valueFormatString}this.rangeSelector.render()}f(this._axisXMin)&&(this._axisXMin=t);f(this._axisXMax)&&(this._axisXMax=u);this._axisXMin=!f(this.sessionVariables._axisXMin)&&this.navigator&&this.navigator.slider&&!this.navigator.slider.hasOptionChanged("minimum")?
1026
+ (new Date(e)).getTime():this.rangeSelector.inputFields.endValue:this._axisXMax}for(d=0;d<this.rangeSelector.inputFields.elements.length;d++)this.rangeSelector.inputFields.elements[d].title="dateTime"===this.rangeSelector.inputFields.valueType?"YYYY-MM-DD":this.rangeSelector.inputFields.valueFormatString}this.rangeSelector.render()}f(this._axisXMin)&&(this._axisXMin=s);f(this._axisXMax)&&(this._axisXMax=v);this._axisXMin=!f(this.sessionVariables._axisXMin)&&this.navigator&&this.navigator.slider&&!this.navigator.slider.hasOptionChanged("minimum")?
1027
1027
  this.sessionVariables._axisXMin:this._axisXMin;this._axisXMax=!f(this.sessionVariables._axisXMax)&&this.navigator&&this.navigator.slider&&!this.navigator.slider.hasOptionChanged("maximum")?this.sessionVariables._axisXMax:this._axisXMax;if(!f(l)){this.navigator.slider.hasOptionChanged("minimum")&&(this._axisXMin=this.sessionVariables._axisXMin=this.navigator.slider.sessionVariables.minimum=this.navigator.slider.minimum=this.navigator.slider.options.minimum);this.navigator.slider.hasOptionChanged("maximum")&&
1028
- (this._axisXMax=this.sessionVariables._axisXMax=this.navigator.slider.sessionVariables.maximum=this.navigator.slider.maximum=this.navigator.slider.options.maximum);if(this._axisXMin<l.minimum||this._axisXMin>l.maximum)this._axisXMin=l.minimum;if(this._axisXMax<l.minimum||this._axisXMax>l.maximum)this._axisXMax=l.maximum}!f(l)&&l.reversed?this._syncCharts(this._axisXMax,this._axisXMin):this._syncCharts(this._axisXMin,this._axisXMax)};F.prototype.setChartsLayout=function(){var d,f,k=0,u=this.width;
1028
+ (this._axisXMax=this.sessionVariables._axisXMax=this.navigator.slider.sessionVariables.maximum=this.navigator.slider.maximum=this.navigator.slider.options.maximum);if(this._axisXMin<l.minimum||this._axisXMin>l.maximum)this._axisXMin=l.minimum;if(this._axisXMax<l.minimum||this._axisXMax>l.maximum)this._axisXMax=l.maximum}!f(l)&&l.reversed?this._syncCharts(this._axisXMax,this._axisXMin):this._syncCharts(this._axisXMin,this._axisXMax)};F.prototype.setChartsLayout=function(){var d,f,k=0,v=this.width;
1029
1029
  this.isPlotAreaSet=this.isDateTime=!1;for(var a=0;a<this.charts.length;a++){d=this.charts[a];d._initialize();d.setLayout();f={};if((d.axisX[0]||d.axisX2[0])&&(d.axisY[0]||d.axisY2[0])){var h=d.axisX[0]?d.axisX[0].lineCoordinates:d.axisX2[0].lineCoordinates;if(d.axisY&&0<d.axisY.length&&d.axisY[0]){var c=d.axisY[0];f.x1=h.x1<h.x2?h.x1:c.lineCoordinates.x1;f.x2=h.x2>c.lineCoordinates.x2?h.x2:c.lineCoordinates.x2}d.axisY2&&0<d.axisY2.length&&d.axisY2[0]&&(c=d.axisY2[0],f.x1=h.x1<h.x2?h.x1:c.lineCoordinates.x1,
1030
- f.x2=h.x2>c.lineCoordinates.x2?h.x2:c.lineCoordinates.x2)}for(h=0;h<d.data.length;h++)"dateTime"===d.data[h].xValueType&&(this.isDateTime=!0);k=Math.max(k,f.x1);u=Math.min(u,f.x2);d.sessionVariables.plotAreaBounds=f}this._chartsPlotAreaX1=k;this._chartsPlotAreaX2=u};F.prototype._updateSize=function(){return lb.call(this,[this.canvas,this.overlaidCanvas])};F.prototype._syncCharts=function(d,k){for(var t=this,u=null,a=Math.min(d,k),h=Math.max(d,k),c=0;c<this.charts.length;c++){u=this.charts[c];u.toolTip&&
1031
- (isNaN(u.toolTip._prevX)||isNaN(u.toolTip._prevY))&&u.toolTip.hide();for(var b=0;b<u.axisX.length;b++)u.axisX[b].setViewPortRange(d,k),u.axisX[b].options.labelAngle=f(u.axisX[b].options.labelAngle)?0:u.axisX[b].options.labelAngle,this.charts[c].axisX[b].crosshair&&this.charts[c].axisX[b].crosshair.enabled&&(this.charts[c].axisX[b].crosshair.options.updated||(this.charts[c].axisX[b].crosshair.options.updated=function(a){for(var b=0;b<t.charts.length;b++)if(t.charts[b]!=a.chart)for(var c=0;c<t.charts[b].axisX.length;c++)t.charts[b].axisX[c].crosshair&&
1032
- t.charts[b].axisX[c].crosshair.showAt(a.value)}),this.charts[c].axisX[b].crosshair.options.hidden||(this.charts[c].axisX[b].crosshair.options.hidden=function(a){for(var b=0;b<t.charts.length;b++)if(t.charts[b]!=a.chart)for(var c=0;c<t.charts[b].axisX.length;c++)t.charts[b].axisX[c].crosshair&&t.charts[b].axisX[c].crosshair.hide()}));for(b=0;b<u.axisX2.length;b++)u.axisX2[b].setViewPortRange(d,k),u.axisX2[b].options.labelAngle=f(u.axisX2[b].options.labelAngle)?0:u.axisX2[b].options.labelAngle,this.charts[c].axisX2[b].crosshair&&
1033
- this.charts[c].axisX2[b].crosshair.enabled&&(this.charts[c].axisX2[b].crosshair.options.updated||(this.charts[c].axisX2[b].crosshair.options.updated=function(a){for(var b=0;b<t.charts.length;b++)if(t.charts[b]!=a.chart)for(var c=0;c<t.charts[b].axisX2.length;c++)t.charts[b].axisX2[c].crosshair&&t.charts[b].axisX2[c].crosshair.showAt(a.value)}),this.charts[c].axisX2[b].crosshair.options.hidden||(this.charts[c].axisX2[b].crosshair.options.hidden=function(a){for(var b=0;b<t.charts.length;b++)if(t.charts[b]!=
1034
- a.chart)for(var c=0;c<t.charts[b].axisX2.length;c++)t.charts[b].axisX2[c].crosshair&&t.charts[b].axisX2[c].crosshair.hide()}));u.options.toolbar?u.options.toolbar=u.options.toolbar:t.options.toolbar&&(u.options.toolbar=t.options.toolbar);u._initialize();u.setLayout();u.panEnabled=u.options.zoomEnabled&&u.zoomEnabled?!1:!0;u.renderElements();(f(this.charts[c].options.toolTip)||!f(this.charts[c].options.toolTip)&&f(this.charts[c].options.toolTip.updated))&&this.charts[c].toolTip&&(this.charts[c].toolTip.updated=
1035
- function(a){for(var b=0;b<t.charts.length;b++)t.charts[b]!=a.chart&&t.charts[b].toolTip.showAtX(a.entries[0].xValue,a.entries[0].dataSeriesIndex)});(f(this.charts[c].options.toolTip)||!f(this.charts[c].options.toolTip)&&f(this.charts[c].options.toolTip.hidden))&&this.charts[c].toolTip&&(this.charts[c].toolTip.hidden=function(a){for(var b=0;b<t.charts.length;b++)t.charts[b]!=a.chart&&t.charts[b].toolTip.hide()})}this.rangeSelector&&(this.rangeSelector.enabled&&this.rangeSelector.inputFields&&this.rangeSelector.inputFields.enabled)&&
1030
+ f.x2=h.x2>c.lineCoordinates.x2?h.x2:c.lineCoordinates.x2)}for(h=0;h<d.data.length;h++)"dateTime"===d.data[h].xValueType&&(this.isDateTime=!0);k=Math.max(k,f.x1);v=Math.min(v,f.x2);d.sessionVariables.plotAreaBounds=f}this._chartsPlotAreaX1=k;this._chartsPlotAreaX2=v};F.prototype._updateSize=function(){return lb.call(this,[this.canvas,this.overlaidCanvas])};F.prototype._syncCharts=function(d,k){for(var s=this,v=null,a=Math.min(d,k),h=Math.max(d,k),c=0;c<this.charts.length;c++){v=this.charts[c];v.toolTip&&
1031
+ (isNaN(v.toolTip._prevX)||isNaN(v.toolTip._prevY))&&v.toolTip.hide();for(var b=0;b<v.axisX.length;b++)v.axisX[b].setViewPortRange(d,k),v.axisX[b].options.labelAngle=f(v.axisX[b].options.labelAngle)?0:v.axisX[b].options.labelAngle,this.charts[c].axisX[b].crosshair&&this.charts[c].axisX[b].crosshair.enabled&&(this.charts[c].axisX[b].crosshair.options.updated||(this.charts[c].axisX[b].crosshair.options.updated=function(a){for(var b=0;b<s.charts.length;b++)if(s.charts[b]!=a.chart)for(var c=0;c<s.charts[b].axisX.length;c++)s.charts[b].axisX[c].crosshair&&
1032
+ s.charts[b].axisX[c].crosshair.showAt(a.value)}),this.charts[c].axisX[b].crosshair.options.hidden||(this.charts[c].axisX[b].crosshair.options.hidden=function(a){for(var b=0;b<s.charts.length;b++)if(s.charts[b]!=a.chart)for(var c=0;c<s.charts[b].axisX.length;c++)s.charts[b].axisX[c].crosshair&&s.charts[b].axisX[c].crosshair.hide()}));for(b=0;b<v.axisX2.length;b++)v.axisX2[b].setViewPortRange(d,k),v.axisX2[b].options.labelAngle=f(v.axisX2[b].options.labelAngle)?0:v.axisX2[b].options.labelAngle,this.charts[c].axisX2[b].crosshair&&
1033
+ this.charts[c].axisX2[b].crosshair.enabled&&(this.charts[c].axisX2[b].crosshair.options.updated||(this.charts[c].axisX2[b].crosshair.options.updated=function(a){for(var b=0;b<s.charts.length;b++)if(s.charts[b]!=a.chart)for(var c=0;c<s.charts[b].axisX2.length;c++)s.charts[b].axisX2[c].crosshair&&s.charts[b].axisX2[c].crosshair.showAt(a.value)}),this.charts[c].axisX2[b].crosshair.options.hidden||(this.charts[c].axisX2[b].crosshair.options.hidden=function(a){for(var b=0;b<s.charts.length;b++)if(s.charts[b]!=
1034
+ a.chart)for(var c=0;c<s.charts[b].axisX2.length;c++)s.charts[b].axisX2[c].crosshair&&s.charts[b].axisX2[c].crosshair.hide()}));v.options.toolbar?v.options.toolbar=v.options.toolbar:s.options.toolbar&&(v.options.toolbar=s.options.toolbar);v._initialize();v.setLayout();v.panEnabled=v.options.zoomEnabled&&v.zoomEnabled?!1:!0;v.renderElements();(f(this.charts[c].options.toolTip)||!f(this.charts[c].options.toolTip)&&f(this.charts[c].options.toolTip.updated))&&this.charts[c].toolTip&&(this.charts[c].toolTip.updated=
1035
+ function(a){for(var b=0;b<s.charts.length;b++)s.charts[b]!=a.chart&&s.charts[b].toolTip.showAtX(a.entries[0].xValue,a.entries[0].dataSeriesIndex)});(f(this.charts[c].options.toolTip)||!f(this.charts[c].options.toolTip)&&f(this.charts[c].options.toolTip.hidden))&&this.charts[c].toolTip&&(this.charts[c].toolTip.hidden=function(a){for(var b=0;b<s.charts.length;b++)s.charts[b]!=a.chart&&s.charts[b].toolTip.hide()})}this.rangeSelector&&(this.rangeSelector.enabled&&this.rangeSelector.inputFields&&this.rangeSelector.inputFields.enabled)&&
1036
1036
  this.rangeSelector._updateInputFields(a,h);this.navigator&&this.navigator.enabled&&this.navigator._updateSlider(a,h)};F.prototype.destroy=function(){for(var d=this.allDOMEventHandlers,f=0;f<this.charts.length;f++)this.charts[f].destroy();this.navigator&&this.navigator.enabled&&this.navigator.chart.destroy();for(f=0;f<d.length;f++)gb(d[f][0],d[f][1],d[f][2],d[f][3]);for(this.allDOMEventHandlers=[];this.navigator&&this.navigator.enabled&&this.navigator.panel.hasChildNodes();)this.navigator.panel.removeChild(this.navigator.panel.lastChild);
1037
1037
  for(;this._canvasJSContainer&&this._canvasJSContainer.hasChildNodes();)this._canvasJSContainer.removeChild(this._canvasJSContainer.lastChild);for(;this.container&&this.container.hasChildNodes();)this.container.removeChild(this.container.lastChild);this.container=this._canvasJSContainer=null;Ca(this.canvas);Ca(this.overlaidCanvas);this._eventManager&&this._eventManager.ghostCanvas&&Ca(this._eventManager.ghostCanvas);this.navigator.panel=null;this.rangeSelector.panel=null};F.prototype.exportChart=function(d){d=
1038
- "undefined"===typeof d?{}:d;var f=d.format?d.format:"png",k=d.fileName?d.fileName:this.exportFileName,u=this.canvas.cloneNode();u.setAttribute("class",u.getAttribute("class")+"-clone");var a=u.getContext("2d");a.drawImage(this.canvas,0,0);for(var h=[],c=0;c<this.charts.length;c++){var b=this.charts[c];h.push({canvas:b.canvas,position:{x:b.container.offsetLeft,y:b.container.offsetTop}});h.push({canvas:b.overlaidCanvas,position:{x:b.container.offsetLeft,y:b.container.offsetTop}})}this.navigator&&this.navigator.enabled&&
1039
- (c=this.navigator,h.push({canvas:c.chart.canvas,position:{x:c.panel.offsetLeft,y:c.panel.offsetTop}}),h.push({canvas:c.chart.overlaidCanvas,position:{x:c.panel.offsetLeft,y:c.panel.offsetTop}}));for(c=0;c<h.length;c++)a.drawImage(h[c].canvas,h[c].position.x*ja,h[c].position.y*ja);if(d.toDataURL)return u.toDataURL("image/"+f);db(u,f,k)};F.prototype.print=function(){var d=this.exportChart({toDataURL:!0}),f=document.createElement("iframe");f.setAttribute("class","canvasjs-chart-print-frame");O(f,{position:"absolute",
1040
- width:"100%",border:0,margin:0,padding:0});f.style.height=this.height+"px";this._canvasJSContainer.appendChild(f);var k=this,u=f.contentWindow||f.contentDocument.document||f.contentDocument;u.document.open();u.document.write('<!DOCTYPE HTML>\n<html><body><img src="'+d+'"/><body/></html>');u.document.body&&u.document.body.style&&(u.document.body.style.margin="0px 0px 0px 0px",u.document.body.style.padding="0px 0px 0px 0px");u.document.close();setTimeout(function(){u.focus();u.print();setTimeout(function(){k._canvasJSContainer.removeChild(f)},
1041
- 1E3)},500)};F.prototype.getObjectAtXY=function(d,k,t){t=null;if(!f(this.rangeSelector)){for(var u=0;u<this.rangeSelector.buttons.length;u++){var a=this.rangeSelector.buttons[u];d>=a.bounds.x1&&(d<=a.bounds.x2&&k>=a.bounds.y1&&k<=a.bounds.y2)&&(t=a.id)}for(u=0;u<this.rangeSelector.inputFields._textBlocks.length;u++)a=this.rangeSelector.inputFields._textBlocks[u],d>=a.bounds.x1&&(d<=a.bounds.x2&&k>=a.bounds.y1&&k<=a.bounds.y2)&&(t=a.id)}return t};F.prototype._touchEventHandler=function(d){if(d.changedTouches){var k=
1042
- [],t=d.changedTouches,u=t?t[0]:d,a=null;switch(d.type){case "touchstart":case "MSPointerDown":k=["mousemove","mousedown"];this._lastTouchData=Aa(u);this._lastTouchData.time=new Date;break;case "touchmove":case "MSPointerMove":k=["mousemove"];break;case "touchend":case "MSPointerUp":var h=this._lastTouchData&&this._lastTouchData.time?new Date-this._lastTouchData.time:0,k="touchstart"===this._lastTouchEventType||"MSPointerDown"===this._lastTouchEventType||300>h?["mouseup","click"]:["mouseup"];break;
1043
- default:return}if(!(t&&1<t.length)){a=Aa(u);a.time=new Date;try{var c=a.y-this._lastTouchData.y,h=a.time-this._lastTouchData.time;if(1<Math.abs(c)&&this._lastTouchData.scroll||5<Math.abs(c)&&250>h)this._lastTouchData.scroll=!0}catch(b){}this._lastTouchEventType=d.type;if(this._lastTouchData&&this._lastTouchData.scroll)this.isDrag&&this.resetOverlayedCanvas(),this.isDrag=!1;else for(t=0;t<k.length;t++)if(a=k[t],c=document.createEvent("MouseEvent"),c.initMouseEvent(a,!0,!0,window,1,u.screenX,u.screenY,
1044
- u.clientX,u.clientY,!1,!1,!1,!1,0,null),u.target.dispatchEvent(c),this._lastTouchData&&!f(this._lastTouchData.scroll)&&!this._lastTouchData.scroll||this._lastTouchData&&!this._lastTouchData.scroll&&250<h||"click"===a)d.preventManipulation&&d.preventManipulation(),d.preventDefault&&d.cancelable&&d.preventDefault()}}};F.prototype._mouseEventHandler=function(d){"undefined"===typeof d.target&&d.srcElement&&(d.target=d.srcElement);var f=Aa(d),k=d.type,u,a;d.which?a=3==d.which:d.button&&(a=2==d.button);
1045
- F.capturedEventParam&&(u=F.capturedEventParam,"mouseup"===k&&(F.capturedEventParam=null,u.stockChart.overlaidCanvas.releaseCapture?u.stockChart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",u.stockChart._mouseEventHandler,!1)),u.hasOwnProperty(k)&&("mouseup"!==k||u.stockChart.overlaidCanvas.releaseCapture?d.target!==u.stockChart.overlaidCanvas&&r||u[k].call(u.context,f.x,f.y):d.target!==u.stockChart.overlaidCanvas&&(u.stockChart.isDrag=!1)));if(this._ignoreNextEvent)this._ignoreNextEvent=
1046
- !1;else if(d.preventManipulation&&d.preventManipulation(),d.preventDefault&&d.preventDefault(),Ma&&window.console&&(window.console.log(k+" --\x3e x: "+f.x+"; y:"+f.y),a&&window.console.log(d.which),"mouseup"===k&&window.console.log("mouseup")),!a){if(!F.capturedEventParam&&this._events){for(var h=0;h<this._events.length;h++)if(this._events[h].hasOwnProperty(k))if(u=this._events[h],a=u.bounds,f.x>=a.x1&&f.x<=a.x2&&f.y>=a.y1&&f.y<=a.y2){u[k].call(u.context,f.x,f.y);"mousedown"===k&&!0===u.capture?(Chart.capturedEventParam=
1047
- u,this.overlaidCanvas.setCapture?this.overlaidCanvas.setCapture():document.documentElement.addEventListener("mouseup",this._mouseEventHandler,!1)):"mouseup"===k&&(u.stockChart.overlaidCanvas.releaseCapture?u.stockChart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",this._mouseEventHandler,!1));break}else u=null;d.target.style.cursor=u&&u.cursor?u.cursor:this._defaultCursor}k=this.bounds;(f.x<k.x1||f.x>k.x2||f.y<k.y1||f.y>k.y2)&&this.resetOverlayedCanvas();!this.isDrag&&
1038
+ "undefined"===typeof d?{}:d;var f=d.format?d.format:"png",k=d.fileName?d.fileName:this.exportFileName,v=this.canvas.cloneNode();v.setAttribute("class",v.getAttribute("class")+"-clone");var a=v.getContext("2d");a.drawImage(this.canvas,0,0);for(var h=[],c=0;c<this.charts.length;c++){var b=this.charts[c];h.push({canvas:b.canvas,position:{x:b.container.offsetLeft,y:b.container.offsetTop}});h.push({canvas:b.overlaidCanvas,position:{x:b.container.offsetLeft,y:b.container.offsetTop}})}this.navigator&&this.navigator.enabled&&
1039
+ (c=this.navigator,h.push({canvas:c.chart.canvas,position:{x:c.panel.offsetLeft,y:c.panel.offsetTop}}),h.push({canvas:c.chart.overlaidCanvas,position:{x:c.panel.offsetLeft,y:c.panel.offsetTop}}));for(c=0;c<h.length;c++)a.drawImage(h[c].canvas,h[c].position.x*ja,h[c].position.y*ja);if(d.toDataURL)return v.toDataURL("image/"+f);db(v,f,k)};F.prototype.print=function(){var d=this.exportChart({toDataURL:!0}),f=document.createElement("iframe");f.setAttribute("class","canvasjs-chart-print-frame");O(f,{position:"absolute",
1040
+ width:"100%",border:0,margin:0,padding:0});f.style.height=this.height+"px";this._canvasJSContainer.appendChild(f);var k=this,v=f.contentWindow||f.contentDocument.document||f.contentDocument;v.document.open();v.document.write('<!DOCTYPE HTML>\n<html><body><img src="'+d+'"/><body/></html>');v.document.body&&v.document.body.style&&(v.document.body.style.margin="0px 0px 0px 0px",v.document.body.style.padding="0px 0px 0px 0px");v.document.close();setTimeout(function(){v.focus();v.print();setTimeout(function(){k._canvasJSContainer.removeChild(f)},
1041
+ 1E3)},500)};F.prototype.getObjectAtXY=function(d,k,s){s=null;if(!f(this.rangeSelector)){for(var v=0;v<this.rangeSelector.buttons.length;v++){var a=this.rangeSelector.buttons[v];d>=a.bounds.x1&&(d<=a.bounds.x2&&k>=a.bounds.y1&&k<=a.bounds.y2)&&(s=a.id)}for(v=0;v<this.rangeSelector.inputFields._textBlocks.length;v++)a=this.rangeSelector.inputFields._textBlocks[v],d>=a.bounds.x1&&(d<=a.bounds.x2&&k>=a.bounds.y1&&k<=a.bounds.y2)&&(s=a.id)}return s};F.prototype._touchEventHandler=function(d){if(d.changedTouches){var k=
1042
+ [],s=d.changedTouches,v=s?s[0]:d,a=null;switch(d.type){case "touchstart":case "MSPointerDown":k=["mousemove","mousedown"];this._lastTouchData=Aa(v);this._lastTouchData.time=new Date;break;case "touchmove":case "MSPointerMove":k=["mousemove"];break;case "touchend":case "MSPointerUp":var h=this._lastTouchData&&this._lastTouchData.time?new Date-this._lastTouchData.time:0,k="touchstart"===this._lastTouchEventType||"MSPointerDown"===this._lastTouchEventType||300>h?["mouseup","click"]:["mouseup"];break;
1043
+ default:return}if(!(s&&1<s.length)){a=Aa(v);a.time=new Date;try{var c=a.y-this._lastTouchData.y,h=a.time-this._lastTouchData.time;if(1<Math.abs(c)&&this._lastTouchData.scroll||5<Math.abs(c)&&250>h)this._lastTouchData.scroll=!0}catch(b){}this._lastTouchEventType=d.type;if(this._lastTouchData&&this._lastTouchData.scroll)this.isDrag&&this.resetOverlayedCanvas(),this.isDrag=!1;else for(s=0;s<k.length;s++)if(a=k[s],c=document.createEvent("MouseEvent"),c.initMouseEvent(a,!0,!0,window,1,v.screenX,v.screenY,
1044
+ v.clientX,v.clientY,!1,!1,!1,!1,0,null),v.target.dispatchEvent(c),this._lastTouchData&&!f(this._lastTouchData.scroll)&&!this._lastTouchData.scroll||this._lastTouchData&&!this._lastTouchData.scroll&&250<h||"click"===a)d.preventManipulation&&d.preventManipulation(),d.preventDefault&&d.cancelable&&d.preventDefault()}}};F.prototype._mouseEventHandler=function(d){"undefined"===typeof d.target&&d.srcElement&&(d.target=d.srcElement);var f=Aa(d),k=d.type,v,a;d.which?a=3==d.which:d.button&&(a=2==d.button);
1045
+ F.capturedEventParam&&(v=F.capturedEventParam,"mouseup"===k&&(F.capturedEventParam=null,v.stockChart.overlaidCanvas.releaseCapture?v.stockChart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",v.stockChart._mouseEventHandler,!1)),v.hasOwnProperty(k)&&("mouseup"!==k||v.stockChart.overlaidCanvas.releaseCapture?d.target!==v.stockChart.overlaidCanvas&&r||v[k].call(v.context,f.x,f.y):d.target!==v.stockChart.overlaidCanvas&&(v.stockChart.isDrag=!1)));if(this._ignoreNextEvent)this._ignoreNextEvent=
1046
+ !1;else if(d.preventManipulation&&d.preventManipulation(),d.preventDefault&&d.preventDefault(),Ma&&window.console&&(window.console.log(k+" --\x3e x: "+f.x+"; y:"+f.y),a&&window.console.log(d.which),"mouseup"===k&&window.console.log("mouseup")),!a){if(!F.capturedEventParam&&this._events){for(var h=0;h<this._events.length;h++)if(this._events[h].hasOwnProperty(k))if(v=this._events[h],a=v.bounds,f.x>=a.x1&&f.x<=a.x2&&f.y>=a.y1&&f.y<=a.y2){v[k].call(v.context,f.x,f.y);"mousedown"===k&&!0===v.capture?(Chart.capturedEventParam=
1047
+ v,this.overlaidCanvas.setCapture?this.overlaidCanvas.setCapture():document.documentElement.addEventListener("mouseup",this._mouseEventHandler,!1)):"mouseup"===k&&(v.stockChart.overlaidCanvas.releaseCapture?v.stockChart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",this._mouseEventHandler,!1));break}else v=null;d.target.style.cursor=v&&v.cursor?v.cursor:this._defaultCursor}k=this.bounds;(f.x<k.x1||f.x>k.x2||f.y<k.y1||f.y>k.y2)&&this.resetOverlayedCanvas();!this.isDrag&&
1048
1048
  this._eventManager&&this._eventManager.mouseEventHandler(d)}};F.prototype.resetOverlayedCanvas=function(){this.overlaidCanvasCtx.clearRect(0,0,this.width,this.height)};F.prototype.clearCanvas=mb;F.prototype.getAutoFontSize=nb;ga(J,Ha);ga(L,Na);Ja.prototype.alignVerticalAxes=function(){if(!this.isNavigator&&this.stockChart){for(var d=this.sessionVariables.plotAreaBounds,f=this.stockChart._chartsPlotAreaX1-d.x1,d=d.x2-this.stockChart._chartsPlotAreaX2,k=0;k<this.axisX.length;k++)this.axisX[k].lineCoordinates.x1+=
1049
1049
  f,this.axisX[k].lineCoordinates.x2-=d,this.axisX[k].lineCoordinates.width=this.axisX[k].lineCoordinates.x2-this.axisX[k].lineCoordinates.x1,this.axisX[k].bounds.x1+=f,this.axisX[k].bounds.x2-=d,this.axisX[k].calculateValueToPixelConversionParameters();for(k=0;k<this.axisX2.length;k++)this.axisX2[k].lineCoordinates.x1+=f,this.axisX2[k].lineCoordinates.x2-=d,this.axisX2[k].lineCoordinates.width=this.axisX2[k].lineCoordinates.x2-this.axisX2[k].lineCoordinates.x1,this.axisX2[k].bounds.x1+=f,this.axisX2[k].bounds.x2-=
1050
1050
  d,this.axisX2[k].calculateValueToPixelConversionParameters();for(k=0;k<this.axisY.length;k++)this.axisY[k].lineCoordinates.x1+=f,this.axisY[k].lineCoordinates.x2+=f,this.axisY[k].bounds.x1+=f,this.axisY[k].bounds.x2+=f;for(k=0;k<this.axisY2.length;k++)this.axisY2[k].lineCoordinates.x1-=d,this.axisY2[k].lineCoordinates.x2-=d,this.axisY2[k].bounds.x1-=d,this.axisY2[k].bounds.x2-=d}};Ja.prototype.syncCharts=function(d,k){this.stockChart&&(d=f(d)?this.stockChart._axisXMin:d,k=f(k)?this.stockChart._axisXMax:
1051
1051
  k,this.stockChart._syncCharts(d,k),this.stockChart.sessionVariables._axisXMin=d,this.stockChart.sessionVariables._axisXMax=k,this.stockChart.rangeSelector&&"zoom"!==this._zoomButton.getAttribute("state")&&this.stockChart.rangeSelector.resetRangeButtons())};P.prototype.reset=function(){this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=[];this.eventObjects=[];r&&(this.ghostCtx.clearRect(0,0,this.stockChart.width,this.stockChart.height),this.ghostCtx.beginPath())};P.prototype.getNewObjectTrackingId=
1052
- function(){return++this.lastObjectId};P.prototype.mouseEventHandler=function(d){if("mousemove"===d.type||"click"===d.type){var f=[],k=Aa(d),u=null;if((u=this.stockChart.getObjectAtXY(k.x,k.y,!1))&&"undefined"!==typeof this.objectMap[u])if(u=this.objectMap[u],"rangeButton"===u.objectType){var a=this.stockChart.rangeSelector.buttons[u.rangeButtonIndex];u.eventParameter={x:k.x,y:k.y,rangeButton:a,rangeButtonIndex:u.rangeButtonIndex,stockChart:this.stockChart};u.eventContext={context:this.stockChart.rangeSelector,
1053
- userContext:a,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"};f.push(u)}else"inputFields"===u.objectType&&(a=this.stockChart.rangeSelector.inputFields._textBlocks[u.inputFieldIndex],u.eventParameter={x:k.x,y:k.y,inputField:a,inputFieldIndex:u.inputFieldIndex,stockChart:this.stockChart},u.eventContext={context:this.stockChart.rangeSelector,userContext:a,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"},f.push(u));a=[];for(k=0;k<this.mouseoveredObjectMaps.length;k++){for(var h=
1054
- !0,u=0;u<f.length;u++)if(f[u].id===this.mouseoveredObjectMaps[k].id){h=!1;break}h?this.fireEvent(this.mouseoveredObjectMaps[k],"mouseout",d):a.push(this.mouseoveredObjectMaps[k])}this.mouseoveredObjectMaps=a;for(k=0;k<f.length;k++){a=!1;for(u=0;u<this.mouseoveredObjectMaps.length;u++)if(f[k].id===this.mouseoveredObjectMaps[u].id){a=!0;break}a||(this.fireEvent(f[k],"mouseover",d),this.mouseoveredObjectMaps.push(f[k]));"click"===d.type?this.fireEvent(f[k],"click",d):"mousemove"===d.type&&this.fireEvent(f[k],
1055
- "mousemove",d)}}};P.prototype.fireEvent=function(d,f,k){if(d&&f){var u=d.eventParameter,a=d.eventContext,h=d.eventContext.userContext;h&&(a&&h[a[f]])&&h[a[f]].call(h,u);"mouseout"!==f?h.cursor&&h.cursor!==k.target.style.cursor&&(k.target.style.cursor=h.cursor):(k.target.style.cursor=this.stockChart._defaultCursor,delete d.eventParameter,delete d.eventContext)}};ga(A,$);A.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("backgroundColor");!this.options.backgroundColor&&
1056
- this.stockChart.options.backgroundColor&&(this.backgroundColor=this.stockChart.backgroundColor);this.updateOption("animationEnabled");this.animationEnabled=this.animationEnabled&&r;this.updateOption("animationDuration");this.updateOption("theme");this.updateOption("verticalAlign");this.updateOption("horizontalAlign");this.updateOption("width");this.updateOption("height");this.updateOption("dynamicUpdate")};A.prototype._initialize=function(){this._updateOptions();var d;this.enabled&&!this.panel&&(this.panel=
1057
- k("canvasjs-navigator-panel"),(d=!f(this.panel)&&this.stockChart._canvasJSContainer.contains(this.panel))||this.stockChart._canvasJSContainer.appendChild(this.panel));d=!f(this.panel)&&this.stockChart._canvasJSContainer.contains(this.panel);if(this.enabled){this.height=f(this.options.height)?0.14*this.stockChart.height:parseInt(this.options.height);d||this.stockChart._canvasJSContainer.appendChild(this.panel);var v=this.stockChart.layoutManager.getFreeSpace(),t=v.x1,u=v.y1;this.width=this.options.width?
1058
- this.width:v.width;"top"===this.verticalAlign?(u=v.y1+2,d="top"):(u=v.y2-this.height-2,d="bottom");"left"===this.horizontalAlign?t=v.x1+2:"center"===this.horizontalAlign?t=v.x1+v.width/2-this.width/2:"right"===this.horizontalAlign&&(t=v.x2-2-this.width);this.panel.style.top=u+"px";this.panel.style.left=t+"px";this.panel.style.height=this.height+"px";this.panel.style.width=this.width+"px";this.stockChart.layoutManager.registerSpace(d,{width:this.width,height:this.height+2});this.bounds={x1:t,y1:u,
1059
- x2:t+this.width,y2:u+this.height}}else d&&this.stockChart._canvasJSContainer.removeChild(this.panel)};A.prototype._updateSlider=function(d,k){var t=this.chart.axisX&&this.chart.axisX.length?this.chart.axisX[0]:this.chart.axisX2[0];if(!f(t)){var u=Math.max(t.bounds.x1,t.convertValueToPixel(t.reversed?Math.max(d,Math.min(t.maximum,k)):Math.min(d,Math.min(t.maximum,k)))),a=t.convertValueToPixel(t.reversed?Math.min(d,Math.min(t.maximum,k)):Math.max(d,Math.min(t.maximum,k)));this.slider.panel.style.left=
1060
- u+"px";this.slider.left=u;this.slider.panel.style.width=a-u+"px";this.slider.width=a-u;this.slider.minimum=d;this.slider.maximum=k;this.chart.resetOverlayedCanvas();this.slider.maskInverted?ba(this.chart.overlaidCanvasCtx,u,0,a,this.height,this.slider.maskColor,0,this.slider.outlineColor,0,0,0,0,this.slider.maskOpacity):(ba(this.chart.overlaidCanvasCtx,t.bounds.x1,0,u,this.height,this.slider.maskColor,0,this.slider.outlineColor,!1,!1,!1,!1,this.slider.maskOpacity),ba(this.chart.overlaidCanvasCtx,
1061
- a,0,this.width,this.height,this.slider.maskColor,0,this.slider.outlineColor,!1,!1,!1,!1,this.slider.maskOpacity));this.chart.overlaidCanvasCtx.lineWidth=this.slider.outlineThickness;this.chart.overlaidCanvasCtx.strokeStyle=this.slider.outlineColor;this.chart.overlaidCanvasCtx.save();this.chart.overlaidCanvasCtx.beginPath();0<this.slider.outlineThickness&&(this.slider.outlineInverted?(this.chart.overlaidCanvasCtx.moveTo(t.bounds.x1,this.height-this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===
1062
- this.slider.outlineThickness%2?(u-this.slider.outlineThickness/2<<0)+0.5:u,this.height-this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(u-this.slider.outlineThickness/2<<0)+0.5:u,this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(a-this.slider.outlineThickness/2<<0)+0.5:a,this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(a-this.slider.outlineThickness/
1063
- 2<<0)+0.5:a,this.height-this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(this.width,this.height-this.slider.outlineThickness)):(this.chart.overlaidCanvasCtx.moveTo(t.bounds.x1,this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(u-this.slider.outlineThickness/2<<0)+0.5:u,this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(u-this.slider.outlineThickness/2<<0)+0.5:u,this.height-
1064
- this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(a-this.slider.outlineThickness/2<<0)+0.5:a,this.height-this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(a-this.slider.outlineThickness/2<<0)+0.5:a,this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(this.width,this.slider.outlineThickness/2)));this.chart.overlaidCanvasCtx.stroke();this.chart.overlaidCanvasCtx.restore();ba(this.chart.overlaidCanvasCtx,
1065
- 1===this.slider.handleBorderThickness%2?u-this.slider.handleWidth/2<<0.5:u-this.slider.handleWidth/2<<0,1===this.slider.handleBorderThickness%2?this.height/2-this.slider.handleHeight/2<<0.5:this.height/2-this.slider.handleHeight/2<<0,1===this.slider.handleBorderThickness%2?u+this.slider.handleWidth/2<<0.5:u+this.slider.handleWidth/2<<0,1===this.slider.handleBorderThickness%2?this.height/2+this.slider.handleHeight/2<<0.5:this.height/2+this.slider.handleHeight/2<<0,this.slider.handleColor,this.slider.handleBorderThickness,
1066
- this.slider.handleBorderColor,!1,!1,!1,!1,1);ba(this.chart.overlaidCanvasCtx,1===this.slider.handleBorderThickness%2?a-this.slider.handleWidth/2<<0.5:a-this.slider.handleWidth/2<<0,1===this.slider.handleBorderThickness%2?this.height/2-this.slider.handleHeight/2<<0.5:this.height/2-this.slider.handleHeight/2<<0,1===this.slider.handleBorderThickness%2?a+this.slider.handleWidth/2<<0.5:a+this.slider.handleWidth/2<<0,1===this.slider.handleBorderThickness%2?this.height/2+this.slider.handleHeight/2<<0.5:
1067
- this.height/2+this.slider.handleHeight/2<<0,this.slider.handleColor,this.slider.handleBorderThickness,this.slider.handleBorderColor,!1,!1,!1,!1,1);this.chart.overlaidCanvasCtx.lineWidth=this.slider.handleBorderThickness;this.chart.overlaidCanvasCtx.strokeStyle=this.slider.handleBorderColor;this.chart.overlaidCanvasCtx.save();this.chart.overlaidCanvasCtx.beginPath();this.chart.overlaidCanvasCtx.moveTo((1===this.slider.handleBorderThickness%2?(u-this.slider.handleBorderThickness/2<<0)+0.5:u)-Math.round(this.slider.handleBorderThickness),
1068
- this.height/2-this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.lineTo((1===this.slider.handleBorderThickness%2?(u-this.slider.handleBorderThickness/2<<0)+0.5:u)-Math.round(this.slider.handleBorderThickness),this.height/2+this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.moveTo((1===this.slider.handleBorderThickness%2?(u+this.slider.handleBorderThickness/2<<0)+0.5:u)+Math.round(this.slider.handleBorderThickness),this.height/2-this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.lineTo((1===
1069
- this.slider.handleBorderThickness%2?(u+this.slider.handleBorderThickness/2<<0)+0.5:u)+Math.round(this.slider.handleBorderThickness),this.height/2+this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.moveTo((1===this.slider.handleBorderThickness%2?(a-this.slider.handleBorderThickness/2<<0)+0.5:a)-Math.round(this.slider.handleBorderThickness),this.height/2-this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.lineTo((1===this.slider.handleBorderThickness%2?(a-this.slider.handleBorderThickness/
1070
- 2<<0)+0.5:a)-Math.round(this.slider.handleBorderThickness),this.height/2+this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.moveTo((1===this.slider.handleBorderThickness%2?(a+this.slider.handleBorderThickness/2<<0)+0.5:a)+Math.round(this.slider.handleBorderThickness),this.height/2-this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.lineTo((1===this.slider.handleBorderThickness%2?(a+this.slider.handleBorderThickness/2<<0)+0.5:a)+Math.round(this.slider.handleBorderThickness),this.height/
1071
- 2+this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.stroke();this.chart.overlaidCanvasCtx.restore()}};ga(M,$);M.prototype._updateOptions=function(){this.updateOption("maskColor");this.updateOption("maskInverted");this.updateOption("maskOpacity");this.updateOption("handleColor");this.updateOption("handleBorderColor");this.updateOption("handleBorderThickness");this.updateOption("handleWidth");this.updateOption("handleHeight");this.updateOption("outlineColor");this.updateOption("outlineThickness");
1072
- this.updateOption("outlineInverted");this.updateOption("minimum");this.updateOption("maximum")};M.prototype._attachEvents=function(){var d=this;D(this.panel,"mousedown",function(f){d.stockChart.isDrag=!0;f.target!==d.leftHandle&&f.target!==d.rightHandle&&(d.stockChart.navigatorClicked=!0,d.currentHandle=d.leftHandle,d.panMode=!0,d.startPosition=Aa(f),f.target===d.currentHandle?d.startPosition.x+=d.currentHandle.offsetLeft+d.currentHandle.clientWidth/2+d.panel.offsetLeft:f.target===d.panel&&(d.startPosition.x+=
1073
- d.panel.offsetLeft),d.startWidth=d.panel.clientWidth,d.startLeft=d.panel.offsetLeft)},this.stockChart.allDOMEventHandlers);D(this.panel,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(f){d.stockChart._touchEventHandler(f)},this.stockChart.allDOMEventHandlers);D(this.navigator.panel,"mousedown",function(k){if(k.target!==d.navigator.slider.panel&&k.target!==d.leftHandle&&k.target!==d.rightHandle){d.stockChart.navigatorClicked=!0;var t=Aa(k),u,a;u=0;var h=d.navigator.chart.axisX&&
1074
- d.navigator.chart.axisX.length?d.navigator.chart.axisX[0]:d.navigator.chart.axisX2[0];k=d.navigator.slider.left;f(d.startLeft)&&(d.startLeft=k);u=k+d.navigator.slider.width;a=t.x-(k+u)/2;if(t.x<k||t.x>u){var t=Math.max(0,k+a),c=Math.min(u+a,d.navigator.width);u+a>d.navigator.width&&(u=u+a-d.navigator.width,t-=u);0>k+a&&(u=Math.abs(k+a),c+=u);d.stockChart._rangeEventParameter={stockChart:d.stockChart,source:"navigator",index:null,minimum:h.convertPixelToValue(t),maximum:h.convertPixelToValue(c)};d.stockChart.sessionVariables._axisXMin=
1075
- h.convertPixelToValue(t);d.stockChart.sessionVariables._axisXMax=h.convertPixelToValue(c);d.navigator.dynamicUpdate?(d.stockChart._rangeEventParameter.type="rangeChanging",d.stockChart.dispatchEvent("rangeChanging",d.stockChart._rangeEventParameter,d.stockChart),d.stockChart._syncCharts(h.convertPixelToValue(t),h.convertPixelToValue(c)),d.stockChart._rangeEventParameter.type="rangeChanged",d.stockChart.dispatchEvent("rangeChanged",d.stockChart._rangeEventParameter,d.stockChart)):d.navigator._updateSlider(d.stockChart.sessionVariables._axisXMin,
1076
- d.stockChart.sessionVariables._axisXMax)}}},this.navigator.stockChart.allDOMEventHandlers);D(this.navigator.panel,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(f){d.stockChart._touchEventHandler(f)},this.navigator.stockChart.allDOMEventHandlers);D(this.navigator.stockChart.container,"mousemove",function(k){var t=d.navigator.chart.axisX&&d.navigator.chart.axisX.length?d.navigator.chart.axisX[0]:d.navigator.chart.axisX2[0];if(!f(d.currentHandle)&&d.startPosition){d.navigator.chart.overlaidCanvas.style.cursor=
1077
- d.navigator.chart.container.style.cursor=d.navigator.panel.style.cursor="ew-resize";var u;u=d.currentHandle===d.leftHandle?1:-1;var a=Aa(k);k=k.target||k.srcElement;a.x=k===d.currentHandle?a.x+(d.currentHandle.offsetLeft+d.currentHandle.clientWidth/2+d.panel.offsetLeft):k===d.mask||k===d.panel?a.x+d.panel.offsetLeft:k===d.rightHandle&&d.currentHandle===d.leftHandle?a.x+(d.rightHandle.offsetLeft+d.rightHandle.clientWidth/2+d.panel.offsetLeft):k===d.leftHandle&&d.currentHandle===d.rightHandle?a.x+d.panel.offsetLeft:
1078
- a.x+("canvasjs-chart-toolbar"===k.parentElement.className?k.offsetParent.offsetLeft+k.offsetLeft-d.stockChart._chartsPlotAreaX1:k.parentElement.parentElement.parentElement===d.navigator.panel?k.offsetLeft:k.offsetLeft-d.stockChart._chartsPlotAreaX1);var h=a.x-d.startPosition.x;if(0!==h){k=d.panel.offsetLeft;var c=d.panel.clientWidth;0<u&&(k=Math.max(d.startLeft+u*h,d._left));d.panMode||(c=Math.min(d.startWidth-u*h,d.fullWidth),u*h>d.startWidth?(k=0<u?d.startLeft+d.startWidth:Math.max(a.x,d._left),
1079
- c=(0<u?a.x:d.startLeft)-parseFloat(k)):0>u&&(k=d.startLeft));k+c<=d._left+d.fullWidth&&(2<Math.abs(d.startLeft-k)||2<Math.abs(d.startWidth-parseFloat(c)))&&(0<u&&(d.left=k,d.panel.style.left=d.left+"px"),d.panMode||(d.panel.style.width=d.width=c+"px"),f(t)||(u=t.convertPixelToValue(Math.max(t.bounds.x1,parseFloat(k))),t=t.convertPixelToValue(parseFloat(k)+parseFloat(c)),d.stockChart.sessionVariables._axisXMin=u,d.stockChart.sessionVariables._axisXMax=t,d.stockChart.rangeSelector&&!d.panMode&&d.stockChart.rangeSelector.resetRangeButtons(),
1080
- d.stockChart._rangeEventParameter={stockChart:d.stockChart,source:"navigator",index:null,minimum:u,maximum:t},d.navigator.dynamicUpdate?(d.stockChart._rangeEventParameter.type="rangeChanging",d.stockChart.dispatchEvent("rangeChanging",d.stockChart._rangeEventParameter,d.stockChart),d.stockChart._syncCharts(u,t),d.stockChart._rangeEventParameter.type="rangeChanged",d.stockChart.dispatchEvent("rangeChanged",d.stockChart._rangeEventParameter,d.stockChart)):d.navigator._updateSlider(d.stockChart.sessionVariables._axisXMin,
1081
- d.stockChart.sessionVariables._axisXMax)))}}else d.navigator.chart.overlaidCanvas.style.cursor=d.navigator.chart.container.style.cursor=d.navigator.panel.style.cursor="auto"},this.navigator.stockChart.allDOMEventHandlers);D(this.navigator.stockChart.container,window.navigator.msPointerEnabled?"MSPointerMove":"touchmove",function(f){d.stockChart._touchEventHandler(f)},this.navigator.stockChart.allDOMEventHandlers)};M.prototype._initialize=function(){var d=this,k;this._updateOptions();aa&&(this.eventsAttached||
1082
- (this._attachEvents(),this.eventsAttached=!0),this.handleWidth=this.options.handleWidth?this.handleWidth:8,this.handleHeight=this.options.handleHeight?Math.min(this.navigator.height,this.options.handleHeight):0.25*this.navigator.height,this.leftHandle?O(this.leftHandle,{height:this.navigator.height+"px",width:this.handleWidth+10+"px",position:"absolute",left:"-"+(this.handleWidth/2+8)+"px",top:0,cursor:"ew-resize",borderStyle:"solid",borderWidth:this.handleBorderThickness+"px",borderColor:"transparent",
1083
- outline:"none",padding:0,backgroundColor:"white",filter:"alpha(opacity = 0)",opacity:0,color:"transparent",fontSize:"12px",fontFamily:"Arial",userSelect:"none",MozUserSelect:"none",WebkitUserSelect:"none",zIndex:999}):(this.leftHandle=w("button","canvasjs-slider-handle","button"),this.leftHandle.innerHTML="||",O(this.leftHandle,{height:this.navigator.height+"px",width:this.handleWidth+10+"px",position:"absolute",left:"-"+(this.handleWidth/2+8)+"px",top:0,cursor:"ew-resize",borderStyle:"solid",borderWidth:this.handleBorderThickness+
1084
- "px",borderColor:"transparent",outline:"none",padding:0,backgroundColor:"white",filter:"alpha(opacity = 0)",opacity:0,color:"transparent",fontSize:"12px",fontFamily:"Arial",userSelect:"none",MozUserSelect:"none",WebkitUserSelect:"none",zIndex:999}),this.panel.appendChild(this.leftHandle),this.initHandle(this.leftHandle,1)),this.rightHandle?O(this.rightHandle,{height:this.navigator.height+"px",width:this.handleWidth+10+"px",position:"absolute",right:"-"+(this.handleWidth/2+8)+"px",top:0,cursor:"ew-resize",
1085
- borderStyle:"solid",borderWidth:this.handleBorderThickness+"px",borderColor:"transparent",outline:"none",padding:"0px",backgroundColor:"white",filter:"alpha(opacity = 0)",opacity:0,color:"transparent",fontSize:"12px",fontFamily:"Arial",userSelect:"none",MozUserSelect:"none",WebkitUserSelect:"none",msUserSelect:"none",zIndex:"999"}):(this.rightHandle=w("button","canvasjs-slider-handle","button"),this.rightHandle.innerHTML="||",O(this.rightHandle,{height:this.navigator.height+"px",width:this.handleWidth+
1086
- 10+"px",position:"absolute",right:"-"+(this.handleWidth/2+8)+"px",top:0,cursor:"ew-resize",borderStyle:"solid",borderWidth:this.handleBorderThickness+"px",borderColor:"transparent",outline:"none",padding:"0px",backgroundColor:"white",filter:"alpha(opacity = 0)",opacity:0,color:"transparent",fontSize:"12px",fontFamily:"Arial",userSelect:"none",MozUserSelect:"none",WebkitUserSelect:"none",msUserSelect:"none",zIndex:"999"}),this.panel.appendChild(this.rightHandle),this.initHandle(this.rightHandle,-1)),
1087
- O(this.panel,{position:"absolute",height:this.navigator.height+"px",width:"100%",cursor:"move",backgroundColor:"white",filter:"alpha(opacity = 0)",opacity:0}),this.fullWidth=this.panel.clientWidth,this._left=this.navigator.panel.offsetLeft,D(document,"mousedown",function(f){if(d.stockChart.rangeSelector&&d.stockChart.rangeSelector.inputFields&&d.stockChart.rangeSelector.inputFields.enabled)for(var k=0;k<d.stockChart.rangeSelector.inputFields.elements.length;k++)f.target!=d.stockChart.rangeSelector.inputFields.elements[k]&&
1088
- d.stockChart.rangeSelector.inputFields.elements[k].focused&&d.stockChart.rangeSelector.inputFields.elements[k].blur()},this.navigator.stockChart.allDOMEventHandlers),D(document,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(d){a:{var f=d.changedTouches,f=f?f[0]:d,a="";switch(d.type){case "touchstart":case "MSPointerDown":a="mousedown";break;case "touchmove":case "MSPointerMove":a="mousemove";break;case "touchend":case "MSPointerUp":a="mouseup";break;default:break a}d=document.createEvent("MouseEvent");
1089
- d.initMouseEvent(a,!0,!0,window,1,f.screenX,f.screenY,f.clientX,f.clientY,!1,!1,!1,!1,0,null);f.target.dispatchEvent(d)}},this.navigator.stockChart.allDOMEventHandlers),D(document,"mouseup",function(t){d.panMode=!1;d.navigator.stockChart.isDrag=!1;if(d.stockChart.navigatorClicked){t=Math.min(d.stockChart.sessionVariables._axisXMin,d.stockChart.sessionVariables._axisXMax);var r=Math.max(d.stockChart.sessionVariables._axisXMin,d.stockChart.sessionVariables._axisXMax);f(d.stockChart._rangeEventParameter)&&
1090
- (d.stockChart._rangeEventParameter={stockChart:d.stockChart,source:"navigator",index:null,minimum:t,maximum:r});if(2<Math.abs(d.startLeft-d.left)||2<Math.abs(d.startWidth-parseFloat(d.width))){d.navigator.dynamicUpdate||(d.stockChart._rangeEventParameter.type="rangeChanging",d.stockChart.dispatchEvent("rangeChanging",d.stockChart._rangeEventParameter,d.stockChart));for(var a=0;a<d.stockChart.charts.length;a++){k=d.stockChart.charts[a];k.toolTip&&k.toolTip.enabled&&k.toolTip.hide();for(var h=0;h<k.axisX.length;h++)k.axisX[h].setViewPortRange(t,
1091
- r);for(h=0;h<k.axisX2.length;h++)k.axisX2[h].setViewPortRange(t,r);k.render()}d.stockChart.rangeSelector&&(d.stockChart.rangeSelector.enabled&&d.stockChart.rangeSelector.inputFields&&d.stockChart.rangeSelector.inputFields.enabled)&&d.stockChart.rangeSelector._updateInputFields(t,r);d.navigator.dynamicUpdate||(d.stockChart._rangeEventParameter.type="rangeChanged",d.stockChart.dispatchEvent("rangeChanged",d.stockChart._rangeEventParameter,d.stockChart))}}d.stockChart.navigatorClicked=d.currentHandle=
1092
- d.startPosition=d.startWidth=d.startLeft=null},this.navigator.stockChart.allDOMEventHandlers),D(document,window.navigator.msPointerEnabled?"MSPointerUp":"touchend",function(t){d.panMode=!1;d.navigator.stockChart.isDrag=!1;if(d.stockChart.navigatorClicked){t=Math.min(d.stockChart.sessionVariables._axisXMin,d.stockChart.sessionVariables._axisXMax);var r=Math.max(d.stockChart.sessionVariables._axisXMin,d.stockChart.sessionVariables._axisXMax);f(d.stockChart._rangeEventParameter)&&(d.stockChart._rangeEventParameter=
1093
- {stockChart:d.stockChart,source:"navigator",index:null,minimum:t,maximum:r});d.navigator.dynamicUpdate||(d.stockChart._rangeEventParameter.type="rangeChanging",d.stockChart.dispatchEvent("rangeChanging",d.stockChart._rangeEventParameter,d.stockChart));for(var a=0;a<d.stockChart.charts.length;a++){k=d.stockChart.charts[a];k.toolTip&&k.toolTip.enabled&&k.toolTip.hide();for(var h=0;h<k.axisX.length;h++)k.axisX[h].setViewPortRange(t,r);for(h=0;h<k.axisX2.length;h++)k.axisX2[h].setViewPortRange(t,r);k.render()}d.stockChart.rangeSelector&&
1094
- (d.stockChart.rangeSelector.enabled&&d.stockChart.rangeSelector.inputFields&&d.stockChart.rangeSelector.inputFields.enabled)&&d.stockChart.rangeSelector._updateInputFields(t,r);d.navigator.dynamicUpdate||(d.stockChart._rangeEventParameter.type="rangeChanged",d.stockChart.dispatchEvent("rangeChanged",d.stockChart._rangeEventParameter,d.stockChart))}d.stockChart.navigatorClicked=d.currentHandle=d.startPosition=d.startWidth=d.startLeft=null},this.navigator.stockChart.allDOMEventHandlers))};M.prototype.initHandle=
1095
- function(d,f){var k=this;d&&(D(d,"mousedown",function(d){k.stockChart.navigatorClicked=!0;k.currentHandle=this;k.startPosition=Aa(d);d.target===k.currentHandle?k.startPosition.x+=k.currentHandle.offsetLeft+k.currentHandle.clientWidth/2+k.panel.offsetLeft:d.target===k.panel&&(k.startPosition.x+=k.panel.offsetLeft);k.startWidth=k.panel.clientWidth;k.startLeft=k.panel.offsetLeft;d.preventDefault&&d.preventDefault();d.stopPropagation&&d.stopPropagation()},this.navigator.stockChart.allDOMEventHandlers),
1096
- D(d,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(d){k.stockChart._touchEventHandler(d)},this.navigator.stockChart.allDOMEventHandlers))};ga(R,$);R.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("verticalAlign");this.updateOption("horizontalAlign");this.updateOption("width");this.updateOption("height");this.updateOption("label");this.updateOption("selectedRangeButtonIndex")};R.prototype._initialize=function(){var d=0;this._updateOptions();
1097
- this._label={};this.buttons=[];if(aa&&this.enabled){if(this.options.buttons)for(var k=0;k<this.options.buttons.length;k++)this.buttons.push(new Q(this.stockChart,k,this.options.buttons[k]));else{for(k=0;6>k;k++)this.buttons.push(new Q(this.stockChart,k));this.buttonLabels="1m 3m 6m YTD 1y All".split(" ")}this._wrapElements=!1;var t=this.stockChart.layoutManager.getFreeSpace(),r=t.x1,k=t.y1;this.width=this.options.width?this.width:t.width;f(this.buttonStyle.options.labelFontSize)&&(this.buttonStyle.labelFontSize=
1098
- this.stockChart.getAutoFontSize(this.buttonStyle.labelFontSize));this.rangeButtonsWidth=0;this.buttonStyle.maxWidth=this.buttonStyle.options.maxWidth?this.buttonStyle.options.maxWidth:this.stockChart.width/this.buttons.length;if(this.buttons&&0<this.buttons.length){var a=new ma(this.ctx,{x:0,y:0,backgroundColor:this.stockChart.backgroundColor,borderThickness:0,cornerRadius:0,maxWidth:0.2*this.stockChart.width,maxHeight:2*this.buttonStyle.labelFontSize,angle:0,padding:{left:5,right:5,top:2,bottom:2},
1099
- text:f(this.stockChart.options.culture)||f(this.stockChart._cultureInfo.rangeSelector.rangeText)?this.label:this.stockChart._cultureInfo.rangeSelector.rangeText,horizontalAlign:"left",fontSize:this.buttonStyle.labelFontSize,fontFamily:this.buttonStyle.labelFontFamily,fontWeight:this.buttonStyle.labelFontWeight,fontColor:this.buttonStyle.labelFontColor,fontStyle:this.buttonStyle.labelFontStyle,textBaseline:"middle"});this._label.textBlock=a}for(k=0;k<this.buttons.length;k++){var h=this.buttons[k];
1100
- h._index=k;a=new ma(this.ctx,{x:0,y:0,backgroundColor:this.buttonStyle.backgroundColor,borderColor:this.buttonStyle.borderColor,borderThickness:this.buttonStyle.borderThickness,cornerRadius:0,maxWidth:this.buttonStyle.options.width?this.buttonStyle.width:this.buttonStyle.maxWidth,maxHeight:2*this.buttonStyle.labelFontSize,angle:0,padding:this.buttonStyle.padding,text:this.options.buttons&&this.options.buttons.length?f(h.label)?"":h.label:this.buttonLabels[k],horizontalAlign:"center",textAlign:"center",
1101
- fontSize:this.buttonStyle.labelFontSize,fontFamily:this.buttonStyle.labelFontFamily,fontWeight:this.buttonStyle.labelFontWeight,fontColor:this.buttonStyle.labelFontColor,fontStyle:this.buttonStyle.labelFontStyle,textBaseline:"middle"});h.state=f(this.selectedRangeButtonIndex)||this.selectedRangeButtonIndex!==k?"off":"on";h.textBlock=a;h.bounds={x1:null,x2:null,y1:null,y2:null,width:null,height:null};a.measureText();this.rangeButtonsWidth+=a.width+this.buttonStyle.spacing;this.rangeButtonsHeight=a.height;
1102
- d=d<a.height?a.height:d;h=this.buttons[k];h.id=++this.stockChart._eventManager.lastObjectId;this.stockChart._eventManager.objectMap[h.id]={id:h.id,objectType:"rangeButton",rangeButtonIndex:k}}this.height<this.inputFieldsHeight+2*this.inputFields.style.borderThickness&&(this.height=this.inputFieldsHeight+2*this.inputFields.style.borderThickness);this.height<d+2*this.buttonStyle.borderThickness+5&&(this.height=d+2*this.buttonStyle.borderThickness+5);this._label&&(this._label.textBlock&&this.rangeButtonsWidth&&
1103
- this.inputFieldsWidth)&&this.rangeButtonsWidth+this._label.textBlock.measureText().width+this.inputFieldsWidth>=this.stockChart.width&&(this.height=this.options.height?this.height:2*this.height,this._wrapElements=!0);"bottom"===this.verticalAlign?(k=t.y2-this.height,d="bottom"):(k=t.y1,d="top");"left"===this.horizontalAlign?r=t.x1+2:"center"===this.horizontalAlign?r=t.x1+t.width/2-this.width/2:"right"===this.horizontalAlign&&(r=t.x2-2-this.width);this.stockChart.layoutManager.registerSpace(d,{width:this.width,
1104
- height:this.height});this.bounds={x1:r,y1:k,x2:r+this.width,y2:k+this.height,width:this.width,height:this.height};for(k=0;k<this.buttons.length;k++)this.buttons[k]._initialize(k)}};R.prototype.render=function(){var d;this.setButtonsLayout();ba(this.ctx,this.bounds.x1,this.bounds.y1,this.bounds.x2,this.bounds.y2,this.stockChart.backgroundColor,0,null,0,0,0,0,1);this._label&&this._label.textBlock&&this._label.textBlock.render(!0);for(d=0;d<this.buttons.length;d++)this.buttons[d].enabled||(this.buttons[d].textBlock.backgroundColor=
1105
- this.buttons[d].backgroundColorDisabled,this.buttons[d].textBlock.borderColor=this.buttons[d].backgroundColorDisabled),this.buttons[d].render(!0);this.inputFields&&this.inputFields.enabled&&this.renderInputFields(!0)};R.prototype.setButtonsLayout=function(){var d,f,k=this.bounds.x1+5,r,a;this._label&&(this._label.textBlock&&0<this.buttons.length)&&(this._label.textBlock.x=k,this._label.textBlock.y=a=this.bounds.y1+this._label.textBlock.measureText().height/2+2*this.buttons[0].textBlock.borderThickness,
1106
- this._label.bounds={x1:k,y1:a-this._label.textBlock.fontSize/2,x2:k+this._label.textBlock.measureText().width,y2:a+this._label.textBlock.measureText().height,width:this._label.textBlock.measureText().width,height:this._label.textBlock.measureText().height},k+=this._label.bounds.width);for(d=0;d<this.buttons.length;d++)f=this.buttons[d],f.textBlock.width=f.textBlock.maxWidth=this.buttonStyle.width=this.buttonStyle.options.width?this.buttonStyle.width:f.textBlock.width,r=k+f.textBlock.width,f.textBlock.x=
1107
- f.bounds.x1=1===f.textBlock.borderThickness%2?(k<<0)+0.5:k,f.bounds.x2=r,a=1===f.textBlock.borderThickness%2?this.bounds.y1+f.textBlock.height/2+2*f.textBlock.borderThickness<<0.5:this.bounds.y1+f.textBlock.height/2+2*f.textBlock.borderThickness,f.textBlock.y=a,f.bounds.y1=a-f.textBlock.height/2,f.bounds.y2=f.bounds.y1+f.textBlock.height,f.bounds.width=r-k,f.bounds.height=f.bounds.y2-f.bounds.y1,k=r+this.buttonStyle.spacing,f.textBlock.maxWidth=this.buttonStyle.maxWidth};R.prototype.resetRangeButtons=
1108
- function(){for(var d=0;d<this.buttons.length;d++)this.buttons[d].enabled&&(this.buttons[d].state="off",this.buttons[d].textBlock.backgroundColor=this.buttonStyle.backgroundColor,this.buttons[d].textBlock.fontColor=this.buttonStyle.labelFontColor,this.buttons[d].textBlock.fontWeight=this.buttonStyle.labelFontWeight,this.buttons[d].textBlock.render(!0))};R.prototype.renderInputFields=function(){this.inputFields._textBlocks[0].text="dateTime"===this.inputFields.valueType&&isFinite(this.inputFields.startValue)?
1109
- ea(this.inputFields.startValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo):da(this.inputFields.startValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo);this.inputFields._textBlocks[1].text="dateTime"===this.inputFields.valueType&&isFinite(this.inputFields.endValue)?ea(this.inputFields.endValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo):da(this.inputFields.endValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo);this.inputFields._labels[0].text=
1110
- f(this.stockChart._cultureInfo.rangeSelector.fromText)?"From":this.stockChart._cultureInfo.rangeSelector.fromText;this.inputFields._labels[1].text=f(this.stockChart._cultureInfo.rangeSelector.toText)?"To":this.stockChart._cultureInfo.rangeSelector.toText;var d=0,k=!0;if(this.stockChart.title&&this.stockChart.title.text&&("top"===this.stockChart.title.verticalAlign||"right"===this.stockChart.title.horizontalAlign&&"center"===this.stockChart.title.verticalAlign&&this.stockChart.exportEnabled)||"bottom"===
1111
- this.verticalAlign)k=!1;if(this.stockChart.subtitles)for(var r=0;r<this.stockChart.subtitles.length;r++)this.stockChart.subtitles[r]&&(this.stockChart.subtitles[r].text&&("top"===this.stockChart.subtitles[r].verticalAlign||"right"===this.stockChart.subtitles[r].horizontalAlign&&"center"===this.stockChart.subtitles[r].verticalAlign&&this.stockChart.exportEnabled))&&(k=!1);for(r=this.inputFields._textBlocks.length-1;0<=r;r--){var u=this.inputFields._textBlocks[r],a=u.measureText();u._width=this.inputFields.style.options.width?
1112
- this.inputFields.style.width:Math.abs(a.width-u._width)<=("dateTime"===this.inputFields.valueType?10:5)?u._width:a.width+10;d+=u._width+this.inputFields.style.spacing;this.inputFields.elements[r].style.width=u._width-this.inputFields.style.spacing-2*this.inputFields.style.borderThickness-5+"px";u.x=u.bounds.x1=1===u.borderThickness%2?(this.bounds.x2-d-(this.stockChart.exportEnabled&&k?40:0)<<0)+0.5:this.bounds.x2-d-(this.stockChart.exportEnabled&&k?40:0);u.bounds.x2=u.bounds.x1+u._width;this.inputFields.elements[r].style.left=
1113
- this.bounds.x2-d-(this.stockChart.exportEnabled&&k?40:0)+this.inputFields.style.borderThickness+"px";d+=this.inputFields._labels[r].measureText().width;this.inputFields._labels[r].x=this.inputFields._labels[r].bounds.x1=this.bounds.x2-d-(this.stockChart.exportEnabled&&k?40:0);this.inputFields._labels[r].bounds.x2=this.inputFields._labels[r].bounds.x1+this.inputFields._labels[r].measureText().width;u.width=u._width;u.y=1===u.borderThickness%2?(this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+
1114
- 10:this.bounds.y1)+a.height/2+2*u.borderThickness<<0.5:(this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+10:this.bounds.y1)+a.height/2+2*u.borderThickness;this.inputFields._labels[r].y=(this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+10:this.bounds.y1)+a.height/2+2*u.borderThickness;u.bounds.y1=this.inputFields._labels[r].bounds.y1=u.y-a.height/2+2*u.borderThickness;u.bounds.y2=this.inputFields._labels[r].bounds.y2=u.bounds.y1+a.height;this.inputFields.elements[r].style.top=this.inputFields._labels[r].bounds.y1+
1115
- "px";u.render(!0);this.inputFields._labels[r].render(!0)}};R.prototype._updateInputFields=function(d,f){!this.inputFields.elements[0].focused&&isFinite(d)&&(this.inputFields.elements[0].value="dateTime"===this.inputFields.valueType?ea(d,"YYYY-MM-DD"):da(d,this.inputFields.valueFormatString));!this.inputFields.elements[1].focused&&isFinite(f)&&(this.inputFields.elements[1].value="dateTime"===this.inputFields.valueType?ea(f,"YYYY-MM-DD"):da(f,this.inputFields.valueFormatString));for(var k=0;k<this.inputFields.elements.length;k++)this.inputFields.elements[k].focused&&
1116
- this.inputFields.elements[k].focus();this.inputFields.startValue=d;this.inputFields.endValue=f;this.render()};ga(Q,$);Q.prototype._updateOptions=function(){this.updateOption("style");this.updateOption("label");this.updateOption("range");this.updateOption("rangeType")};Q.prototype._initialize=function(d){this._updateOptions();var k="1m 3m 6m YTD 1y All".split(" "),r=[1,3,6,null,1,null],u="month month month ytd year all".split(" ");this.range="undefined"!==typeof this.options.range?this.range:f(r[d])?
1117
- null:r[d];this.rangeType="undefined"!==typeof this.options.rangeType?this.rangeType:u[d];this.label=this.textBlock.text=f(this.options.label)?k[d]:this.label};Q.prototype.render=function(){this.textBlock.render(!0)};ga(T,$);T.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("startValue");this.updateOption("endValue");this.updateOption("valueType");this.updateOption("valueFormatString")};T.prototype._initialize=function(){this._updateOptions();f(this.style.options.fontSize)&&
1118
- (this.style.fontSize=this.stockChart.getAutoFontSize(this.style.fontSize));if(this.enabled){for(var d=0;d<this.elements.length;d++)this.elements[d].style.position="absolute",this.elements[d].style.display=this.elements[d].focused?"inline":"none",this.elements[d].style.backgroundColor=this.style.backgroundColor,this.elements[d].style.border="none",this.elements[d].style.outline="none",this.elements[d].style.outlineOffset=0,this.elements[d].style.textAlign="center",this.elements[d].style.color=this.style.fontColor,
1119
- this.elements[d].style.fontSize=this.elements[d].style.height=this.style.fontSize+"px",this.elements[d].style.fontStyle=this.style.fontStyle,this.elements[d].style.fontFamily=this.style.fontFamily,this.elements[d].style.fontWeight=this.style.fontWeight,this.elements[d].style.lineHeight=1,isNaN(this.style.padding)?(this.elements[d].style.paddingTop=this.style.padding.top+"px",this.elements[d].style.paddingRight=this.style.padding.right+"px",this.elements[d].style.paddingBottom=this.style.padding.bottom+
1120
- "px",this.elements[d].style.paddingLeft=this.style.padding.left+"px"):this.elements[d].style.padding=this.style.padding+"px",this.elements[d].style.mozAppearance=this.elements[d].style.webkitAppearance=this.elements[d].style.appearance="none",this.elements[d].style.webkitBorderRadius=0,this.elements[d].style.mozBorderRadius=0,this.elements[d].style.borderRadius=0,this.elements[d].style.boxSizing="content-box";this.parent=this.rangeSelector=this.stockChart.rangeSelector}};ga(V,$);V.prototype._updateOptions=
1121
- function(){this.updateOption("backgroundColor");this.updateOption("backgroundColorOnHover");this.updateOption("backgroundColorOnSelect");this.updateOption("borderColor");this.updateOption("borderThickness");this.updateOption("labelFontColor");this.updateOption("labelFontColorOnHover");this.updateOption("labelFontSize");this.updateOption("labelFontStyle");this.updateOption("labelFontFamily");this.updateOption("labelFontWeight");this.updateOption("width");this.updateOption("maxWidth");this.updateOption("padding");
1122
- this.updateOption("spacing");this.updateOption("cursor")};ga(X,$);X.prototype._updateOptions=function(){this.updateOption("backgroundColor");this.updateOption("borderColor");this.updateOption("borderThickness");this.updateOption("borderColorOnFocus");this.updateOption("fontColor");this.updateOption("fontSize");this.updateOption("fontStyle");this.updateOption("fontFamily");this.updateOption("fontWeight");this.updateOption("width");this.updateOption("maxWidth");this.updateOption("padding");this.updateOption("spacing");
1123
- this.updateOption("cursor")};return F}();T.version="v1.8.1 GA";window.CanvasJS&&(T&&(!window.CanvasJS.StockChart&&window.CanvasJS.Chart)&&(window.CanvasJS.StockChart=T),T&&!window.CanvasJS.Chart&&(window.CanvasJS.Chart=Ja,window.CanvasJS.StockChart=T))})();
1052
+ function(){return++this.lastObjectId};P.prototype.mouseEventHandler=function(d){if("mousemove"===d.type||"click"===d.type){var f=[],k=Aa(d),v=null;if((v=this.stockChart.getObjectAtXY(k.x,k.y,!1))&&"undefined"!==typeof this.objectMap[v])if(v=this.objectMap[v],"rangeButton"===v.objectType){var a=this.stockChart.rangeSelector.buttons[v.rangeButtonIndex];v.eventParameter={x:k.x,y:k.y,rangeButton:a,rangeButtonIndex:v.rangeButtonIndex,stockChart:this.stockChart};v.eventContext={context:this.stockChart.rangeSelector,
1053
+ userContext:a,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"};f.push(v)}else"inputFields"===v.objectType&&(a=this.stockChart.rangeSelector.inputFields._textBlocks[v.inputFieldIndex],v.eventParameter={x:k.x,y:k.y,inputField:a,inputFieldIndex:v.inputFieldIndex,stockChart:this.stockChart},v.eventContext={context:this.stockChart.rangeSelector,userContext:a,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"},f.push(v));a=[];for(k=0;k<this.mouseoveredObjectMaps.length;k++){for(var h=
1054
+ !0,v=0;v<f.length;v++)if(f[v].id===this.mouseoveredObjectMaps[k].id){h=!1;break}h?this.fireEvent(this.mouseoveredObjectMaps[k],"mouseout",d):a.push(this.mouseoveredObjectMaps[k])}this.mouseoveredObjectMaps=a;for(k=0;k<f.length;k++){a=!1;for(v=0;v<this.mouseoveredObjectMaps.length;v++)if(f[k].id===this.mouseoveredObjectMaps[v].id){a=!0;break}a||(this.fireEvent(f[k],"mouseover",d),this.mouseoveredObjectMaps.push(f[k]));"click"===d.type?this.fireEvent(f[k],"click",d):"mousemove"===d.type&&this.fireEvent(f[k],
1055
+ "mousemove",d)}}};P.prototype.fireEvent=function(d,f,k){if(d&&f){var v=d.eventParameter,a=d.eventContext,h=d.eventContext.userContext;h&&(a&&h[a[f]])&&h[a[f]].call(h,v);"mouseout"!==f?h.cursor&&h.cursor!==k.target.style.cursor&&(k.target.style.cursor=h.cursor):(k.target.style.cursor=this.stockChart._defaultCursor,delete d.eventParameter,delete d.eventContext)}};ga(A,$);A.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("backgroundColor");"undefined"===typeof this.options.backgroundColor&&
1056
+ "undefined"!==typeof this.stockChart.options.backgroundColor&&(this.backgroundColor=this.stockChart.backgroundColor);this.backgroundColor||(this.backgroundColor="rgba(0, 0, 0, 0)");this.updateOption("animationEnabled");this.animationEnabled=this.animationEnabled&&r;this.updateOption("animationDuration");this.updateOption("theme");this.updateOption("verticalAlign");this.updateOption("horizontalAlign");this.updateOption("width");this.updateOption("height");this.updateOption("dynamicUpdate")};A.prototype._initialize=
1057
+ function(){this._updateOptions();var d;this.enabled&&!this.panel&&(this.panel=k("canvasjs-navigator-panel"),(d=!f(this.panel)&&this.stockChart._canvasJSContainer.contains(this.panel))||this.stockChart._canvasJSContainer.appendChild(this.panel));d=!f(this.panel)&&this.stockChart._canvasJSContainer.contains(this.panel);if(this.enabled){this.height=f(this.options.height)?0.14*this.stockChart.height:parseInt(this.options.height);d||this.stockChart._canvasJSContainer.appendChild(this.panel);var u=this.stockChart.layoutManager.getFreeSpace(),
1058
+ s=u.x1,v=u.y1;this.width=this.options.width?this.width:u.width;"top"===this.verticalAlign?(v=u.y1+2,d="top"):(v=u.y2-this.height-2,d="bottom");"left"===this.horizontalAlign?s=u.x1-2:"center"===this.horizontalAlign?s=u.x1+u.width/2-this.width/2:"right"===this.horizontalAlign&&(s=u.x2-2-this.width);this.panel.style.top=v+"px";this.panel.style.left=s+"px";this.panel.style.height=this.height+"px";this.panel.style.width=this.width+"px";this.stockChart.layoutManager.registerSpace(d,{width:this.width,height:this.height+
1059
+ 2});this.bounds={x1:s,y1:v,x2:s+this.width,y2:v+this.height}}else d&&this.stockChart._canvasJSContainer.removeChild(this.panel)};A.prototype._updateSlider=function(d,k){var s=this.chart.axisX&&this.chart.axisX.length?this.chart.axisX[0]:this.chart.axisX2[0];if(!f(s)){var v=Math.min(s.bounds.x2,Math.max(s.bounds.x1,s.convertValueToPixel(s.reversed?Math.max(d,Math.min(s.maximum,k)):Math.min(d,Math.min(s.maximum,k))))),a=Math.max(s.bounds.x1,Math.min(s.bounds.x2,s.convertValueToPixel(s.reversed?Math.min(d,
1060
+ Math.min(s.maximum,k)):Math.max(d,Math.min(s.maximum,k)))));this.slider.panel.style.left=v+"px";this.slider.left=v;this.slider.panel.style.width=a-v+"px";this.slider.width=a-v;this.slider.minimum=s.convertPixelToValue(s.reversed?a:v);this.slider.maximum=s.convertPixelToValue(s.reversed?v:a);this.chart.resetOverlayedCanvas();this.slider.maskInverted?ba(this.chart.overlaidCanvasCtx,v,0,a,this.height,this.slider.maskColor,0,this.slider.outlineColor,0,0,0,0,this.slider.maskOpacity):(ba(this.chart.overlaidCanvasCtx,
1061
+ s.bounds.x1,0,v,this.height,this.slider.maskColor,0,this.slider.outlineColor,!1,!1,!1,!1,this.slider.maskOpacity),ba(this.chart.overlaidCanvasCtx,a,0,this.width,this.height,this.slider.maskColor,0,this.slider.outlineColor,!1,!1,!1,!1,this.slider.maskOpacity));this.chart.overlaidCanvasCtx.lineWidth=this.slider.outlineThickness;this.chart.overlaidCanvasCtx.strokeStyle=this.slider.outlineColor;this.chart.overlaidCanvasCtx.save();this.chart.overlaidCanvasCtx.beginPath();0<this.slider.outlineThickness&&
1062
+ (this.slider.outlineInverted?(this.chart.overlaidCanvasCtx.moveTo(s.bounds.x1,this.height-this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(v-this.slider.outlineThickness/2<<0)+0.5:v,this.height-this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(v-this.slider.outlineThickness/2<<0)+0.5:v,this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(a-
1063
+ this.slider.outlineThickness/2<<0)+0.5:a,this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(a-this.slider.outlineThickness/2<<0)+0.5:a,this.height-this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(this.width,this.height-this.slider.outlineThickness)):(this.chart.overlaidCanvasCtx.moveTo(s.bounds.x1,this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(v-this.slider.outlineThickness/
1064
+ 2<<0)+0.5:v,this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(v-this.slider.outlineThickness/2<<0)+0.5:v,this.height-this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(a-this.slider.outlineThickness/2<<0)+0.5:a,this.height-this.slider.outlineThickness/2),this.chart.overlaidCanvasCtx.lineTo(1===this.slider.outlineThickness%2?(a-this.slider.outlineThickness/2<<0)+0.5:a,this.slider.outlineThickness/
1065
+ 2),this.chart.overlaidCanvasCtx.lineTo(this.width,this.slider.outlineThickness/2)));this.chart.overlaidCanvasCtx.stroke();this.chart.overlaidCanvasCtx.restore();ba(this.chart.overlaidCanvasCtx,1===this.slider.handleBorderThickness%2?v-this.slider.handleWidth/2<<0.5:v-this.slider.handleWidth/2<<0,1===this.slider.handleBorderThickness%2?this.height/2-this.slider.handleHeight/2<<0.5:this.height/2-this.slider.handleHeight/2<<0,1===this.slider.handleBorderThickness%2?v+this.slider.handleWidth/2<<0.5:v+
1066
+ this.slider.handleWidth/2<<0,1===this.slider.handleBorderThickness%2?this.height/2+this.slider.handleHeight/2<<0.5:this.height/2+this.slider.handleHeight/2<<0,this.slider.handleColor,this.slider.handleBorderThickness,this.slider.handleBorderColor,!1,!1,!1,!1,1);ba(this.chart.overlaidCanvasCtx,1===this.slider.handleBorderThickness%2?a-this.slider.handleWidth/2<<0.5:a-this.slider.handleWidth/2<<0,1===this.slider.handleBorderThickness%2?this.height/2-this.slider.handleHeight/2<<0.5:this.height/2-this.slider.handleHeight/
1067
+ 2<<0,1===this.slider.handleBorderThickness%2?a+this.slider.handleWidth/2<<0.5:a+this.slider.handleWidth/2<<0,1===this.slider.handleBorderThickness%2?this.height/2+this.slider.handleHeight/2<<0.5:this.height/2+this.slider.handleHeight/2<<0,this.slider.handleColor,this.slider.handleBorderThickness,this.slider.handleBorderColor,!1,!1,!1,!1,1);this.chart.overlaidCanvasCtx.lineWidth=this.slider.handleBorderThickness;this.chart.overlaidCanvasCtx.strokeStyle=this.slider.handleBorderColor;this.chart.overlaidCanvasCtx.save();
1068
+ this.chart.overlaidCanvasCtx.beginPath();this.chart.overlaidCanvasCtx.moveTo((1===this.slider.handleBorderThickness%2?(v-this.slider.handleBorderThickness/2<<0)+0.5:v)-Math.round(this.slider.handleBorderThickness),this.height/2-this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.lineTo((1===this.slider.handleBorderThickness%2?(v-this.slider.handleBorderThickness/2<<0)+0.5:v)-Math.round(this.slider.handleBorderThickness),this.height/2+this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.moveTo((1===
1069
+ this.slider.handleBorderThickness%2?(v+this.slider.handleBorderThickness/2<<0)+0.5:v)+Math.round(this.slider.handleBorderThickness),this.height/2-this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.lineTo((1===this.slider.handleBorderThickness%2?(v+this.slider.handleBorderThickness/2<<0)+0.5:v)+Math.round(this.slider.handleBorderThickness),this.height/2+this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.moveTo((1===this.slider.handleBorderThickness%2?(a-this.slider.handleBorderThickness/
1070
+ 2<<0)+0.5:a)-Math.round(this.slider.handleBorderThickness),this.height/2-this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.lineTo((1===this.slider.handleBorderThickness%2?(a-this.slider.handleBorderThickness/2<<0)+0.5:a)-Math.round(this.slider.handleBorderThickness),this.height/2+this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.moveTo((1===this.slider.handleBorderThickness%2?(a+this.slider.handleBorderThickness/2<<0)+0.5:a)+Math.round(this.slider.handleBorderThickness),this.height/
1071
+ 2-this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.lineTo((1===this.slider.handleBorderThickness%2?(a+this.slider.handleBorderThickness/2<<0)+0.5:a)+Math.round(this.slider.handleBorderThickness),this.height/2+this.slider.handleHeight/4);this.chart.overlaidCanvasCtx.stroke();this.chart.overlaidCanvasCtx.restore()}};ga(M,$);M.prototype._updateOptions=function(){this.updateOption("maskColor");this.updateOption("maskInverted");this.updateOption("maskOpacity");this.updateOption("handleColor");
1072
+ this.updateOption("handleBorderColor");this.updateOption("handleBorderThickness");this.updateOption("handleWidth");this.updateOption("handleHeight");this.updateOption("outlineColor");this.updateOption("outlineThickness");this.updateOption("outlineInverted");this.updateOption("minimum");this.updateOption("maximum")};M.prototype._attachEvents=function(){var d=this;D(this.panel,"mousedown",function(f){d.stockChart.isDrag=!0;f.target!==d.leftHandle&&f.target!==d.rightHandle&&(d.stockChart.navigatorClicked=
1073
+ !0,d.currentHandle=d.leftHandle,d.panMode=!0,d.startPosition=Aa(f),f.target===d.currentHandle?d.startPosition.x+=d.currentHandle.offsetLeft+d.currentHandle.clientWidth/2+d.panel.offsetLeft:f.target===d.panel&&(d.startPosition.x+=d.panel.offsetLeft),d.startWidth=d.panel.clientWidth,d.startLeft=d.panel.offsetLeft)},this.stockChart.allDOMEventHandlers);D(this.panel,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(f){d.stockChart._touchEventHandler(f)},this.stockChart.allDOMEventHandlers);
1074
+ D(this.navigator.panel,"mousedown",function(k){if(k.target!==d.navigator.slider.panel&&k.target!==d.leftHandle&&k.target!==d.rightHandle){d.stockChart.navigatorClicked=!0;var s=Aa(k),v,a;v=0;var h=d.navigator.chart.axisX&&d.navigator.chart.axisX.length?d.navigator.chart.axisX[0]:d.navigator.chart.axisX2[0];k=d.navigator.slider.left;f(d.startLeft)&&(d.startLeft=k);v=k+d.navigator.slider.width;a=s.x-(k+v)/2;if(s.x<k||s.x>v){var s=Math.max(0,k+a),c=Math.min(v+a,d.navigator.width);v+a>d.navigator.width&&
1075
+ (v=v+a-d.navigator.width,s-=v);0>k+a&&(v=Math.abs(k+a),c+=v);d.stockChart._rangeEventParameter={stockChart:d.stockChart,source:"navigator",index:null,minimum:h.convertPixelToValue(s),maximum:h.convertPixelToValue(c)};d.stockChart.sessionVariables._axisXMin=h.convertPixelToValue(s);d.stockChart.sessionVariables._axisXMax=h.convertPixelToValue(c);d.navigator.dynamicUpdate?(d.stockChart._rangeEventParameter.type="rangeChanging",d.stockChart.dispatchEvent("rangeChanging",d.stockChart._rangeEventParameter,
1076
+ d.stockChart),d.stockChart._syncCharts(h.convertPixelToValue(s),h.convertPixelToValue(c)),d.stockChart._rangeEventParameter.type="rangeChanged",d.stockChart.dispatchEvent("rangeChanged",d.stockChart._rangeEventParameter,d.stockChart)):d.navigator._updateSlider(d.stockChart.sessionVariables._axisXMin,d.stockChart.sessionVariables._axisXMax)}}},this.navigator.stockChart.allDOMEventHandlers);D(this.navigator.panel,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(f){d.stockChart._touchEventHandler(f)},
1077
+ this.navigator.stockChart.allDOMEventHandlers);D(this.navigator.stockChart.container,"mousemove",function(k){var s=d.navigator.chart.axisX&&d.navigator.chart.axisX.length?d.navigator.chart.axisX[0]:d.navigator.chart.axisX2[0];if(!f(d.currentHandle)&&d.startPosition){d.navigator.chart.overlaidCanvas.style.cursor=d.navigator.chart.container.style.cursor=d.navigator.panel.style.cursor="ew-resize";var v;v=d.currentHandle===d.leftHandle?1:-1;var a=Aa(k);k=k.target||k.srcElement;a.x=k===d.currentHandle?
1078
+ a.x+(d.currentHandle.offsetLeft+d.currentHandle.clientWidth/2+d.panel.offsetLeft):k===d.mask||k===d.panel?a.x+d.panel.offsetLeft:k===d.rightHandle&&d.currentHandle===d.leftHandle?a.x+(d.rightHandle.offsetLeft+d.rightHandle.clientWidth/2+d.panel.offsetLeft):k===d.leftHandle&&d.currentHandle===d.rightHandle?a.x+d.panel.offsetLeft:a.x+("canvasjs-chart-toolbar"===k.parentElement.className?k.offsetParent.offsetLeft+k.offsetLeft-d.stockChart._chartsPlotAreaX1:k.parentElement.parentElement.parentElement===
1079
+ d.navigator.panel?k.offsetLeft:k.offsetLeft-d.stockChart._chartsPlotAreaX1);var h=a.x-d.startPosition.x;if(0!==h){k=d.panel.offsetLeft;var c=d.panel.clientWidth;0<v&&(k=Math.max(d.startLeft+v*h,d._left));d.panMode||(c=Math.min(d.startWidth-v*h,d.fullWidth),v*h>d.startWidth?(k=0<v?d.startLeft+d.startWidth:Math.max(a.x,d._left),c=(0<v?a.x:d.startLeft)-parseFloat(k)):0>v&&(k=d.startLeft));k+c<=d._left+d.fullWidth&&(2<Math.abs(d.startLeft-k)||2<Math.abs(d.startWidth-parseFloat(c)))&&(0<v&&(d.left=k,d.panel.style.left=
1080
+ d.left+"px"),d.panMode||(d.panel.style.width=d.width=c+"px"),f(s)||(v=s.convertPixelToValue(Math.max(s.bounds.x1,parseFloat(k))),s=s.convertPixelToValue(parseFloat(k)+parseFloat(c)),d.stockChart.sessionVariables._axisXMin=v,d.stockChart.sessionVariables._axisXMax=s,d.stockChart.rangeSelector&&!d.panMode&&d.stockChart.rangeSelector.resetRangeButtons(),d.stockChart._rangeEventParameter={stockChart:d.stockChart,source:"navigator",index:null,minimum:v,maximum:s},d.navigator.dynamicUpdate?(d.stockChart._rangeEventParameter.type=
1081
+ "rangeChanging",d.stockChart.dispatchEvent("rangeChanging",d.stockChart._rangeEventParameter,d.stockChart),d.stockChart._syncCharts(v,s),d.stockChart._rangeEventParameter.type="rangeChanged",d.stockChart.dispatchEvent("rangeChanged",d.stockChart._rangeEventParameter,d.stockChart)):d.navigator._updateSlider(d.stockChart.sessionVariables._axisXMin,d.stockChart.sessionVariables._axisXMax)))}}else d.navigator.chart.overlaidCanvas.style.cursor=d.navigator.chart.container.style.cursor=d.navigator.panel.style.cursor=
1082
+ "auto"},this.navigator.stockChart.allDOMEventHandlers);D(this.navigator.stockChart.container,window.navigator.msPointerEnabled?"MSPointerMove":"touchmove",function(f){d.stockChart._touchEventHandler(f)},this.navigator.stockChart.allDOMEventHandlers)};M.prototype._initialize=function(){var d=this,k;this._updateOptions();aa&&(this.eventsAttached||(this._attachEvents(),this.eventsAttached=!0),this.handleWidth=this.options.handleWidth?this.handleWidth:8,this.handleHeight=this.options.handleHeight?Math.min(this.navigator.height,
1083
+ this.options.handleHeight):0.25*this.navigator.height,this.leftHandle?O(this.leftHandle,{height:this.navigator.height+"px",width:this.handleWidth+10+"px",position:"absolute",left:"-"+(this.handleWidth/2+8)+"px",top:0,cursor:"ew-resize",borderStyle:"solid",borderWidth:this.handleBorderThickness+"px",borderColor:"transparent",outline:"none",padding:0,backgroundColor:"white",filter:"alpha(opacity = 0)",opacity:0,color:"transparent",fontSize:"12px",fontFamily:"Arial",userSelect:"none",MozUserSelect:"none",
1084
+ WebkitUserSelect:"none",zIndex:999}):(this.leftHandle=w("button","canvasjs-slider-handle","button"),this.leftHandle.innerHTML="||",O(this.leftHandle,{height:this.navigator.height+"px",width:this.handleWidth+10+"px",position:"absolute",left:"-"+(this.handleWidth/2+8)+"px",top:0,cursor:"ew-resize",borderStyle:"solid",borderWidth:this.handleBorderThickness+"px",borderColor:"transparent",outline:"none",padding:0,backgroundColor:"white",filter:"alpha(opacity = 0)",opacity:0,color:"transparent",fontSize:"12px",
1085
+ fontFamily:"Arial",userSelect:"none",MozUserSelect:"none",WebkitUserSelect:"none",zIndex:999}),this.panel.appendChild(this.leftHandle),this.initHandle(this.leftHandle,1)),this.rightHandle?O(this.rightHandle,{height:this.navigator.height+"px",width:this.handleWidth+10+"px",position:"absolute",right:"-"+(this.handleWidth/2+8)+"px",top:0,cursor:"ew-resize",borderStyle:"solid",borderWidth:this.handleBorderThickness+"px",borderColor:"transparent",outline:"none",padding:"0px",backgroundColor:"white",filter:"alpha(opacity = 0)",
1086
+ opacity:0,color:"transparent",fontSize:"12px",fontFamily:"Arial",userSelect:"none",MozUserSelect:"none",WebkitUserSelect:"none",msUserSelect:"none",zIndex:"999"}):(this.rightHandle=w("button","canvasjs-slider-handle","button"),this.rightHandle.innerHTML="||",O(this.rightHandle,{height:this.navigator.height+"px",width:this.handleWidth+10+"px",position:"absolute",right:"-"+(this.handleWidth/2+8)+"px",top:0,cursor:"ew-resize",borderStyle:"solid",borderWidth:this.handleBorderThickness+"px",borderColor:"transparent",
1087
+ outline:"none",padding:"0px",backgroundColor:"white",filter:"alpha(opacity = 0)",opacity:0,color:"transparent",fontSize:"12px",fontFamily:"Arial",userSelect:"none",MozUserSelect:"none",WebkitUserSelect:"none",msUserSelect:"none",zIndex:"999"}),this.panel.appendChild(this.rightHandle),this.initHandle(this.rightHandle,-1)),O(this.panel,{position:"absolute",height:this.navigator.height+"px",width:"100%",cursor:"move",backgroundColor:"white",filter:"alpha(opacity = 0)",opacity:0}),this.fullWidth=this.panel.clientWidth,
1088
+ this._left=this.navigator.panel.offsetLeft,D(document,"mousedown",function(f){if(d.stockChart.rangeSelector&&d.stockChart.rangeSelector.inputFields&&d.stockChart.rangeSelector.inputFields.enabled)for(var k=0;k<d.stockChart.rangeSelector.inputFields.elements.length;k++)f.target!=d.stockChart.rangeSelector.inputFields.elements[k]&&d.stockChart.rangeSelector.inputFields.elements[k].focused&&d.stockChart.rangeSelector.inputFields.elements[k].blur()},this.navigator.stockChart.allDOMEventHandlers),D(document,
1089
+ window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(d){a:{var f=d.changedTouches,f=f?f[0]:d,a="";switch(d.type){case "touchstart":case "MSPointerDown":a="mousedown";break;case "touchmove":case "MSPointerMove":a="mousemove";break;case "touchend":case "MSPointerUp":a="mouseup";break;default:break a}d=document.createEvent("MouseEvent");d.initMouseEvent(a,!0,!0,window,1,f.screenX,f.screenY,f.clientX,f.clientY,!1,!1,!1,!1,0,null);f.target.dispatchEvent(d)}},this.navigator.stockChart.allDOMEventHandlers),
1090
+ D(document,"mouseup",function(s){d.panMode=!1;d.navigator.stockChart.isDrag=!1;if(d.stockChart.navigatorClicked){s=Math.min(d.stockChart.sessionVariables._axisXMin,d.stockChart.sessionVariables._axisXMax);var r=Math.max(d.stockChart.sessionVariables._axisXMin,d.stockChart.sessionVariables._axisXMax);f(d.stockChart._rangeEventParameter)&&(d.stockChart._rangeEventParameter={stockChart:d.stockChart,source:"navigator",index:null,minimum:s,maximum:r});if(2<Math.abs(d.startLeft-d.left)||2<Math.abs(d.startWidth-
1091
+ parseFloat(d.width))){d.navigator.dynamicUpdate||(d.stockChart._rangeEventParameter.type="rangeChanging",d.stockChart.dispatchEvent("rangeChanging",d.stockChart._rangeEventParameter,d.stockChart));for(var a=0;a<d.stockChart.charts.length;a++){k=d.stockChart.charts[a];k.toolTip&&k.toolTip.enabled&&k.toolTip.hide();for(var h=0;h<k.axisX.length;h++)k.axisX[h].setViewPortRange(s,r);for(h=0;h<k.axisX2.length;h++)k.axisX2[h].setViewPortRange(s,r);k.render()}d.stockChart.rangeSelector&&(d.stockChart.rangeSelector.enabled&&
1092
+ d.stockChart.rangeSelector.inputFields&&d.stockChart.rangeSelector.inputFields.enabled)&&d.stockChart.rangeSelector._updateInputFields(s,r);d.navigator.dynamicUpdate||(d.stockChart._rangeEventParameter.type="rangeChanged",d.stockChart.dispatchEvent("rangeChanged",d.stockChart._rangeEventParameter,d.stockChart))}}d.stockChart.navigatorClicked=d.currentHandle=d.startPosition=d.startWidth=d.startLeft=null},this.navigator.stockChart.allDOMEventHandlers),D(document,window.navigator.msPointerEnabled?"MSPointerUp":
1093
+ "touchend",function(s){d.panMode=!1;d.navigator.stockChart.isDrag=!1;if(d.stockChart.navigatorClicked){s=Math.min(d.stockChart.sessionVariables._axisXMin,d.stockChart.sessionVariables._axisXMax);var r=Math.max(d.stockChart.sessionVariables._axisXMin,d.stockChart.sessionVariables._axisXMax);f(d.stockChart._rangeEventParameter)&&(d.stockChart._rangeEventParameter={stockChart:d.stockChart,source:"navigator",index:null,minimum:s,maximum:r});d.navigator.dynamicUpdate||(d.stockChart._rangeEventParameter.type=
1094
+ "rangeChanging",d.stockChart.dispatchEvent("rangeChanging",d.stockChart._rangeEventParameter,d.stockChart));for(var a=0;a<d.stockChart.charts.length;a++){k=d.stockChart.charts[a];k.toolTip&&k.toolTip.enabled&&k.toolTip.hide();for(var h=0;h<k.axisX.length;h++)k.axisX[h].setViewPortRange(s,r);for(h=0;h<k.axisX2.length;h++)k.axisX2[h].setViewPortRange(s,r);k.render()}d.stockChart.rangeSelector&&(d.stockChart.rangeSelector.enabled&&d.stockChart.rangeSelector.inputFields&&d.stockChart.rangeSelector.inputFields.enabled)&&
1095
+ d.stockChart.rangeSelector._updateInputFields(s,r);d.navigator.dynamicUpdate||(d.stockChart._rangeEventParameter.type="rangeChanged",d.stockChart.dispatchEvent("rangeChanged",d.stockChart._rangeEventParameter,d.stockChart))}d.stockChart.navigatorClicked=d.currentHandle=d.startPosition=d.startWidth=d.startLeft=null},this.navigator.stockChart.allDOMEventHandlers))};M.prototype.initHandle=function(d,f){var k=this;d&&(D(d,"mousedown",function(d){k.stockChart.navigatorClicked=!0;k.currentHandle=this;k.startPosition=
1096
+ Aa(d);d.target===k.currentHandle?k.startPosition.x+=k.currentHandle.offsetLeft+k.currentHandle.clientWidth/2+k.panel.offsetLeft:d.target===k.panel&&(k.startPosition.x+=k.panel.offsetLeft);k.startWidth=k.panel.clientWidth;k.startLeft=k.panel.offsetLeft;d.preventDefault&&d.preventDefault();d.stopPropagation&&d.stopPropagation()},this.navigator.stockChart.allDOMEventHandlers),D(d,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(d){k.stockChart._touchEventHandler(d)},this.navigator.stockChart.allDOMEventHandlers))};
1097
+ ga(R,$);R.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("verticalAlign");this.updateOption("horizontalAlign");this.updateOption("width");this.updateOption("height");this.updateOption("label");this.updateOption("selectedRangeButtonIndex")};R.prototype._initialize=function(){var d=0;this._updateOptions();this._label={};this.buttons=[];if(aa&&this.enabled){if(this.options.buttons)for(var k=0;k<this.options.buttons.length;k++)this.buttons.push(new Q(this.stockChart,
1098
+ k,this.options.buttons[k]));else{for(k=0;6>k;k++)this.buttons.push(new Q(this.stockChart,k));this.buttonLabels="1m 3m 6m YTD 1y All".split(" ")}this._wrapElements=!1;var s=this.stockChart.layoutManager.getFreeSpace(),r=s.x1,k=s.y1;this.width=this.options.width?this.width:s.width;f(this.buttonStyle.options.labelFontSize)&&(this.buttonStyle.labelFontSize=this.stockChart.getAutoFontSize(this.buttonStyle.labelFontSize));this.rangeButtonsWidth=0;this.buttonStyle.maxWidth=this.buttonStyle.options.maxWidth?
1099
+ this.buttonStyle.options.maxWidth:this.stockChart.width/this.buttons.length;if(this.buttons&&0<this.buttons.length){var a=new ma(this.ctx,{x:0,y:0,backgroundColor:this.stockChart.backgroundColor,borderThickness:0,cornerRadius:0,maxWidth:0.2*this.stockChart.width,maxHeight:2*this.buttonStyle.labelFontSize,angle:0,padding:{left:5,right:5,top:2,bottom:2},text:f(this.stockChart.options.culture)||f(this.stockChart._cultureInfo.rangeSelector.rangeText)?this.label:this.stockChart._cultureInfo.rangeSelector.rangeText,
1100
+ horizontalAlign:"left",fontSize:this.buttonStyle.labelFontSize,fontFamily:this.buttonStyle.labelFontFamily,fontWeight:this.buttonStyle.labelFontWeight,fontColor:this.buttonStyle.labelFontColor,fontStyle:this.buttonStyle.labelFontStyle,textBaseline:"middle"});this._label.textBlock=a}for(k=0;k<this.buttons.length;k++){var h=this.buttons[k];h._index=k;a=new ma(this.ctx,{x:0,y:0,backgroundColor:this.buttonStyle.backgroundColor,borderColor:this.buttonStyle.borderColor,borderThickness:this.buttonStyle.borderThickness,
1101
+ cornerRadius:0,maxWidth:this.buttonStyle.options.width?this.buttonStyle.width:this.buttonStyle.maxWidth,maxHeight:2*this.buttonStyle.labelFontSize,angle:0,padding:this.buttonStyle.padding,text:this.options.buttons&&this.options.buttons.length?f(h.label)?"":h.label:this.buttonLabels[k],horizontalAlign:"center",textAlign:"center",fontSize:this.buttonStyle.labelFontSize,fontFamily:this.buttonStyle.labelFontFamily,fontWeight:this.buttonStyle.labelFontWeight,fontColor:this.buttonStyle.labelFontColor,fontStyle:this.buttonStyle.labelFontStyle,
1102
+ textBaseline:"middle"});h.state=f(this.selectedRangeButtonIndex)||this.selectedRangeButtonIndex!==k?"off":"on";h.textBlock=a;h.bounds={x1:null,x2:null,y1:null,y2:null,width:null,height:null};a.measureText();this.rangeButtonsWidth+=a.width+this.buttonStyle.spacing;this.rangeButtonsHeight=a.height;d=d<a.height?a.height:d;h=this.buttons[k];h.id=++this.stockChart._eventManager.lastObjectId;this.stockChart._eventManager.objectMap[h.id]={id:h.id,objectType:"rangeButton",rangeButtonIndex:k}}this.height<
1103
+ this.inputFieldsHeight+2*this.inputFields.style.borderThickness&&(this.height=this.inputFieldsHeight+2*this.inputFields.style.borderThickness);this.height<d+2*this.buttonStyle.borderThickness+5&&(this.height=d+2*this.buttonStyle.borderThickness+5);this._label&&(this._label.textBlock&&this.rangeButtonsWidth&&this.inputFieldsWidth)&&this.rangeButtonsWidth+this._label.textBlock.measureText().width+this.inputFieldsWidth>=this.stockChart.width&&(this.height=this.options.height?this.height:2*this.height,
1104
+ this._wrapElements=!0);"bottom"===this.verticalAlign?(k=s.y2-this.height,d="bottom"):(k=s.y1,d="top");"left"===this.horizontalAlign?r=s.x1+2:"center"===this.horizontalAlign?r=s.x1+s.width/2-this.width/2:"right"===this.horizontalAlign&&(r=s.x2-2-this.width);this.stockChart.layoutManager.registerSpace(d,{width:this.width,height:this.height});this.bounds={x1:r,y1:k,x2:r+this.width,y2:k+this.height,width:this.width,height:this.height};for(k=0;k<this.buttons.length;k++)this.buttons[k]._initialize(k)}};
1105
+ R.prototype.render=function(){var d;this.setButtonsLayout();ba(this.ctx,this.bounds.x1,this.bounds.y1,this.bounds.x2,this.bounds.y2,this.stockChart.backgroundColor,0,null,0,0,0,0,1);this._label&&this._label.textBlock&&this._label.textBlock.render(!0);for(d=0;d<this.buttons.length;d++)this.buttons[d].enabled||(this.buttons[d].textBlock.backgroundColor=this.buttons[d].backgroundColorDisabled,this.buttons[d].textBlock.borderColor=this.buttons[d].backgroundColorDisabled),this.buttons[d].render(!0);this.inputFields&&
1106
+ this.inputFields.enabled&&this.renderInputFields(!0)};R.prototype.setButtonsLayout=function(){var d,f,k=this.bounds.x1+5,r,a;this._label&&(this._label.textBlock&&0<this.buttons.length)&&(this._label.textBlock.x=k,this._label.textBlock.y=a=this.bounds.y1+this._label.textBlock.measureText().height/2+2*this.buttons[0].textBlock.borderThickness,this._label.bounds={x1:k,y1:a-this._label.textBlock.fontSize/2,x2:k+this._label.textBlock.measureText().width,y2:a+this._label.textBlock.measureText().height,
1107
+ width:this._label.textBlock.measureText().width,height:this._label.textBlock.measureText().height},k+=this._label.bounds.width);for(d=0;d<this.buttons.length;d++)f=this.buttons[d],f.textBlock.width=f.textBlock.maxWidth=this.buttonStyle.width=this.buttonStyle.options.width?this.buttonStyle.width:f.textBlock.width,r=k+f.textBlock.width,f.textBlock.x=f.bounds.x1=1===f.textBlock.borderThickness%2?(k<<0)+0.5:k,f.bounds.x2=r,a=1===f.textBlock.borderThickness%2?this.bounds.y1+f.textBlock.height/2+2*f.textBlock.borderThickness<<
1108
+ 0.5:this.bounds.y1+f.textBlock.height/2+2*f.textBlock.borderThickness,f.textBlock.y=a,f.bounds.y1=a-f.textBlock.height/2,f.bounds.y2=f.bounds.y1+f.textBlock.height,f.bounds.width=r-k,f.bounds.height=f.bounds.y2-f.bounds.y1,k=r+this.buttonStyle.spacing,f.textBlock.maxWidth=this.buttonStyle.maxWidth};R.prototype.resetRangeButtons=function(){for(var d=0;d<this.buttons.length;d++)this.buttons[d].enabled&&(this.buttons[d].state="off",this.buttons[d].textBlock.backgroundColor=this.buttonStyle.backgroundColor,
1109
+ this.buttons[d].textBlock.fontColor=this.buttonStyle.labelFontColor,this.buttons[d].textBlock.fontWeight=this.buttonStyle.labelFontWeight,this.buttons[d].textBlock.render(!0))};R.prototype.renderInputFields=function(){this.inputFields._textBlocks[0].text="dateTime"===this.inputFields.valueType&&isFinite(this.inputFields.startValue)?ea(this.inputFields.startValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo):da(this.inputFields.startValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo);
1110
+ this.inputFields._textBlocks[1].text="dateTime"===this.inputFields.valueType&&isFinite(this.inputFields.endValue)?ea(this.inputFields.endValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo):da(this.inputFields.endValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo);this.inputFields._labels[0].text=f(this.stockChart._cultureInfo.rangeSelector.fromText)?"From":this.stockChart._cultureInfo.rangeSelector.fromText;this.inputFields._labels[1].text=f(this.stockChart._cultureInfo.rangeSelector.toText)?
1111
+ "To":this.stockChart._cultureInfo.rangeSelector.toText;var d=0,k=!0;if(this.stockChart.title&&this.stockChart.title.text&&("top"===this.stockChart.title.verticalAlign||"right"===this.stockChart.title.horizontalAlign&&"center"===this.stockChart.title.verticalAlign&&this.stockChart.exportEnabled)||"bottom"===this.verticalAlign)k=!1;if(this.stockChart.subtitles)for(var s=0;s<this.stockChart.subtitles.length;s++)this.stockChart.subtitles[s]&&(this.stockChart.subtitles[s].text&&("top"===this.stockChart.subtitles[s].verticalAlign||
1112
+ "right"===this.stockChart.subtitles[s].horizontalAlign&&"center"===this.stockChart.subtitles[s].verticalAlign&&this.stockChart.exportEnabled))&&(k=!1);for(s=this.inputFields._textBlocks.length-1;0<=s;s--){var r=this.inputFields._textBlocks[s],a=r.measureText();r._width=this.inputFields.style.options.width?this.inputFields.style.width:Math.abs(a.width-r._width)<=("dateTime"===this.inputFields.valueType?10:5)?r._width:a.width+10;d+=r._width+this.inputFields.style.spacing;this.inputFields.elements[s].style.width=
1113
+ r._width-this.inputFields.style.spacing-2*this.inputFields.style.borderThickness-5+"px";r.x=r.bounds.x1=1===r.borderThickness%2?(this.bounds.x2-d-(this.stockChart.exportEnabled&&k?40:0)<<0)+0.5:this.bounds.x2-d-(this.stockChart.exportEnabled&&k?40:0);r.bounds.x2=r.bounds.x1+r._width;this.inputFields.elements[s].style.left=this.bounds.x2-d-(this.stockChart.exportEnabled&&k?40:0)+this.inputFields.style.borderThickness+"px";d+=this.inputFields._labels[s].measureText().width;this.inputFields._labels[s].x=
1114
+ this.inputFields._labels[s].bounds.x1=this.bounds.x2-d-(this.stockChart.exportEnabled&&k?40:0);this.inputFields._labels[s].bounds.x2=this.inputFields._labels[s].bounds.x1+this.inputFields._labels[s].measureText().width;r.width=r._width;r.y=1===r.borderThickness%2?(this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+10:this.bounds.y1)+a.height/2+2*r.borderThickness<<0.5:(this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+10:this.bounds.y1)+a.height/2+2*r.borderThickness;this.inputFields._labels[s].y=
1115
+ (this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+10:this.bounds.y1)+a.height/2+2*r.borderThickness;r.bounds.y1=this.inputFields._labels[s].bounds.y1=r.y-a.height/2+2*r.borderThickness;r.bounds.y2=this.inputFields._labels[s].bounds.y2=r.bounds.y1+a.height;this.inputFields.elements[s].style.top=this.inputFields._labels[s].bounds.y1+"px";r.render(!0);this.inputFields._labels[s].render(!0)}};R.prototype._updateInputFields=function(d,f){!this.inputFields.elements[0].focused&&isFinite(d)&&(this.inputFields.elements[0].value=
1116
+ "dateTime"===this.inputFields.valueType?ea(d,"YYYY-MM-DD"):da(d,this.inputFields.valueFormatString));!this.inputFields.elements[1].focused&&isFinite(f)&&(this.inputFields.elements[1].value="dateTime"===this.inputFields.valueType?ea(f,"YYYY-MM-DD"):da(f,this.inputFields.valueFormatString));for(var k=0;k<this.inputFields.elements.length;k++)this.inputFields.elements[k].focused&&this.inputFields.elements[k].focus();this.inputFields.startValue=d;this.inputFields.endValue=f;this.render()};ga(Q,$);Q.prototype._updateOptions=
1117
+ function(){this.updateOption("style");this.updateOption("label");this.updateOption("range");this.updateOption("rangeType")};Q.prototype._initialize=function(d){this._updateOptions();var k="1m 3m 6m YTD 1y All".split(" "),r=[1,3,6,null,1,null],v="month month month ytd year all".split(" ");this.range="undefined"!==typeof this.options.range?this.range:f(r[d])?null:r[d];this.rangeType="undefined"!==typeof this.options.rangeType?this.rangeType:v[d];this.label=this.textBlock.text=f(this.options.label)?
1118
+ k[d]:this.label};Q.prototype.render=function(){this.textBlock.render(!0)};ga(T,$);T.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("startValue");this.updateOption("endValue");this.updateOption("valueType");this.updateOption("valueFormatString")};T.prototype._initialize=function(){this._updateOptions();f(this.style.options.fontSize)&&(this.style.fontSize=this.stockChart.getAutoFontSize(this.style.fontSize));if(this.enabled){for(var d=0;d<this.elements.length;d++)this.elements[d].style.position=
1119
+ "absolute",this.elements[d].style.display=this.elements[d].focused?"inline":"none",this.elements[d].style.backgroundColor=this.style.backgroundColor,this.elements[d].style.border="none",this.elements[d].style.outline="none",this.elements[d].style.outlineOffset=0,this.elements[d].style.textAlign="center",this.elements[d].style.color=this.style.fontColor,this.elements[d].style.fontSize=this.elements[d].style.height=this.style.fontSize+"px",this.elements[d].style.fontStyle=this.style.fontStyle,this.elements[d].style.fontFamily=
1120
+ this.style.fontFamily,this.elements[d].style.fontWeight=this.style.fontWeight,this.elements[d].style.lineHeight=1,isNaN(this.style.padding)?(this.elements[d].style.paddingTop=this.style.padding.top+"px",this.elements[d].style.paddingRight=this.style.padding.right+"px",this.elements[d].style.paddingBottom=this.style.padding.bottom+"px",this.elements[d].style.paddingLeft=this.style.padding.left+"px"):this.elements[d].style.padding=this.style.padding+"px",this.elements[d].style.mozAppearance=this.elements[d].style.webkitAppearance=
1121
+ this.elements[d].style.appearance="none",this.elements[d].style.webkitBorderRadius=0,this.elements[d].style.mozBorderRadius=0,this.elements[d].style.borderRadius=0,this.elements[d].style.boxSizing="content-box";this.parent=this.rangeSelector=this.stockChart.rangeSelector}};ga(V,$);V.prototype._updateOptions=function(){this.updateOption("backgroundColor");this.updateOption("backgroundColorOnHover");this.updateOption("backgroundColorOnSelect");this.updateOption("borderColor");this.updateOption("borderThickness");
1122
+ this.updateOption("labelFontColor");this.updateOption("labelFontColorOnHover");this.updateOption("labelFontSize");this.updateOption("labelFontStyle");this.updateOption("labelFontFamily");this.updateOption("labelFontWeight");this.updateOption("width");this.updateOption("maxWidth");this.updateOption("padding");this.updateOption("spacing");this.updateOption("cursor")};ga(X,$);X.prototype._updateOptions=function(){this.updateOption("backgroundColor");this.updateOption("borderColor");this.updateOption("borderThickness");
1123
+ this.updateOption("borderColorOnFocus");this.updateOption("fontColor");this.updateOption("fontSize");this.updateOption("fontStyle");this.updateOption("fontFamily");this.updateOption("fontWeight");this.updateOption("width");this.updateOption("maxWidth");this.updateOption("padding");this.updateOption("spacing");this.updateOption("cursor")};return F}();T.version="v1.8.3 GA";window.CanvasJS&&(T&&(!window.CanvasJS.StockChart&&window.CanvasJS.Chart)&&(window.CanvasJS.StockChart=T),T&&!window.CanvasJS.Chart&&
1124
+ (window.CanvasJS.Chart=Ja,window.CanvasJS.StockChart=T))})();
1124
1125
 
1125
1126
  /*
1126
1127
  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.