@canvasjs/stockcharts 1.10.13 → 1.10.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/canvasjs.stock.min.js +133 -133
- package/package.json +1 -1
package/LICENSE
CHANGED
package/canvasjs.stock.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
CanvasJS StockChart - v1.10.
|
|
2
|
+
CanvasJS StockChart - v1.10.14 GA - https://canvasjs.com/
|
|
3
3
|
Copyright 2024 fenopix
|
|
4
4
|
|
|
5
5
|
--------------------- License Information --------------------
|
|
@@ -17,14 +17,14 @@
|
|
|
17
17
|
/*tslint:disable*/
|
|
18
18
|
/*eslint-disable*/
|
|
19
19
|
/*jshint ignore:start*/
|
|
20
|
-
(function(){function ha(m
|
|
21
|
-
1
|
|
22
|
-
|
|
23
|
-
new Uint8Array(s),A=0;A<y.length;A++)s[A]=y.charCodeAt(A);g=new Blob([s.buffer],{type:"image/"+g});try{window.navigator.msSaveBlob(g,w),H=!0}catch(O){
|
|
20
|
+
(function(){function ha(m,Z){m.prototype=mb(Z.prototype);m.prototype.constructor=m;m.base=Z.prototype}function mb(m){function Z(){}Z.prototype=m;return new Z}function bb(m,Z,g){"millisecond"===g?m.setMilliseconds(m.getMilliseconds()+1*Z):"second"===g?m.setSeconds(m.getSeconds()+1*Z):"minute"===g?m.setMinutes(m.getMinutes()+1*Z):"hour"===g?m.setHours(m.getHours()+1*Z):"day"===g?m.setDate(m.getDate()+1*Z):"week"===g?m.setDate(m.getDate()+7*Z):"month"===g?m.setMonth(m.getMonth()+1*Z):"year"===g&&m.setFullYear(m.getFullYear()+
|
|
21
|
+
1*Z);return m}function pa(m,Z){var g=!1;0>m&&(g=!0,m*=-1);m=""+m;for(Z=Z?Z:1;m.length<Z;)m="0"+m;return g?"-"+m:m}function Oa(m){if(!m)return m;m=m.replace(/^\s\s*/,"");for(var Z=/\s/,g=m.length;Z.test(m.charAt(--g)););return m.slice(0,g+1)}function Ea(m){m.roundRect=function(m,g,v,H,$,y,s,A){s&&(this.fillStyle=s);A&&(this.strokeStyle=A);"undefined"===typeof $&&($=5);this.lineWidth=y;this.beginPath();this.moveTo(m+$,g);this.lineTo(m+v-$,g);this.quadraticCurveTo(m+v,g,m+v,g+$);this.lineTo(m+v,g+H-
|
|
22
|
+
$);this.quadraticCurveTo(m+v,g+H,m+v-$,g+H);this.lineTo(m+$,g+H);this.quadraticCurveTo(m,g+H,m,g+H-$);this.lineTo(m,g+$);this.quadraticCurveTo(m,g,m+$,g);this.closePath();s&&this.fill();A&&0<y&&this.stroke()}}function Ya(m,g){return m-g}function cb(m,g,w){if(m&&g&&w){w=w+"."+g;var v="image/"+g;m=m.toDataURL(v);var H=!1,$=document.createElement("a");$.download=w;$.href=m;if("undefined"!==typeof Blob&&new Blob){for(var y=m.replace(/^data:[a-z\/]*;base64,/,""),y=atob(y),s=new ArrayBuffer(y.length),s=
|
|
23
|
+
new Uint8Array(s),A=0;A<y.length;A++)s[A]=y.charCodeAt(A);g=new Blob([s.buffer],{type:"image/"+g});try{window.navigator.msSaveBlob(g,w),H=!0}catch(O){$.dataset.downloadurl=[v,$.download,$.href].join(":"),$.href=window.URL.createObjectURL(g)}}if(!H)try{event=document.createEvent("MouseEvents"),event.initMouseEvent("click",!0,!1,window,0,0,0,0,0,!1,!1,!1,!1,0,null),$.dispatchEvent?$.dispatchEvent(event):$.fireEvent&&$.fireEvent("onclick")}catch(G){g=window.open(),g.document.write("<img src='"+m+"'></img><div>Please right click on the image and save it to your device</div>"),
|
|
24
24
|
g.document.close()}}}function V(m){var g=((m&16711680)>>16).toString(16),w=((m&65280)>>8).toString(16);m=((m&255)>>0).toString(16);g=2>g.length?"0"+g:g;w=2>w.length?"0"+w:w;m=2>m.length?"0"+m:m;return"#"+g+w+m}function nb(m,g){var w=this.length>>>0,v=Number(g)||0,v=0>v?Math.ceil(v):Math.floor(v);for(0>v&&(v+=w);v<w;v++)if(v in this&&this[v]===m)return v;return-1}function g(m){return null===m||"undefined"===typeof m}function xa(m){m.indexOf||(m.indexOf=nb);return m}function ob(m){if(Ca.fSDec)m[ua("`eeDwdouMhrudods")](ua("e`u`@ohl`uhnoHuds`uhnoDoe"),
|
|
25
|
-
function(){Ca._fTWm&&Ca._fTWm(m)})}function db(m,g,w){w=w||"normal";var v=m+"_"+g+"_"+w,H=eb[v];if(isNaN(H)){try{if(!Fa){var
|
|
26
|
-
"none"}catch(s){H=Math.ceil(1.1*g)}H=Math.max(H,g);eb[v]=H}return H}function U(m,g){var w=[];if(w={solid:[],shortDash:[3,1],shortDot:[1,1],shortDashDot:[3,1,1,1],shortDashDotDot:[3,1,1,1,1,1],dot:[1,2],dash:[4,2],dashDot:[4,2,1,2],longDash:[8,2],longDashDot:[8,2,1,2],longDashDotDot:[8,2,1,2,1,2]}[m||"solid"])for(var v=0;v<w.length;v++)w[v]*=g;else w=[];return w}function A(m
|
|
27
|
-
H),w):m.attachEvent?(v=function(g){g=g||window.event;g.preventDefault=g.preventDefault||function(){g.returnValue=!1};g.stopPropagation=g.stopPropagation||function(){g.cancelBubble=!0};w.call(m,g)},m.attachEvent("on"
|
|
25
|
+
function(){Ca._fTWm&&Ca._fTWm(m)})}function db(m,g,w){w=w||"normal";var v=m+"_"+g+"_"+w,H=eb[v];if(isNaN(H)){try{if(!Fa){var $=document.body;Fa=document.createElement("span");Fa.innerHTML="";var y=document.createTextNode("Mpgyi");Fa.appendChild(y);$.appendChild(Fa)}Fa.style.display="";Q(Fa,{position:"absolute",left:"0px",top:"-20000px",padding:"0px",margin:"0px",border:"none",whiteSpace:"pre",lineHeight:"normal",fontFamily:m,fontSize:g+"px",fontWeight:w});H=Math.round(Fa.offsetHeight);Fa.style.display=
|
|
26
|
+
"none"}catch(s){H=Math.ceil(1.1*g)}H=Math.max(H,g);eb[v]=H}return H}function U(m,g){var w=[];if(w={solid:[],shortDash:[3,1],shortDot:[1,1],shortDashDot:[3,1,1,1],shortDashDotDot:[3,1,1,1,1,1],dot:[1,2],dash:[4,2],dashDot:[4,2,1,2],longDash:[8,2],longDashDot:[8,2,1,2],longDashDotDot:[8,2,1,2,1,2]}[m||"solid"])for(var v=0;v<w.length;v++)w[v]*=g;else w=[];return w}function A(m,Z,w,v,H){v=v||[];H=g(H)?pb?{passive:!1,capture:!1}:!1:H;v.push([m,Z,w,H]);return m.addEventListener?(m.addEventListener(Z,w,
|
|
27
|
+
H),w):m.attachEvent?(v=function(g){g=g||window.event;g.preventDefault=g.preventDefault||function(){g.returnValue=!1};g.stopPropagation=g.stopPropagation||function(){g.cancelBubble=!0};w.call(m,g)},m.attachEvent("on"+Z,v),v):!1}function fb(m,g,w,v){v=v||!1;if(m.removeEventListener)m.removeEventListener(g,w,v);else if(m.detachEvent)m.detachEvent("on"+g,w);else return!1}function gb(m){if(m._menuButton)m.exportEnabled?(Q(m._menuButton,{backgroundColor:m.toolbar.itemBackgroundColor,color:m.toolbar.fontColor}),
|
|
28
28
|
Ta(m._menuButton),ya(m,m._menuButton,"menu"),0>=navigator.userAgent.search("MSIE")&&m._menuButton.childNodes[0]&&Q(m._menuButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"})):za(m._menuButton);else if(m.exportEnabled&&v){var g=!1;m._menuButton=document.createElement("button");ya(m,m._menuButton,"menu");m._toolBar.appendChild(m._menuButton);A(m._menuButton,"touchstart",function(m){g=!0},m.allDOMEventHandlers);A(m._menuButton,"click",function(){"none"!==m._dropdownMenu.style.display||
|
|
29
29
|
m._dropDownCloseTime&&500>=(new Date).getTime()-m._dropDownCloseTime.getTime()||(m._dropdownMenu.style.display="block",m._menuButton.blur(),m._dropdownMenu.focus())},m.allDOMEventHandlers,!0);A(m._menuButton,"mousemove",function(){g||(Q(m._menuButton,{backgroundColor:m.toolbar.itemBackgroundColorOnHover,color:m.toolbar.fontColorOnHover}),0>=navigator.userAgent.search("MSIE")&&Q(m._menuButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},m.allDOMEventHandlers,!0);A(m._menuButton,
|
|
30
30
|
"mouseout",function(){g||(Q(m._menuButton,{backgroundColor:m.toolbar.itemBackgroundColor,color:m.toolbar.fontColor}),0>=navigator.userAgent.search("MSIE")&&Q(m._menuButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}))},m.allDOMEventHandlers,!0)}if(m.exportEnabled&&m._dropdownMenu){var w=m.theme&&-1!==m.theme.indexOf("dark")?"black":"#888888";Q(m._dropdownMenu,{backgroundColor:m.toolbar.itemBackgroundColor,color:m.toolbar.fontColor,boxShadow:"2px 2px 10px "+w});for(var w=m._dropdownMenu.childNodes,
|
|
@@ -34,16 +34,16 @@ Q(w,{padding:"12px 8px 12px 8px"}),w.innerHTML=m._cultureInfo.printText,w.style.
|
|
|
34
34
|
this.style.color=m.toolbar.fontColor)},m.allDOMEventHandlers,!0),A(w,"click",function(){m.print();za(m._dropdownMenu)},m.allDOMEventHandlers,!0),w=document.createElement("div"),Q(w,{padding:"12px 8px 12px 8px"}),w.innerHTML=m._cultureInfo.saveJPGText,w.style.backgroundColor=m.toolbar.itemBackgroundColor,w.style.color=m.toolbar.fontColor,m._dropdownMenu.appendChild(w),A(w,"touchstart",function(m){g=!0},m.allDOMEventHandlers),A(w,"mousemove",function(){g||(this.style.backgroundColor=m.toolbar.itemBackgroundColorOnHover,
|
|
35
35
|
this.style.color=m.toolbar.fontColorOnHover)},m.allDOMEventHandlers,!0),A(w,"mouseout",function(){g||(this.style.backgroundColor=m.toolbar.itemBackgroundColor,this.style.color=m.toolbar.fontColor)},m.allDOMEventHandlers,!0),A(w,"click",function(){m.exportChart({format:"jpeg",fileName:m.exportFileName});za(m._dropdownMenu)},m.allDOMEventHandlers,!0),w=document.createElement("div"),Q(w,{padding:"12px 8px 12px 8px"}),w.innerHTML=m._cultureInfo.savePNGText,w.style.backgroundColor=m.toolbar.itemBackgroundColor,
|
|
36
36
|
w.style.color=m.toolbar.fontColor,m._dropdownMenu.appendChild(w),A(w,"touchstart",function(m){g=!0},m.allDOMEventHandlers),A(w,"mousemove",function(){g||(this.style.backgroundColor=m.toolbar.itemBackgroundColorOnHover,this.style.color=m.toolbar.fontColorOnHover)},m.allDOMEventHandlers,!0),A(w,"mouseout",function(){g||(this.style.backgroundColor=m.toolbar.itemBackgroundColor,this.style.color=m.toolbar.fontColor)},m.allDOMEventHandlers,!0),A(w,"click",function(){m.exportChart({format:"png",fileName:m.exportFileName});
|
|
37
|
-
za(m._dropdownMenu)},m.allDOMEventHandlers,!0))}function hb(m,g,w){m*=ja;g*=ja;m=w.getImageData(m,g,2,2).data;g=!0;for(w=0;4>w;w++)if(m[w]!==m[w+4]|m[w]!==m[w+8]|m[w]!==m[w+12]){g=!1;break}return g?m[0]<<16|m[1]<<8|m[2]:0}function na(m,g,w){return m in g?g[m]:w[m]}function Ua(m
|
|
38
|
-
1,ja=Za/Va,m.width
|
|
37
|
+
za(m._dropdownMenu)},m.allDOMEventHandlers,!0))}function hb(m,g,w){m*=ja;g*=ja;m=w.getImageData(m,g,2,2).data;g=!0;for(w=0;4>w;w++)if(m[w]!==m[w+4]|m[w]!==m[w+8]|m[w]!==m[w+12]){g=!1;break}return g?m[0]<<16|m[1]<<8|m[2]:0}function na(m,g,w){return m in g?g[m]:w[m]}function Ua(m,Z,w,ba){v&&ib?(ba=!g(ba)&&ba?m.getContext("2d",{willReadFrequently:!0}):m.getContext("2d"),Va=ba.webkitBackingStorePixelRatio||ba.mozBackingStorePixelRatio||ba.msBackingStorePixelRatio||ba.oBackingStorePixelRatio||ba.backingStorePixelRatio||
|
|
38
|
+
1,ja=Za/Va,m.width=Z*ja,m.height=w*ja,Za!==Va&&(m.style.width=Z+"px",m.style.height=w+"px",ba.scale(ja,ja))):(m.width=Z,m.height=w)}function qb(m){if(!rb){var g=!1,w=!1;"undefined"===typeof ea.Chart.creditHref?(m.creditHref=ua("iuuqr;..b`ow`rkr/bnl."),m.creditText=ua("B`ow`rKR/bnl")):(g=m.updateOption("creditText"),w=m.updateOption("creditHref"));if(m.creditHref&&m.creditText){m._creditLink||(m._creditLink=document.createElement("a"),m._creditLink.setAttribute("class","canvasjs-chart-credit"),m._creditLink.setAttribute("title",
|
|
39
39
|
"JavaScript Charts"),Q(m._creditLink,{outline:"none",margin:"0px",position:"absolute",right:"2px",top:m.height-14+"px",color:"dimgrey",textDecoration:"none",fontSize:"11px",fontFamily:"Calibri, Lucida Grande, Lucida Sans Unicode, Arial, sans-serif"}),m._creditLink.setAttribute("tabIndex",-1),m._creditLink.setAttribute("target","_blank"));if(0===m.renderCount||g||w)m._creditLink.setAttribute("href",m.creditHref),m._creditLink.innerHTML=m.creditText;m._creditLink&&m.creditHref&&m.creditText?(m._creditLink.parentElement||
|
|
40
40
|
m._canvasJSContainer.appendChild(m._creditLink),m._creditLink.style.top=m.height-14+"px"):m._creditLink.parentElement&&m._canvasJSContainer.removeChild(m._creditLink)}}}function ra(m,g,w){La&&(this.canvasCount|=0,window.console.log(++this.canvasCount));var ba=document.createElement("canvas");ba.setAttribute("class","canvasjs-chart-canvas");Ua(ba,m,g,w);v||"undefined"===typeof G_vmlCanvasManager||G_vmlCanvasManager.initElement(ba);return ba}function Q(m,g){for(var w in g)m.style[w]=g[w]}function ya(m,
|
|
41
41
|
g,w){g.getAttribute("state")||(g.style.backgroundColor=m.toolbar.itemBackgroundColor,g.style.color=m.toolbar.fontColor,g.style.border="none",Q(g,{WebkitUserSelect:"none",MozUserSelect:"none",msUserSelect:"none",userSelect:"none"}));g.getAttribute("state")!==w&&(g.setAttribute("state",w),g.setAttribute("type","button"),Q(g,{padding:"5px 12px",cursor:"pointer","float":"left",width:"40px",height:"25px",outline:"0px",verticalAlign:"baseline",lineHeight:"0"}),g.innerHTML="<img src='"+sb[w].image+"' alt='"+
|
|
42
42
|
m._cultureInfo[w+"Text"]+"' />",Q(g.childNodes[0],{height:"95%",pointerEvents:"none"}));g.setAttribute("title",m._cultureInfo[w+"Text"])}function Ta(){for(var m=null,g=0;g<arguments.length;g++)m=arguments[g],m.style&&(m.style.display="inline")}function za(){for(var m=null,g=0;g<arguments.length;g++)(m=arguments[g])&&m.style&&(m.style.display="none")}function $a(m){if(null===m||"object"!==typeof m)return m;if(m instanceof Date)return new Date(m.getTime());Array.isArray||(Array.isArray=function(m){return"[object Array]"===
|
|
43
43
|
Object.prototype.toString.call(m)});if(Array.isArray(m)){for(var g=[],w=0;w<m.length;w++)g.push($a(m[w]));return g}g=new m.constructor;for(w in m)m.hasOwnProperty(w)&&(g[w]=$a(m[w]));return g}function Wa(m,g,w,v,H){if(null===m||"undefined"===typeof m)return"undefined"===typeof w?g:w;m=parseFloat(m.toString())*(0<=m.toString().indexOf("%")?g/100:1);"undefined"!==typeof v&&(m=Math.min(v,m),"undefined"!==typeof H&&(m=Math.max(H,m)));return!isNaN(m)&&m<=g&&0<=m?m:"undefined"===typeof w?g:w}function W(m,
|
|
44
|
-
|
|
44
|
+
Z,w,v,H){this._defaultsKey=m;this._themeOptionsKey=Z;this._index=v;this.parent=H;this._eventListeners=[];m={};this.theme&&g(this.parent)&&g(Z)&&g(v)?m=g(this.predefinedThemes[this.theme])?this.predefinedThemes.light1:this.predefinedThemes[this.theme]:this.parent&&(this.parent.themeOptions&&this.parent.themeOptions[Z])&&(null===v?m=this.parent.themeOptions[Z]:0<this.parent.themeOptions[Z].length&&(v=Math.min(this.parent.themeOptions[Z].length-1,v),m=this.parent.themeOptions[Z][v]));this.themeOptions=
|
|
45
45
|
m;this.options=w?w:{_isPlaceholder:!0};this.setOptions(this.options,m)}function Ka(m,g,w,v,H){"undefined"===typeof H&&(H=0);this._padding=H;this._x1=m;this._y1=g;this._x2=w;this._y2=v;this._rightOccupied=this._leftOccupied=this._bottomOccupied=this._topOccupied=this._padding}function ka(m,g){ka.base.constructor.call(this,"TextBlock",null,g,null,null);this.ctx=m;this._isDirty=!0;this._wrappedText=null;this._initialize()}function Xa(m,g){Xa.base.constructor.call(this,"Toolbar","toolbar",g,null,m);this.chart=
|
|
46
|
-
m;this.canvas=m.canvas;this.ctx=this.chart.ctx;this.optionsName="toolbar"}function Ha(m
|
|
46
|
+
m;this.canvas=m.canvas;this.ctx=this.chart.ctx;this.optionsName="toolbar"}function Ha(m,Z){Ha.base.constructor.call(this,"Title","title",Z,null,m);this.chart=m;this.canvas=m.canvas;this.ctx=this.chart.ctx;this.optionsName="title";if(g(this.options.margin)&&m.options.subtitles)for(var w=m.options.subtitles,v=0;v<w.length;v++)if((g(w[v].horizontalAlign)&&"center"===this.horizontalAlign||w[v].horizontalAlign===this.horizontalAlign)&&(g(w[v].verticalAlign)&&"top"===this.verticalAlign||w[v].verticalAlign===
|
|
47
47
|
this.verticalAlign)&&!w[v].dockInsidePlotArea===!this.dockInsidePlotArea){this.margin=0;break}"undefined"===typeof this.options.fontSize&&(this.fontSize=this.chart.getAutoFontSize(this.fontSize));this.height=this.width=null;this.bounds={x1:null,y1:null,x2:null,y2:null}}function Ma(m,g,w){Ma.base.constructor.call(this,"Subtitle","subtitles",g,w,m);this.chart=m;this.canvas=m.canvas;this.ctx=this.chart.ctx;this.optionsName="subtitles";this.isOptionsInArray=!0;"undefined"===typeof this.options.fontSize&&
|
|
48
48
|
(this.fontSize=this.chart.getAutoFontSize(this.fontSize));this.height=this.width=null;this.bounds={x1:null,y1:null,x2:null,y2:null}}function ab(){this.pool=[]}function Na(m){var g;m&&Pa[m]&&(g=Pa[m]);Na.base.constructor.call(this,"CultureInfo",null,g,null,null)}var La=!1,Ca={},v=!!document.createElement("canvas").getContext,ea={Chart:{width:500,height:400,zoomEnabled:!1,zoomType:"x",backgroundColor:"white",theme:"light1",animationEnabled:!1,animationDuration:1200,dataPointWidth:null,dataPointMinWidth:null,
|
|
49
49
|
dataPointMaxWidth:null,colorSet:"colorSet1",culture:"en",creditText:"CanvasJS",interactivityEnabled:!0,exportEnabled:!1,exportFileName:"Chart",rangeChanging:null,rangeChanged:null,publicProperties:{title:"readWrite",subtitles:"readWrite",toolbar:"readWrite",toolTip:"readWrite",legend:"readWrite",axisX:"readWrite",axisY:"readWrite",axisX2:"readWrite",axisY2:"readWrite",data:"readWrite",options:"readWrite",bounds:"readOnly",container:"readOnly",selectedColorSet:"readOnly"}},Title:{padding:0,text:null,
|
|
@@ -92,7 +92,7 @@ color:"#FF7300",thickness:1}],crosshair:{labelFontFamily:s,labelFontSize:G,label
|
|
|
92
92
|
tickColor:L,gridThickness:1,gridColor:L,stripLines:[{labelFontFamily:s,labelFontSize:G,labelFontColor:"#FF7300",labelFontWeight:"normal",labelBackgroundColor:null,color:"#FF7300",thickness:1}],crosshair:{labelFontFamily:s,labelFontSize:G,labelFontColor:"#000000",labelFontWeight:"normal",labelBackgroundColor:sa,color:da,thickness:1,lineDashType:"dash"},scaleBreaks:{type:"zigzag",spacing:"2%",lineColor:"#777777",lineThickness:1,lineDashType:"solid",color:"#111111"}}],legend:{fontFamily:s,fontSize:14,
|
|
93
93
|
fontColor:X,fontWeight:"bold",verticalAlign:"bottom",horizontalAlign:"center"},toolTip:{fontFamily:s,fontSize:14,fontStyle:"normal",cornerRadius:0,borderThickness:1,fontColor:N,backgroundColor:"rgba(0, 0, 0, .7)"}};var Qa={light1:Ga,light2:Ia,dark1:Aa,dark2:da,theme1:Ga,theme2:Ia,theme3:Ga},Y={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(" ")};
|
|
94
94
|
(function(){Ca.fSDec=function(m){for(var g="",w=0;w<m.length;w++)g+=String.fromCharCode(Math.ceil(m.length/57/5)^m.charCodeAt(w));return g};delete ea[Ca.fSDec("Bi`su")][Ca.fSDec("bsdehuIsdg")];Ca.pro={sCH:ea[Ca.fSDec("Bi`su")][Ca.fSDec("bsdehuIsdg")]}})();var pb=function(){var m=!1;try{var g=Object.defineProperty&&Object.defineProperty({},"passive",{get:function(){m=!0;return!1}});window.addEventListener&&(window.addEventListener("test",null,g),window.removeEventListener("test",null,g))}catch(w){m=
|
|
95
|
-
!1}return m}(),eb={},Fa=null,jb=function(m){var
|
|
95
|
+
!1}return m}(),eb={},Fa=null,jb=function(m){var Z=0,w=0;this.options.width?Z=this.width:this.width=Z=0<this.container.clientWidth?this.container.clientWidth:this.width;g(this.stockChart)||g(this.index)?this.options.height?w=this.height:this.height=w=0<this.container.clientHeight?this.container.clientHeight:this.height:w=this.height=this.stockChart._chartsHeight[this.index];if(this.canvas.width!==Z*ja||this.canvas.height!==w*ja){for(var v=0;v<m.length;v++)Ua(m[v],Z,w);this.bounds={x1:0,y1:0,x2:this.width,
|
|
96
96
|
y2:this.height,width:this.width,height:this.height};return!0}return!1},kb=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))},Da=function(m){m.width=1;m.height=1;m.getContext("2d")&&m.getContext("2d").clearRect(0,0,1,1)},lb=function(m,g,w){g=Math.min(this.width,this.height);return Math.max("theme4"===this.theme?0:300<=g?12:11,Math.round(g*(m/400)))},qa=function(){var m=/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,
|
|
97
97
|
g="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),w="Sun Mon Tue Wed Thu Fri Sat".split(" "),v="January February March April May June July August September October November December".split(" "),H="Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),s=/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,y=/[^-+\dA-Z]/g;return function(A,G,O){var L=O?O.days:g,U=O?O.months:v,Q=O?O.shortDays:
|
|
98
98
|
w,N=O?O.shortMonths:H;O="";var d=!1;A=A&&A.getTime?A:A?new Date(A):new Date;if(isNaN(A))throw SyntaxError("invalid date");"UTC:"===G.slice(0,4)&&(G=G.slice(4),d=!0);O=d?"getUTC":"get";var t=A[O+"Date"](),z=A[O+"Day"](),k=A[O+"Month"](),a=A[O+"FullYear"](),e=A[O+"Hours"](),c=A[O+"Minutes"](),b=A[O+"Seconds"](),f=A[O+"Milliseconds"](),l=d?0:A.getTimezoneOffset();return O=G.replace(m,function(B){switch(B){case "D":return t;case "DD":return pa(t,2);case "DDD":return Q[z];case "DDDD":return L[z];case "M":return k+
|
|
@@ -168,93 +168,93 @@ this.label;this.axis=f;this.optionsName="stripLines";this.isOptionsInArray=!0;th
|
|
|
168
168
|
"toolTip";this._initialize()}function ea(a){this.chart=a;this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=[];this.previousDataPointEventObject=null;this.ghostCanvas=ra(this.chart.width,this.chart.height,!0);this.ghostCtx=this.ghostCanvas.getContext("2d");this.mouseoveredObjectMaps=[]}function fa(a){this.chart=a;this.ctx=this.chart.plotArea.ctx;this.animations=[];this.animationRequestId=null}ha(s,W);s.prototype.destroy=function(){var a=this.allDOMEventHandlers;this._animator&&
|
|
169
169
|
this._animator.cancelAllAnimations();this._panTimerId&&clearTimeout(this._panTimerId);for(var e=0;e<a.length;e++)fb(a[e][0],a[e][1],a[e][2],a[e][3]);this.allDOMEventHandlers=[];for(this.removeAllEventListeners();this._canvasJSContainer&&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);
|
|
170
170
|
this.container=this._canvasJSContainer=null;this.toolTip.container=null;this.canvas&&Da(this.canvas);this.overlaidCanvas&&Da(this.overlaidCanvas);this._preRenderCanvas&&Da(this._preRenderCanvas);this._breaksCanvas&&Da(this._breaksCanvas);this._eventManager&&this._eventManager.ghostCanvas&&Da(this._eventManager.ghostCanvas);this._toolBar=this._dropdownMenu=this._menuButton=this._resetButton=this._zoomButton=null};s.prototype._updateOptions=function(){var a=this;this.updateOption("width");this.updateOption("height");
|
|
171
|
-
this.updateOption("dataPointWidth");this.updateOption("dataPointMinWidth");this.updateOption("dataPointMaxWidth");this.updateOption("interactivityEnabled");this.updateOption("theme");this.stockChart&&
|
|
172
|
-
(this.stockChart.options&&"undefined"!==typeof this.stockChart.options.backgroundColor&&g(this.options.backgroundColor))&&(this.backgroundColor=this.stockChart.backgroundColor);this.backgroundColor||(this.backgroundColor="rgba(0,0,0,0)");this.updateOption("culture");this.stockChart&&g(this.options.culture)&&(this.culture=this.stockChart.culture);this._cultureInfo=new Na(this.culture);this.updateOption("animationEnabled");this.animationEnabled=
|
|
173
|
-
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.stockChart&&this.stockChart.options&&this.stockChart.options.toolbar&&!this.options.toolbar)for(var e in this.stockChart.options.toolbar)this.toolbar[e]=this.stockChart.options.toolbar[e];if(this.options.zoomEnabled||
|
|
174
|
-
"px solid "+this.toolbar.buttonBorderColor,backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor}),0>=navigator.userAgent.search("MSIE")&&this._zoomButton.childNodes[0]&&Q(this._zoomButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"});else{var c=!1;za(this._zoomButton=document.createElement("button"));ya(this,this._zoomButton,"pan");this._toolBar.appendChild(this._zoomButton);
|
|
175
|
-
A(this._zoomButton,"touchstart",function(a){c=!0},this.allDOMEventHandlers);A(this._zoomButton,"click",function(){a.zoomEnabled?(a.zoomEnabled=!1,a.panEnabled=!0,ya(a,a._zoomButton,"zoom")):(a.zoomEnabled=!0,a.panEnabled=!1,ya(a,a._zoomButton,"pan"));a.render()},this.allDOMEventHandlers);A(this._zoomButton,"mousemove",function(){c?c=!1:(Q(a._zoomButton,{backgroundColor:a.toolbar.itemBackgroundColorOnHover,
|
|
176
|
-
Q(a._zoomButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},this.allDOMEventHandlers);A(this._zoomButton,"mouseout",function(){c||(Q(a._zoomButton,{backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&Q(a._zoomButton.childNodes[0],{WebkitFilter:"invert(0%)",
|
|
177
|
-
"px solid "+this.toolbar.buttonBorderColor,backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor}),0>=navigator.userAgent.search("MSIE")&&this._resetButton.childNodes[0]&&Q(this._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}),this._resetButton.title=this._cultureInfo.resetText):(c=!1,za(this._resetButton=document.createElement("button")),
|
|
178
|
-
0)+"px solid "+this.toolbar.buttonBorderColor,this._toolBar.appendChild(this._resetButton),A(this._resetButton,"touchstart",function(a){c=!0},this.allDOMEventHandlers),A(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
|
|
179
|
-
!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;
|
|
180
|
-
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")&&Q(a._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"});
|
|
181
|
-
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.stockChart&&(a.stockChart.rangeUpdatedBy=!a.stockChart.navigator.slider||g(a.stockChart.navigator.slider.options.minimum)&&
|
|
182
|
-
|
|
183
|
-
b.enabled&&(b.state="on",b.textBlock.fontWeight="bold",b.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColorOnHover,b.textBlock.backgroundColor=a.stockChart.rangeSelector.buttonStyle.backgroundColorOnSelect,a.stockChart.rangeSelector.sessionVariables._clickedRangeButtonIndex=null,b.render())));a._dispatchRangeEvent("rangeChanged","reset");a.stockChart&&(a.stockChart._rangeEventParameter.type="rangeChanged",
|
|
184
|
-
a.stockChart))},this.allDOMEventHandlers),A(this._resetButton,"mousemove",function(){c||(Q(a._resetButton,{backgroundColor:a.toolbar.itemBackgroundColorOnHover,color:a.toolbar.fontColorOnHover,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&Q(a._resetButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},this.allDOMEventHandlers),A(this._resetButton,"mouseout",function(){c||
|
|
185
|
-
transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&Q(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
|
|
186
|
-
!1))}else this.panEnabled=this.zoomEnabled=!1;gb(this);"none"!==this._toolBar.style.display&&this._zoomButton&&(this.panEnabled?ya(a,a._zoomButton,"zoom"):ya(a,a._zoomButton,"pan"),a._resetButton.getAttribute("state")!==a._cultureInfo.resetText&&ya(a,a._resetButton,"reset"));this.options.toolTip&&this.toolTip.options!==this.options.toolTip&&(this.toolTip.options=this.options.toolTip);for(e in this.toolTip.options)this.toolTip.options.hasOwnProperty(e)&&
|
|
187
|
-
function(){return jb.call(this,[this.canvas,this.overlaidCanvas,this._eventManager.ghostCanvas])};s.prototype._initialize=function(){this.isNavigator=g(this.parent)||g(this.parent._defaultsKey)||"Navigator"!==this.parent._defaultsKey?!1:!0;this._animator?this._animator.cancelAllAnimations():this._animator=new fa(this);this.removeAllEventListeners();this.disableToolTip=!1;this._axes=[];this.funnelPyramidClickHandler=this.pieDoughnutClickHandler=
|
|
188
|
-
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();
|
|
189
|
-
if(this.options.data){for(var c=0;c<this.options.data.length;c++)if(a++,!this.options.data[c].type||0<=s._supportedChartTypes.indexOf(this.options.data[c].type)){var b=new L(this,this.options.data[c],a-1,++this._eventManager.lastObjectId);if(!g(b)&&b.dataPoints)for(var f=0;f<b.dataPoints.length;f++)if(b.dataPoints[f].x&&b.dataPoints[f].x.getTime){b.xValueType="dateTime";break}"error"===b.type&&(b.linkedDataSeriesIndex=g(this.options.data[c].linkedDataSeriesIndex)?
|
|
190
|
-
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"===
|
|
191
|
-
"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&&
|
|
192
|
-
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(m):b.dataPoints.sort(m));this.data.push(b);var f=b.axisPlacement,e=e||f,l;"normal"===f?"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&&
|
|
193
|
-
"xySwapped"===f?"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"===f?"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 "'+
|
|
194
|
-
null===this.plotInfo.axisPlacement&&(this.plotInfo.axisPlacement="none"):null===f&&"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"==e&&"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=
|
|
195
|
-
null===this.data[c].linkedDataSeriesIndex?null:this.data[this.data[c].linkedDataSeriesIndex])}}this._objectsInitialized=!0;this._plotAreaElements=[]};s._supportedChartTypes=xa("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(" "));
|
|
196
|
-
this._plotAreaElements,e=0;e<this.data.length;e++)if("normal"===this.plotInfo.axisPlacement||"xySwapped"===this.plotInfo.axisPlacement){if(!this.data[e].axisYType||"primary"===this.data[e].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 y(this,"axisY",this.options.axisY[c],c,"axisY","left")):"xySwapped"===
|
|
197
|
-
new y(this,"axisY",this.options.axisY[c],c,"axisY","bottom"));this.data[e].axisY=this.axisY[0<=this.data[e].axisYIndex&&this.data[e].axisYIndex<this.axisY.length?this.data[e].axisYIndex:0];this.axisY[0<=this.data[e].axisYIndex&&this.data[e].axisYIndex<this.axisY.length?this.data[e].axisYIndex:0].dataSeries.push(this.data[e])}else this.axisY.length||("normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY[0]=new y(this,"axisY",this.options.axisY,
|
|
198
|
-
this._axes.push(this.axisY[0]=new y(this,"axisY",this.options.axisY,0,"axisY","bottom"))),this.data[e].axisY=this.axisY[0],this.axisY[0].dataSeries.push(this.data[e]);if("secondary"===this.data[e].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 y(this,"axisY2",this.options.axisY2[c],c,
|
|
199
|
-
this._axes.push(this.axisY2[c]=new y(this,"axisY2",this.options.axisY2[c],c,"axisY","top"));this.data[e].axisY=this.axisY2[0<=this.data[e].axisYIndex&&this.data[e].axisYIndex<this.axisY2.length?this.data[e].axisYIndex:0];this.axisY2[0<=this.data[e].axisYIndex&&this.data[e].axisYIndex<this.axisY2.length?this.data[e].axisYIndex:0].dataSeries.push(this.data[e])}else this.axisY2.length||("normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY2[0]=
|
|
200
|
-
"right")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisY2[0]=new y(this,"axisY2",this.options.axisY2,0,"axisY","top"))),this.data[e].axisY=this.axisY2[0],this.axisY2[0].dataSeries.push(this.data[e]);if(!this.data[e].axisXType||"primary"===this.data[e].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]=
|
|
201
|
-
c,"axisX","bottom")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX[c]=new y(this,"axisX",this.options.axisX[c],c,"axisX","left"));this.data[e].axisX=this.axisX[0<=this.data[e].axisXIndex&&this.data[e].axisXIndex<this.axisX.length?this.data[e].axisXIndex:0];this.axisX[0<=this.data[e].axisXIndex&&this.data[e].axisXIndex<this.axisX.length?this.data[e].axisXIndex:0].dataSeries.push(this.data[e])}else this.axisX.length||("normal"===this.plotInfo.axisPlacement?
|
|
202
|
-
new y(this,"axisX",this.options.axisX,0,"axisX","bottom")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX[0]=new y(this,"axisX",this.options.axisX,0,"axisX","left"))),this.data[e].axisX=this.axisX[0],this.axisX[0].dataSeries.push(this.data[e]);if("secondary"===this.data[e].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]=
|
|
203
|
-
"axisX2",this.options.axisX2[c],c,"axisX","top")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX2[c]=new y(this,"axisX2",this.options.axisX2[c],c,"axisX","right"));this.data[e].axisX=this.axisX2[0<=this.data[e].axisXIndex&&this.data[e].axisXIndex<this.axisX2.length?this.data[e].axisXIndex:0];this.axisX2[0<=this.data[e].axisXIndex&&this.data[e].axisXIndex<this.axisX2.length?this.data[e].axisXIndex:0].dataSeries.push(this.data[e])}else this.axisX2.length||("normal"===
|
|
204
|
-
this._axes.push(this.axisX2[0]=new y(this,"axisX2",this.options.axisX2,0,"axisX","top")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX2[0]=new y(this,"axisX2",this.options.axisX2,0,"axisX","right"))),this.data[e].axisX=this.axisX2[0],this.axisX2[0].dataSeries.push(this.data[e])}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"===
|
|
205
|
-
(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=
|
|
206
|
-
"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&&
|
|
207
|
-
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(e=0;e<this._axes.length;e++)if(!g(this._axes[e].viewportMinimum)||!g(this._axes[e].viewportMaximum)){c=!0;break}c?(Ta(this._zoomButton,this._resetButton),this._toolBar.style.border=this.toolbar.buttonBorderThickness+
|
|
208
|
-
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):(za(this._zoomButton,this._resetButton),this._toolBar.style.border=this.toolbar.buttonBorderThickness+"px solid transparent",this.options.zoomEnabled&&(this.zoomEnabled=!0,this.panEnabled=!1));ob(this);this._processData();
|
|
209
|
-
new Ha(this,this.options.title),this.title.dockInsidePlotArea?a.push(this.title):this.title.setLayout());if(this.options.subtitles)for(e=0;e<this.options.subtitles.length;e++)c=new Ma(this,this.options.subtitles[e],e),this.subtitles.push(c),c.dockInsidePlotArea?a.push(c):c.setLayout();this.legend=new H(this,this.options.legend);for(e=0;e<this.data.length;e++)(this.data[e].showInLegend||"pie"===this.data[e].type||"doughnut"===this.data[e].type||"funnel"===this.data[e].type||
|
|
210
|
-
this.legend.dataSeries.push(this.data[e]);this.legend.dockInsidePlotArea?a.push(this.legend):this.legend.setLayout();for(e=0;e<this._axes.length;e++)if(this._axes[e].scaleBreaks&&this._axes[e].scaleBreaks._appliedBreaks.length){v?(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=
|
|
211
|
-
"normal"!==this.plotInfo.axisPlacement&&"xySwapped"!==this.plotInfo.axisPlacement||y.setLayout(this.axisX,this.axisX2,this.axisY,this.axisY2,this.plotInfo.axisPlacement,this.layoutManager.getFreeSpace())};s.prototype.renderElements=function(){if(this.height&&this.width){var a=this._plotAreaElements;this.title&&!this.title.dockInsidePlotArea&&this.title.render();for(var e=0;e<this.subtitles.length;e++)this.subtitles[e].dockInsidePlotArea||this.subtitles[e].render();
|
|
212
|
-
this.legend.render();if("normal"===this.plotInfo.axisPlacement||"xySwapped"===this.plotInfo.axisPlacement)y.render(this.axisX,this.axisX2,this.axisY,this.axisY2,this.plotInfo.axisPlacement);else if("none"===this.plotInfo.axisPlacement)this.preparePlotArea();else return;for(e=0;e<a.length;e++)a[e].setLayout(),a[e].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)}qb(this);var a=
|
|
213
|
-
3;v&&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(e=0;e<this.plotInfo.plotTypes.length;e++)for(var l=this.plotInfo.plotTypes[e],B=0;B<
|
|
214
|
-
J=null;d.targetCanvas&&Da(d.targetCanvas);d.targetCanvas=null;this.animatedRender&&(d.targetCanvas=ra(this.width,this.height),d.targetCanvasCtx=d.targetCanvas.getContext("2d"),f=d.targetCanvasCtx.miterLimit,d.targetCanvasCtx.miterLimit=3);"line"===d.type?J=this.renderLine(d):"stepLine"===d.type?J=this.renderStepLine(d):"spline"===d.type?J=this.renderSpline(d):"column"===d.type?J=this.renderColumn(d):"bar"===d.type?J=this.renderBar(d):"area"===d.type?J=
|
|
215
|
-
"splineArea"===d.type?J=this.renderSplineArea(d):"stackedColumn"===d.type?J=this.renderStackedColumn(d):"stackedColumn100"===d.type?J=this.renderStackedColumn100(d):"stackedBar"===d.type?J=this.renderStackedBar(d):"stackedBar100"===d.type?J=this.renderStackedBar100(d):"stackedArea"===d.type?J=this.renderStackedArea(d):"stackedArea100"===d.type?J=this.renderStackedArea100(d):"bubble"===d.type?J=J=this.renderBubble(d):"scatter"===d.type?
|
|
216
|
-
d.type?this.renderPie(d):"funnel"===d.type?J=this.renderFunnel(d):"pyramid"===d.type?J=this.renderFunnel(d):"candlestick"===d.type?J=this.renderCandlestick(d):"ohlc"===d.type?J=this.renderCandlestick(d):"rangeColumn"===d.type?J=this.renderRangeColumn(d):"error"===d.type?J=this.renderError(d):"rangeBar"===d.type?J=this.renderRangeBar(d):"rangeArea"===d.type?J=this.renderRangeArea(d):"rangeSplineArea"===d.type?J=this.renderRangeSplineArea(d):
|
|
217
|
-
d.type&&(J=this.renderBoxAndWhisker(d));for(var n=0;n<d.dataSeriesIndexes.length;n++)this._dataInRenderedOrder.push(this.data[d.dataSeriesIndexes[n]]);this.animatedRender&&(d.targetCanvasCtx.miterLimit=f,J&&c.push(J))}this.ctx.miterLimit=a;this.animatedRender&&this._breaksCanvasCtx&&c.push({source:this._breaksCanvasCtx,dest:this.plotArea.ctx,animationCallback:z.fadeInAnimation,easingFunction:z.easing.easeInQuad,animationBase:0,startTimePercent:0.7});
|
|
218
|
-
(f=ra(this.width,this.height).getContext("2d"),Ea(f),c.push(this.renderIndexLabels(f)));var q=this;if(0<c.length)q.disableToolTip=!0,q._animator.animate(200,q.animationDuration,function(a){q.ctx.clearRect(0,0,q.width,q.height);q.ctx.drawImage(b,0,0,Math.floor(q.width*ja),Math.floor(q.height*ja),0,0,q.width,q.height);for(var f=0;f<c.length;f++)J=c[f],1>a&&"undefined"!==typeof J.startTimePercent?a>=J.startTimePercent&&J.animationCallback(J.easingFunction(a-
|
|
219
|
-
J):J.animationCallback(J.easingFunction(a,0,1,1),J);q.dispatchEvent("dataAnimationIterationEnd",{chart:q})},function(){c=[];for(var a=0;a<q.plotInfo.plotTypes.length;a++)for(var f=q.plotInfo.plotTypes[a],e=0;e<f.plotUnits.length;e++){var l=f.plotUnits[e];l.targetCanvas&&Da(l.targetCanvas);l.targetCanvas=null}b=null;q.disableToolTip=!1;q.dispatchEvent("dataAnimationEnd",{chart:q})});else{if(q._breaksCanvas)if(v)q.plotArea.ctx.drawImage(q._breaksCanvas,0,
|
|
220
|
-
0<q._indexLabels.length&&q.renderIndexLabels();q.dispatchEvent("dataAnimationIterationEnd",{chart:q});q.dispatchEvent("dataAnimationEnd",{chart:q})}this.attachPlotAreaEventHandlers();this.zoomEnabled||(this.panEnabled||!this._zoomButton||"none"===this._zoomButton.style.display)||za(this._zoomButton,this._resetButton);g(this.toolTip._xValue)||g(this.toolTip._dataSeriesIndex)||this.toolTip.showAtX(this.toolTip._xValue,
|
|
221
|
-
(q=this,setTimeout(function(){var a=document.getElementById("ghostCanvasCopy");a&&(Ua(a,q.width,q.height),a.getContext("2d").drawImage(q._eventManager.ghostCanvas,0,0))},2E3));this._breaksCanvas&&(delete this._breaksCanvas,delete this._breaksCanvasCtx);for(n=0;n<this._axes.length;n++)this._axes[n].maskCanvas&&(delete this._axes[n].maskCanvas,delete this._axes[n].maskCtx)}};s.prototype.render=function(a){a&&(this.options=
|
|
222
|
-
Da(this._preRenderCanvas)};s.prototype.attachPlotAreaEventHandlers=function(){this.attachEvent({context:this,chart:this,mousedown:this._plotAreaMouseDown,mouseup:this._plotAreaMouseUp,mousemove:this._plotAreaMouseMove,cursor:this.panEnabled?"move":"default",capture:!0,bounds:this.plotArea})};s.prototype.categoriseDataSeries=function(){for(var a="",e=0;e<this.data.length;e++)if(a=this.data[e],a.dataPoints&&(0!==a.dataPoints.length&&
|
|
223
|
-
b=!1,f=null,l=!1,B=0;B<this.plotInfo.plotTypes.length;B++)if(this.plotInfo.plotTypes[B].type===a.type){b=!0;c=this.plotInfo.plotTypes[B];break}b||(c={type:a.type,totalDataSeries:0,plotUnits:[]},this.plotInfo.plotTypes.push(c));for(B=0;B<c.plotUnits.length;B++)if(c.plotUnits[B].axisYType===a.axisYType&&c.plotUnits[B].axisXType===a.axisXType&&c.plotUnits[B].axisYIndex===a.axisYIndex&&c.plotUnits[B].axisXIndex===a.axisXIndex){l=!0;
|
|
224
|
-
plotType:c,axisXType:a.axisXType,axisYType:a.axisYType,axisYIndex:a.axisYIndex,axisXIndex:a.axisXIndex,axisY:"primary"===a.axisYType?this.axisY[0<=a.axisYIndex&&a.axisYIndex<this.axisY.length?a.axisYIndex:0]:this.axisY2[0<=a.axisYIndex&&a.axisYIndex<this.axisY2.length?a.axisYIndex:0],axisX:"primary"===a.axisXType?this.axisX[0<=a.axisXIndex&&a.axisXIndex<this.axisX.length?a.axisXIndex:0]:this.axisX2[0<=a.axisXIndex&&
|
|
225
|
-
c.plotUnits.push(f));c.totalDataSeries++;f.dataSeriesIndexes.push(e);a.plotUnit=f}for(e=0;e<this.plotInfo.plotTypes.length;e++)for(c=this.plotInfo.plotTypes[e],B=a=0;B<c.plotUnits.length;B++)c.plotUnits[B].previousDataSeriesCount=a,a+=c.plotUnits[B].dataSeriesIndexes.length};s.prototype.assignIdToDataPoints=function(){for(var a=0;a<this.data.length;a++){var e=this.data[a];if(e.dataPoints)for(var c=e.dataPoints.length,
|
|
226
|
-
function(){this.assignIdToDataPoints();this.categoriseDataSeries();for(var a=0;a<this.plotInfo.plotTypes.length;a++)for(var e=this.plotInfo.plotTypes[a],c=0;c<e.plotUnits.length;c++){var b=e.plotUnits[c];"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?this._processMultiseriesPlotUnit(b):
|
|
227
|
-
this._processStackedPlotUnit(b):"stackedColumn100"===b.type||"stackedBar100"===b.type||"stackedArea100"===b.type?this._processStacked100PlotUnit(b):"candlestick"===b.type||"ohlc"===b.type||"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"error"===b.type||"boxAndWhisker"===b.type?this._processMultiYPlotUnit(b):"waterfall"===b.type&&this._processSpecificPlotUnit(b)}this.calculateAutoBreaks()};
|
|
228
|
-
|
|
229
|
-
0:-Infinity,h=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(g.dataPoints[d].x&&g.dataPoints[d].x.getTime||"dateTime"===g.xValueType)l=!0;for(d=0;d<g.dataPoints.length;d++){"undefined"===typeof g.dataPoints[d].x&&(g.dataPoints[d].x=d+
|
|
230
|
-
b=g.dataPoints[d].x;f=g.dataPoints[d].y;b<c.min&&(c.min=b);b>c.max&&(c.max=b);f<e.min&&"number"===typeof f&&(e.min=f);f>e.max&&"number"===typeof f&&(e.max=f);if(0<d){if(a.axisX.logarithmic){var C=b/g.dataPoints[d-1].x;1>C&&(C=1/C);c.minDiff>C&&1!==C&&(c.minDiff=C)}else C=b-g.dataPoints[d-1].x,0>C&&(C*=-1),c.minDiff>C&&0!==C&&(c.minDiff=C);null!==f&&null!==g.dataPoints[d-1].y&&(a.axisY.logarithmic?(C=f/g.dataPoints[d-
|
|
231
|
-
(C*=-1),e.minDiff>C&&0!==C&&(e.minDiff=C)))}if(b<r&&!n)null!==f&&(p=b);else{if(!n&&(n=!0,0<d)){d-=2;continue}if(b>h&&!q)q=!0;else if(b>h&&q)continue;g.dataPoints[d].label&&(a.axisX.labels[b]=g.dataPoints[d].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===f?c.viewPortMin===b&&p<b&&(c.viewPortMin=p):(f<e.viewPortMin&&"number"===typeof f&&(e.viewPortMin=f),f>e.viewPortMax&&"number"===
|
|
232
|
-
s.prototype._processStackedPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,l=!1,B=[],d=[],J=Infinity,n=-Infinity,q={},p=0;p<a.dataSeriesIndexes.length;p++){var r=this.data[a.dataSeriesIndexes[p]],h=0,C=!1,z=!1,k;if("normal"===r.axisPlacement||"xySwapped"===r.axisPlacement)var u=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:
|
|
233
|
-
a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:-Infinity,v=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(r.dataPoints[h].x&&r.dataPoints[h].x.getTime||"dateTime"===r.xValueType)l=!0;for(h=0;h<r.dataPoints.length;h++){"undefined"===
|
|
234
|
-
1:0));r.dataPoints[h].x.getTime?(l=!0,b=r.dataPoints[h].x.getTime()):b=r.dataPoints[h].x;f=g(r.dataPoints[h].y)?0:r.dataPoints[h].y;b<c.min&&(c.min=b);b>c.max&&(c.max=b);if(0<h){if(a.axisX.logarithmic){var x=b/r.dataPoints[h-1].x;1>x&&(x=1/x);c.minDiff>x&&1!==x&&(c.minDiff=x)}else x=b-r.dataPoints[h-1].x,0>x&&(x*=-1),c.minDiff>x&&0!==x&&(c.minDiff=x);null!==f&&null!==r.dataPoints[h-1].y&&(a.axisY.logarithmic?0<f&&(x=f/r.dataPoints[h-
|
|
235
|
-
1].y,0>x&&(x*=-1),e.minDiff>x&&0!==x&&(e.minDiff=x)))}if(b<u&&!C)null!==r.dataPoints[h].y&&(k=b);else{if(!C&&(C=!0,0<h)){h-=2;continue}if(b>v&&!z)z=!0;else if(b>v&&z)continue;r.dataPoints[h].label&&(a.axisX.labels[b]=r.dataPoints[h].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===r.dataPoints[h].y?c.viewPortMin===b&&k<b&&(c.viewPortMin=k):(q[b]=(q[b]||0)+r.dataPoints[h].y,r.dataPointEOs[h].cumulativeY=
|
|
236
|
-
(a.yAbsTotals[b]?a.yAbsTotals[b]:0)+Math.abs(f),0<=f?B[b]?B[b]+=f:(B[b]=f,J=Math.min(f,J)):d[b]?d[b]+=f:(d[b]=f,n=Math.max(f,n)))}}a.axisY.scaleBreaks&&(a.axisY.scaleBreaks.autoCalculate&&1<=a.axisY.scaleBreaks.maxNumberOfAutoBreaks)&&(e.dataPointYPositiveSums?(e.dataPointYPositiveSums.push.apply(e.dataPointYPositiveSums,B),e.dataPointYNegativeSums.push.apply(e.dataPointYPositiveSums,d)):(e.dataPointYPositiveSums=B,e.dataPointYNegativeSums=
|
|
237
|
-
|
|
238
|
-
a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,l=!1,B=!1,d=!1,J={},n=[],q=0;q<a.dataSeriesIndexes.length;q++){var p=this.data[a.dataSeriesIndexes[q]],r=0,h=!1,C=!1,z;if("normal"===p.axisPlacement||"xySwapped"===p.axisPlacement)var k=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?
|
|
239
|
-
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(p.dataPoints[r].x&&p.dataPoints[r].x.getTime||"dateTime"===p.xValueType)l=!0;for(r=0;r<p.dataPoints.length;r++){"undefined"===typeof p.dataPoints[r].x&&(p.dataPoints[r].x=r+(a.axisX.logarithmic?1:0));p.dataPoints[r].x.getTime?
|
|
240
|
-
null:p.dataPoints[r].y;b<c.min&&(c.min=b);b>c.max&&(c.max=b);if(0<r){if(a.axisX.logarithmic){var v=b/p.dataPoints[r-1].x;1>v&&(v=1/v);c.minDiff>v&&1!==v&&(c.minDiff=v)}else v=b-p.dataPoints[r-1].x,0>v&&(v*=-1),c.minDiff>v&&0!==v&&(c.minDiff=v);g(f)||null===p.dataPoints[r-1].y||(a.axisY.logarithmic?0<f&&(v=f/p.dataPoints[r-1].y,1>v&&(v=1/v),e.minDiff>v&&1!==v&&(e.minDiff=v)):(v=f-p.dataPoints[r-1].y,0>v&&(v*=-1),e.minDiff>
|
|
241
|
-
2;continue}if(b>u&&!C)C=!0;else if(b>u&&C)continue;p.dataPoints[r].label&&(a.axisX.labels[b]=p.dataPoints[r].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===f?c.viewPortMin===b&&z<b&&(c.viewPortMin=z):(J[b]=(J[b]||0)+p.dataPoints[r].y,p.dataPointEOs[r].cumulativeY=J[b],a.yTotals[b]=(a.yTotals[b]?a.yTotals[b]:0)+f,a.yAbsTotals[b]=(a.yAbsTotals[b]?a.yAbsTotals[b]:0)+Math.abs(f),0<=f?B
|
|
242
|
-
l?"dateTime":"number"}a.axisY.logarithmic?(e.max=g(e.viewPortMax)?99*Math.pow(a.axisY.logarithmBase,-0.05):Math.max(e.viewPortMax,99*Math.pow(a.axisY.logarithmBase,-0.05)),e.min=g(e.viewPortMin)?1:Math.min(e.viewPortMin,1)):B&&!d?(e.max=g(e.viewPortMax)?99:Math.max(e.viewPortMax,99),e.min=g(e.viewPortMin)?1:Math.min(e.viewPortMin,1)):B&&d?(e.max=g(e.viewPortMax)?99:Math.max(e.viewPortMax,99),e.min=g(e.viewPortMin)
|
|
243
|
-
-1),e.min=g(e.viewPortMin)?-99:Math.min(e.viewPortMin,-99));e.viewPortMin=e.min;e.viewPortMax=e.max;a.dataPointYSums=n}};s.prototype._processMultiYPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,l,B,g=!1,d=0;d<a.dataSeriesIndexes.length;d++){var n=this.data[a.dataSeriesIndexes[d]],q=0,p=!1,r=!1,h,C,z;if("normal"===n.axisPlacement||
|
|
244
|
-
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,u=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?
|
|
245
|
-
for(q=0;q<n.dataPoints.length;q++){"undefined"===typeof n.dataPoints[q].x&&(n.dataPoints[q].x=q+(a.axisX.logarithmic?1:0));n.dataPoints[q].x.getTime?(g=!0,b=n.dataPoints[q].x.getTime()):b=n.dataPoints[q].x;if((f=n.dataPoints[q].y)&&f.length){l=Math.min.apply(null,f);B=Math.max.apply(null,f);C=!0;for(var v=0;v<f.length;v++)null===f.k&&(C=!1);C&&(p||(z=h),h=b)}b<c.min&&(c.min=b);b>c.max&&
|
|
246
|
-
c.minDiff>C&&1!==C&&(c.minDiff=C)):(C=b-n.dataPoints[q-1].x,0>C&&(C*=-1),c.minDiff>C&&0!==C&&(c.minDiff=C)),f&&(null!==f[0]&&n.dataPoints[q-1].y&&null!==n.dataPoints[q-1].y[0])&&(a.axisY.logarithmic?(C=f[0]/n.dataPoints[q-1].y[0],1>C&&(C=1/C),e.minDiff>C&&1!==C&&(e.minDiff=C)):(C=f[0]-n.dataPoints[q-1].y[0],0>C&&(C*=-1),e.minDiff>C&&0!==C&&(e.minDiff=C))));if(!(b<k)||p){if(!p&&(p=!0,0<q)){q-=
|
|
247
|
-
b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);if(c.viewPortMin===b&&f)for(v=0;v<f.length;v++)if(null===f[v]&&h<b){c.viewPortMin=h;break}null===f?c.viewPortMin===b&&h<b&&(c.viewPortMin=h):(l<e.viewPortMin&&(e.viewPortMin=l),B>e.viewPortMax&&(e.viewPortMax=B))}}n.axisX.valueType=n.xValueType=g?"dateTime":"number"}};s.prototype._processSpecificPlotUnit=function(a){if("waterfall"===
|
|
248
|
-
b,f,l=!1,B=0;B<a.dataSeriesIndexes.length;B++){var g=this.data[a.dataSeriesIndexes[B]],d=0,n=!1,q=!1,p=b=0;if("normal"===g.axisPlacement||"xySwapped"===g.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:
|
|
249
|
-
a.axisX.options&&a.axisX.options.viewportMaximum?a.axisX.options.viewportMaximum:a.axisX.options&&a.axisX.options.maximum?a.axisX.options.maximum:Infinity;if(g.dataPoints[d].x&&g.dataPoints[d].x.getTime||"dateTime"===g.xValueType)l=!0;for(d=0;d<g.dataPoints.length;d++)"undefined"!==typeof g.dataPoints[d].isCumulativeSum&&!0===g.dataPoints[d].isCumulativeSum?(g.dataPointEOs[d].cumulativeSumYStartValue=
|
|
250
|
-
d?0:g.dataPointEOs[d-1].cumulativeSum):"undefined"!==typeof g.dataPoints[d].isIntermediateSum&&!0===g.dataPoints[d].isIntermediateSum?(g.dataPointEOs[d].cumulativeSumYStartValue=p,g.dataPointEOs[d].cumulativeSum=0===d?0:g.dataPointEOs[d-1].cumulativeSum,g.dataPoints[d].y=0===d?0:b,p=0===d?0:g.dataPointEOs[d-1].cumulativeSum,b=0):(f="number"!==typeof g.dataPoints[d].y?0:g.dataPoints[d].y,g.dataPointEOs[d].cumulativeSumYStartValue=
|
|
251
|
-
0===d?f:g.dataPointEOs[d-1].cumulativeSum+f,b+=f);for(d=0;d<g.dataPoints.length;d++)if("undefined"===typeof g.dataPoints[d].x&&(g.dataPoints[d].x=d+(a.axisX.logarithmic?1:0)),g.dataPoints[d].x.getTime?(l=!0,b=g.dataPoints[d].x.getTime()):b=g.dataPoints[d].x,f=g.dataPoints[d].y,b<c.min&&(c.min=b),b>c.max&&(c.max=b),g.dataPointEOs[d].cumulativeSum<e.min&&(e.min=g.dataPointEOs[d].cumulativeSum),g.dataPointEOs[d].cumulativeSum>
|
|
252
|
-
b/g.dataPoints[d-1].x,1>p&&(p=1/p),c.minDiff>p&&1!==p&&(c.minDiff=p)):(p=b-g.dataPoints[d-1].x,0>p&&(p*=-1),c.minDiff>p&&0!==p&&(c.minDiff=p)),null!==f&&null!==g.dataPoints[d-1].y&&(a.axisY.logarithmic?(f=g.dataPointEOs[d].cumulativeSum/g.dataPointEOs[d-1].cumulativeSum,1>f&&(f=1/f),e.minDiff>f&&1!==f&&(e.minDiff=f)):(f=g.dataPointEOs[d].cumulativeSum-g.dataPointEOs[d-1].cumulativeSum,0>f&&(f*=-1),e.minDiff>f&&0!==f&&(e.minDiff=
|
|
253
|
-
h&&q)continue;g.dataPoints[d].label&&(a.axisX.labels[b]=g.dataPoints[d].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);0<d&&(g.dataPointEOs[d-1].cumulativeSum<e.viewPortMin&&(e.viewPortMin=g.dataPointEOs[d-1].cumulativeSum),g.dataPointEOs[d-1].cumulativeSum>e.viewPortMax&&(e.viewPortMax=g.dataPointEOs[d-1].cumulativeSum));g.dataPointEOs[d].cumulativeSum<e.viewPortMin&&(e.viewPortMin=g.dataPointEOs[d].cumulativeSum);
|
|
254
|
-
g.dataPointEOs[d].cumulativeSum)}g.axisX.valueType=g.xValueType=l?"dateTime":"number"}};s.prototype.calculateAutoBreaks=function(){function a(a,b,c,f){if(f)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 e(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){var b=
|
|
255
|
-
1<=a.axisX.scaleBreaks.maxNumberOfAutoBreaks,c=a.axisY.scaleBreaks&&a.axisY.scaleBreaks.autoCalculate&&1<=a.axisY.scaleBreaks.maxNumberOfAutoBreaks;if(b||c)for(var e=a.axisY.dataInfo,h=a.axisX.dataInfo,l,B=h.min,n=h.max,d=e.min,q=e.max,h=h._dataRanges,e=e._dataRanges,p,r=0,J=0;J<a.dataSeriesIndexes.length;J++){var z=f.data[a.dataSeriesIndexes[J]];if(!(4>z.dataPoints.length))for(r=0;r<z.dataPoints.length;r++)if(b&&(p=(n+1-B)*Math.max(parseFloat(a.axisX.scaleBreaks.collapsibleThreshold)||
|
|
256
|
-
l=z.dataPoints[r].x.getTime?z.dataPoints[r].x.getTime():z.dataPoints[r].x,p=Math.floor((l-B)/p),l<h[p].min&&(h[p].min=l),l>h[p].max&&(h[p].max=l)),c){var va=(q+1-d)*Math.max(parseFloat(a.axisY.scaleBreaks.collapsibleThreshold)||10,10)/100;if((l="waterfall"===a.type?z.dataPointEOs[r].cumulativeSum:z.dataPoints[r].y)&&l.length)for(var k=0;k<l.length;k++)p=Math.floor((l[k]-d)/va),l[k]<e[p].min&&(e[p].min=l[k]),l[k]>e[p].max&&(e[p].max=l[k]);else g(l)||(p=Math.floor((l-d)/va),l<e[p].min&&(e[p].min=
|
|
257
|
-
l>e[p].max&&(e[p].max=l))}}}}function c(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)&&a.axisX.scaleBreaks&&a.axisX.scaleBreaks.autoCalculate&&1<=a.axisX.scaleBreaks.maxNumberOfAutoBreaks)for(var b=a.axisX.dataInfo,c=b.min,e=b.max,h=b._dataRanges,l,B=0,n=0;n<a.dataSeriesIndexes.length;n++){var g=f.data[a.dataSeriesIndexes[n]];if(!(4>g.dataPoints.length))for(B=0;B<g.dataPoints.length;B++)l=(e+1-c)*Math.max(parseFloat(a.axisX.scaleBreaks.collapsibleThreshold)||10,10)/100,b=g.dataPoints[B].x.getTime?
|
|
171
|
+
this.updateOption("dataPointWidth");this.updateOption("dataPointMinWidth");this.updateOption("dataPointMaxWidth");this.updateOption("interactivityEnabled");this.updateOption("theme");this.stockChart&&this.stockChart.options&&"undefined"!==typeof this.stockChart.options.theme&&g(this.options.theme)?this.theme=this.stockChart.theme:g(this.stockChart)&&g(this.theme)&&(this.theme="light1");this.updateOption("colorSet")&&(this.selectedColorSet="undefined"!==typeof oa[this.colorSet]?oa[this.colorSet]:oa.colorSet1);
|
|
172
|
+
this.updateOption("backgroundColor");this.stockChart&&(this.stockChart.options&&"undefined"!==typeof this.stockChart.options.backgroundColor&&g(this.options.backgroundColor))&&(this.backgroundColor=this.stockChart.backgroundColor);this.backgroundColor||(this.backgroundColor="rgba(0,0,0,0)");this.updateOption("culture");this.stockChart&&g(this.options.culture)&&(this.culture=this.stockChart.culture);this._cultureInfo=new Na(this.culture);this.updateOption("animationEnabled");this.animationEnabled=
|
|
173
|
+
this.animationEnabled&&v;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.stockChart&&this.stockChart.options&&this.stockChart.options.toolbar&&!this.options.toolbar)for(var e in this.stockChart.options.toolbar)this.toolbar[e]=this.stockChart.options.toolbar[e];if(this.options.zoomEnabled||
|
|
174
|
+
this.panEnabled){if(this._zoomButton)Q(this._zoomButton,{borderRight:this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor}),0>=navigator.userAgent.search("MSIE")&&this._zoomButton.childNodes[0]&&Q(this._zoomButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"});else{var c=!1;za(this._zoomButton=document.createElement("button"));ya(this,this._zoomButton,"pan");this._toolBar.appendChild(this._zoomButton);
|
|
175
|
+
this._zoomButton.style.borderRight=this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor;A(this._zoomButton,"touchstart",function(a){c=!0},this.allDOMEventHandlers);A(this._zoomButton,"click",function(){a.zoomEnabled?(a.zoomEnabled=!1,a.panEnabled=!0,ya(a,a._zoomButton,"zoom")):(a.zoomEnabled=!0,a.panEnabled=!1,ya(a,a._zoomButton,"pan"));a.render()},this.allDOMEventHandlers);A(this._zoomButton,"mousemove",function(){c?c=!1:(Q(a._zoomButton,{backgroundColor:a.toolbar.itemBackgroundColorOnHover,
|
|
176
|
+
color:a.toolbar.fontColorOnHover,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&Q(a._zoomButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},this.allDOMEventHandlers);A(this._zoomButton,"mouseout",function(){c||(Q(a._zoomButton,{backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&Q(a._zoomButton.childNodes[0],{WebkitFilter:"invert(0%)",
|
|
177
|
+
filter:"invert(0%)"}))},this.allDOMEventHandlers)}this._resetButton?(Q(this._resetButton,{borderRight:this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor}),0>=navigator.userAgent.search("MSIE")&&this._resetButton.childNodes[0]&&Q(this._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}),this._resetButton.title=this._cultureInfo.resetText):(c=!1,za(this._resetButton=document.createElement("button")),
|
|
178
|
+
ya(this,this._resetButton,"reset"),this._resetButton.style.borderRight=(this.exportEnabled?this.toolbar.buttonBorderThickness:0)+"px solid "+this.toolbar.buttonBorderColor,this._toolBar.appendChild(this._resetButton),A(this._resetButton,"touchstart",function(a){c=!0},this.allDOMEventHandlers),A(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=
|
|
179
|
+
!1,ya(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=null,a.sessionVariables.axisX2[b].newViewportMaximum=null;
|
|
180
|
+
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")&&Q(a._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"});
|
|
181
|
+
za(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.stockChart&&(a.stockChart.rangeUpdatedBy=!a.stockChart.navigator.slider||g(a.stockChart.navigator.slider.options.minimum)&&
|
|
182
|
+
g(a.stockChart.navigator.slider.options.maximum)?!a.stockChart.rangeSelector.enabled||!a.stockChart.rangeSelector.inputFields.enabled||g(a.stockChart.rangeSelector.inputFields.options.startValue)&&g(a.stockChart.rangeSelector.inputFields.options.endValue)?null:"inputFields":"navigator",g(a.stockChart._selectedRangeButtonIndex)||(a.stockChart.rangeUpdatedBy="rangeButton"),a.syncCharts(null,null),"rangeButton"===a.stockChart.rangeUpdatedBy&&a.stockChart.rangeSelector.selectedRangeButtonIndex<a.stockChart.rangeSelector.buttons.length&&
|
|
183
|
+
(b=a.stockChart.rangeSelector.buttons[a.stockChart._selectedRangeButtonIndex],b.enabled&&(b.state="on",b.textBlock.fontWeight="bold",b.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColorOnHover,b.textBlock.backgroundColor=a.stockChart.rangeSelector.buttonStyle.backgroundColorOnSelect,a.stockChart.rangeSelector.sessionVariables._clickedRangeButtonIndex=null,b.render())));a._dispatchRangeEvent("rangeChanged","reset");a.stockChart&&(a.stockChart._rangeEventParameter.type="rangeChanged",
|
|
184
|
+
a.stockChart.dispatchEvent("rangeChanged",a.stockChart._rangeEventParameter,a.stockChart))},this.allDOMEventHandlers),A(this._resetButton,"mousemove",function(){c||(Q(a._resetButton,{backgroundColor:a.toolbar.itemBackgroundColorOnHover,color:a.toolbar.fontColorOnHover,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&Q(a._resetButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},this.allDOMEventHandlers),A(this._resetButton,"mouseout",function(){c||
|
|
185
|
+
(Q(a._resetButton,{backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&Q(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=
|
|
186
|
+
!0,this.panEnabled=!1),Ta(a._zoomButton,a._resetButton)):(this.zoomEnabled=!0,this.panEnabled=!1))}else this.panEnabled=this.zoomEnabled=!1;gb(this);"none"!==this._toolBar.style.display&&this._zoomButton&&(this.panEnabled?ya(a,a._zoomButton,"zoom"):ya(a,a._zoomButton,"pan"),a._resetButton.getAttribute("state")!==a._cultureInfo.resetText&&ya(a,a._resetButton,"reset"));this.options.toolTip&&this.toolTip.options!==this.options.toolTip&&(this.toolTip.options=this.options.toolTip);for(e in this.toolTip.options)this.toolTip.options.hasOwnProperty(e)&&
|
|
187
|
+
this.toolTip.updateOption(e)};s.prototype._updateSize=function(){return jb.call(this,[this.canvas,this.overlaidCanvas,this._eventManager.ghostCanvas])};s.prototype._initialize=function(){this.isNavigator=g(this.parent)||g(this.parent._defaultsKey)||"Navigator"!==this.parent._defaultsKey?!1:!0;this._animator?this._animator.cancelAllAnimations():this._animator=new fa(this);this.removeAllEventListeners();this.disableToolTip=!1;this._axes=[];this.funnelPyramidClickHandler=this.pieDoughnutClickHandler=
|
|
188
|
+
null;this._updateOptions();this.animatedRender=v&&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,this.height,this.isNavigator?0:2);this.plotArea.layoutManager&&this.plotArea.layoutManager.reset();
|
|
189
|
+
this.data=[];this.title=null;this.subtitles=[];var a=0,e=null;if(this.options.data){for(var c=0;c<this.options.data.length;c++)if(a++,!this.options.data[c].type||0<=s._supportedChartTypes.indexOf(this.options.data[c].type)){var b=new L(this,this.options.data[c],a-1,++this._eventManager.lastObjectId);if(!g(b)&&b.dataPoints)for(var f=0;f<b.dataPoints.length;f++)if(b.dataPoints[f].x&&b.dataPoints[f].x.getTime){b.xValueType="dateTime";break}"error"===b.type&&(b.linkedDataSeriesIndex=g(this.options.data[c].linkedDataSeriesIndex)?
|
|
190
|
+
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]],b.color=this.selectedColorSet[b.index%this.selectedColorSet.length]):b._colorSet="line"===
|
|
191
|
+
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"===b.type||"spline"===b.type||0<=b.type.toLowerCase().indexOf("area"))&&b.dataPoints&&
|
|
192
|
+
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(m):b.dataPoints.sort(m));this.data.push(b);var f=b.axisPlacement,e=e||f,l;"normal"===f?"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&&
|
|
193
|
+
(this.plotInfo.axisPlacement="normal"):"xySwapped"===f?"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"===f?"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 "'+
|
|
194
|
+
b.type+'" with bar chart':null===this.plotInfo.axisPlacement&&(this.plotInfo.axisPlacement="none"):null===f&&"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"==e&&"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=
|
|
195
|
+
e||"normal",this.data[c]._linkedSeries=null===this.data[c].linkedDataSeriesIndex?null:this.data[this.data[c].linkedDataSeriesIndex])}}this._objectsInitialized=!0;this._plotAreaElements=[]};s._supportedChartTypes=xa("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(" "));
|
|
196
|
+
s.prototype.setLayout=function(){for(var a=this._plotAreaElements,e=0;e<this.data.length;e++)if("normal"===this.plotInfo.axisPlacement||"xySwapped"===this.plotInfo.axisPlacement){if(!this.data[e].axisYType||"primary"===this.data[e].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 y(this,"axisY",this.options.axisY[c],c,"axisY","left")):"xySwapped"===
|
|
197
|
+
this.plotInfo.axisPlacement&&this._axes.push(this.axisY[c]=new y(this,"axisY",this.options.axisY[c],c,"axisY","bottom"));this.data[e].axisY=this.axisY[0<=this.data[e].axisYIndex&&this.data[e].axisYIndex<this.axisY.length?this.data[e].axisYIndex:0];this.axisY[0<=this.data[e].axisYIndex&&this.data[e].axisYIndex<this.axisY.length?this.data[e].axisYIndex:0].dataSeries.push(this.data[e])}else this.axisY.length||("normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY[0]=new y(this,"axisY",this.options.axisY,
|
|
198
|
+
0,"axisY","left")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisY[0]=new y(this,"axisY",this.options.axisY,0,"axisY","bottom"))),this.data[e].axisY=this.axisY[0],this.axisY[0].dataSeries.push(this.data[e]);if("secondary"===this.data[e].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 y(this,"axisY2",this.options.axisY2[c],c,
|
|
199
|
+
"axisY","right")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisY2[c]=new y(this,"axisY2",this.options.axisY2[c],c,"axisY","top"));this.data[e].axisY=this.axisY2[0<=this.data[e].axisYIndex&&this.data[e].axisYIndex<this.axisY2.length?this.data[e].axisYIndex:0];this.axisY2[0<=this.data[e].axisYIndex&&this.data[e].axisYIndex<this.axisY2.length?this.data[e].axisYIndex:0].dataSeries.push(this.data[e])}else this.axisY2.length||("normal"===this.plotInfo.axisPlacement?this._axes.push(this.axisY2[0]=
|
|
200
|
+
new y(this,"axisY2",this.options.axisY2,0,"axisY","right")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisY2[0]=new y(this,"axisY2",this.options.axisY2,0,"axisY","top"))),this.data[e].axisY=this.axisY2[0],this.axisY2[0].dataSeries.push(this.data[e]);if(!this.data[e].axisXType||"primary"===this.data[e].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]=
|
|
201
|
+
new y(this,"axisX",this.options.axisX[c],c,"axisX","bottom")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX[c]=new y(this,"axisX",this.options.axisX[c],c,"axisX","left"));this.data[e].axisX=this.axisX[0<=this.data[e].axisXIndex&&this.data[e].axisXIndex<this.axisX.length?this.data[e].axisXIndex:0];this.axisX[0<=this.data[e].axisXIndex&&this.data[e].axisXIndex<this.axisX.length?this.data[e].axisXIndex:0].dataSeries.push(this.data[e])}else this.axisX.length||("normal"===this.plotInfo.axisPlacement?
|
|
202
|
+
this._axes.push(this.axisX[0]=new y(this,"axisX",this.options.axisX,0,"axisX","bottom")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX[0]=new y(this,"axisX",this.options.axisX,0,"axisX","left"))),this.data[e].axisX=this.axisX[0],this.axisX[0].dataSeries.push(this.data[e]);if("secondary"===this.data[e].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]=
|
|
203
|
+
new y(this,"axisX2",this.options.axisX2[c],c,"axisX","top")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX2[c]=new y(this,"axisX2",this.options.axisX2[c],c,"axisX","right"));this.data[e].axisX=this.axisX2[0<=this.data[e].axisXIndex&&this.data[e].axisXIndex<this.axisX2.length?this.data[e].axisXIndex:0];this.axisX2[0<=this.data[e].axisXIndex&&this.data[e].axisXIndex<this.axisX2.length?this.data[e].axisXIndex:0].dataSeries.push(this.data[e])}else this.axisX2.length||("normal"===
|
|
204
|
+
this.plotInfo.axisPlacement?this._axes.push(this.axisX2[0]=new y(this,"axisX2",this.options.axisX2,0,"axisX","top")):"xySwapped"===this.plotInfo.axisPlacement&&this._axes.push(this.axisX2[0]=new y(this,"axisX2",this.options.axisX2,0,"axisX","right"))),this.data[e].axisX=this.axisX2[0],this.axisX2[0].dataSeries.push(this.data[e])}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"===
|
|
205
|
+
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=
|
|
206
|
+
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&&
|
|
207
|
+
"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(e=0;e<this._axes.length;e++)if(!g(this._axes[e].viewportMinimum)||!g(this._axes[e].viewportMaximum)){c=!0;break}c?(Ta(this._zoomButton,this._resetButton),this._toolBar.style.border=this.toolbar.buttonBorderThickness+
|
|
208
|
+
"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):(za(this._zoomButton,this._resetButton),this._toolBar.style.border=this.toolbar.buttonBorderThickness+"px solid transparent",this.options.zoomEnabled&&(this.zoomEnabled=!0,this.panEnabled=!1));ob(this);this._processData();
|
|
209
|
+
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(e=0;e<this.options.subtitles.length;e++)c=new Ma(this,this.options.subtitles[e],e),this.subtitles.push(c),c.dockInsidePlotArea?a.push(c):c.setLayout();this.legend=new H(this,this.options.legend);for(e=0;e<this.data.length;e++)(this.data[e].showInLegend||"pie"===this.data[e].type||"doughnut"===this.data[e].type||"funnel"===this.data[e].type||
|
|
210
|
+
"pyramid"===this.data[e].type)&&this.legend.dataSeries.push(this.data[e]);this.legend.dockInsidePlotArea?a.push(this.legend):this.legend.setLayout();for(e=0;e<this._axes.length;e++)if(this._axes[e].scaleBreaks&&this._axes[e].scaleBreaks._appliedBreaks.length){v?(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=
|
|
211
|
+
this._preRenderCanvas.getContext("2d");"normal"!==this.plotInfo.axisPlacement&&"xySwapped"!==this.plotInfo.axisPlacement||y.setLayout(this.axisX,this.axisX2,this.axisY,this.axisY2,this.plotInfo.axisPlacement,this.layoutManager.getFreeSpace())};s.prototype.renderElements=function(){if(this.height&&this.width){var a=this._plotAreaElements;this.title&&!this.title.dockInsidePlotArea&&this.title.render();for(var e=0;e<this.subtitles.length;e++)this.subtitles[e].dockInsidePlotArea||this.subtitles[e].render();
|
|
212
|
+
this.legend.dockInsidePlotArea||this.legend.render();if("normal"===this.plotInfo.axisPlacement||"xySwapped"===this.plotInfo.axisPlacement)y.render(this.axisX,this.axisX2,this.axisY,this.axisY2,this.plotInfo.axisPlacement);else if("none"===this.plotInfo.axisPlacement)this.preparePlotArea();else return;for(e=0;e<a.length;e++)a[e].setLayout(),a[e].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)}qb(this);var a=
|
|
213
|
+
this.ctx.miterLimit,f;this.ctx.miterLimit=3;v&&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(e=0;e<this.plotInfo.plotTypes.length;e++)for(var l=this.plotInfo.plotTypes[e],B=0;B<
|
|
214
|
+
l.plotUnits.length;B++){var d=l.plotUnits[B],J=null;d.targetCanvas&&Da(d.targetCanvas);d.targetCanvas=null;this.animatedRender&&(d.targetCanvas=ra(this.width,this.height),d.targetCanvasCtx=d.targetCanvas.getContext("2d"),f=d.targetCanvasCtx.miterLimit,d.targetCanvasCtx.miterLimit=3);"line"===d.type?J=this.renderLine(d):"stepLine"===d.type?J=this.renderStepLine(d):"spline"===d.type?J=this.renderSpline(d):"column"===d.type?J=this.renderColumn(d):"bar"===d.type?J=this.renderBar(d):"area"===d.type?J=
|
|
215
|
+
this.renderArea(d):"stepArea"===d.type?J=this.renderStepArea(d):"splineArea"===d.type?J=this.renderSplineArea(d):"stackedColumn"===d.type?J=this.renderStackedColumn(d):"stackedColumn100"===d.type?J=this.renderStackedColumn100(d):"stackedBar"===d.type?J=this.renderStackedBar(d):"stackedBar100"===d.type?J=this.renderStackedBar100(d):"stackedArea"===d.type?J=this.renderStackedArea(d):"stackedArea100"===d.type?J=this.renderStackedArea100(d):"bubble"===d.type?J=J=this.renderBubble(d):"scatter"===d.type?
|
|
216
|
+
J=this.renderScatter(d):"pie"===d.type?this.renderPie(d):"doughnut"===d.type?this.renderPie(d):"funnel"===d.type?J=this.renderFunnel(d):"pyramid"===d.type?J=this.renderFunnel(d):"candlestick"===d.type?J=this.renderCandlestick(d):"ohlc"===d.type?J=this.renderCandlestick(d):"rangeColumn"===d.type?J=this.renderRangeColumn(d):"error"===d.type?J=this.renderError(d):"rangeBar"===d.type?J=this.renderRangeBar(d):"rangeArea"===d.type?J=this.renderRangeArea(d):"rangeSplineArea"===d.type?J=this.renderRangeSplineArea(d):
|
|
217
|
+
"waterfall"===d.type?J=this.renderWaterfall(d):"boxAndWhisker"===d.type&&(J=this.renderBoxAndWhisker(d));for(var n=0;n<d.dataSeriesIndexes.length;n++)this._dataInRenderedOrder.push(this.data[d.dataSeriesIndexes[n]]);this.animatedRender&&(d.targetCanvasCtx.miterLimit=f,J&&c.push(J))}this.ctx.miterLimit=a;this.animatedRender&&this._breaksCanvasCtx&&c.push({source:this._breaksCanvasCtx,dest:this.plotArea.ctx,animationCallback:z.fadeInAnimation,easingFunction:z.easing.easeInQuad,animationBase:0,startTimePercent:0.7});
|
|
218
|
+
this.animatedRender&&0<this._indexLabels.length&&(f=ra(this.width,this.height).getContext("2d"),Ea(f),c.push(this.renderIndexLabels(f)));var q=this;if(0<c.length)q.disableToolTip=!0,q._animator.animate(200,q.animationDuration,function(a){q.ctx.clearRect(0,0,q.width,q.height);q.ctx.drawImage(b,0,0,Math.floor(q.width*ja),Math.floor(q.height*ja),0,0,q.width,q.height);for(var f=0;f<c.length;f++)J=c[f],1>a&&"undefined"!==typeof J.startTimePercent?a>=J.startTimePercent&&J.animationCallback(J.easingFunction(a-
|
|
219
|
+
J.startTimePercent,0,1,1-J.startTimePercent),J):J.animationCallback(J.easingFunction(a,0,1,1),J);q.dispatchEvent("dataAnimationIterationEnd",{chart:q})},function(){c=[];for(var a=0;a<q.plotInfo.plotTypes.length;a++)for(var f=q.plotInfo.plotTypes[a],e=0;e<f.plotUnits.length;e++){var l=f.plotUnits[e];l.targetCanvas&&Da(l.targetCanvas);l.targetCanvas=null}b=null;q.disableToolTip=!1;q.dispatchEvent("dataAnimationEnd",{chart:q})});else{if(q._breaksCanvas)if(v)q.plotArea.ctx.drawImage(q._breaksCanvas,0,
|
|
220
|
+
0,this.width,this.height);else for(n=0;n<q._axes.length;n++)q._axes[n].createMask();0<q._indexLabels.length&&q.renderIndexLabels();q.dispatchEvent("dataAnimationIterationEnd",{chart:q});q.dispatchEvent("dataAnimationEnd",{chart:q})}this.attachPlotAreaEventHandlers();this.zoomEnabled||(this.panEnabled||!this._zoomButton||"none"===this._zoomButton.style.display)||za(this._zoomButton,this._resetButton);g(this.toolTip._xValue)||g(this.toolTip._dataSeriesIndex)||this.toolTip.showAtX(this.toolTip._xValue,
|
|
221
|
+
this.toolTip._dataSeriesIndex);this.toolTip._updateToolTip();this.renderCount++;La&&(q=this,setTimeout(function(){var a=document.getElementById("ghostCanvasCopy");a&&(Ua(a,q.width,q.height),a.getContext("2d").drawImage(q._eventManager.ghostCanvas,0,0))},2E3));this._breaksCanvas&&(delete this._breaksCanvas,delete this._breaksCanvasCtx);for(n=0;n<this._axes.length;n++)this._axes[n].maskCanvas&&(delete this._axes[n].maskCanvas,delete this._axes[n].maskCtx)}};s.prototype.render=function(a){a&&(this.options=
|
|
222
|
+
a);this._initialize();this.setLayout();this.renderElements();this._preRenderCanvas&&Da(this._preRenderCanvas)};s.prototype.attachPlotAreaEventHandlers=function(){this.attachEvent({context:this,chart:this,mousedown:this._plotAreaMouseDown,mouseup:this._plotAreaMouseUp,mousemove:this._plotAreaMouseMove,cursor:this.panEnabled?"move":"default",capture:!0,bounds:this.plotArea})};s.prototype.categoriseDataSeries=function(){for(var a="",e=0;e<this.data.length;e++)if(a=this.data[e],a.dataPoints&&(0!==a.dataPoints.length&&
|
|
223
|
+
a.visible)&&0<=s._supportedChartTypes.indexOf(a.type)){for(var c=null,b=!1,f=null,l=!1,B=0;B<this.plotInfo.plotTypes.length;B++)if(this.plotInfo.plotTypes[B].type===a.type){b=!0;c=this.plotInfo.plotTypes[B];break}b||(c={type:a.type,totalDataSeries:0,plotUnits:[]},this.plotInfo.plotTypes.push(c));for(B=0;B<c.plotUnits.length;B++)if(c.plotUnits[B].axisYType===a.axisYType&&c.plotUnits[B].axisXType===a.axisXType&&c.plotUnits[B].axisYIndex===a.axisYIndex&&c.plotUnits[B].axisXIndex===a.axisXIndex){l=!0;
|
|
224
|
+
f=c.plotUnits[B];break}l||(f={type:a.type,previousDataSeriesCount:0,index:c.plotUnits.length,plotType:c,axisXType:a.axisXType,axisYType:a.axisYType,axisYIndex:a.axisYIndex,axisXIndex:a.axisXIndex,axisY:"primary"===a.axisYType?this.axisY[0<=a.axisYIndex&&a.axisYIndex<this.axisY.length?a.axisYIndex:0]:this.axisY2[0<=a.axisYIndex&&a.axisYIndex<this.axisY2.length?a.axisYIndex:0],axisX:"primary"===a.axisXType?this.axisX[0<=a.axisXIndex&&a.axisXIndex<this.axisX.length?a.axisXIndex:0]:this.axisX2[0<=a.axisXIndex&&
|
|
225
|
+
a.axisXIndex<this.axisX2.length?a.axisXIndex:0],dataSeriesIndexes:[],yTotals:[],yAbsTotals:[]},c.plotUnits.push(f));c.totalDataSeries++;f.dataSeriesIndexes.push(e);a.plotUnit=f}for(e=0;e<this.plotInfo.plotTypes.length;e++)for(c=this.plotInfo.plotTypes[e],B=a=0;B<c.plotUnits.length;B++)c.plotUnits[B].previousDataSeriesCount=a,a+=c.plotUnits[B].dataSeriesIndexes.length};s.prototype.assignIdToDataPoints=function(){for(var a=0;a<this.data.length;a++){var e=this.data[a];if(e.dataPoints)for(var c=e.dataPoints.length,
|
|
226
|
+
b=0;b<c;b++)e.dataPointIds[b]=++this._eventManager.lastObjectId}};s.prototype._processData=function(){this.assignIdToDataPoints();this.categoriseDataSeries();for(var a=0;a<this.plotInfo.plotTypes.length;a++)for(var e=this.plotInfo.plotTypes[a],c=0;c<e.plotUnits.length;c++){var b=e.plotUnits[c];"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?this._processMultiseriesPlotUnit(b):
|
|
227
|
+
"stackedColumn"===b.type||"stackedBar"===b.type||"stackedArea"===b.type?this._processStackedPlotUnit(b):"stackedColumn100"===b.type||"stackedBar100"===b.type||"stackedArea100"===b.type?this._processStacked100PlotUnit(b):"candlestick"===b.type||"ohlc"===b.type||"rangeColumn"===b.type||"rangeBar"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"error"===b.type||"boxAndWhisker"===b.type?this._processMultiYPlotUnit(b):"waterfall"===b.type&&this._processSpecificPlotUnit(b)}this.calculateAutoBreaks()};
|
|
228
|
+
s.prototype._processMultiseriesPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,l=!1,B=0;B<a.dataSeriesIndexes.length;B++){var g=this.data[a.dataSeriesIndexes[B]],d=0,n=!1,q=!1,p;if("normal"===g.axisPlacement||"xySwapped"===g.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&&
|
|
229
|
+
a.axisX.options.minimum?a.axisX.options.minimum:a.axisX.logarithmic?0:-Infinity,h=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(g.dataPoints[d].x&&g.dataPoints[d].x.getTime||"dateTime"===g.xValueType)l=!0;for(d=0;d<g.dataPoints.length;d++){"undefined"===typeof g.dataPoints[d].x&&(g.dataPoints[d].x=d+
|
|
230
|
+
(a.axisX.logarithmic?1:0));g.dataPoints[d].x.getTime?(l=!0,b=g.dataPoints[d].x.getTime()):b=g.dataPoints[d].x;f=g.dataPoints[d].y;b<c.min&&(c.min=b);b>c.max&&(c.max=b);f<e.min&&"number"===typeof f&&(e.min=f);f>e.max&&"number"===typeof f&&(e.max=f);if(0<d){if(a.axisX.logarithmic){var C=b/g.dataPoints[d-1].x;1>C&&(C=1/C);c.minDiff>C&&1!==C&&(c.minDiff=C)}else C=b-g.dataPoints[d-1].x,0>C&&(C*=-1),c.minDiff>C&&0!==C&&(c.minDiff=C);null!==f&&null!==g.dataPoints[d-1].y&&(a.axisY.logarithmic?(C=f/g.dataPoints[d-
|
|
231
|
+
1].y,1>C&&(C=1/C),e.minDiff>C&&1!==C&&(e.minDiff=C)):(C=f-g.dataPoints[d-1].y,0>C&&(C*=-1),e.minDiff>C&&0!==C&&(e.minDiff=C)))}if(b<r&&!n)null!==f&&(p=b);else{if(!n&&(n=!0,0<d)){d-=2;continue}if(b>h&&!q)q=!0;else if(b>h&&q)continue;g.dataPoints[d].label&&(a.axisX.labels[b]=g.dataPoints[d].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===f?c.viewPortMin===b&&p<b&&(c.viewPortMin=p):(f<e.viewPortMin&&"number"===typeof f&&(e.viewPortMin=f),f>e.viewPortMax&&"number"===
|
|
232
|
+
typeof f&&(e.viewPortMax=f))}}g.axisX.valueType=g.xValueType=l?"dateTime":"number"}};s.prototype._processStackedPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,l=!1,B=[],d=[],J=Infinity,n=-Infinity,q={},p=0;p<a.dataSeriesIndexes.length;p++){var r=this.data[a.dataSeriesIndexes[p]],h=0,C=!1,z=!1,k;if("normal"===r.axisPlacement||"xySwapped"===r.axisPlacement)var u=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:
|
|
233
|
+
a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:-Infinity,v=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(r.dataPoints[h].x&&r.dataPoints[h].x.getTime||"dateTime"===r.xValueType)l=!0;for(h=0;h<r.dataPoints.length;h++){"undefined"===
|
|
234
|
+
typeof r.dataPoints[h].x&&(r.dataPoints[h].x=h+(a.axisX.logarithmic?1:0));r.dataPoints[h].x.getTime?(l=!0,b=r.dataPoints[h].x.getTime()):b=r.dataPoints[h].x;f=g(r.dataPoints[h].y)?0:r.dataPoints[h].y;b<c.min&&(c.min=b);b>c.max&&(c.max=b);if(0<h){if(a.axisX.logarithmic){var x=b/r.dataPoints[h-1].x;1>x&&(x=1/x);c.minDiff>x&&1!==x&&(c.minDiff=x)}else x=b-r.dataPoints[h-1].x,0>x&&(x*=-1),c.minDiff>x&&0!==x&&(c.minDiff=x);null!==f&&null!==r.dataPoints[h-1].y&&(a.axisY.logarithmic?0<f&&(x=f/r.dataPoints[h-
|
|
235
|
+
1].y,1>x&&(x=1/x),e.minDiff>x&&1!==x&&(e.minDiff=x)):(x=f-r.dataPoints[h-1].y,0>x&&(x*=-1),e.minDiff>x&&0!==x&&(e.minDiff=x)))}if(b<u&&!C)null!==r.dataPoints[h].y&&(k=b);else{if(!C&&(C=!0,0<h)){h-=2;continue}if(b>v&&!z)z=!0;else if(b>v&&z)continue;r.dataPoints[h].label&&(a.axisX.labels[b]=r.dataPoints[h].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===r.dataPoints[h].y?c.viewPortMin===b&&k<b&&(c.viewPortMin=k):(q[b]=(q[b]||0)+r.dataPoints[h].y,r.dataPointEOs[h].cumulativeY=
|
|
236
|
+
q[b],a.yTotals[b]=(a.yTotals[b]?a.yTotals[b]:0)+f,a.yAbsTotals[b]=(a.yAbsTotals[b]?a.yAbsTotals[b]:0)+Math.abs(f),0<=f?B[b]?B[b]+=f:(B[b]=f,J=Math.min(f,J)):d[b]?d[b]+=f:(d[b]=f,n=Math.max(f,n)))}}a.axisY.scaleBreaks&&(a.axisY.scaleBreaks.autoCalculate&&1<=a.axisY.scaleBreaks.maxNumberOfAutoBreaks)&&(e.dataPointYPositiveSums?(e.dataPointYPositiveSums.push.apply(e.dataPointYPositiveSums,B),e.dataPointYNegativeSums.push.apply(e.dataPointYPositiveSums,d)):(e.dataPointYPositiveSums=B,e.dataPointYNegativeSums=
|
|
237
|
+
d));r.axisX.valueType=r.xValueType=l?"dateTime":"number"}for(h in B)B.hasOwnProperty(h)&&!isNaN(h)&&(a=B[h],a<e.min&&(e.min=Math.min(a,J)),a>e.max&&(e.max=a),h<c.viewPortMin||h>c.viewPortMax||(a<e.viewPortMin&&(e.viewPortMin=Math.min(a,J)),a>e.viewPortMax&&(e.viewPortMax=a)));for(h in d)d.hasOwnProperty(h)&&!isNaN(h)&&(a=d[h],a<e.min&&(e.min=a),a>e.max&&(e.max=Math.max(a,n)),h<c.viewPortMin||h>c.viewPortMax||(a<e.viewPortMin&&(e.viewPortMin=a),a>e.viewPortMax&&(e.viewPortMax=Math.max(a,n))))}};s.prototype._processStacked100PlotUnit=
|
|
238
|
+
function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,l=!1,B=!1,d=!1,J={},n=[],q=0;q<a.dataSeriesIndexes.length;q++){var p=this.data[a.dataSeriesIndexes[q]],r=0,h=!1,C=!1,z;if("normal"===p.axisPlacement||"xySwapped"===p.axisPlacement)var k=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?
|
|
239
|
+
a.axisX.options.minimum:-Infinity,u=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(p.dataPoints[r].x&&p.dataPoints[r].x.getTime||"dateTime"===p.xValueType)l=!0;for(r=0;r<p.dataPoints.length;r++){"undefined"===typeof p.dataPoints[r].x&&(p.dataPoints[r].x=r+(a.axisX.logarithmic?1:0));p.dataPoints[r].x.getTime?
|
|
240
|
+
(l=!0,b=p.dataPoints[r].x.getTime()):b=p.dataPoints[r].x;f=g(p.dataPoints[r].y)?null:p.dataPoints[r].y;b<c.min&&(c.min=b);b>c.max&&(c.max=b);if(0<r){if(a.axisX.logarithmic){var v=b/p.dataPoints[r-1].x;1>v&&(v=1/v);c.minDiff>v&&1!==v&&(c.minDiff=v)}else v=b-p.dataPoints[r-1].x,0>v&&(v*=-1),c.minDiff>v&&0!==v&&(c.minDiff=v);g(f)||null===p.dataPoints[r-1].y||(a.axisY.logarithmic?0<f&&(v=f/p.dataPoints[r-1].y,1>v&&(v=1/v),e.minDiff>v&&1!==v&&(e.minDiff=v)):(v=f-p.dataPoints[r-1].y,0>v&&(v*=-1),e.minDiff>
|
|
241
|
+
v&&0!==v&&(e.minDiff=v)))}if(b<k&&!h)null!==f&&(z=b);else{if(!h&&(h=!0,0<r)){r-=2;continue}if(b>u&&!C)C=!0;else if(b>u&&C)continue;p.dataPoints[r].label&&(a.axisX.labels[b]=p.dataPoints[r].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===f?c.viewPortMin===b&&z<b&&(c.viewPortMin=z):(J[b]=(J[b]||0)+p.dataPoints[r].y,p.dataPointEOs[r].cumulativeY=J[b],a.yTotals[b]=(a.yTotals[b]?a.yTotals[b]:0)+f,a.yAbsTotals[b]=(a.yAbsTotals[b]?a.yAbsTotals[b]:0)+Math.abs(f),0<=f?B=
|
|
242
|
+
!0:0>f&&(d=!0),n[b]=n[b]?n[b]+Math.abs(f):Math.abs(f))}}p.axisX.valueType=p.xValueType=l?"dateTime":"number"}a.axisY.logarithmic?(e.max=g(e.viewPortMax)?99*Math.pow(a.axisY.logarithmBase,-0.05):Math.max(e.viewPortMax,99*Math.pow(a.axisY.logarithmBase,-0.05)),e.min=g(e.viewPortMin)?1:Math.min(e.viewPortMin,1)):B&&!d?(e.max=g(e.viewPortMax)?99:Math.max(e.viewPortMax,99),e.min=g(e.viewPortMin)?1:Math.min(e.viewPortMin,1)):B&&d?(e.max=g(e.viewPortMax)?99:Math.max(e.viewPortMax,99),e.min=g(e.viewPortMin)?
|
|
243
|
+
-99:Math.min(e.viewPortMin,-99)):!B&&d&&(e.max=g(e.viewPortMax)?-1:Math.max(e.viewPortMax,-1),e.min=g(e.viewPortMin)?-99:Math.min(e.viewPortMin,-99));e.viewPortMin=e.min;e.viewPortMax=e.max;a.dataPointYSums=n}};s.prototype._processMultiYPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,l,B,g=!1,d=0;d<a.dataSeriesIndexes.length;d++){var n=this.data[a.dataSeriesIndexes[d]],q=0,p=!1,r=!1,h,C,z;if("normal"===n.axisPlacement||
|
|
244
|
+
"xySwapped"===n.axisPlacement)var k=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,u=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?
|
|
245
|
+
a.axisX.options.maximum:Infinity;if(n.dataPoints[q].x&&n.dataPoints[q].x.getTime||"dateTime"===n.xValueType)g=!0;for(q=0;q<n.dataPoints.length;q++){"undefined"===typeof n.dataPoints[q].x&&(n.dataPoints[q].x=q+(a.axisX.logarithmic?1:0));n.dataPoints[q].x.getTime?(g=!0,b=n.dataPoints[q].x.getTime()):b=n.dataPoints[q].x;if((f=n.dataPoints[q].y)&&f.length){l=Math.min.apply(null,f);B=Math.max.apply(null,f);C=!0;for(var v=0;v<f.length;v++)null===f.k&&(C=!1);C&&(p||(z=h),h=b)}b<c.min&&(c.min=b);b>c.max&&
|
|
246
|
+
(c.max=b);l<e.min&&(e.min=l);B>e.max&&(e.max=B);0<q&&(a.axisX.logarithmic?(C=b/n.dataPoints[q-1].x,1>C&&(C=1/C),c.minDiff>C&&1!==C&&(c.minDiff=C)):(C=b-n.dataPoints[q-1].x,0>C&&(C*=-1),c.minDiff>C&&0!==C&&(c.minDiff=C)),f&&(null!==f[0]&&n.dataPoints[q-1].y&&null!==n.dataPoints[q-1].y[0])&&(a.axisY.logarithmic?(C=f[0]/n.dataPoints[q-1].y[0],1>C&&(C=1/C),e.minDiff>C&&1!==C&&(e.minDiff=C)):(C=f[0]-n.dataPoints[q-1].y[0],0>C&&(C*=-1),e.minDiff>C&&0!==C&&(e.minDiff=C))));if(!(b<k)||p){if(!p&&(p=!0,0<q)){q-=
|
|
247
|
+
2;h=z;continue}if(b>u&&!r)r=!0;else if(b>u&&r)continue;n.dataPoints[q].label&&(a.axisX.labels[b]=n.dataPoints[q].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);if(c.viewPortMin===b&&f)for(v=0;v<f.length;v++)if(null===f[v]&&h<b){c.viewPortMin=h;break}null===f?c.viewPortMin===b&&h<b&&(c.viewPortMin=h):(l<e.viewPortMin&&(e.viewPortMin=l),B>e.viewPortMax&&(e.viewPortMax=B))}}n.axisX.valueType=n.xValueType=g?"dateTime":"number"}};s.prototype._processSpecificPlotUnit=function(a){if("waterfall"===
|
|
248
|
+
a.type&&a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,l=!1,B=0;B<a.dataSeriesIndexes.length;B++){var g=this.data[a.dataSeriesIndexes[B]],d=0,n=!1,q=!1,p=b=0;if("normal"===g.axisPlacement||"xySwapped"===g.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:
|
|
249
|
+
a.axisX.logarithmic?0:-Infinity,h=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(g.dataPoints[d].x&&g.dataPoints[d].x.getTime||"dateTime"===g.xValueType)l=!0;for(d=0;d<g.dataPoints.length;d++)"undefined"!==typeof g.dataPoints[d].isCumulativeSum&&!0===g.dataPoints[d].isCumulativeSum?(g.dataPointEOs[d].cumulativeSumYStartValue=
|
|
250
|
+
0,g.dataPointEOs[d].cumulativeSum=0===d?0:g.dataPointEOs[d-1].cumulativeSum,g.dataPoints[d].y=0===d?0:g.dataPointEOs[d-1].cumulativeSum):"undefined"!==typeof g.dataPoints[d].isIntermediateSum&&!0===g.dataPoints[d].isIntermediateSum?(g.dataPointEOs[d].cumulativeSumYStartValue=p,g.dataPointEOs[d].cumulativeSum=0===d?0:g.dataPointEOs[d-1].cumulativeSum,g.dataPoints[d].y=0===d?0:b,p=0===d?0:g.dataPointEOs[d-1].cumulativeSum,b=0):(f="number"!==typeof g.dataPoints[d].y?0:g.dataPoints[d].y,g.dataPointEOs[d].cumulativeSumYStartValue=
|
|
251
|
+
0===d?0:g.dataPointEOs[d-1].cumulativeSum,g.dataPointEOs[d].cumulativeSum=0===d?f:g.dataPointEOs[d-1].cumulativeSum+f,b+=f);for(d=0;d<g.dataPoints.length;d++)if("undefined"===typeof g.dataPoints[d].x&&(g.dataPoints[d].x=d+(a.axisX.logarithmic?1:0)),g.dataPoints[d].x.getTime?(l=!0,b=g.dataPoints[d].x.getTime()):b=g.dataPoints[d].x,f=g.dataPoints[d].y,b<c.min&&(c.min=b),b>c.max&&(c.max=b),g.dataPointEOs[d].cumulativeSum<e.min&&(e.min=g.dataPointEOs[d].cumulativeSum),g.dataPointEOs[d].cumulativeSum>
|
|
252
|
+
e.max&&(e.max=g.dataPointEOs[d].cumulativeSum),0<d&&(a.axisX.logarithmic?(p=b/g.dataPoints[d-1].x,1>p&&(p=1/p),c.minDiff>p&&1!==p&&(c.minDiff=p)):(p=b-g.dataPoints[d-1].x,0>p&&(p*=-1),c.minDiff>p&&0!==p&&(c.minDiff=p)),null!==f&&null!==g.dataPoints[d-1].y&&(a.axisY.logarithmic?(f=g.dataPointEOs[d].cumulativeSum/g.dataPointEOs[d-1].cumulativeSum,1>f&&(f=1/f),e.minDiff>f&&1!==f&&(e.minDiff=f)):(f=g.dataPointEOs[d].cumulativeSum-g.dataPointEOs[d-1].cumulativeSum,0>f&&(f*=-1),e.minDiff>f&&0!==f&&(e.minDiff=
|
|
253
|
+
f)))),!(b<r)||n){if(!n&&(n=!0,0<d)){d-=2;continue}if(b>h&&!q)q=!0;else if(b>h&&q)continue;g.dataPoints[d].label&&(a.axisX.labels[b]=g.dataPoints[d].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);0<d&&(g.dataPointEOs[d-1].cumulativeSum<e.viewPortMin&&(e.viewPortMin=g.dataPointEOs[d-1].cumulativeSum),g.dataPointEOs[d-1].cumulativeSum>e.viewPortMax&&(e.viewPortMax=g.dataPointEOs[d-1].cumulativeSum));g.dataPointEOs[d].cumulativeSum<e.viewPortMin&&(e.viewPortMin=g.dataPointEOs[d].cumulativeSum);
|
|
254
|
+
g.dataPointEOs[d].cumulativeSum>e.viewPortMax&&(e.viewPortMax=g.dataPointEOs[d].cumulativeSum)}g.axisX.valueType=g.xValueType=l?"dateTime":"number"}};s.prototype.calculateAutoBreaks=function(){function a(a,b,c,f){if(f)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 e(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){var b=
|
|
255
|
+
a.axisX.scaleBreaks&&a.axisX.scaleBreaks.autoCalculate&&1<=a.axisX.scaleBreaks.maxNumberOfAutoBreaks,c=a.axisY.scaleBreaks&&a.axisY.scaleBreaks.autoCalculate&&1<=a.axisY.scaleBreaks.maxNumberOfAutoBreaks;if(b||c)for(var e=a.axisY.dataInfo,h=a.axisX.dataInfo,l,B=h.min,n=h.max,d=e.min,q=e.max,h=h._dataRanges,e=e._dataRanges,p,r=0,J=0;J<a.dataSeriesIndexes.length;J++){var z=f.data[a.dataSeriesIndexes[J]];if(!(4>z.dataPoints.length))for(r=0;r<z.dataPoints.length;r++)if(b&&(p=(n+1-B)*Math.max(parseFloat(a.axisX.scaleBreaks.collapsibleThreshold)||
|
|
256
|
+
10,10)/100,l=z.dataPoints[r].x.getTime?z.dataPoints[r].x.getTime():z.dataPoints[r].x,p=Math.floor((l-B)/p),l<h[p].min&&(h[p].min=l),l>h[p].max&&(h[p].max=l)),c){var va=(q+1-d)*Math.max(parseFloat(a.axisY.scaleBreaks.collapsibleThreshold)||10,10)/100;if((l="waterfall"===a.type?z.dataPointEOs[r].cumulativeSum:z.dataPoints[r].y)&&l.length)for(var k=0;k<l.length;k++)p=Math.floor((l[k]-d)/va),l[k]<e[p].min&&(e[p].min=l[k]),l[k]>e[p].max&&(e[p].max=l[k]);else g(l)||(p=Math.floor((l-d)/va),l<e[p].min&&(e[p].min=
|
|
257
|
+
l),l>e[p].max&&(e[p].max=l))}}}}function c(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)&&a.axisX.scaleBreaks&&a.axisX.scaleBreaks.autoCalculate&&1<=a.axisX.scaleBreaks.maxNumberOfAutoBreaks)for(var b=a.axisX.dataInfo,c=b.min,e=b.max,h=b._dataRanges,l,B=0,n=0;n<a.dataSeriesIndexes.length;n++){var g=f.data[a.dataSeriesIndexes[n]];if(!(4>g.dataPoints.length))for(B=0;B<g.dataPoints.length;B++)l=(e+1-c)*Math.max(parseFloat(a.axisX.scaleBreaks.collapsibleThreshold)||10,10)/100,b=g.dataPoints[B].x.getTime?
|
|
258
258
|
g.dataPoints[B].x.getTime():g.dataPoints[B].x,l=Math.floor((b-c)/l),b<h[l].min&&(h[l].min=b),b>h[l].max&&(h[l].max=b)}}for(var b,f=this,l=!1,B=0;B<this._axes.length;B++)if(this._axes[B].scaleBreaks&&this._axes[B].scaleBreaks.autoCalculate&&1<=this._axes[B].scaleBreaks.maxNumberOfAutoBreaks){l=!0;this._axes[B].dataInfo._dataRanges=[];for(var d=0;d<100/Math.max(parseFloat(this._axes[B].scaleBreaks.collapsibleThreshold)||10,10);d++)this._axes[B].dataInfo._dataRanges.push({min:Infinity,max:-Infinity})}if(l){for(B=
|
|
259
259
|
0;B<this.plotInfo.plotTypes.length;B++)for(l=this.plotInfo.plotTypes[B],d=0;d<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"===
|
|
260
260
|
b.type?e(b):0<=b.type.indexOf("stacked")&&c(b);for(B=0;B<this._axes.length;B++)if(this._axes[B].dataInfo._dataRanges){var J=this._axes[B].dataInfo.min;b=(this._axes[B].dataInfo.max+1-J)*Math.max(parseFloat(this._axes[B].scaleBreaks.collapsibleThreshold)||10,10)/100;var n=this._axes[B].dataInfo._dataRanges,q,p,l=[];if(this._axes[B].dataInfo.dataPointYPositiveSums){var r=this._axes[B].dataInfo.dataPointYPositiveSums;q=n;for(d in r)if(r.hasOwnProperty(d)&&!isNaN(d)&&(p=r[d],!g(p))){var h=Math.floor((p-
|
|
@@ -441,8 +441,8 @@ d&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,d));!thi
|
|
|
441
441
|
if(0<x.length)for(var y=5<t&&E.bevelEnabled?!0:!1,d=0;d<x.length;d++)if(x[d].getTime?h=x[d].x.getTime():h=x[d].x,!(h<a.axisX.dataInfo.viewPortMin||h>a.axisX.dataInfo.viewPortMax)&&!g(x[d].y)&&x[d].y.length&&"number"===typeof x[d].y[0]&&"number"===typeof x[d].y[1]&&"number"===typeof x[d].y[2]&&"number"===typeof x[d].y[3]&&"number"===typeof x[d].y[4]&&5===x[d].y.length){k=a.axisX.convertValueToPixel(h);m=a.axisY.convertValueToPixel(x[d].y[0]);n=a.axisY.convertValueToPixel(x[d].y[1]);q=a.axisY.convertValueToPixel(x[d].y[2]);
|
|
442
442
|
p=a.axisY.convertValueToPixel(x[d].y[3]);r=a.axisY.convertValueToPixel(x[d].y[4]);var F=k-t/2<<0,D=k+t/2<<0,f=x[d].color?x[d].color:E._colorSet[0],A=Math.round(Math.max(1,0.15*t)),G=0===A%2?0:0.5,M=x[d].whiskerColor?x[d].whiskerColor:x[d].color?E.whiskerColor?E.whiskerColor:x[d].color:E.whiskerColor?E.whiskerColor:f,R="number"===typeof x[d].whiskerThickness?x[d].whiskerThickness:"number"===typeof E.options.whiskerThickness?E.whiskerThickness:A,ga=x[d].whiskerDashType?x[d].whiskerDashType:E.whiskerDashType,
|
|
443
443
|
ca=g(x[d].whiskerLength)?g(E.options.whiskerLength)?t:E.whiskerLength:x[d].whiskerLength,ca="number"===typeof ca?0>=ca?0:ca>=t?t:ca:"string"===typeof ca?parseInt(ca)*t/100>t?t:parseInt(ca)*t/100:t,ia=1===Math.round(R)%2?0.5:0,ta=x[d].stemColor?x[d].stemColor:x[d].color?E.stemColor?E.stemColor:x[d].color:E.stemColor?E.stemColor:f,ma="number"===typeof x[d].stemThickness?x[d].stemThickness:"number"===typeof E.options.stemThickness?E.stemThickness:A,I=1===Math.round(ma)%2?0.5:0,H=x[d].stemDashType?x[d].stemDashType:
|
|
444
|
-
E.stemDashType,L=x[d].lineColor?x[d].lineColor:x[d].color?E.lineColor?E.lineColor:x[d].color:E.lineColor?E.lineColor:f,O="number"===typeof x[d].lineThickness?x[d].lineThickness:"number"===typeof E.options.lineThickness?E.lineThickness:A,N=x[d].lineDashType?x[d].lineDashType:E.lineDashType,S=1===Math.round(O)%2?0.5:0,Q=E.upperBoxColor
|
|
445
|
-
x1:F,y1:m,x2:D,y2:n,x3:k,y3:q,x4:k,y4:p,y5:r,borderThickness:A,color:f,stemThickness:ma,stemColor:ta,whiskerThickness:R,whiskerLength:ca,whiskerColor:M,lineThickness:O,lineColor:L};c.save();0<ma&&(c.beginPath(),c.strokeStyle=ta,c.lineWidth=ma,c.setLineDash&&c.setLineDash(U(H,ma)),c.moveTo(k-I,n),c.lineTo(k-I,m),c.stroke(),c.moveTo(k-I,p),c.lineTo(k-I,q),c.stroke());c.restore();b.lineWidth=Math.max(A,4);c.beginPath();P(c,F,Math.min(r,n),D,Math.max(n,r)
|
|
444
|
+
E.stemDashType,L=x[d].lineColor?x[d].lineColor:x[d].color?E.lineColor?E.lineColor:x[d].color:E.lineColor?E.lineColor:f,O="number"===typeof x[d].lineThickness?x[d].lineThickness:"number"===typeof E.options.lineThickness?E.lineThickness:A,N=x[d].lineDashType?x[d].lineDashType:E.lineDashType,S=1===Math.round(O)%2?0.5:0,Q=E.upperBoxColor,Z=E.lowerBoxColor,wa=g(E.options.fillOpacity)?1:E.fillOpacity,T=E.dataPointIds[d];this._eventManager.objectMap[T]={id:T,objectType:"dataPoint",dataSeriesIndex:u,dataPointIndex:d,
|
|
445
|
+
x1:F,y1:m,x2:D,y2:n,x3:k,y3:q,x4:k,y4:p,y5:r,borderThickness:A,color:f,stemThickness:ma,stemColor:ta,whiskerThickness:R,whiskerLength:ca,whiskerColor:M,lineThickness:O,lineColor:L};c.save();0<ma&&(c.beginPath(),c.strokeStyle=ta,c.lineWidth=ma,c.setLineDash&&c.setLineDash(U(H,ma)),c.moveTo(k-I,n),c.lineTo(k-I,m),c.stroke(),c.moveTo(k-I,p),c.lineTo(k-I,q),c.stroke());c.restore();b.lineWidth=Math.max(A,4);c.beginPath();P(c,F,Math.min(r,n),D,Math.max(n,r),Z,0,f,w?y:!1,w?!1:y,!1,!1,wa);c.beginPath();P(c,
|
|
446
446
|
F,Math.min(q,r),D,Math.max(r,q),Q,0,f,w?!1:y,w?y:!1,!1,!1,wa);c.beginPath();c.lineWidth=A;c.strokeStyle=f;c.rect(F-G,Math.min(n,q)-G,D-F+2*G,Math.max(n,q)-Math.min(n,q)+2*G);c.stroke();c.save();0<O&&(c.beginPath(),c.globalAlpha=1,c.setLineDash&&c.setLineDash(U(N,O)),c.strokeStyle=L,c.lineWidth=O,c.moveTo(F,r-S),c.lineTo(D,r-S),c.stroke());c.restore();c.save();0<R&&(c.beginPath(),c.setLineDash&&c.setLineDash(U(ga,R)),c.strokeStyle=M,c.lineWidth=R,c.moveTo(k-ca/2<<0,p-ia),c.lineTo(k+ca/2<<0,p-ia),c.stroke(),
|
|
447
447
|
c.moveTo(k-ca/2<<0,m+ia),c.lineTo(k+ca/2<<0,m+ia),c.stroke());c.restore();v&&(f=V(T),b.strokeStyle=f,b.lineWidth=ma,0<ma&&(b.moveTo(k-G-I,n),b.lineTo(k-G-I,Math.max(m,p)),b.stroke(),b.moveTo(k-G-I,Math.min(m,p)),b.lineTo(k-G-I,q),b.stroke()),P(b,F,Math.max(n,q),D,Math.min(n,q),f,0,null,!1,!1,!1,!1),0<R&&(b.beginPath(),b.lineWidth=R,b.moveTo(k+ca/2,p-ia),b.lineTo(k-ca/2,p-ia),b.stroke(),b.moveTo(k+ca/2,m+ia),b.lineTo(k-ca/2,m+ia),b.stroke()));(x[d].indexLabel||E.indexLabel||x[d].indexLabelFormatter||
|
|
448
448
|
E.indexLabelFormatter)&&this._indexLabels.push({chartType:E.type,dataPoint:x[d],dataSeries:E,point:{x:F+(D-F)/2,y:a.axisY.reversed?m:p},direction:1,bounds:{x1:F,y1:Math.min(m,p),x2:D,y2:Math.max(m,p)},color:f})}}v&&(e.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,
|
|
@@ -531,16 +531,16 @@ a.dataPoint,a.exploded=a.exploded?!1:!0,1<this.dataPoints.length&&t._animator.an
|
|
|
531
531
|
t.dispatchEvent("dataAnimationIterationEnd",{chart:t})});t.dispatchEvent("dataAnimationEnd",{chart:t})});n.radius=D;"doughnut"===n.type&&(n.innerRadius=G)}}};var t=function(a,e,c,b){"undefined"===typeof c&&(c=1);0>=Math.round(e.y4-e.y1)||(a.save(),a.globalAlpha=c,a.beginPath(),a.moveTo(Math.round(e.x1),Math.round(e.y1)),a.lineTo(Math.round(e.x2),Math.round(e.y2)),a.lineTo(Math.round(e.x3),Math.round(e.y3)),a.lineTo(Math.round(e.x4),Math.round(e.y4)),"undefined"!==e.x5&&(a.lineTo(Math.round(e.x5),
|
|
532
532
|
Math.round(e.y5)),a.lineTo(Math.round(e.x6),Math.round(e.y6))),a.closePath(),a.fillStyle=b?b:e.color,a.fill(),a.globalAplha=1,a.restore())};s.prototype.renderFunnel=function(a){function e(){for(var a=0,b=[],c=0;c<E.length;c++){if("undefined"===typeof E[c].y)return-1;E[c].y="number"===typeof E[c].y?E[c].y:0;a+=Math.abs(E[c].y)}if(0===a)return-1;for(c=b[0]=0;c<E.length;c++)b.push(Math.abs(E[c].y)*G/a);return b}function c(){var a=V,b=Y,c=S,e=X,f,h;f=O;h=P-Q;e=Math.abs((h-f)*(b-a+(e-c))/2);c=X-S;f=h-
|
|
533
533
|
f;h=c*(h-P);h=Math.abs(h);h=e+h;for(var e=[],l=0,g=0;g<E.length;g++){if("undefined"===typeof E[g].y)return-1;E[g].y="number"===typeof E[g].y?E[g].y:0;l+=Math.abs(E[g].y)}if(0===l)return-1;for(var d=e[0]=0,n=0,p,q,b=b-a,d=!1,g=0;g<E.length;g++)a=Math.abs(E[g].y)*h/l,d?p=0==Number(c.toFixed(3))?0:a/c:(q=ea*ea*b*b-4*Math.abs(ea)*a,0>q?(q=c,d=(b+q)*(f-n)/2,a-=d,p=f-n,n+=f-n,p+=0==q?0:a/q,n+=a/q,d=!0):(p=(Math.abs(ea)*b-Math.sqrt(q))/2,q=b-2*p/Math.abs(ea),n+=p,n>f&&(n-=p,q=c,d=(b+q)*(f-n)/2,a-=d,p=f-
|
|
534
|
-
n,n+=f-n,p+=a/q,n+=a/q,d=!0),b=q)),e.push(p);return e}function b(){if(u&&E){for(var a,b,c,e,f,l,d,n,p,q,r,k,m,t,B,z,s,w=[],x=[],J={percent:null,total:null},C=null,A=0;A<E.length;A++)s=T[A],s="undefined"!==typeof s.x5?(s.y2+s.y4)/2:(s.y2+s.y3)/2,s=h(s).x2+1,w[A]=L-s
|
|
534
|
+
n,n+=f-n,p+=a/q,n+=a/q,d=!0),b=q)),e.push(p);return e}function b(){if(u&&E){for(var a,b,c,e,f,l,d,n,p,q,r,k,m,t,B,z,s,w=[],x=[],J={percent:null,total:null},C=null,A=0;A<E.length;A++)s=T[A],s="undefined"!==typeof s.x5?(s.y2+s.y4)/2:(s.y2+s.y3)/2,s=h(s).x2+1,w[A]=L-s-Z;s=0.5*Z;for(var A=0,D=E.length-1;A<E.length||0<=D;A++,D--){b=u.reversed?E[D]:E[A];a=b.color?b.color:u.reversed?u._colorSet[(E.length-1-A)%u._colorSet.length]:u._colorSet[A%u._colorSet.length];c=b.indexLabelPlacement||u.indexLabelPlacement||
|
|
535
535
|
"outside";z=b.indexLabelTextAlign||u.indexLabelTextAlign||"left";e=b.indexLabelBackgroundColor||u.indexLabelBackgroundColor||(v?"transparent":null);f=b.indexLabelBorderColor||u.indexLabelBorderColor||(v?"transparent":null);l=g(b.indexLabelBorderThickness)?u.indexLabelBorderThickness:b.indexLabelBorderThickness;d=b.indexLabelFontColor||u.indexLabelFontColor||"#979797";n=g(b.indexLabelFontSize)?u.indexLabelFontSize:b.indexLabelFontSize;p=b.indexLabelFontStyle||u.indexLabelFontStyle||"normal";q=b.indexLabelFontFamily||
|
|
536
536
|
u.indexLabelFontFamily||"arial";r=b.indexLabelFontWeight||u.indexLabelFontWeight||"normal";a=b.indexLabelLineColor||u.options.indexLabelLineColor||a;k="number"===typeof b.indexLabelLineThickness?b.indexLabelLineThickness:"number"===typeof u.indexLabelLineThickness?u.indexLabelLineThickness:2;m=b.indexLabelLineDashType||u.indexLabelLineDashType||"solid";t="undefined"!==typeof b.indexLabelWrap?b.indexLabelWrap:"undefined"!==typeof u.indexLabelWrap?u.indexLabelWrap:!0;B=u.dataPointIds[A];y._eventManager.objectMap[B]=
|
|
537
537
|
{id:B,objectType:"dataPoint",dataPointIndex:A,dataSeriesIndex:0,funnelSection:T[u.reversed?E.length-1-A:A]};"inside"===u.indexLabelPlacement&&(w[A]=A!==da?u.reversed?T[A].x2-T[A].x1:T[A].x3-T[A].x4:T[A].x3-T[A].x6,20>w[A]&&(w[A]=A!==da?u.reversed?T[A].x3-T[A].x4:T[A].x2-T[A].x1:T[A].x2-T[A].x1,w[A]/=2));B=b.indexLabelMaxWidth?b.indexLabelMaxWidth:u.options.indexLabelMaxWidth?u.indexLabelMaxWidth:w[A];if(B>w[A]||0>B)B=w[A];x[A]="inside"===u.indexLabelPlacement?t?Math.max(T[A].height,n):1.5*n:!1;J=
|
|
538
538
|
y.getPercentAndTotal(u,b);if(u.indexLabelFormatter||b.indexLabelFormatter)C={chart:y.options,dataSeries:u,dataPoint:b,total:J.total,percent:J.percent};b=b.indexLabelFormatter?b.indexLabelFormatter(C):b.indexLabel?y.replaceKeywordsWithValue(b.indexLabel,b,u,A):u.indexLabelFormatter?u.indexLabelFormatter(C):u.indexLabel?y.replaceKeywordsWithValue(u.indexLabel,b,u,A):b.label?b.label:"";0>=k&&(k=0);1E3>B&&1E3-B<s&&(B+=1E3-B);g(u.options.indexLabelMaxWidth)&&(u.indexLabelMaxWidth=g(u.indexLabelMaxWidth)?
|
|
539
539
|
B:Math.max(B,u.indexLabelMaxWidth));N.roundRect||Ea(N);c=new ka(N,{fontSize:n,fontFamily:q,fontColor:d,fontStyle:p,fontWeight:r,horizontalAlign:c,textAlign:z,backgroundColor:e,borderColor:f,borderThickness:l,maxWidth:B,maxHeight:!1===x[A]?t?4.28571429*n:1.5*n:x[A],text:b,padding:fa,textBaseline:"middle"});c.measureText();c.height=c.height===2*c.padding?0:c.height;c.width=c.width===2*c.padding?0:c.width;K.push({textBlock:c,id:u.reversed?D:A,isDirty:!1,lineColor:a,lineThickness:k,lineDashType:m,height:c.height<
|
|
540
|
-
c.maxHeight?c.height:c.maxHeight,width:c.width<c.maxWidth?c.width:c.maxWidth})}}}function f(){var a,b,c,e,f,h=[];f=!1;c=0;for(var l,g=L-Y
|
|
540
|
+
c.maxHeight?c.height:c.maxHeight,width:c.width<c.maxWidth?c.width:c.maxWidth})}}}function f(){var a,b,c,e,f,h=[];f=!1;c=0;for(var l,g=L-Y-Z/2,g=u.options.indexLabelMaxWidth?u.indexLabelMaxWidth>g?g:u.indexLabelMaxWidth:g,d=K.length-1;0<=d;d--){l=E[K[d].id];c=K[d];e=c.textBlock;b=(a=r(d)<T.length?K[r(d)]:null)?a.textBlock:null;c=c.height;a&&e.y+c+fa>b.y&&(f=!0);c=l.indexLabelMaxWidth||g;if(c>g||0>c)c=g;h.push(c)}if(f)for(d=K.length-1;0<=d;d--)a=T[d],K[d].textBlock.maxWidth=h[h.length-(d+1)],K[d].textBlock.measureText(),
|
|
541
541
|
K[d].textBlock.height=K[d].textBlock.height===2*K[d].textBlock.padding?0:K[d].textBlock.height,K[d].textBlock.width=K[d].textBlock.width===2*K[d].textBlock.padding?0:K[d].textBlock.width,K[d].textBlock.x=L-g,c=K[d].textBlock.height<K[d].textBlock.maxHeight?K[d].textBlock.height:K[d].textBlock.maxHeight,f=K[d].textBlock.width<K[d].textBlock.maxWidth?K[d].textBlock.width:K[d].textBlock.maxWidth,K[d].height=c,K[d].width=f,c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,K[d].textBlock.y=c-K[d].height/
|
|
542
542
|
2,u.reversed?(K[d].textBlock.y+K[d].height>W+A&&(K[d].textBlock.y=W+A-K[d].height),K[d].textBlock.y<wa-A&&(K[d].textBlock.y=wa-A)):(K[d].textBlock.y<W-A&&(K[d].textBlock.y=W-A),K[d].textBlock.y+K[d].height>wa+A&&(K[d].textBlock.y=wa+A-K[d].height))}function l(){var a,b,c,e;if("inside"!==u.indexLabelPlacement)for(var f=0;f<T.length;f++)0==K[f].textBlock.text.length?K[f].isDirty=!0:(a=T[f],c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,b=u.reversed?"undefined"!==typeof a.x5?c>aa?h(c).x2+1:
|
|
543
|
-
(a.x2+a.x3)/2+1:(a.x2+a.x3)/2+1:"undefined"!==typeof a.x5?c<aa?h(c).x2+1:(a.x4+a.x3)/2+1:(a.x2+a.x3)/2+1,K[f].textBlock.x=b
|
|
543
|
+
(a.x2+a.x3)/2+1:(a.x2+a.x3)/2+1:"undefined"!==typeof a.x5?c<aa?h(c).x2+1:(a.x4+a.x3)/2+1:(a.x2+a.x3)/2+1,K[f].textBlock.x=b+Z,K[f].textBlock.y=c-K[f].height/2,u.reversed?(K[f].textBlock.y+K[f].height>W+A&&(K[f].textBlock.y=W+A-K[f].height),K[f].textBlock.y<wa-A&&(K[f].textBlock.y=wa-A)):(K[f].textBlock.y<W-A&&(K[f].textBlock.y=W-A),K[f].textBlock.y+K[f].height>wa+A&&(K[f].textBlock.y=wa+A-K[f].height)));else for(f=0;f<T.length;f++)0==K[f].textBlock.text.length?K[f].isDirty=!0:(a=T[f],b=a.height,c=
|
|
544
544
|
K[f].height,e=K[f].width,b>=c?(b=f!=da?(a.x4+a.x3)/2-e/2:(a.x5+a.x4)/2-e/2,c=f!=da?(a.y1+a.y3)/2-c/2:(a.y1+a.y4)/2-c/2,K[f].textBlock.x=b,K[f].textBlock.y=c):K[f].isDirty=!0)}function d(){function a(b,c){var e;if(0>b||b>=K.length)return 0;var f,h=K[b].textBlock;if(0>c){c*=-1;f=p(b);e=k(f,b);if(e>=c)return h.y-=c,c;if(0==b)return 0<e&&(h.y-=e),e;e+=a(f,-(c-e));0<e&&(h.y-=e);return e}f=r(b);e=k(b,f);if(e>=c)return h.y+=c,c;if(b==T.length-1)return 0<e&&(h.y+=e),e;e+=a(f,c-e);0<e&&(h.y+=e);return e}function b(){var a,
|
|
545
545
|
e,f,h,l=0,d;h=(P-O+2*A)/q;d=q;for(var g,n=1;n<d;n++){f=n*h;for(var k=K.length-1;0<=k;k--)!K[k].isDirty&&(K[k].textBlock.y<f&&K[k].textBlock.y+K[k].height>f)&&(g=r(k),!(g>=K.length-1)&&K[k].textBlock.y+K[k].height+fa>K[g].textBlock.y&&(K[k].textBlock.y=K[k].textBlock.y+K[k].height-f>f-K[k].textBlock.y?f+1:f-K[k].height-1))}for(g=T.length-1;0<g;g--)if(!K[g].isDirty){f=p(g);if(0>f&&(f=0,K[f].isDirty))break;if(K[g].textBlock.y<K[f].textBlock.y+K[f].height){e=e||g;h=g;for(d=0;K[h].textBlock.y<K[f].textBlock.y+
|
|
546
546
|
K[f].height+fa;){a=a||K[h].textBlock.y+K[h].height;d+=K[h].height;d+=fa;h=f;if(0>=h){h=0;d+=K[h].height;break}f=p(h);if(0>f){h=0;d+=K[h].height;break}}if(h!=g){l=K[h].textBlock.y;a-=l;a=d-a;l=c(a,e,h);break}}}return l}function c(a,b,e){var f=[],h=0,l=0;for(a=Math.abs(a);e<=b;e++)f.push(T[e]);f.sort(function(a,b){return a.height-b.height});for(e=0;e<f.length;e++)if(b=f[e],h<a)l++,h+=K[b.id].height+fa,K[b.id].textBlock.text="",K[b.id].indexLabelText="",K[b.id].isDirty=!0,K[b.id].textBlock.measureText();
|
|
@@ -552,10 +552,10 @@ else break;return l}for(var e,f,h,l,g,n,q=1,B=0;B<2*q;B++){for(var m=K.length-1;
|
|
|
552
552
|
a){b=T[c];break}return b?(a=b.y6?a>b.y6?b.x3+(b.x4-b.x3)/(b.y4-b.y3)*(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 s(a){for(var b=0;b<T.length;b++)K[b].isDirty||(a&&(K[b].textBlock.ctx=a),K[b].textBlock.y+=K[b].textBlock._lineHeight/2,K[b].textBlock.render(!0),K[b].textBlock.y-=K[b].textBlock._lineHeight/2)}function w(a){y.plotArea.layoutManager.reset();a.roundRect||Ea(a);y.title&&(y.title.dockInsidePlotArea||"center"===y.title.horizontalAlign&&
|
|
553
553
|
"center"===y.title.verticalAlign)&&(y.title.ctx=a,y.title.render());if(y.subtitles)for(var b=0;b<y.subtitles.length;b++){var c=y.subtitles[b];if(c.dockInsidePlotArea||"center"===c.horizontalAlign&&"center"===c.verticalAlign)y.subtitles.ctx=a,c.render()}y.legend&&(y.legend.dockInsidePlotArea||"center"===y.legend.horizontalAlign&&"center"===y.legend.verticalAlign)&&(y.legend.ctx=a,y.legend.setLayout(),y.legend.render());Ca.fNg&&Ca.fNg(y)}var y=this;if(!(0>=a.dataSeriesIndexes.length)){for(var u=this.data[a.dataSeriesIndexes[0]],
|
|
554
554
|
E=u.dataPoints,x=this.plotArea,A=0.025*x.width,F=0.01*x.width,D=0,G=x.height-2*A,H=Math.min(x.width-2*F,2.8*x.height),M=!1,R=0;R<E.length;R++)if(!M&&("undefined"!==typeof E[R].indexLabel&&null!==E[R].indexLabel&&0<E[R].indexLabel.toString().length)&&(M=!0),!M&&("undefined"!==typeof E[R].label&&null!==E[R].label&&0<E[R].label.toString().length)&&(M=!0),!M&&"function"===typeof u.indexLabelFormatter||"function"===typeof E[R].indexLabelFormatter)M=!0;M=M||"undefined"!==typeof u.indexLabel&&null!==u.indexLabel&&
|
|
555
|
-
0<u.indexLabel.toString().length;"inside"!==u.indexLabelPlacement&&M||(F=(x.width-0.75*H)/2);var R=x.x1+F,L=x.x2-F,O=x.y1+A,P=x.y2-A,N=a.targetCanvasCtx||this.plotArea.ctx||this.ctx;if(0!=u.length&&(u.dataPoints&&u.visible)&&0!==E.length){var Q,I;a=75*H/100;var
|
|
556
|
-
I=I*a/100):I=parseInt(I),Q>G?Q=G:0>=Q&&(Q=0),I>a?I=a-0.5:0>=I&&(I=0)):"pyramid"===u.type&&(I=Q=0,u.reversed=u.reversed?!1:!0);var F=R+a/2,V=R,Y=R+a,W=u.reversed?P:O,S=F-I/2,X=F+I/2,aa=u.reversed?O+Q:P-Q,wa=u.reversed?O:P;I=u.valueRepresents=u.valueRepresents?u.valueRepresents:"height";R=[];a=[];var T=[],F=[]
|
|
557
|
-
0;I<H.length;I++)F[I]<aa?(R.push(S),a.push(X),da=I):(R.push((F[I]-W+ea*V)/ea),a.push((F[I]-W+ha*Y)/ha));else for(I=0;I<H.length;I++)F[I]<aa?(R.push((F[I]-W+ea*V)/ea),a.push((F[I]-W+ha*Y)/ha),da=I):(R.push(S),a.push(X));for(I=0;I<H.length-1;I++)
|
|
558
|
-
x6:S,y6:aa,id:I,height:F[I+1]-F[I],color
|
|
555
|
+
0<u.indexLabel.toString().length;"inside"!==u.indexLabelPlacement&&M||(F=(x.width-0.75*H)/2);var R=x.x1+F,L=x.x2-F,O=x.y1+A,P=x.y2-A,N=a.targetCanvasCtx||this.plotArea.ctx||this.ctx;if(0!=u.length&&(u.dataPoints&&u.visible)&&0!==E.length){var Q,I;a=75*H/100;var Z=30*(L-a)/100;"funnel"===u.type?(Q=g(u.options.neckHeight)?0.35*G:u.neckHeight,I=g(u.options.neckWidth)?0.25*a:u.neckWidth,"string"===typeof Q&&Q.match(/%$/)?(Q=parseInt(Q),Q=Q*G/100):Q=parseInt(Q),"string"===typeof I&&I.match(/%$/)?(I=parseInt(I),
|
|
556
|
+
I=I*a/100):I=parseInt(I),Q>G?Q=G:0>=Q&&(Q=0),I>a?I=a-0.5:0>=I&&(I=0)):"pyramid"===u.type&&(I=Q=0,u.reversed=u.reversed?!1:!0);var F=R+a/2,V=R,Y=R+a,W=u.reversed?P:O,S=F-I/2,X=F+I/2,aa=u.reversed?O+Q:P-Q,wa=u.reversed?O:P;I=u.valueRepresents=u.valueRepresents?u.valueRepresents:"height";R=[];a=[];var T=[],F=[],$=O,da,ea=(aa-W)/(S-V),ha=-ea,H="area"===I?c():e();if(-1!==H){if(u.reversed)for(F.push($),I=H.length-1;0<I;I--)$+=H[I],F.push($);else for(I=0;I<H.length;I++)$+=H[I],F.push($);if(u.reversed)for(I=
|
|
557
|
+
0;I<H.length;I++)F[I]<aa?(R.push(S),a.push(X),da=I):(R.push((F[I]-W+ea*V)/ea),a.push((F[I]-W+ha*Y)/ha));else for(I=0;I<H.length;I++)F[I]<aa?(R.push((F[I]-W+ea*V)/ea),a.push((F[I]-W+ha*Y)/ha),da=I):(R.push(S),a.push(X));for(I=0;I<H.length-1;I++)$=u.reversed?E[E.length-1-I].color?E[E.length-1-I].color:u._colorSet[(E.length-1-I)%u._colorSet.length]:E[I].color?E[I].color:u._colorSet[I%u._colorSet.length],I===da?T.push({x1:R[I],y1:F[I],x2:a[I],y2:F[I],x3:X,y3:aa,x4:a[I+1],y4:F[I+1],x5:R[I+1],y5:F[I+1],
|
|
558
|
+
x6:S,y6:aa,id:I,height:F[I+1]-F[I],color:$}):T.push({x1:R[I],y1:F[I],x2:a[I],y2:F[I],x3:a[I+1],y3:F[I+1],x4:R[I+1],y4:F[I+1],id:I,height:F[I+1]-F[I],color:$}),u.dataPointEOs[I]&&T[I]&&(u.dataPointEOs[I].sectionsofFunnel=T[I]);var fa=2,K=[],la=!1,ba=[],ja=[],R=!1;a=a=0;xa(ba);for(I=0;I<E.length;I++)E[I].exploded&&(R=!0,u.reversed?ba.push(E.length-1-I):ba.push(I));N.clearRect(x.x1,x.y1,x.width,x.height);N.fillStyle=y.backgroundColor;N.fillRect(x.x1,x.y1,x.width,x.height);if(M&&u.visible&&(b(),l(),"inside"!==
|
|
559
559
|
u.indexLabelPlacement)){f();d();for(I=0;I<E.length;I++)K[I].isDirty||(a=K[I].textBlock.x+K[I].width,a=(L-a)/2,0==I&&(D=a),D>a&&(D=a));for(I=0;I<T.length;I++)T[I].x1+=D,T[I].x2+=D,T[I].x3+=D,T[I].x4+=D,T[I].x5&&(T[I].x5+=D,T[I].x6+=D),K[I].textBlock.x+=D}for(I=0;I<T.length;I++)D=T[I],t(N,D,u.fillOpacity),ja.push(D.y1);w(N);M&&u.visible&&("inside"===u.indexLabelPlacement||y.animationEnabled||q(N),y.animationEnabled||s());if(!M)for(I=0;I<E.length;I++)D=u.dataPointIds[I],a={id:D,objectType:"dataPoint",
|
|
560
560
|
dataPointIndex:I,dataSeriesIndex:0,funnelSection:T[u.reversed?E.length-1-I:I]},y._eventManager.objectMap[D]=a;!y.animationEnabled&&R?m(y,-1,0):y.animationEnabled&&!y.animatedRender&&m(y,-1,0);this.funnelPyramidClickHandler=function(a){var b=-1;if(!la&&!y.isAnimating&&(g(a.dataSeries.explodeOnClick)||a.dataSeries.explodeOnClick)&&(b=u.reversed?E.length-1-a.dataPointIndex:a.dataPointIndex,0<=b)){a=b;if("funnel"===u.type||"pyramid"===u.type)u.reversed?E[E.length-1-a].exploded=E[E.length-1-a].exploded?
|
|
561
561
|
!1:!0:E[a].exploded=E[a].exploded?!1:!0;m(y,b,500)}};return{source:N,dest:this.plotArea.ctx,animationCallback:function(a,b){z.fadeInAnimation(a,b);1<=a&&(m(y,-1,500),w(y.plotArea.ctx||y.ctx))},easingFunction:z.easing.easeInQuad,animationBase:0}}}}};s.prototype.requestAnimFrame=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){window.setTimeout(a,1E3/60)}}();
|
|
@@ -655,29 +655,29 @@ this._labels[c].textBlock;e=e.measureText();var f=0,f=0===this.labelAngle?e.heig
|
|
|
655
655
|
this.tickLength:0:this.tickLength)+b};y.setLayout=function(a,e,c,b,f,l){var d,k,t,n,q=a[0]?a[0].chart:e[0].chart,p=q.isNavigator?0:10,r=q._axes;if(a&&0<a.length)for(var h=0;h<a.length;h++)a[h]&&a[h].calculateAxisParameters();if(e&&0<e.length)for(h=0;h<e.length;h++)e[h].calculateAxisParameters();if(c&&0<c.length)for(h=0;h<c.length;h++)c[h].calculateAxisParameters();if(b&&0<b.length)for(h=0;h<b.length;h++)b[h].calculateAxisParameters();for(h=0;h<r.length;h++)if(r[h]&&r[h].scaleBreaks&&r[h].scaleBreaks._appliedBreaks.length)for(var m=
|
|
656
656
|
r[h].scaleBreaks._appliedBreaks,z=0;z<m.length&&!(m[z].startValue>r[h].viewportMaximum);z++)m[z].endValue<r[h].viewportMinimum||(g(r[h].scaleBreaks.firstBreakIndex)&&(r[h].scaleBreaks.firstBreakIndex=z),m[z].startValue>=r[h].viewPortMinimum&&(r[h].scaleBreaks.lastBreakIndex=z));for(var s=z=0,u=0,v=0,w=0,A=0,y=0,D,G,H=k=0,M,L,O,m=M=L=O=!1,h=0;h<r.length;h++)r[h]&&r[h].title&&(r[h]._titleTextBlock=new ka(r[h].ctx,{text:r[h].title,fontSize:r[h].titleFontSize,fontFamily:r[h].titleFontFamily,fontWeight:r[h].titleFontWeight,
|
|
657
657
|
fontColor:r[h].titleFontColor,fontStyle:r[h].titleFontStyle,borderColor:r[h].titleBorderColor,borderThickness:r[h].titleBorderThickness,backgroundColor:r[h].titleBackgroundColor,cornerRadius:r[h].titleCornerRadius,textBaseline:"middle",textAlign:r[h].titleTextAlign}));for(h=0;h<r.length;h++)if(r[h].title)switch(r[h]._position){case "left":r[h]._titleTextBlock.maxWidth=r[h].titleMaxWidth||l.height;r[h]._titleTextBlock.maxHeight=r[h].titleWrap?0.8*l.width:1.5*r[h].titleFontSize;r[h]._titleTextBlock.angle=
|
|
658
|
-
-90;break;case "right":r[h]._titleTextBlock.maxWidth=r[h].titleMaxWidth||l.height;r[h]._titleTextBlock.maxHeight=r[h].titleWrap?0.8*l.width:1.5*r[h].titleFontSize;r[h]._titleTextBlock.angle=90;break;default:r[h]._titleTextBlock.maxWidth=r[h].titleMaxWidth||l.width,r[h]._titleTextBlock.maxHeight=r[h].titleWrap?0.8*l.height:1.5*r[h].titleFontSize,r[h]._titleTextBlock.angle=0}if("normal"===f){for(var v=[],w=[],A=[],y=[],P=[],Q=[],N=[],U=[];4>z;){var I=0
|
|
658
|
+
-90;break;case "right":r[h]._titleTextBlock.maxWidth=r[h].titleMaxWidth||l.height;r[h]._titleTextBlock.maxHeight=r[h].titleWrap?0.8*l.width:1.5*r[h].titleFontSize;r[h]._titleTextBlock.angle=90;break;default:r[h]._titleTextBlock.maxWidth=r[h].titleMaxWidth||l.width,r[h]._titleTextBlock.maxHeight=r[h].titleWrap?0.8*l.height:1.5*r[h].titleFontSize,r[h]._titleTextBlock.angle=0}if("normal"===f){for(var v=[],w=[],A=[],y=[],P=[],Q=[],N=[],U=[];4>z;){var I=0,Z=0,W=0,V=0,Y=f=0,S=0,ba=0,$=0,X=0,T=0,aa=0;if(c&&
|
|
659
659
|
0<c.length)for(A=[],h=T=0;h<c.length;h++)A.push(Math.ceil(c[h]?c[h].createLabelsAndCalculateWidth():0)),T+=A[h],S+=c[h]&&!q.isNavigator?c[h].margin:0;else A.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateWidth():0));N.push(A);if(b&&0<b.length)for(y=[],h=aa=0;h<b.length;h++)y.push(Math.ceil(b[h]?b[h].createLabelsAndCalculateWidth():0)),aa+=y[h],ba+=b[h]?b[h].margin:0;else y.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateWidth():0));U.push(y);d=Math.round(l.x1+T+S);t=Math.round(l.x2-aa-ba>q.width-
|
|
660
|
-
p?q.width-p:l.x2-aa-ba);if(a&&0<a.length)for(v=[],h
|
|
660
|
+
p?q.width-p:l.x2-aa-ba);if(a&&0<a.length)for(v=[],h=$=0;h<a.length;h++)a[h]&&(a[h].lineCoordinates={}),a[h].lineCoordinates.width=Math.abs(t-d),a[h].title&&(a[h]._titleTextBlock.maxWidth=0<a[h].titleMaxWidth&&a[h].titleMaxWidth<a[h].lineCoordinates.width?a[h].titleMaxWidth:a[h].lineCoordinates.width),v.push(Math.ceil(a[h]?a[h].createLabelsAndCalculateHeight():0)),$+=v[h],f+=a[h]&&!q.isNavigator?a[h].margin:0;else v.push(Math.ceil(a[0]?a[0].createLabelsAndCalculateHeight():0));P.push(v);if(e&&0<e.length)for(w=
|
|
661
661
|
[],h=X=0;h<e.length;h++)e[h]&&(e[h].lineCoordinates={}),e[h].lineCoordinates.width=Math.abs(t-d),e[h].title&&(e[h]._titleTextBlock.maxWidth=0<e[h].titleMaxWidth&&e[h].titleMaxWidth<e[h].lineCoordinates.width?e[h].titleMaxWidth:e[h].lineCoordinates.width),w.push(Math.ceil(e[h]?e[h].createLabelsAndCalculateHeight():0)),X+=w[h],Y+=e[h]&&!q.isNavigator?e[h].margin:0;else w.push(Math.ceil(e[0]?e[0].createLabelsAndCalculateHeight():0));Q.push(w);if(a&&0<a.length)for(h=0;h<a.length;h++)a[h]&&(a[h].lineCoordinates.x1=
|
|
662
662
|
d,t=Math.round(l.x2-aa-ba>q.width-p?q.width-p:l.x2-aa-ba),a[h]._labels&&1<a[h]._labels.length&&(k=n=0,n=a[h]._labels[1],k="dateTime"===a[h].valueType?a[h]._labels[a[h]._labels.length-2]:a[h]._labels[a[h]._labels.length-1],s=n.textBlock.width*Math.cos(Math.PI/180*Math.abs(n.textBlock.angle))+(n.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(n.textBlock.angle)),u=k.textBlock.width*Math.cos(Math.PI/180*Math.abs(k.textBlock.angle))+(k.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/
|
|
663
663
|
180*Math.abs(k.textBlock.angle))),!a[h]||(!a[h].labelAutoFit||g(D)||g(G)||q.isNavigator||q.stockChart)||(k=0,0<a[h].labelAngle?G+u>t&&(a[h].convertPixelToValue(G)>=a[h].viewportMinimum&&a[h].convertPixelToValue(G)<=a[h].viewportMaximum)&&(k+=0<a[h].labelAngle?G+u-t-aa:0):0>a[h].labelAngle?D-s<d&&D-s<a[h].viewportMinimum&&(H=d-(S+a[h].tickLength+A+D-s+a[h].labelFontSize/2)):0===a[h].labelAngle&&(G+u>t&&(a[h].convertPixelToValue(G)>=a[h].viewportMinimum&&a[h].convertPixelToValue(G)<=a[h].viewportMaximum)&&
|
|
664
|
-
(k=G+u/2-t-aa),D-s<d&&D-s<a[h].viewportMinimum&&(H=d-S-a[h].tickLength-A-D+s/2)),a[h].viewportMaximum===a[h].maximum&&a[h].viewportMinimum===a[h].minimum&&0<a[h].labelAngle&&0<k?t-=k:a[h].viewportMaximum===a[h].maximum&&a[h].viewportMinimum===a[h].minimum&&0>a[h].labelAngle&&0<H?d+=H:a[h].viewportMaximum===a[h].maximum&&a[h].viewportMinimum===a[h].minimum&&0===a[h].labelAngle&&(0<H&&(d+=H),0<k&&(t-=k))),q.panEnabled
|
|
665
|
-
|
|
666
|
-
a[h].lineCoordinates.y1+a[h].lineThickness/2),a[h].bounds={x1:d,y1:k,x2:t,y2:n-(
|
|
664
|
+
(k=G+u/2-t-aa),D-s<d&&D-s<a[h].viewportMinimum&&(H=d-S-a[h].tickLength-A-D+s/2)),a[h].viewportMaximum===a[h].maximum&&a[h].viewportMinimum===a[h].minimum&&0<a[h].labelAngle&&0<k?t-=k:a[h].viewportMaximum===a[h].maximum&&a[h].viewportMinimum===a[h].minimum&&0>a[h].labelAngle&&0<H?d+=H:a[h].viewportMaximum===a[h].maximum&&a[h].viewportMinimum===a[h].minimum&&0===a[h].labelAngle&&(0<H&&(d+=H),0<k&&(t-=k))),q.panEnabled?$=g(q.sessionVariables.axisX.height)||q.stockChart?q.sessionVariables.axisX.height=
|
|
665
|
+
$:q.sessionVariables.axisX.height:q.sessionVariables.axisX.height=$,k=Math.round(l.y2-$-f+I),n=Math.round(l.y2),a[h].lineCoordinates.x2=t,a[h].lineCoordinates.width=t-d,a[h].lineCoordinates.y1=k,a[h].lineCoordinates.y2=k,"inside"===a[h].labelPlacement&&0<h&&(a[h].lineCoordinates.y1=a[0].lineCoordinates.y2+I+(a[h].labelEffectiveHeight||0),a[h].lineCoordinates.y2=a[h].lineCoordinates.y1+a[h].lineThickness/2),"inside"===a[h].tickPlacement&&0<h&&(a[h].lineCoordinates.y1+=a[h].tickLength,a[h].lineCoordinates.y2=
|
|
666
|
+
a[h].lineCoordinates.y1+a[h].lineThickness/2),a[h].bounds={x1:d,y1:k,x2:t,y2:n-($+f-v[h]-I),width:t-d},a[h].bounds.height=a[h].bounds.y2-a[h].bounds.y1),I+=v[h]+a[h].margin;if(e&&0<e.length)for(h=0;h<e.length;h++)e[h].lineCoordinates.x1=Math.round(l.x1+T+S),e[h].lineCoordinates.x2=t?t:Math.round(l.x2-aa-ba>q.width-p?q.width-p:l.x2-aa-ba),e[h].lineCoordinates.width=Math.abs(t-d),e[h]._labels&&1<e[h]._labels.length&&(n=e[h]._labels[1],k="dateTime"===e[h].valueType?e[h]._labels[e[h]._labels.length-2]:
|
|
667
667
|
e[h]._labels[e[h]._labels.length-1],s=n.textBlock.width*Math.cos(Math.PI/180*Math.abs(n.textBlock.angle))+(n.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(n.textBlock.angle)),u=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))),q.panEnabled?X=g(q.sessionVariables.axisX2.height)||q.stockChart?q.sessionVariables.axisX2.height=X:q.sessionVariables.axisX2.height:q.sessionVariables.axisX2.height=
|
|
668
|
-
X,k=Math.round(l.y1),n=e[h].lineCoordinates.y1=k+X+Y
|
|
669
|
-
if(c&&0<c.length)for(h=0;h<c.length;h++)S=q.isNavigator?0:10,c[h]&&(d=Math.round(a[0]?a[0].lineCoordinates.x1:e[0].lineCoordinates.x1),S=c[h]._labels&&0<c[h]._labels.length?c[h]._labels[c[h]._labels.length-1].textBlock.height/2:p,k=Math.round(l.y1+X+Y<Math.max(S,p)?Math.max(S,p):l.y1+X+Y),t=Math.round(a[0]?a[0].lineCoordinates.x1:e[0].lineCoordinates.x1),S=0<a.length?0:c[h]._labels&&0<c[h]._labels.length?c[h]._labels[0].textBlock.height/2:p,n=Math.round(l.y2
|
|
668
|
+
X,k=Math.round(l.y1),n=e[h].lineCoordinates.y1=k+X+Y-Z,e[h].lineCoordinates.y2=k,"inside"===e[h].labelPlacement&&0<h&&(e[h].lineCoordinates.y1=e[0].lineCoordinates.y1-Z-(e[h].labelEffectiveHeight||0)-5),"inside"===e[h].tickPlacement&&0<h&&(e[h].lineCoordinates.y1-=e[h].tickLength),e[h].bounds={x1:d,y1:k+(X+Y-("inside"===e[h].labelPlacement&&0===h?w[h]-5:w[h])-Z),x2:t,y2:n,width:t-d},e[h].bounds.height=e[h].bounds.y2-e[h].bounds.y1,Z+=("inside"===e[h].labelPlacement&&0===h?w[h]-5:w[h])+e[h].margin;
|
|
669
|
+
if(c&&0<c.length)for(h=0;h<c.length;h++)S=q.isNavigator?0:10,c[h]&&(d=Math.round(a[0]?a[0].lineCoordinates.x1:e[0].lineCoordinates.x1),S=c[h]._labels&&0<c[h]._labels.length?c[h]._labels[c[h]._labels.length-1].textBlock.height/2:p,k=Math.round(l.y1+X+Y<Math.max(S,p)?Math.max(S,p):l.y1+X+Y),t=Math.round(a[0]?a[0].lineCoordinates.x1:e[0].lineCoordinates.x1),S=0<a.length?0:c[h]._labels&&0<c[h]._labels.length?c[h]._labels[0].textBlock.height/2:p,n=Math.round(l.y2-$-f-S),c[h].lineCoordinates={x1:d-W,y1:k,
|
|
670
670
|
x2:t-W,y2:n,height:Math.abs(n-k)},"inside"===c[h].labelPlacement&&0<h&&(c[h].lineCoordinates.x1=c[0].lineCoordinates.x1-W-(c[h].labelEffectiveWidth||0)-5,c[h].lineCoordinates.x2=c[h].lineCoordinates.x1+c[h].lineThickness/2),"inside"===c[h].tickPlacement&&0<h&&(c[h].lineCoordinates.x1-=c[h].tickLength,c[h].lineCoordinates.x2=c[h].lineCoordinates.x1+c[h].lineThickness/2),c[h].bounds={x1:d-(("inside"===c[h].labelPlacement&&0===h?A[h]-5:A[h])+W),y1:k,x2:t-W,y2:n,height:n-k},c[h].bounds.width=c[h].bounds.x2-
|
|
671
671
|
c[h].bounds.x1,c[h].title&&(c[h]._titleTextBlock.maxWidth=0<c[h].titleMaxWidth&&c[h].titleMaxWidth<c[h].lineCoordinates.height?c[h].titleMaxWidth:c[h].lineCoordinates.height),W+=("inside"===c[h].labelPlacement&&0===h?A[h]-5:A[h])+c[h].margin);if(b&&0<b.length)for(h=0;h<b.length;h++)b[h]&&(d=Math.round(a[0]?a[0].lineCoordinates.x2:e[0].lineCoordinates.x2),t=Math.round(d),S=b[h]._labels&&0<b[h]._labels.length?b[h]._labels[b[h]._labels.length-1].textBlock.height/2:0,k=Math.round(l.y1+X+Y<Math.max(S,
|
|
672
|
-
p)?Math.max(S,p):l.y1+X+Y),S=0<a.length?0:b[h]._labels&&0<b[h]._labels.length?b[h]._labels[0].textBlock.height/2:0,n=Math.round(l.y2-(
|
|
672
|
+
p)?Math.max(S,p):l.y1+X+Y),S=0<a.length?0:b[h]._labels&&0<b[h]._labels.length?b[h]._labels[0].textBlock.height/2:0,n=Math.round(l.y2-($+f+S)),b[h].lineCoordinates={x1:d+V,y1:k,x2:d+V,y2:n,height:Math.abs(n-k)},"inside"===b[h].labelPlacement&&0<h&&(b[h].lineCoordinates.x1=b[0].lineCoordinates.x2+V+(b[h].labelEffectiveWidth||0)+5,b[h].lineCoordinates.x2=b[h].lineCoordinates.x1+b[h].lineThickness/2),"inside"===b[h].tickPlacement&&0<h&&(b[h].lineCoordinates.x1+=b[h].tickLength,b[h].lineCoordinates.x2=
|
|
673
673
|
b[h].lineCoordinates.x1+b[h].lineThickness/2),b[h].bounds={x1:d+V,y1:k,x2:t+(("inside"===b[h].labelPlacement&&0===h?y[h]-5:y[h])+V),y2:n,height:n-k},b[h].bounds.width=b[h].bounds.x2-b[h].bounds.x1,b[h].title&&(b[h]._titleTextBlock.maxWidth=0<b[h].titleMaxWidth&&b[h].titleMaxWidth<b[h].lineCoordinates.height?b[h].titleMaxWidth:b[h].lineCoordinates.height),V+=("inside"===b[h].labelPlacement&&0===h?y[h]-5:y[h])+b[h].margin);if(a&&0<a.length)for(h=0;h<a.length;h++)a[h]&&(a[h].calculateValueToPixelConversionParameters(),
|
|
674
674
|
a[h].calculateBreaksSizeInValues(),a[h]._labels&&1<a[h]._labels.length&&(D=(a[h].logarithmic?Math.log(a[h]._labels[1].position/a[h].viewportMinimum)/a[h].conversionParameters.lnLogarithmBase:a[h]._labels[1].position-a[h].viewportMinimum)*Math.abs(a[h].conversionParameters.pixelPerUnit)+a[h].lineCoordinates.x1,d=a[h]._labels[a[h]._labels.length-("dateTime"===a[h].valueType?2:1)].position,d=a[h].getApparentDifference(a[h].viewportMinimum,d),G=a[h].logarithmic?(1<d?Math.log(d)/a[h].conversionParameters.lnLogarithmBase*
|
|
675
675
|
Math.abs(a[h].conversionParameters.pixelPerUnit):0)+a[h].lineCoordinates.x1:(0<d?d*Math.abs(a[h].conversionParameters.pixelPerUnit):0)+a[h].lineCoordinates.x1));if(e&&0<e.length)for(h=0;h<e.length;h++)e[h].calculateValueToPixelConversionParameters(),e[h].calculateBreaksSizeInValues(),e[h]._labels&&1<e[h]._labels.length&&(D=(e[h].logarithmic?Math.log(e[h]._labels[1].position/e[h].viewportMinimum)/e[h].conversionParameters.lnLogarithmBase:e[h]._labels[1].position-e[h].viewportMinimum)*Math.abs(e[h].conversionParameters.pixelPerUnit)+
|
|
676
676
|
e[h].lineCoordinates.x1,d=e[h]._labels[e[h]._labels.length-("dateTime"===e[h].valueType?2:1)].position,d=e[h].getApparentDifference(e[h].viewportMinimum,d),G=e[h].logarithmic?(1<d?Math.log(d)/e[h].conversionParameters.lnLogarithmBase*Math.abs(e[h].conversionParameters.pixelPerUnit):0)+e[h].lineCoordinates.x1:(0<d?d*Math.abs(e[h].conversionParameters.pixelPerUnit):0)+e[h].lineCoordinates.x1);for(h=0;h<r.length;h++)"axisY"===r[h].type&&(r[h].calculateValueToPixelConversionParameters(),r[h].calculateBreaksSizeInValues());
|
|
677
677
|
if(0<z){if(a&&0<a.length)for(h=0;h<a.length;h++)m=P[z-1][h]===P[z][h]?!0:!1;else m=!0;if(e&&0<e.length)for(h=0;h<e.length;h++)M=Q[z-1][h]===Q[z][h]?!0:!1;else M=!0;if(c&&0<c.length)for(h=0;h<c.length;h++)L=N[z-1][h]===N[z][h]?!0:!1;else L=!0;if(b&&0<b.length)for(h=0;h<b.length;h++)O=U[z-1][h]===U[z][h]?!0:!1;else O=!0}if(m&&M&&L&&O)break;z++}if(a&&0<a.length)for(h=0;h<a.length;h++)a[h].calculateStripLinesThicknessInValues(),a[h].calculateBreaksInPixels();if(e&&0<e.length)for(h=0;h<e.length;h++)e[h].calculateStripLinesThicknessInValues(),
|
|
678
|
-
e[h].calculateBreaksInPixels();if(c&&0<c.length)for(h=0;h<c.length;h++)c[h].calculateStripLinesThicknessInValues(),c[h].calculateBreaksInPixels();if(b&&0<b.length)for(h=0;h<b.length;h++)b[h].calculateStripLinesThicknessInValues(),b[h].calculateBreaksInPixels()}else{p=[];D=[];H=[];s=[];G=[];u=[];P=[];for(Q=[];4>z;){
|
|
679
|
-
a[0].createLabelsAndCalculateWidth():0));P.push(H);if(e&&0<e.length)for(s=[],h
|
|
680
|
-
Math.max(d,v/2):d),0<!e.length&&(t=0<c[h].labelAngle?t-w/2:0===c[h].labelAngle?t-w/2:t)),c[h].lineCoordinates.x1=d,c[h].lineCoordinates.x2=t,c[h].lineCoordinates.width=Math.abs(t-d),c[h].title&&(c[h]._titleTextBlock.maxWidth=0<c[h].titleMaxWidth&&c[h].titleMaxWidth<c[h].lineCoordinates.width?c[h].titleMaxWidth:c[h].lineCoordinates.width);if(b&&0<b.length)for(h=0;h<b.length;h++)b[h].lineCoordinates={},d=Math.round(l.x1+V+f),t=Math.round(l.x2
|
|
678
|
+
e[h].calculateBreaksInPixels();if(c&&0<c.length)for(h=0;h<c.length;h++)c[h].calculateStripLinesThicknessInValues(),c[h].calculateBreaksInPixels();if(b&&0<b.length)for(h=0;h<b.length;h++)b[h].calculateStripLinesThicknessInValues(),b[h].calculateBreaksInPixels()}else{p=[];D=[];H=[];s=[];G=[];u=[];P=[];for(Q=[];4>z;){$=V=W=ba=S=Y=f=U=N=I=X=0;if(a&&0<a.length)for(H=[],h=V=0;h<a.length;h++)H.push(Math.ceil(a[h]?a[h].createLabelsAndCalculateWidth():0)),V+=H[h],f+=a[h]&&!q.isNavigator?a[h].margin:0;else H.push(Math.ceil(a[0]?
|
|
679
|
+
a[0].createLabelsAndCalculateWidth():0));P.push(H);if(e&&0<e.length)for(s=[],h=$=0;h<e.length;h++)s.push(Math.ceil(e[h]?e[h].createLabelsAndCalculateWidth():0)),$+=s[h],Y+=e[h]?e[h].margin:0;else s.push(Math.ceil(e[0]?e[0].createLabelsAndCalculateWidth():0));Q.push(s);if(c&&0<c.length)for(h=0;h<c.length;h++)c[h].lineCoordinates={},d=Math.round(l.x1+V+f),t=Math.round(l.x2-$-Y>q.width-10?q.width-10:l.x2-$-Y),c[h].labelAutoFit&&!g(v)&&(0<!a.length&&(d=0>c[h].labelAngle?Math.max(d,v):0===c[h].labelAngle?
|
|
680
|
+
Math.max(d,v/2):d),0<!e.length&&(t=0<c[h].labelAngle?t-w/2:0===c[h].labelAngle?t-w/2:t)),c[h].lineCoordinates.x1=d,c[h].lineCoordinates.x2=t,c[h].lineCoordinates.width=Math.abs(t-d),c[h].title&&(c[h]._titleTextBlock.maxWidth=0<c[h].titleMaxWidth&&c[h].titleMaxWidth<c[h].lineCoordinates.width?c[h].titleMaxWidth:c[h].lineCoordinates.width);if(b&&0<b.length)for(h=0;h<b.length;h++)b[h].lineCoordinates={},d=Math.round(l.x1+V+f),t=Math.round(l.x2-$-Y>b[h].chart.width-10?b[h].chart.width-10:l.x2-$-Y),b[h]&&
|
|
681
681
|
b[h].labelAutoFit&&!g(A)&&(0<!a.length&&(d=0<b[h].labelAngle?Math.max(d,A):0===b[h].labelAngle?Math.max(d,A/2):d),0<!e.length&&(t-=y/2)),b[h].lineCoordinates.x1=d,b[h].lineCoordinates.x2=t,b[h].lineCoordinates.width=Math.abs(t-d),b[h].title&&(b[h]._titleTextBlock.maxWidth=0<b[h].titleMaxWidth&&b[h].titleMaxWidth<b[h].lineCoordinates.width?b[h].titleMaxWidth:b[h].lineCoordinates.width);if(c&&0<c.length)for(p=[],h=W=0;h<c.length;h++)p.push(Math.ceil(c[h]?c[h].createLabelsAndCalculateHeight():0)),W+=
|
|
682
682
|
p[h]+c[h].margin,S+=c[h].margin;else p.push(Math.ceil(c[0]?c[0].createLabelsAndCalculateHeight():0));G.push(p);if(b&&0<b.length)for(D=[],h=0;h<b.length;h++)D.push(Math.ceil(b[h]?b[h].createLabelsAndCalculateHeight():0)),ba+=b[h].margin;else D.push(Math.ceil(b[0]?b[0].createLabelsAndCalculateHeight():0));u.push(D);if(c&&0<c.length)for(h=0;h<c.length;h++)0<c[h]._labels.length&&(n=c[h]._labels[0],k=c[h]._labels[c[h]._labels.length-1],v=n.textBlock.width*Math.cos(Math.PI/180*Math.abs(n.textBlock.angle))+
|
|
683
683
|
(n.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/180*Math.abs(n.textBlock.angle)),w=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(h=0;h<b.length;h++)b[h]&&0<b[h]._labels.length&&(n=b[h]._labels[0],k=b[h]._labels[b[h]._labels.length-1],A=n.textBlock.width*Math.cos(Math.PI/180*Math.abs(n.textBlock.angle))+(n.textBlock.height-k.textBlock.fontSize/2)*Math.sin(Math.PI/
|
|
@@ -688,8 +688,8 @@ c[h].lineCoordinates.y1+c[h].lineThickness/2),c[h].bounds={x1:d,y1:k-(p[h]+X+c[h
|
|
|
688
688
|
0<b[h].titleMaxWidth&&b[h].titleMaxWidth<b[h].lineCoordinates.width?b[h].titleMaxWidth:b[h].lineCoordinates.width),I+=D[h]+b[h].margin);if(a&&0<a.length)for(h=0;h<a.length;h++){S=a[h]._labels&&0<a[h]._labels.length?a[h]._labels[0].textBlock.fontSize/2:0;d=Math.round(l.x1+f);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;t=Math.round(l.x1+V+f);n=c&&0<c.length?Math.round(c[0]?c[0].lineCoordinates.y1:l.y2-W>q.height-
|
|
689
689
|
Math.max(S,10)?q.height-Math.max(S,10):l.y2-W):l.y2>q.height-Math.max(S,10)?q.height-Math.max(S,10):l.y2;if(c&&0<c.length)for(S=0;S<c.length;S++)c[S]&&c[S].labelAutoFit&&(t=c[S].lineCoordinates.x1,d=0>c[S].labelAngle||0===c[S].labelAngle?t-V:d);if(b&&0<b.length)for(S=0;S<b.length;S++)b[S]&&b[S].labelAutoFit&&(t=b[S].lineCoordinates.x1,d=t-V);a[h].lineCoordinates={x1:t-N,y1:k,x2:t-N,y2:n,height:Math.abs(n-k)};"inside"===a[h].labelPlacement&&0<h&&(a[h].lineCoordinates.x1=a[h].lineCoordinates.x1-(H[h]-
|
|
690
690
|
(a[h]._titleTextBlock?a[h]._titleTextBlock.height:0))+a[h].tickLength+(a[h].stripLineLabelEffectiveWidth||0),a[h].lineCoordinates.x2=a[h].lineCoordinates.x1+a[h].lineThickness/2);"inside"===a[h].tickPlacement&&0<h&&(a[h].lineCoordinates.x1-=a[h].tickLength,a[h].lineCoordinates.x2=a[h].lineCoordinates.x1+a[h].lineThickness/2);a[h].bounds={x1:t-(H[h]+N),y1:k,x2:t-N,y2:n,height:n-k};a[h].bounds.width=a[h].bounds.x2-a[h].bounds.x1;a[h].title&&(a[h]._titleTextBlock.maxWidth=0<a[h].titleMaxWidth&&a[h].titleMaxWidth<
|
|
691
|
-
a[h].lineCoordinates.height?a[h].titleMaxWidth:a[h].lineCoordinates.height);a[h].calculateValueToPixelConversionParameters();a[h].calculateBreaksSizeInValues();N+=H[h]+a[h].margin}if(e&&0<e.length)for(h=0;h<e.length;h++){S=e[h]._labels&&0<e[h]._labels.length?e[h]._labels[0].textBlock.fontSize/2:0;d=Math.round(l.x1-f);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;t=Math.round(l.x2
|
|
692
|
-
c[0].lineCoordinates.y1:l.y2-W>q.height-Math.max(S,10)?q.height-Math.max(S,10):l.y2-W):l.y2>q.height-Math.max(S,10)?q.height-Math.max(S,10):l.y2;if(c&&0<c.length)for(S=0;S<c.length;S++)c[S]&&c[S].labelAutoFit&&(t=0>c[S].labelAngle?Math.max(t,v):0===c[S].labelAngle?Math.max(t,v/2):t,d=0>c[S].labelAngle||0===c[S].labelAngle?t
|
|
691
|
+
a[h].lineCoordinates.height?a[h].titleMaxWidth:a[h].lineCoordinates.height);a[h].calculateValueToPixelConversionParameters();a[h].calculateBreaksSizeInValues();N+=H[h]+a[h].margin}if(e&&0<e.length)for(h=0;h<e.length;h++){S=e[h]._labels&&0<e[h]._labels.length?e[h]._labels[0].textBlock.fontSize/2:0;d=Math.round(l.x1-f);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;t=Math.round(l.x2-$-Y);n=c&&0<c.length?Math.round(c[0]?
|
|
692
|
+
c[0].lineCoordinates.y1:l.y2-W>q.height-Math.max(S,10)?q.height-Math.max(S,10):l.y2-W):l.y2>q.height-Math.max(S,10)?q.height-Math.max(S,10):l.y2;if(c&&0<c.length)for(S=0;S<c.length;S++)c[S]&&c[S].labelAutoFit&&(t=0>c[S].labelAngle?Math.max(t,v):0===c[S].labelAngle?Math.max(t,v/2):t,d=0>c[S].labelAngle||0===c[S].labelAngle?t-$:d);if(b&&0<b.length)for(S=0;S<b.length;S++)b[S]&&b[S].labelAutoFit&&(t=b[S].lineCoordinates.x2,d=t-$);e[h].lineCoordinates={x1:t+U,y1:k,x2:t+U,y2:n,height:Math.abs(n-k)};"inside"===
|
|
693
693
|
e[h].labelPlacement&&0<h&&(e[h].lineCoordinates.x1=e[h].lineCoordinates.x1+(s[h]-(e[h]._titleTextBlock?e[h]._titleTextBlock.height:0)-2)-e[h].tickLength-(e[h].stripLineLabelEffectiveWidth||0),e[h].lineCoordinates.x2=e[h].lineCoordinates.x1+e[h].lineThickness/2);"inside"===e[h].tickPlacement&&0<h&&(e[h].lineCoordinates.x1+=e[h].tickLength,e[h].lineCoordinates.x2=e[h].lineCoordinates.x1+e[h].lineThickness/2);e[h].bounds={x1:e[h].lineCoordinates.x1,y1:k,x2:t+s[h]+U,y2:n,width:t-d,height:n-k};e[h].bounds.width=
|
|
694
694
|
e[h].bounds.x2-e[h].bounds.x1;e[h].title&&(e[h]._titleTextBlock.maxWidth=0<e[h].titleMaxWidth&&e[h].titleMaxWidth<e[h].lineCoordinates.height?e[h].titleMaxWidth:e[h].lineCoordinates.height);e[h].calculateValueToPixelConversionParameters();e[h].calculateBreaksSizeInValues();U+=s[h]+e[h].margin}for(h=0;h<r.length;h++)"axisY"===r[h].type&&(r[h].calculateValueToPixelConversionParameters(),r[h].calculateBreaksSizeInValues());if(0<z){if(a&&0<a.length)for(h=0;h<a.length;h++)m=P[z-1][h]===P[z][h]?!0:!1;else m=
|
|
695
695
|
!0;if(e&&0<e.length)for(h=0;h<e.length;h++)M=Q[z-1][h]===Q[z][h]?!0:!1;else M=!0;if(c&&0<c.length)for(h=0;h<c.length;h++)L=G[z-1][h]===G[z][h]?!0:!1;else L=!0;if(b&&0<b.length)for(h=0;h<b.length;h++)O=u[z-1][h]===u[z][h]?!0:!1;else O=!0}if(m&&M&&L&&O)break;z++}if(c&&0<c.length)for(h=0;h<c.length;h++)c[h].calculateStripLinesThicknessInValues(),c[h].calculateBreaksInPixels();if(b&&0<b.length)for(h=0;h<b.length;h++)b[h].calculateStripLinesThicknessInValues(),b[h].calculateBreaksInPixels();if(a&&0<a.length)for(h=
|
|
@@ -955,7 +955,7 @@ fa.prototype.cancelAllAnimations=function(){this.animations=[];this.animationReq
|
|
|
955
955
|
0,b.width,b.height,f-f*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,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*
|
|
956
956
|
(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}}},k={drawMarker:function(a,d,c,b,f,g,k,t){if(c){var m=1;c.fillStyle=g?g:"#000000";c.strokeStyle=k?k:"#000000";c.lineWidth=t?t:0;c.setLineDash&&c.setLineDash(U("solid",t));"circle"===b?(c.moveTo(a,d),c.beginPath(),c.arc(a,d,f/2,0,2*Math.PI,!1),g&&c.fill(),t&&(k?c.stroke():(m=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle=
|
|
957
957
|
"black",c.stroke(),c.globalAlpha=m))):"square"===b?(c.beginPath(),c.rect(a-f/2,d-f/2,f,f),g&&c.fill(),t&&(k?c.stroke():(m=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=m))):"triangle"===b?(c.beginPath(),c.moveTo(a-f/2,d+f/2),c.lineTo(a+f/2,d+f/2),c.lineTo(a,d-f/2),c.closePath(),g&&c.fill(),t&&(k?c.stroke():(m=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle="black",c.stroke(),c.globalAlpha=m)),c.beginPath()):"cross"===b&&(c.strokeStyle=g,c.lineWidth=f/4,c.beginPath(),
|
|
958
|
-
c.moveTo(a-f/2,d-f/2),c.lineTo(a+f/2,d+f/2),c.stroke(),c.moveTo(a+f/2,d-f/2),c.lineTo(a-f/2,d+f/2),c.stroke())}},drawMarkers:function(a){for(var d=0;d<a.length;d++){var c=a[d];k.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return s}();Ja.version="v3.10.
|
|
958
|
+
c.moveTo(a-f/2,d-f/2),c.lineTo(a+f/2,d+f/2),c.stroke(),c.moveTo(a+f/2,d-f/2),c.lineTo(a-f/2,d+f/2),c.stroke())}},drawMarkers:function(a){for(var d=0;d<a.length;d++){var c=a[d];k.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return s}();Ja.version="v3.10.14 GA";window.CanvasJS&&(Ja&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=Ja);ea.StockChart={width:500,height:600,backgroundColor:"white",theme:"light1",animationEnabled:!1,animationDuration:1200,culture:"en",
|
|
959
959
|
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"}};ea.Navigator={enabled:!0,width:500,height:70,verticalAlign:"bottom",horizontalAlign:"left",dynamicUpdate:!0,backgroundColor:"#fff",
|
|
960
960
|
animationEnabled:!1,animationDuration:1200,theme:"light1",colorSet:"colorSet1",publicProperties:{slider:"readWrite",backgroundColor:"readWrite",animationEnabled:"readWrite",animationDuration:"readWrite",theme:"readWrite",axisX:"readWrite",axisY:"readWrite",axisX2:"readWrite",axisY2:"readWrite",data:"readWrite",colorSet:"readWrite",options:"readWrite",bounds:"readOnly"}};ea.RangeSelector={enabled:!0,width:500,height:35,label:"Range",verticalAlign:"top",horizontalAlign:"center",selectedRangeButtonIndex:null,
|
|
961
961
|
publicProperties:{options:"readWrite",buttons:"readWrite",inputFields:"readWrite",buttonStyle:"readWrite",bounds:"readOnly"}};ea.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"}};ea.ButtonStyle={backgroundColor:"#fff",backgroundColorOnHover:"#2196f3",backgroundColorOnSelect:"#2196f3",borderColor:"#2196f3",borderThickness:2,labelFontColor:"#000",
|
|
@@ -994,8 +994,8 @@ k.stockChart.navigator.chart.axisX[0]:k.stockChart.navigator.chart.axisX2[0]),b=
|
|
|
994
994
|
null:!g(c)&&c>(d?d.minimum:null)?Math.min(d?d.maximum:null,c):d?d.maximum:null;k.stockChart._rangeEventParameter={stockChart:k.stockChart,source:"inputFields",index:null,minimum:Math.min(a,e),maximum:Math.max(a,e)};k.stockChart._rangeEventParameter.type="rangeChanging";k.stockChart.dispatchEvent("rangeChanging",k.stockChart._rangeEventParameter,k.stockChart);k.stockChart.sessionVariables._axisXMin=a;k.stockChart.sessionVariables._axisXMax=e;k.stockChart._syncCharts(a,e);k.stockChart._rangeEventParameter.type=
|
|
995
995
|
"rangeChanged";k.stockChart.dispatchEvent("rangeChanged",k.stockChart._rangeEventParameter,k.stockChart);k.stockChart.rangeSelector&&k.stockChart.rangeSelector.resetRangeButtons();k.stockChart.rangeUpdatedBy="inputFields"}},this.rangeSelector.stockChart.allDOMEventHandlers);A(this.elements[0],"keydown",function(a){k.enabled&&13===a.keyCode&&(this.blur(),a.preventDefault&&a.preventDefault())},this.rangeSelector.stockChart.allDOMEventHandlers);A(this.elements[1],"keydown",function(a){k.enabled&&13===
|
|
996
996
|
a.keyCode&&(this.blur(),a.preventDefault&&a.preventDefault())},this.rangeSelector.stockChart.allDOMEventHandlers)}function da(d,g){da.base.constructor.call(this,"ButtonStyle","buttonStyle",g,null,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=d.rangeSelector;this.optionsName="buttonStyle"}function ea(d,g){ea.base.constructor.call(this,"Style","style",g,null,d.rangeSelector.inputFields);this.stockChart=d;this.parent=this.inputFields=d.rangeSelector.inputFields;this.optionsName="style"}
|
|
997
|
-
var fa=!0;ha(w,W);w.prototype._updateOptions=function(){this.updateOption("width");this.updateOption("height");this.updateOption("theme");this.updateOption("colorSet")&&(this.selectedColorSet="undefined"!==typeof oa[this.colorSet]?oa[this.colorSet]:oa.colorSet1);this.updateOption("backgroundColor");this.backgroundColor||(this.backgroundColor="rgba(0,0,0,0)");this.updateOption("exportEnabled");this.updateOption("exportFileName");this.updateOption("creditHref");
|
|
998
|
-
this._cultureInfo=new Na(this.options.culture);this.updateOption("animationEnabled");this.updateOption("animationDuration");this.updateOption("rangeChanging");this.updateOption("rangeChanged");this.toolbar=new Xa(this,this.options.toolbar);gb(this)};w._supportedChartTypes=xa("line stepLine spline column area stepArea splineArea bubble scatter stackedColumn stackedColumn100 stackedArea stackedArea100 candlestick ohlc boxAndWhisker rangeColumn error rangeArea rangeSplineArea waterfall".split(" "));
|
|
997
|
+
var fa=!0;ha(w,W);w.prototype._updateOptions=function(){this.updateOption("width");this.updateOption("height");this.updateOption("theme");g(this.theme)&&(this.theme="light1");this.updateOption("colorSet")&&(this.selectedColorSet="undefined"!==typeof oa[this.colorSet]?oa[this.colorSet]:oa.colorSet1);this.updateOption("backgroundColor");this.backgroundColor||(this.backgroundColor="rgba(0,0,0,0)");this.updateOption("exportEnabled");this.updateOption("exportFileName");this.updateOption("creditHref");
|
|
998
|
+
this.updateOption("creditHref");this.updateOption("culture");this._cultureInfo=new Na(this.options.culture);this.updateOption("animationEnabled");this.updateOption("animationDuration");this.updateOption("rangeChanging");this.updateOption("rangeChanged");this.toolbar=new Xa(this,this.options.toolbar);gb(this)};w._supportedChartTypes=xa("line stepLine spline column area stepArea splineArea bubble scatter stackedColumn stackedColumn100 stackedArea stackedArea100 candlestick ohlc boxAndWhisker rangeColumn error rangeArea rangeSplineArea waterfall".split(" "));
|
|
999
999
|
w.prototype._initialize=function(){this._updateOptions();this.animationEnabled=this.animationEnabled&&v;this._updateSize();this.clearCanvas();this.ctx.beginPath();var d,t=g(this.options.charts)?[]:this.options.charts;xa(t);for(var z=0;z<this.charts.length;z++)d=this.charts[z],0>t.indexOf(d.options)&&(this.charts.splice(z,1),d.destroy(),this._canvasJSContainer.removeChild(d.panel),z--);this.layoutManager=new Ka(0,0,this.width,this.height,2);this.plotArea.layoutManager&&this.plotArea.layoutManager.reset();
|
|
1000
1000
|
this.title=null;this.subtitles=[];this.options.title&&(this.title=new L(this,this.options.title),this.title.setLayout());if(this.options.subtitles)for(z=0;z<this.options.subtitles.length;z++)d=new H(this,this.options.subtitles[z],z),this.subtitles.push(d),d.setLayout();this.navigator=this.navigator||new y(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&&
|
|
1001
1001
|
!g(this.options.navigator.animationEnabled)?this.options.navigator.animationEnabled:this.animationEnabled,animationDuration:this.options.navigator&&!g(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]&&
|
|
@@ -1034,12 +1034,12 @@ this.navigator.chart.colorSet,this.navigator.chart.selectedColorSet="undefined"!
|
|
|
1034
1034
|
this.navigator.chart.axisX[0]:this.navigator.chart.axisX2[0];f&&(f.bounds&&f.bounds.x1>this._chartsPlotAreaX1)&&(this._chartsPlotAreaX1=f.bounds.x1);this.navigator.width=this.navigator.chart.width=this.navigator.slider.fullWidth=this.navigator.options.width?this.navigator.options.width:this._chartsPlotAreaX2-this._chartsPlotAreaX1+(f&&f.bounds?f.bounds.x1:0);this.navigator.panel.style.left=this._chartsPlotAreaX1+this.layoutManager.getFreeSpace().x1-(f&&f.bounds?f.bounds.x1:0)+"px";this.navigator.panel.style.width=
|
|
1035
1035
|
this.navigator.chart.panel.style.width=this.navigator.options.width?this.navigator.options.width:this._chartsPlotAreaX2-this._chartsPlotAreaX1+(f&&f.bounds?f.bounds.x1:0)+"px";0<this.navigator.height&&this.navigator.chart.render(this.navigator._chartOptions);d=xa("backgroundColor animationEnabled animationDuration theme axisX axisX2 axisY axisY2 data".split(" "));for(var l in this.navigator.chart)0<=d.indexOf(l)&&(this.navigator[l]=this.navigator.chart[l]=g(this.navigator.chart.options[l])?this[l]||
|
|
1036
1036
|
null:this.navigator.chart[l])}}z=l=null;var b=0,e=a=null,k={},s,A;for(d=0;d<this.charts.length;d++)for(c=this.charts[d].axisX&&this.charts[d].axisX.length?this.charts[d].axisX:this.charts[d].axisX2,l=l||(c&&0<c.length?c[0].minimum:null),z=z||(c&&0<c.length?c[0].maximum:null),b=0;b<c.length;b++)f=c[b],f.minimum<l&&(l=f.minimum),f.maximum>z&&(z=f.maximum),g(f.options.viewportMinimum)||(this._axisXMin=s=f.options.viewportMinimum,k.minimum="chart"),g(f.options.viewportMaximum)||(this._axisXMax=A=f.options.viewportMaximum,
|
|
1037
|
-
k.maximum="chart");var y;this.navigator&&(this.navigator.enabled&&this.navigator.chart&&fa)&&(y=this.navigator.chart.axisX&&0<this.navigator.chart.axisX.length?this.navigator.chart.axisX[0]:this.navigator.chart.axisX2[0],g(this.navigator.options.slider)||
|
|
1038
|
-
this.navigator.slider.maximum=Math.min(y.maximum,this.navigator.slider.maximum),k.maximum="navigator"));if(this.rangeSelector&&this.rangeSelector.enabled){b=y?y.maximum-y.minimum:z-l;this._selectedRangeButtonIndex=this.navigator.slider
|
|
1039
|
-
!g(this._selectedRangeButtonIndex)&&this._selectedRangeButtonIndex<this.rangeSelector.buttons.length&&(this.rangeSelector.buttons[this._selectedRangeButtonIndex].state="on");this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")||(this.navigator.slider&&(this.navigator.slider.hasOptionChanged("minimum")||this.navigator.slider.hasOptionChanged("maximum"))?this._selectedRangeButtonIndex=null:(!this.navigator.slider||
|
|
1040
|
-
this.rangeSelector.inputFields.hasOptionChanged("endValue")||(!this.navigator.slider||g(this.navigator.slider.options.minimum))&&this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("startValue")?this._selectedRangeButtonIndex=null:this.navigator.slider
|
|
1041
|
-
this.charts.length&&(f=this.charts[0].axisX&&this.charts[0].axisX.length?this.charts[0].axisX[0]:this.charts[0].axisX2[0]);this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")&&(this.rangeSelector.sessionVariables._clickedRangeButtonIndex=null);for(d=0;d<this.rangeSelector.buttons.length;d++){var n=null;c=this.rangeSelector.buttons[d];-1!==xa("year month week day hour minute second millisecond number".split(" ")).indexOf(c.rangeType)?n=c.range*Y[c.rangeType+"Duration"]:"ytd"===
|
|
1042
|
-
n="ytd":"all"===c.rangeType&&(n=null);if("ytd"===c.rangeType||0!==n&&n<b)c.enabled=!0;c.mousemove=function(a){P(t.rangeSelector.ctx,t.rangeSelector.buttons[0].bounds.x1-t.rangeSelector.buttonStyle.borderThickness/2,t.rangeSelector.bounds.y1,t.rangeSelector.buttons[t.rangeSelector.buttons.length-1].bounds.x2+t.rangeSelector.buttonStyle.borderThickness/2,t.rangeSelector.buttons[0].textBlock.y-t.rangeSelector.buttons[0].textBlock._lineHeight/2+t.rangeSelector.rangeButtonsHeight+t.rangeSelector.buttonStyle.borderThickness,
|
|
1037
|
+
k.maximum="chart");var y;this.navigator&&(this.navigator.enabled&&this.navigator.chart&&fa)&&(y=this.navigator.chart.axisX&&0<this.navigator.chart.axisX.length?this.navigator.chart.axisX[0]:this.navigator.chart.axisX2[0],g(this.navigator.options.slider)||void 0===this.navigator.options.slider.minimum||(this._axisXMin=this.navigator.slider.minimum=Math.max(y.minimum,this.navigator.slider.minimum),k.minimum="navigator"),g(this.navigator.options.slider)||void 0===this.navigator.options.slider.maximum||
|
|
1038
|
+
(this._axisXMax=this.navigator.slider.maximum=Math.min(y.maximum,this.navigator.slider.maximum),k.maximum="navigator"));if(this.rangeSelector&&this.rangeSelector.enabled){b=y?y.maximum-y.minimum:z-l;this._selectedRangeButtonIndex=this.navigator.slider&&void 0!==this.navigator.slider.options.minimum||this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.startValue)||!this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")?this._selectedRangeButtonIndex:this.rangeSelector.selectedRangeButtonIndex;
|
|
1039
|
+
!g(this._selectedRangeButtonIndex)&&this._selectedRangeButtonIndex<this.rangeSelector.buttons.length&&(this.rangeSelector.buttons[this._selectedRangeButtonIndex].state="on");this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")||(this.navigator.slider&&(this.navigator.slider.hasOptionChanged("minimum")||this.navigator.slider.hasOptionChanged("maximum"))?this._selectedRangeButtonIndex=null:(!this.navigator.slider||void 0===this.navigator.slider.options.maximum)&&this.rangeSelector.inputFields.enabled&&
|
|
1040
|
+
this.rangeSelector.inputFields.hasOptionChanged("endValue")||(!this.navigator.slider||g(this.navigator.slider.options.minimum))&&this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("startValue")?this._selectedRangeButtonIndex=null:this.navigator.slider&&void 0!==this.navigator.slider.options.maximum||(this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.endValue)||A===this._prevViewportMaximum)||(this._selectedRangeButtonIndex=null));
|
|
1041
|
+
this.charts&&this.charts.length&&(f=this.charts[0].axisX&&this.charts[0].axisX.length?this.charts[0].axisX[0]:this.charts[0].axisX2[0]);this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")&&(this.rangeSelector.sessionVariables._clickedRangeButtonIndex=null);for(d=0;d<this.rangeSelector.buttons.length;d++){var n=null;c=this.rangeSelector.buttons[d];-1!==xa("year month week day hour minute second millisecond number".split(" ")).indexOf(c.rangeType)?n=c.range*Y[c.rangeType+"Duration"]:"ytd"===
|
|
1042
|
+
c.rangeType?n="ytd":"all"===c.rangeType&&(n=null);if("ytd"===c.rangeType||0!==n&&n<b)c.enabled=!0;c.mousemove=function(a){P(t.rangeSelector.ctx,t.rangeSelector.buttons[0].bounds.x1-t.rangeSelector.buttonStyle.borderThickness/2,t.rangeSelector.bounds.y1,t.rangeSelector.buttons[t.rangeSelector.buttons.length-1].bounds.x2+t.rangeSelector.buttonStyle.borderThickness/2,t.rangeSelector.buttons[0].textBlock.y-t.rangeSelector.buttons[0].textBlock._lineHeight/2+t.rangeSelector.rangeButtonsHeight+t.rangeSelector.buttonStyle.borderThickness,
|
|
1043
1043
|
t.rangeSelector.stockChart.backgroundColor,0,null,0,0,0,0,1);for(var b=0;b<t.rangeSelector.buttons.length;b++)t.rangeSelector.buttons[b]===this&&"off"===this.state&&this.enabled||t.rangeSelector.buttons[b].textBlock.render(!0);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))};c.mouseover=function(a){P(t.rangeSelector.ctx,
|
|
1044
1044
|
t.rangeSelector.buttons[0].bounds.x1-t.rangeSelector.buttonStyle.borderThickness/2,t.rangeSelector.bounds.y1,t.rangeSelector.buttons[t.rangeSelector.buttons.length-1].bounds.x2+t.rangeSelector.buttonStyle.borderThickness/2,t.rangeSelector.buttons[0].textBlock.y-t.rangeSelector.buttons[0].textBlock._lineHeight/2+t.rangeSelector.rangeButtonsHeight+t.rangeSelector.buttonStyle.borderThickness,t.rangeSelector.stockChart.backgroundColor,0,null,0,0,0,0,1);for(var b=0;b<t.rangeSelector.buttons.length;b++)t.rangeSelector.buttons[b]===
|
|
1045
1045
|
this&&"off"===this.state&&this.enabled||t.rangeSelector.buttons[b].textBlock.render(!0);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))};c.mouseout=function(a){P(t.rangeSelector.ctx,t.rangeSelector.buttons[0].bounds.x1-t.rangeSelector.buttonStyle.borderThickness/2,t.rangeSelector.bounds.y1,t.rangeSelector.buttons[t.rangeSelector.buttons.length-
|
|
@@ -1070,7 +1070,7 @@ this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")&&"navigator"!==k
|
|
|
1070
1070
|
this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("startValue")?this._axisXMin:this.sessionVariables._axisXMin,this._axisXMax=g(this.sessionVariables._axisXMax)||this.navigator.enabled&&(!this.navigator.slider||this.navigator.slider.hasOptionChanged("maximum"))||this.rangeSelector.enabled&&"navigator"!==k.maximum&&this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("endValue")?this._axisXMax:this.sessionVariables._axisXMax);
|
|
1071
1071
|
this.rangeSelector.enabled&&this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")&&(this.rangeSelector.sessionVariables.selectedRangeButtonIndex=this.rangeSelector.options.selectedRangeButtonIndex);this.rangeSelector.inputFields.enabled&&(this.rangeSelector.inputFields.hasOptionChanged("startValue")&&(this.navigator&&this.navigator.slider&&!g(this.navigator.slider.options.minimum)?this.sessionVariables._axisXMin=this._initialAxisXMin=this._axisXMin:this.sessionVariables._axisXMin=this._initialAxisXMin=
|
|
1072
1072
|
this.rangeSelector.inputFields.options.startValue,this.rangeSelector.inputFields.sessionVariables.startValue=this.rangeSelector.inputFields.options.startValue),this.rangeSelector.inputFields.hasOptionChanged("endValue")&&(this.navigator&&this.navigator.slider&&!g(this.navigator.slider.options.maximum)?this.sessionVariables._axisXMax=this._initialAxisXMax=this._axisXMax:this.sessionVariables._axisXMax=this._initialAxisXMax=this.rangeSelector.inputFields.options.endValue,this.rangeSelector.inputFields.sessionVariables.endValue=
|
|
1073
|
-
this.rangeSelector.inputFields.options.endValue));if(!g(y)){this.navigator.slider.hasOptionChanged("minimum")
|
|
1073
|
+
this.rangeSelector.inputFields.options.endValue));if(!g(y)){this.navigator.slider.hasOptionChanged("minimum")&&void 0!==this.navigator.slider.options.minimum&&(this.sessionVariables._axisXMin=this._initialAxisXMin=this.navigator.slider.sessionVariables.minimum=this.navigator.slider.minimum=this.navigator.slider.options.minimum);this.navigator.slider.hasOptionChanged("maximum")&&void 0!==this.navigator.slider.options.maximum&&(this.sessionVariables._axisXMax=this._initialAxisXMax=this.navigator.slider.sessionVariables.maximum=
|
|
1074
1074
|
this.navigator.slider.maximum=this.navigator.slider.options.maximum);if(this._initialAxisXMin<y.minimum||this._initialAxisXMin>y.maximum)this._initialAxisXMin=isFinite(y.minimum)?y.minimum:this._initialAxisXMin;if(this._initialAxisXMax<y.minimum||this._initialAxisXMax>y.maximum)this._initialAxisXMax=isFinite(y.maximum)?y.maximum:this._initialAxisXMax;if(this._axisXMin<y.minimum||this._axisXMin>y.maximum)this._axisXMin=y.minimum;if(this._axisXMax<y.minimum||this._axisXMax>y.maximum)this._axisXMax=
|
|
1075
1075
|
y.maximum;k&&(g(k.minimum)&&g(this.sessionVariables._axisXMin))&&(this._axisXMin=y.minimum);k&&(g(k.maximum)&&g(this.sessionVariables._axisXMax))&&(this._axisXMax=y.maximum)}if(k&&g(k.minimum)&&g(k.maximum)||k&&("rangeButton"===k.minimum&&"rangeButton"===k.maximum)&&g(this.rangeUpdatedBy))for(d=0;d<this.rangeSelector.buttons.length;d++)"all"===this.rangeSelector.buttons[d].rangeType&&this.rangeSelector.buttons[d].enabled&&(this.rangeSelector.buttons[d].state="on",this.rangeSelector.selectedRangeButtonIndex=
|
|
1076
1076
|
this._selectedRangeButtonIndex=d,k.minimum=k.maximum="rangeButton",this.rangeSelector.buttons[d].textBlock.fontWeight="bold",this.rangeSelector.buttons[d].textBlock.fontColor=this.rangeSelector.buttonStyle.labelFontColorOnHover,this.rangeSelector.buttons[d].textBlock.backgroundColor=this.rangeSelector.buttonStyle.backgroundColorOnSelect,this.rangeSelector.buttons[d].textBlock.render(!0));!g(y)&&y.reversed?this._syncCharts(this._axisXMax,this._axisXMin):this._syncCharts(this._axisXMin,this._axisXMax)};
|
|
@@ -1174,7 +1174,7 @@ this.style.fontColor,this.elements[d].style.fontSize=this.elements[d].style.heig
|
|
|
1174
1174
|
(this.style.padding.bottom||0)+"px",this.elements[d].style.paddingLeft=(this.style.padding.left||0)+"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}};
|
|
1175
1175
|
ha(da,W);da.prototype._updateOptions=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");
|
|
1176
1176
|
this.updateOption("padding");this.updateOption("spacing");this.updateOption("cursor")};ha(ea,W);ea.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");
|
|
1177
|
-
this.updateOption("spacing");this.updateOption("cursor")};return w}();X.version="v1.10.
|
|
1177
|
+
this.updateOption("spacing");this.updateOption("cursor")};return w}();X.version="v1.10.14 GA";window.CanvasJS&&(X&&(!window.CanvasJS.StockChart&&window.CanvasJS.Chart)&&(window.CanvasJS.StockChart=X),X&&!window.CanvasJS.Chart&&(window.CanvasJS.Chart=Ja,window.CanvasJS.StockChart=X))})();
|
|
1178
1178
|
|
|
1179
1179
|
/*
|
|
1180
1180
|
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.
|