@canvasjs/stockcharts 1.11.0 → 1.12.0
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 +479 -479
- package/package.json +1 -1
package/canvasjs.stock.min.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
CanvasJS StockChart - v1.
|
|
2
|
+
CanvasJS StockChart - v1.12.0 GA - https://canvasjs.com/
|
|
3
3
|
Copyright 2025 fenopix
|
|
4
4
|
|
|
5
5
|
--------------------- License Information --------------------
|
|
@@ -18,51 +18,51 @@
|
|
|
18
18
|
/*eslint-disable*/
|
|
19
19
|
/*jshint ignore:start*/
|
|
20
20
|
(function(){function ga(m,ba){m.prototype=mb(ba.prototype);m.prototype.constructor=m;m.base=ba.prototype}function mb(m){function ba(){}ba.prototype=m;return new ba}function $a(m,ba,g){"millisecond"===g?m.setMilliseconds(m.getMilliseconds()+1*ba):"second"===g?m.setSeconds(m.getSeconds()+1*ba):"minute"===g?m.setMinutes(m.getMinutes()+1*ba):"hour"===g?m.setHours(m.getHours()+1*ba):"day"===g?m.setDate(m.getDate()+1*ba):"week"===g?m.setDate(m.getDate()+7*ba):"month"===g?m.setMonth(m.getMonth()+1*ba):"year"===
|
|
21
|
-
g&&m.setFullYear(m.getFullYear()+1*ba);return m}function pa(m,ba){var g=!1;0>m&&(g=!0,m*=-1);m=""+m;for(ba=ba?ba:1;m.length<ba;)m="0"+m;return g?"-"+m:m}function Ma(m){if(!m)return m;m=m.replace(/^\s\s*/,"");for(var g=/\s/,
|
|
22
|
-
|
|
23
|
-
""),y=atob(y),q=new ArrayBuffer(y.length),q=new Uint8Array(q),H=0;H<y.length;H++)q[H]=y.charCodeAt(H);g=new Blob([q.buffer],{type:"image/"+g});try{window.navigator.msSaveBlob(g,
|
|
24
|
-
g.document.write("<img src='"+m+"'></img><div>Please right click on the image and save it to your device</div>"),g.document.close()}}}function U(m){var g=((m&16711680)>>16).toString(16),
|
|
25
|
-
m||"undefined"===typeof m}function va(m){m.indexOf||(m.indexOf=nb);return m}function ob(m){if(Aa.fSDec)m[ua("`eeDwdouMhrudods")](ua("e`u`@ohl`uhnoHuds`uhnoDoe"),function(){Aa._fTWm&&Aa._fTWm(m)})}function bb(m,g,
|
|
26
|
-
margin:"0px",border:"none",whiteSpace:"pre",lineHeight:"normal",fontFamily:m,fontSize:g+"px",fontWeight:
|
|
27
|
-
[];return
|
|
28
|
-
g,
|
|
21
|
+
g&&m.setFullYear(m.getFullYear()+1*ba);return m}function pa(m,ba){var g=!1;0>m&&(g=!0,m*=-1);m=""+m;for(ba=ba?ba:1;m.length<ba;)m="0"+m;return g?"-"+m:m}function Ma(m){if(!m)return m;m=m.replace(/^\s\s*/,"");for(var g=/\s/,v=m.length;g.test(m.charAt(--v)););return m.slice(0,v+1)}function Ca(m){m.roundRect=function(m,g,w,B,D,y,q,H){q&&(this.fillStyle=q);H&&(this.strokeStyle=H);"undefined"===typeof D&&(D=5);D=Math.min(D,Math.min(w,B)/2);this.lineWidth=y;this.beginPath();this.moveTo(m+D,g);this.lineTo(m+
|
|
22
|
+
w-D,g);this.quadraticCurveTo(m+w,g,m+w,g+D);this.lineTo(m+w,g+B-D);this.quadraticCurveTo(m+w,g+B,m+w-D,g+B);this.lineTo(m+D,g+B);this.quadraticCurveTo(m,g+B,m,g+B-D);this.lineTo(m,g+D);this.quadraticCurveTo(m,g,m+D,g);this.closePath();q&&this.fill();H&&0<y&&this.stroke()}}function Wa(m,g){return m-g}function ab(m,g,v){if(m&&g&&v){v=v+"."+g;var w="image/"+g;m=m.toDataURL(w);var B=!1,D=document.createElement("a");D.download=v;D.href=m;if("undefined"!==typeof Blob&&new Blob){for(var y=m.replace(/^data:[a-z\/]*;base64,/,
|
|
23
|
+
""),y=atob(y),q=new ArrayBuffer(y.length),q=new Uint8Array(q),H=0;H<y.length;H++)q[H]=y.charCodeAt(H);g=new Blob([q.buffer],{type:"image/"+g});try{window.navigator.msSaveBlob(g,v),B=!0}catch(P){D.dataset.downloadurl=[w,D.download,D.href].join(":"),D.href=window.URL.createObjectURL(g)}}if(!B)try{event=document.createEvent("MouseEvents"),event.initMouseEvent("click",!0,!1,window,0,0,0,0,0,!1,!1,!1,!1,0,null),D.dispatchEvent?D.dispatchEvent(event):D.fireEvent&&D.fireEvent("onclick")}catch(J){g=window.open(),
|
|
24
|
+
g.document.write("<img src='"+m+"'></img><div>Please right click on the image and save it to your device</div>"),g.document.close()}}}function U(m){var g=((m&16711680)>>16).toString(16),v=((m&65280)>>8).toString(16);m=((m&255)>>0).toString(16);g=2>g.length?"0"+g:g;v=2>v.length?"0"+v:v;m=2>m.length?"0"+m:m;return"#"+g+v+m}function nb(m,g){var v=this.length>>>0,w=Number(g)||0,w=0>w?Math.ceil(w):Math.floor(w);for(0>w&&(w+=v);w<v;w++)if(w in this&&this[w]===m)return w;return-1}function g(m){return null===
|
|
25
|
+
m||"undefined"===typeof m}function va(m){m.indexOf||(m.indexOf=nb);return m}function ob(m){if(Aa.fSDec)m[ua("`eeDwdouMhrudods")](ua("e`u`@ohl`uhnoHuds`uhnoDoe"),function(){Aa._fTWm&&Aa._fTWm(m)})}function bb(m,g,v){v=v||"normal";var w=m+"_"+g+"_"+v,B=cb[w];if(isNaN(B)){try{if(!Da){var D=document.body;Da=document.createElement("span");Da.innerHTML="";var y=document.createTextNode("Mpgyi");Da.appendChild(y);D.appendChild(Da)}Da.style.display="";R(Da,{position:"absolute",left:"0px",top:"-20000px",padding:"0px",
|
|
26
|
+
margin:"0px",border:"none",whiteSpace:"pre",lineHeight:"normal",fontFamily:m,fontSize:g+"px",fontWeight:v});B=Math.round(Da.offsetHeight);Da.style.display="none"}catch(q){B=Math.ceil(1.1*g)}B=Math.max(B,g);cb[w]=B}return B}function S(m,g){var v=[];if(v={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 w=0;w<v.length;w++)v[w]*=g;else v=
|
|
27
|
+
[];return v}function H(m,ba,v,w,B){w=w||[];B=g(B)?pb?{passive:!1,capture:!1}:!1:B;w.push([m,ba,v,B]);return m.addEventListener?(m.addEventListener(ba,v,B),v):m.attachEvent?(w=function(g){g=g||window.event;g.preventDefault=g.preventDefault||function(){g.returnValue=!1};g.stopPropagation=g.stopPropagation||function(){g.cancelBubble=!0};v.call(m,g)},m.attachEvent("on"+ba,w),w):!1}function db(m,g,v,w){w=w||!1;if(m.removeEventListener)m.removeEventListener(g,v,w);else if(m.detachEvent)m.detachEvent("on"+
|
|
28
|
+
g,v);else return!1}function eb(m){if(m._menuButton)m.exportEnabled?(R(m._menuButton,{backgroundColor:m.toolbar.itemBackgroundColor,color:m.toolbar.fontColor}),Ra(m._menuButton),wa(m,m._menuButton,"menu"),0>=navigator.userAgent.search("MSIE")&&m._menuButton.childNodes[0]&&R(m._menuButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"})):xa(m._menuButton);else if(m.exportEnabled&&w){var g=!1;m._menuButton=document.createElement("button");wa(m,m._menuButton,"menu");m._toolBar.appendChild(m._menuButton);
|
|
29
29
|
H(m._menuButton,"touchstart",function(m){g=!0},m.allDOMEventHandlers);H(m._menuButton,"click",function(){"none"!==m._dropdownMenu.style.display||m._dropDownCloseTime&&500>=(new Date).getTime()-m._dropDownCloseTime.getTime()||(m._dropdownMenu.style.display="block",m._menuButton.blur(),m._dropdownMenu.focus())},m.allDOMEventHandlers,!0);H(m._menuButton,"mousemove",function(){g||(R(m._menuButton,{backgroundColor:m.toolbar.itemBackgroundColorOnHover,color:m.toolbar.fontColorOnHover}),0>=navigator.userAgent.search("MSIE")&&
|
|
30
|
-
R(m._menuButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},m.allDOMEventHandlers,!0);H(m._menuButton,"mouseout",function(){g||(R(m._menuButton,{backgroundColor:m.toolbar.itemBackgroundColor,color:m.toolbar.fontColor}),0>=navigator.userAgent.search("MSIE")&&R(m._menuButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}))},m.allDOMEventHandlers,!0)}if(m.exportEnabled&&m._dropdownMenu){var
|
|
31
|
-
{backgroundColor:m.toolbar.itemBackgroundColor,color:m.toolbar.fontColor,boxShadow:"2px 2px 10px "+
|
|
32
|
-
m.theme.indexOf("dark")?"black":"#888888",R(m._dropdownMenu,{position:"absolute",zIndex:1,userSelect:"none",MozUserSeelct:"none",WebkitUserSelect:"none",msUserSelect:"none",cursor:"pointer",right:"0px",top:"25px",minWidth:"120px",outline:0,fontSize:"14px",fontFamily:"Arial, Helvetica, sans-serif",padding:"5px 0px 5px 0px",textAlign:"left",lineHeight:"10px",backgroundColor:m.toolbar.itemBackgroundColor,boxShadow:"2px 2px 10px "+
|
|
33
|
-
H(m._dropdownMenu,"blur",function(){xa(m._dropdownMenu);m._dropDownCloseTime=new Date},m.allDOMEventHandlers,!0),
|
|
34
|
-
m.toolbar.fontColorOnHover)},m.allDOMEventHandlers,!0),H(
|
|
35
|
-
H(
|
|
36
|
-
|
|
37
|
-
m.toolbar.itemBackgroundColor,this.style.color=m.toolbar.fontColor)},m.allDOMEventHandlers,!0),H(
|
|
38
|
-
m.getContext("2d"),Ta=ka.webkitBackingStorePixelRatio||ka.mozBackingStorePixelRatio||ka.msBackingStorePixelRatio||ka.oBackingStorePixelRatio||ka.backingStorePixelRatio||1,la=Xa/Ta,m.width=ba*la,m.height=
|
|
30
|
+
R(m._menuButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},m.allDOMEventHandlers,!0);H(m._menuButton,"mouseout",function(){g||(R(m._menuButton,{backgroundColor:m.toolbar.itemBackgroundColor,color:m.toolbar.fontColor}),0>=navigator.userAgent.search("MSIE")&&R(m._menuButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"}))},m.allDOMEventHandlers,!0)}if(m.exportEnabled&&m._dropdownMenu){var v=m.theme&&-1!==m.theme.indexOf("dark")?"black":"#888888";R(m._dropdownMenu,
|
|
31
|
+
{backgroundColor:m.toolbar.itemBackgroundColor,color:m.toolbar.fontColor,boxShadow:"2px 2px 10px "+v});for(var v=m._dropdownMenu.childNodes,ka=[m._cultureInfo.printText,m._cultureInfo.saveJPGText,m._cultureInfo.savePNGText],B=0;B<ka.length;B++)R(v[B],{backgroundColor:m.toolbar.itemBackgroundColor,color:m.toolbar.fontColor}),v[B].innerHTML=ka[B]}else!m._dropdownMenu&&(m.exportEnabled&&w)&&(g=!1,m._dropdownMenu=document.createElement("div"),m._dropdownMenu.setAttribute("tabindex",-1),v=m.theme&&-1!==
|
|
32
|
+
m.theme.indexOf("dark")?"black":"#888888",R(m._dropdownMenu,{position:"absolute",zIndex:1,userSelect:"none",MozUserSeelct:"none",WebkitUserSelect:"none",msUserSelect:"none",cursor:"pointer",right:"0px",top:"25px",minWidth:"120px",outline:0,fontSize:"14px",fontFamily:"Arial, Helvetica, sans-serif",padding:"5px 0px 5px 0px",textAlign:"left",lineHeight:"10px",backgroundColor:m.toolbar.itemBackgroundColor,boxShadow:"2px 2px 10px "+v}),m._dropdownMenu.style.display="none",m._toolBar.appendChild(m._dropdownMenu),
|
|
33
|
+
H(m._dropdownMenu,"blur",function(){xa(m._dropdownMenu);m._dropDownCloseTime=new Date},m.allDOMEventHandlers,!0),v=document.createElement("div"),R(v,{padding:"12px 8px 12px 8px"}),v.innerHTML=m._cultureInfo.printText,v.style.backgroundColor=m.toolbar.itemBackgroundColor,v.style.color=m.toolbar.fontColor,m._dropdownMenu.appendChild(v),H(v,"touchstart",function(m){g=!0},m.allDOMEventHandlers),H(v,"mousemove",function(){g||(this.style.backgroundColor=m.toolbar.itemBackgroundColorOnHover,this.style.color=
|
|
34
|
+
m.toolbar.fontColorOnHover)},m.allDOMEventHandlers,!0),H(v,"mouseout",function(){g||(this.style.backgroundColor=m.toolbar.itemBackgroundColor,this.style.color=m.toolbar.fontColor)},m.allDOMEventHandlers,!0),H(v,"click",function(){m.print();xa(m._dropdownMenu)},m.allDOMEventHandlers,!0),v=document.createElement("div"),R(v,{padding:"12px 8px 12px 8px"}),v.innerHTML=m._cultureInfo.saveJPGText,v.style.backgroundColor=m.toolbar.itemBackgroundColor,v.style.color=m.toolbar.fontColor,m._dropdownMenu.appendChild(v),
|
|
35
|
+
H(v,"touchstart",function(m){g=!0},m.allDOMEventHandlers),H(v,"mousemove",function(){g||(this.style.backgroundColor=m.toolbar.itemBackgroundColorOnHover,this.style.color=m.toolbar.fontColorOnHover)},m.allDOMEventHandlers,!0),H(v,"mouseout",function(){g||(this.style.backgroundColor=m.toolbar.itemBackgroundColor,this.style.color=m.toolbar.fontColor)},m.allDOMEventHandlers,!0),H(v,"click",function(){m.exportChart({format:"jpeg",fileName:m.exportFileName});xa(m._dropdownMenu)},m.allDOMEventHandlers,!0),
|
|
36
|
+
v=document.createElement("div"),R(v,{padding:"12px 8px 12px 8px"}),v.innerHTML=m._cultureInfo.savePNGText,v.style.backgroundColor=m.toolbar.itemBackgroundColor,v.style.color=m.toolbar.fontColor,m._dropdownMenu.appendChild(v),H(v,"touchstart",function(m){g=!0},m.allDOMEventHandlers),H(v,"mousemove",function(){g||(this.style.backgroundColor=m.toolbar.itemBackgroundColorOnHover,this.style.color=m.toolbar.fontColorOnHover)},m.allDOMEventHandlers,!0),H(v,"mouseout",function(){g||(this.style.backgroundColor=
|
|
37
|
+
m.toolbar.itemBackgroundColor,this.style.color=m.toolbar.fontColor)},m.allDOMEventHandlers,!0),H(v,"click",function(){m.exportChart({format:"png",fileName:m.exportFileName});xa(m._dropdownMenu)},m.allDOMEventHandlers,!0))}function fb(m,g,v){m*=la;g*=la;m=v.getImageData(m,g,2,2).data;g=!0;for(v=0;4>v;v++)if(m[v]!==m[v+4]|m[v]!==m[v+8]|m[v]!==m[v+12]){g=!1;break}return g?m[0]<<16|m[1]<<8|m[2]:0}function $(m,g,v){return m in g?g[m]:v[m]}function Sa(m,ba,v,ka){w&&gb?(ka=!g(ka)&&ka?m.getContext("2d",{willReadFrequently:!0}):
|
|
38
|
+
m.getContext("2d"),Ta=ka.webkitBackingStorePixelRatio||ka.mozBackingStorePixelRatio||ka.msBackingStorePixelRatio||ka.oBackingStorePixelRatio||ka.backingStorePixelRatio||1,la=Xa/Ta,m.width=ba*la,m.height=v*la,Xa!==Ta&&(m.style.width=ba+"px",m.style.height=v+"px",ka.scale(la,la))):(m.width=ba,m.height=v)}function qb(m){if(!rb){var g=!1,v=!1;"undefined"===typeof ha.Chart.creditHref?(m.creditHref=ua("iuuqr;..b`ow`rkr/bnl."),m.creditText=ua("B`ow`rKR/bnl")):(g=m.updateOption("creditText"),v=m.updateOption("creditHref"));
|
|
39
39
|
if(m.creditHref&&m.creditText){m._creditLink||(m._creditLink=document.createElement("a"),m._creditLink.setAttribute("class","canvasjs-chart-credit"),m._creditLink.setAttribute("title","JavaScript Charts"),R(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",
|
|
40
|
-
"_blank"));if(0===m.renderCount||g||
|
|
41
|
-
"canvasjs-chart-canvas");Sa(ka,m,g,
|
|
42
|
-
msUserSelect:"none",userSelect:"none"}));g.getAttribute("state")!==
|
|
43
|
-
arguments[g],m.style&&(m.style.display="inline")}function xa(){for(var m=null,g=0;g<arguments.length;g++)(m=arguments[g])&&m.style&&(m.style.display="none")}function Ya(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]"===Object.prototype.toString.call(m)});if(Array.isArray(m)){for(var g=[],
|
|
44
|
-
Ya(m[
|
|
45
|
-
this.predefinedThemes.light1:this.predefinedThemes[this.theme]:this.parent&&(this.parent.themeOptions&&this.parent.themeOptions[ba])&&(null===
|
|
46
|
-
|
|
47
|
-
m.canvas;this.ctx=this.chart.ctx;this.optionsName="title";if(g(this.options.margin)&&m.options.subtitles)for(var
|
|
48
|
-
this.height=this.width=null;this.bounds={x1:null,y1:null,x2:null,y2:null}}function Ka(m,g,
|
|
49
|
-
Na[m]);La.base.constructor.call(this,"CultureInfo",null,g,null,null)}var Ja=!1,Aa={},
|
|
50
|
-
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,verticalAlign:"top",horizontalAlign:"center",fontSize:20,fontFamily:"Calibri",fontWeight:"normal",fontColor:"black",fontStyle:"normal",borderThickness:0,borderColor:"black",cornerRadius:0,backgroundColor:
|
|
40
|
+
"_blank"));if(0===m.renderCount||g||v)m._creditLink.setAttribute("href",m.creditHref),m._creditLink.innerHTML=m.creditText;m._creditLink&&m.creditHref&&m.creditText?(m._creditLink.parentElement||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,v){Ja&&(this.canvasCount|=0,window.console.log(++this.canvasCount));var ka=document.createElement("canvas");ka.setAttribute("class",
|
|
41
|
+
"canvasjs-chart-canvas");Sa(ka,m,g,v);w||"undefined"===typeof G_vmlCanvasManager||G_vmlCanvasManager.initElement(ka);return ka}function R(m,g){for(var v in g)m.style[v]=g[v]}function hb(m){return m.currentStyle?m.currentStyle:window&&window.getComputedStyle?window.getComputedStyle(m,null):m.style}function wa(m,g,v){g.getAttribute("state")||(g.style.backgroundColor=m.toolbar.itemBackgroundColor,g.style.color=m.toolbar.fontColor,g.style.border="none",R(g,{WebkitUserSelect:"none",MozUserSelect:"none",
|
|
42
|
+
msUserSelect:"none",userSelect:"none"}));g.getAttribute("state")!==v&&(g.setAttribute("state",v),g.setAttribute("type","button"),R(g,{padding:"5px 12px",cursor:"pointer","float":"left",width:"40px",height:"25px",outline:"0px",verticalAlign:"baseline",lineHeight:"0"}),g.innerHTML="<img src='"+sb[v].image+"' alt='"+m._cultureInfo[v+"Text"]+"' />",R(g.childNodes[0],{height:"95%",pointerEvents:"none"}));g.setAttribute("title",m._cultureInfo[v+"Text"])}function Ra(){for(var m=null,g=0;g<arguments.length;g++)m=
|
|
43
|
+
arguments[g],m.style&&(m.style.display="inline")}function xa(){for(var m=null,g=0;g<arguments.length;g++)(m=arguments[g])&&m.style&&(m.style.display="none")}function Ya(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]"===Object.prototype.toString.call(m)});if(Array.isArray(m)){for(var g=[],v=0;v<m.length;v++)g.push(Ya(m[v]));return g}g=new m.constructor;for(v in m)m.hasOwnProperty(v)&&(g[v]=
|
|
44
|
+
Ya(m[v]));return g}function Ua(m,g,v,w,B){if(null===m||"undefined"===typeof m)return"undefined"===typeof v?g:v;m=parseFloat(m.toString())*(0<=m.toString().indexOf("%")?g/100:1);"undefined"!==typeof w&&(m=Math.min(w,m),"undefined"!==typeof B&&(m=Math.max(B,m)));return!isNaN(m)&&m<=g&&0<=m?m:"undefined"===typeof v?g:v}function aa(m,ba,v,w,B){this._defaultsKey=m;this._themeOptionsKey=ba;this._index=w;this.parent=B;this._eventListeners=[];m={};this.theme&&g(this.parent)&&g(ba)&&g(w)?m=g(this.predefinedThemes[this.theme])?
|
|
45
|
+
this.predefinedThemes.light1:this.predefinedThemes[this.theme]:this.parent&&(this.parent.themeOptions&&this.parent.themeOptions[ba])&&(null===w?m=this.parent.themeOptions[ba]:0<this.parent.themeOptions[ba].length&&(w=Math.min(this.parent.themeOptions[ba].length-1,w),m=this.parent.themeOptions[ba][w]));this.themeOptions=m;this.options=v?v:{_isPlaceholder:!0};this.setOptions(this.options,m)}function Ia(m,g,v,w,B){"undefined"===typeof B&&(B=0);this._padding=B;this._x1=m;this._y1=g;this._x2=v;this._y2=
|
|
46
|
+
w;this._rightOccupied=this._leftOccupied=this._bottomOccupied=this._topOccupied=this._padding}function ma(m,g){ma.base.constructor.call(this,"TextBlock",null,g,null,null);this.ctx=m;this._isDirty=!0;this._wrappedText=null;this._initialize()}function Va(m,g){Va.base.constructor.call(this,"Toolbar","toolbar",g,null,m);this.chart=m;this.canvas=m.canvas;this.ctx=this.chart.ctx;this.optionsName="toolbar"}function Fa(m,ba){Fa.base.constructor.call(this,"Title","title",ba,null,m);this.chart=m;this.canvas=
|
|
47
|
+
m.canvas;this.ctx=this.chart.ctx;this.optionsName="title";if(g(this.options.margin)&&m.options.subtitles)for(var v=m.options.subtitles,w=0;w<v.length;w++)if((g(v[w].horizontalAlign)&&"center"===this.horizontalAlign||v[w].horizontalAlign===this.horizontalAlign)&&(g(v[w].verticalAlign)&&"top"===this.verticalAlign||v[w].verticalAlign===this.verticalAlign)&&!v[w].dockInsidePlotArea===!this.dockInsidePlotArea){this.margin=0;break}"undefined"===typeof this.options.fontSize&&(this.fontSize=this.chart.getAutoFontSize(this.fontSize));
|
|
48
|
+
this.height=this.width=null;this.bounds={x1:null,y1:null,x2:null,y2:null}}function Ka(m,g,v){Ka.base.constructor.call(this,"Subtitle","subtitles",g,v,m);this.chart=m;this.canvas=m.canvas;this.ctx=this.chart.ctx;this.optionsName="subtitles";this.isOptionsInArray=!0;"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 Za(){this.pool=[]}function La(m){var g;m&&Na[m]&&(g=
|
|
49
|
+
Na[m]);La.base.constructor.call(this,"CultureInfo",null,g,null,null)}var Ja=!1,Aa={},w=!!document.createElement("canvas").getContext,ha={Chart:{width:500,height:400,zoomEnabled:!1,zoomType:"x",backgroundColor:"white",theme:"light1",animationEnabled:!1,animationDuration:1200,dataPointWidth:null,dataPointMinWidth:null,dataPointMaxWidth:null,colorSet:"colorSet1",culture:"en",creditText:"CanvasJS",interactivityEnabled:!0,exportEnabled:!1,exportFileName:"Chart",rangeChanging:null,rangeChanged:null,publicProperties:{title:"readWrite",
|
|
50
|
+
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,verticalAlign:"top",horizontalAlign:"center",fontSize:20,fontFamily:"Calibri",fontWeight:"normal",fontColor:"black",fontStyle:"normal",borderThickness:0,borderColor:"black",cornerRadius:0,backgroundColor:w?"transparent":
|
|
51
51
|
null,margin:5,wrap:!0,maxWidth:null,textAlign:"center",dockInsidePlotArea:!1,publicProperties:{options:"readWrite",bounds:"readOnly",chart:"readOnly"}},Subtitle:{padding:0,text:null,verticalAlign:"top",horizontalAlign:"center",fontSize:14,fontFamily:"Calibri",fontWeight:"normal",fontColor:"black",fontStyle:"normal",borderThickness:0,borderColor:"black",cornerRadius:0,backgroundColor:null,margin:2,wrap:!0,maxWidth:null,textAlign:"center",dockInsidePlotArea:!1,publicProperties:{options:"readWrite",
|
|
52
52
|
bounds:"readOnly",chart:"readOnly"}},Toolbar:{itemBackgroundColor:"white",itemBackgroundColorOnHover:"#2196f3",buttonBorderColor:"#2196f3",buttonBorderThickness:1,fontColor:"black",fontColorOnHover:"white",publicProperties:{options:"readWrite",chart:"readOnly"}},Legend:{name:null,verticalAlign:"center",horizontalAlign:"right",fontSize:14,fontFamily:"calibri",fontWeight:"normal",fontColor:"black",fontStyle:"normal",cursor:null,itemmouseover:null,itemmouseout:null,itemmousemove:null,itemclick:null,
|
|
53
|
-
dockInsidePlotArea:!1,reversed:!1,backgroundColor:
|
|
54
|
-
borderThickness:2,cornerRadius:5,fontSize:14,fontColor:"black",fontFamily:"Calibri, Arial, Georgia, serif;",fontWeight:"normal",fontStyle:"italic",updated:null,hidden:null,publicProperties:{options:"readWrite",chart:"readOnly"}},Axis:{minimum:null,maximum:null,viewportMinimum:null,viewportMaximum:null,interval:null,intervalType:null,reversed:!1,logarithmic:!1,logarithmBase:10,title:null,titleFontColor:"black",titleFontSize:20,titleFontFamily:"arial",titleFontWeight:"normal",titleFontStyle:"normal",
|
|
55
|
-
titleWrap:!0,titleMaxWidth:null,titleBackgroundColor:
|
|
56
|
-
labelCornerRadius:0,labelPlacement:"outside",labelTextAlign:"left",prefix:"",suffix:"",includeZero:!1,tickLength:5,tickColor:"black",tickThickness:1,tickPlacement:"outside",lineColor:"black",lineThickness:1,lineDashType:"solid",gridColor:"#A0A0A0",gridThickness:0,gridDashType:"solid",interlacedColor:
|
|
57
|
-
startValue:null,endValue:null,color:"orange",opacity:null,thickness:2,lineDashType:"solid",label:"",labelPlacement:"inside",labelAlign:"far",labelWrap:!0,labelMaxWidth:null,labelBackgroundColor:null,labelBorderColor:
|
|
53
|
+
dockInsidePlotArea:!1,reversed:!1,backgroundColor:w?"transparent":null,borderColor:w?"transparent":null,borderThickness:0,cornerRadius:0,maxWidth:null,maxHeight:null,markerMargin:null,itemMaxWidth:null,itemWidth:null,itemWrap:!0,itemTextAlign:"left",itemTextFormatter:null,publicProperties:{options:"readWrite",bounds:"readOnly",chart:"readOnly"}},ToolTip:{enabled:!0,shared:!1,animationEnabled:!0,content:null,contentFormatter:null,reversed:!1,backgroundColor:w?"rgba(255,255,255,.9)":"rgb(255,255,255)",
|
|
54
|
+
borderColor:null,borderThickness:2,cornerRadius:5,fontSize:14,fontColor:"black",fontFamily:"Calibri, Arial, Georgia, serif;",fontWeight:"normal",fontStyle:"italic",updated:null,hidden:null,publicProperties:{options:"readWrite",chart:"readOnly"}},Axis:{minimum:null,maximum:null,viewportMinimum:null,viewportMaximum:null,interval:null,intervalType:null,reversed:!1,logarithmic:!1,logarithmBase:10,title:null,titleFontColor:"black",titleFontSize:20,titleFontFamily:"arial",titleFontWeight:"normal",titleFontStyle:"normal",
|
|
55
|
+
titleWrap:!0,titleMaxWidth:null,titleBackgroundColor:w?"transparent":null,titleBorderColor:w?"transparent":null,titleBorderThickness:0,titleCornerRadius:0,titleTextAlign:"left",titlePadding:0,labelAngle:0,labelFontFamily:"arial",labelFontColor:"black",labelFontSize:12,labelFontWeight:"normal",labelFontStyle:"normal",labelAutoFit:!0,labelWrap:!0,labelMaxWidth:null,labelFormatter:null,labelBackgroundColor:w?"transparent":null,labelBorderColor:w?"transparent":null,labelBorderThickness:0,labelPadding:0,
|
|
56
|
+
labelCornerRadius:0,labelPlacement:"outside",labelTextAlign:"left",prefix:"",suffix:"",includeZero:!1,tickLength:5,tickColor:"black",tickThickness:1,tickPlacement:"outside",lineColor:"black",lineThickness:1,lineDashType:"solid",gridColor:"#A0A0A0",gridThickness:0,gridDashType:"solid",interlacedColor:w?"transparent":null,valueFormatString:null,margin:2,publicProperties:{options:"readWrite",stripLines:"readWrite",scaleBreaks:"readWrite",crosshair:"readWrite",bounds:"readOnly",chart:"readOnly"}},StripLine:{value:null,
|
|
57
|
+
startValue:null,endValue:null,color:"orange",opacity:null,thickness:2,lineDashType:"solid",label:"",labelPlacement:"inside",labelAlign:"far",labelWrap:!0,labelMaxWidth:null,labelBackgroundColor:null,labelBorderColor:w?"transparent":null,labelBorderThickness:0,labelCornerRadius:0,labelFontFamily:"arial",labelFontColor:"orange",labelFontSize:12,labelFontWeight:"normal",labelFontStyle:"normal",labelFormatter:null,labelTextAlign:"left",labelPadding:0,showOnTop:!1,publicProperties:{options:"readWrite",
|
|
58
58
|
axis:"readOnly",bounds:"readOnly",chart:"readOnly"}},ScaleBreaks:{autoCalculate:!1,collapsibleThreshold:"25%",maxNumberOfAutoBreaks:2,spacing:8,type:"straight",color:"#FFFFFF",fillOpacity:0.9,lineThickness:2,lineColor:"#E16E6E",lineDashType:"solid",publicProperties:{options:"readWrite",customBreaks:"readWrite",axis:"readOnly",autoBreaks:"readOnly",bounds:"readOnly",chart:"readOnly"}},Break:{startValue:null,endValue:null,spacing:8,type:"straight",color:"#FFFFFF",fillOpacity:0.9,lineThickness:2,lineColor:"#E16E6E",
|
|
59
|
-
lineDashType:"solid",publicProperties:{options:"readWrite",scaleBreaks:"readOnly",bounds:"readOnly",chart:"readOnly"}},Crosshair:{enabled:!1,snapToDataPoint:!1,color:"grey",opacity:null,thickness:2,lineDashType:"solid",label:"",labelWrap:!0,labelMaxWidth:null,labelTextAlign:"left",labelBackgroundColor:
|
|
60
|
-
labelFontColor:"#fff",labelFontWeight:"normal",labelFontStyle:"normal",labelFormatter:null,valueFormatString:null,updated:null,hidden:null,publicProperties:{options:"readWrite",axis:"readOnly",bounds:"readOnly",chart:"readOnly"}},DataSeries:{name:null,dataPoints:null,label:"",bevelEnabled:!1,highlightEnabled:!0,cursor:"default",indexLabel:"",indexLabelPlacement:"auto",indexLabelOrientation:"horizontal",indexLabelTextAlign:"left",indexLabelFontColor:"black",indexLabelFontSize:12,
|
|
61
|
-
indexLabelFontFamily:"Arial",indexLabelFontWeight:"normal",indexLabelPadding:0,indexLabelBackgroundColor:null,indexLabelBorderColor:null,indexLabelBorderThickness:0,indexLabelLineColor:"gray",indexLabelLineThickness:1,indexLabelLineDashType:"solid",indexLabelMaxWidth:null,indexLabelWrap:!0,indexLabelFormatter:null,lineThickness:2,lineDashType:"solid",connectNullData:!1,nullDataLineDashType:"dash",color:null,lineColor:null,risingColor:"white",fallingColor:"red",fillOpacity:null,
|
|
62
|
-
innerRadius:null,explodeOnClick:!0,neckHeight:null,neckWidth:null,reversed:!1,valueRepresents:null,linkedDataSeriesIndex:null,whiskerThickness:2,whiskerDashType:"solid",whiskerColor:null,whiskerLength:null,stemThickness:2,stemColor:null,stemDashType:"solid",upperBoxColor:"white",lowerBoxColor:"white",type:"column",xValueType:"number",axisXType:"primary",axisYType:"primary",axisXIndex:0,axisYIndex:0,xValueFormatString:null,yValueFormatString:null,zValueFormatString:null,percentFormatString:null,
|
|
63
|
-
legendMarkerType:null,legendMarkerColor:null,legendText:null,legendMarkerBorderColor:
|
|
64
|
-
padding:0,angle:0,text:"",horizontalAlign:"center",textAlign:"left",fontSize:12,fontFamily:"calibri",fontWeight:"normal",fontColor:"black",fontStyle:"normal",borderThickness:0,borderColor:"black",cornerRadius:0,backgroundColor:null,textBaseline:"top"},CultureInfo:{decimalSeparator:".",digitGroupSeparator:",",zoomText:"Zoom",panText:"Pan",resetText:"Reset",menuText:"More Options",saveJPGText:"Save as JPEG",savePNGText:"Save as PNG",printText:"Print",days:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),
|
|
65
|
-
shortDays:"Sun Mon Tue Wed Thu Fri Sat".split(" "),months:"January February March April May June July August September October November December".split(" "),shortMonths:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" ")}},Na={en:{}},q=
|
|
59
|
+
lineDashType:"solid",publicProperties:{options:"readWrite",scaleBreaks:"readOnly",bounds:"readOnly",chart:"readOnly"}},Crosshair:{enabled:!1,snapToDataPoint:!1,color:"grey",opacity:null,thickness:2,lineDashType:"solid",label:"",labelWrap:!0,labelMaxWidth:null,labelTextAlign:"left",labelBackgroundColor:w?"grey":null,labelBorderColor:w?"grey":null,labelBorderThickness:0,labelCornerRadius:0,labelFontFamily:w?"Calibri, Optima, Candara, Verdana, Geneva, sans-serif":"calibri",labelFontSize:12,labelPadding:{top:2,
|
|
60
|
+
right:3,bottom:2,left:4},labelFontColor:"#fff",labelFontWeight:"normal",labelFontStyle:"normal",labelFormatter:null,valueFormatString:null,updated:null,hidden:null,publicProperties:{options:"readWrite",axis:"readOnly",bounds:"readOnly",chart:"readOnly"}},DataSeries:{name:null,dataPoints:null,label:"",bevelEnabled:!1,highlightEnabled:!0,cursor:"default",indexLabel:"",indexLabelPlacement:"auto",indexLabelOrientation:"horizontal",indexLabelTextAlign:"left",indexLabelFontColor:"black",indexLabelFontSize:12,
|
|
61
|
+
indexLabelFontStyle:"normal",indexLabelFontFamily:"Arial",indexLabelFontWeight:"normal",indexLabelPadding:0,indexLabelBackgroundColor:null,indexLabelBorderColor:null,indexLabelBorderThickness:0,indexLabelLineColor:"gray",indexLabelLineThickness:1,indexLabelLineDashType:"solid",indexLabelMaxWidth:null,indexLabelWrap:!0,indexLabelFormatter:null,lineThickness:2,lineDashType:"solid",connectNullData:!1,nullDataLineDashType:"dash",color:null,lineColor:null,risingColor:"white",fallingColor:"red",fillOpacity:null,
|
|
62
|
+
startAngle:0,radius:null,innerRadius:null,explodeOnClick:!0,neckHeight:null,neckWidth:null,reversed:!1,valueRepresents:null,linkedDataSeriesIndex:null,whiskerThickness:2,whiskerDashType:"solid",whiskerColor:null,whiskerLength:null,stemThickness:2,stemColor:null,stemDashType:"solid",upperBoxColor:"white",lowerBoxColor:"white",type:"column",xValueType:"number",axisXType:"primary",axisYType:"primary",axisXIndex:0,axisYIndex:0,xValueFormatString:null,yValueFormatString:null,zValueFormatString:null,percentFormatString:null,
|
|
63
|
+
showInLegend:!1,legendMarkerType:null,legendMarkerColor:null,legendText:null,legendMarkerBorderColor:w?"transparent":null,legendMarkerBorderThickness:0,markerType:"circle",markerColor:null,markerSize:null,markerBorderColor:w?"transparent":null,markerBorderThickness:0,mouseover:null,mouseout:null,mousemove:null,click:null,toolTipContent:null,visible:!0,publicProperties:{options:"readWrite",axisX:"readWrite",axisY:"readWrite",chart:"readOnly"}},TextBlock:{x:0,y:0,width:null,height:null,maxWidth:null,
|
|
64
|
+
maxHeight:null,padding:0,angle:0,text:"",horizontalAlign:"center",textAlign:"left",fontSize:12,fontFamily:"calibri",fontWeight:"normal",fontColor:"black",fontStyle:"normal",borderThickness:0,borderColor:"black",cornerRadius:0,backgroundColor:null,textBaseline:"top"},CultureInfo:{decimalSeparator:".",digitGroupSeparator:",",zoomText:"Zoom",panText:"Pan",resetText:"Reset",menuText:"More Options",saveJPGText:"Save as JPEG",savePNGText:"Save as PNG",printText:"Print",days:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),
|
|
65
|
+
shortDays:"Sun Mon Tue Wed Thu Fri Sat".split(" "),months:"January February March April May June July August September October November December".split(" "),shortMonths:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" ")}},Na={en:{}},q=w?"Trebuchet MS, Helvetica, sans-serif":"Arial",ya=w?"Impact, Charcoal, sans-serif":"Arial",na={colorSet1:"#4F81BC #C0504E #9BBB58 #23BFAA #8064A1 #4AACC5 #F79647 #7F6084 #77A033 #33558B #E59566".split(" "),colorSet2:"#6D78AD #51CDA0 #DF7970 #4C9CA0 #AE7D99 #C9D45C #5592AD #DF874D #52BCA8 #8E7AA3 #E3CB64 #C77B85 #C39762 #8DD17E #B57952 #FCC26C".split(" "),
|
|
66
66
|
colorSet3:"#8CA1BC #36845C #017E82 #8CB9D0 #708C98 #94838D #F08891 #0366A7 #008276 #EE7757 #E5BA3A #F2990B #03557B #782970".split(" ")},N,V,O,W,sa;V="#333333";O="#000000";N="#666666";sa=W="#000000";var ja=20,J=14,Ea={colorSet:"colorSet1",backgroundColor:"#FFFFFF",title:{fontFamily:ya,fontSize:32,fontColor:V,fontWeight:"normal",verticalAlign:"top",margin:5},subtitles:[{fontFamily:ya,fontSize:J,fontColor:V,fontWeight:"normal",verticalAlign:"top",margin:5}],data:[{indexLabelFontFamily:q,indexLabelFontSize:J,
|
|
67
67
|
indexLabelFontColor:V,indexLabelFontWeight:"normal",indexLabelLineThickness:1}],axisX:[{titleFontFamily:q,titleFontSize:ja,titleFontColor:V,titleFontWeight:"normal",labelFontFamily:q,labelFontSize:J,labelFontColor:O,labelFontWeight:"normal",lineThickness:1,lineColor:N,tickThickness:1,tickColor:N,gridThickness:0,gridColor:N,stripLines:[{labelFontFamily:q,labelFontSize:J,labelFontColor:"#FF7300",labelFontWeight:"normal",labelBackgroundColor:null,color:"#FF7300",thickness:1}],crosshair:{labelFontFamily:q,
|
|
68
68
|
labelFontSize:J,labelFontColor:"#EEEEEE",labelFontWeight:"normal",labelBackgroundColor:sa,color:W,thickness:1,lineDashType:"dash"},scaleBreaks:{type:"zigzag",spacing:"2%",lineColor:"#BBBBBB",lineThickness:1,lineDashType:"solid"}}],axisX2:[{titleFontFamily:q,titleFontSize:ja,titleFontColor:V,titleFontWeight:"normal",labelFontFamily:q,labelFontSize:J,labelFontColor:O,labelFontWeight:"normal",lineThickness:1,lineColor:N,tickThickness:1,tickColor:N,gridThickness:0,gridColor:N,stripLines:[{labelFontFamily:q,
|
|
@@ -91,63 +91,63 @@ lineThickness:1,lineColor:N,tickThickness:1,tickColor:N,gridThickness:0,gridColo
|
|
|
91
91
|
axisY:[{titleFontFamily:q,titleFontSize:ja,titleFontColor:O,titleFontWeight:"normal",labelFontFamily:q,labelFontSize:J,labelFontColor:O,labelFontWeight:"normal",lineThickness:0,lineColor:N,tickThickness:1,tickColor:N,gridThickness:1,gridColor:N,stripLines:[{labelFontFamily:q,labelFontSize:J,labelFontColor:"#FF7300",labelFontWeight:"normal",labelBackgroundColor:null,color:"#FF7300",thickness:1}],crosshair:{labelFontFamily:q,labelFontSize:J,labelFontColor:"#000000",labelFontWeight:"normal",labelBackgroundColor:sa,
|
|
92
92
|
color:W,thickness:1,lineDashType:"dash"},scaleBreaks:{type:"zigzag",spacing:"2%",lineColor:"#777777",lineThickness:1,lineDashType:"solid",color:"#111111"}}],axisY2:[{titleFontFamily:q,titleFontSize:ja,titleFontColor:O,titleFontWeight:"normal",labelFontFamily:q,labelFontSize:J,labelFontColor:O,labelFontWeight:"normal",lineThickness:0,lineColor:N,tickThickness:1,tickColor:N,gridThickness:1,gridColor:N,stripLines:[{labelFontFamily:q,labelFontSize:J,labelFontColor:"#FF7300",labelFontWeight:"normal",labelBackgroundColor:null,
|
|
93
93
|
color:"#FF7300",thickness:1}],crosshair:{labelFontFamily:q,labelFontSize:J,labelFontColor:"#000000",labelFontWeight:"normal",labelBackgroundColor:sa,color:W,thickness:1,lineDashType:"dash"},scaleBreaks:{type:"zigzag",spacing:"2%",lineColor:"#777777",lineThickness:1,lineDashType:"solid",color:"#111111"}}],legend:{fontFamily:q,fontSize:14,fontColor:V,fontWeight:"bold",verticalAlign:"bottom",horizontalAlign:"center"},toolTip:{fontFamily:q,fontSize:14,fontStyle:"normal",cornerRadius:0,borderThickness:1,
|
|
94
|
-
fontColor:O,backgroundColor:"rgba(0, 0, 0, .7)"}};var Oa={light1:Ea,light2:Ga,dark1:ya,dark2:W,theme1:Ea,theme2:Ga,theme3:Ea},X={numberDuration:1,yearDuration:314496E5,monthDuration:2592E6,weekDuration:6048E5,dayDuration:864E5,hourDuration:36E5,minuteDuration:6E4,secondDuration:1E3,millisecondDuration:1,dayOfWeekFromInt:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" ")};(function(){Aa.fSDec=function(m){for(var g="",
|
|
95
|
-
5)^m.charCodeAt(
|
|
96
|
-
this.width=ba=0<this.container.clientWidth-parseFloat(
|
|
97
|
-
if(this.canvas.width!==ba*la||this.canvas.height!==
|
|
98
|
-
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,g="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),
|
|
99
|
-
y=/[^-+\dA-Z]/g;return function(q,H,P){var J=P?P.days:g,N=P?P.months:
|
|
94
|
+
fontColor:O,backgroundColor:"rgba(0, 0, 0, .7)"}};var Oa={light1:Ea,light2:Ga,dark1:ya,dark2:W,theme1:Ea,theme2:Ga,theme3:Ea},X={numberDuration:1,yearDuration:314496E5,monthDuration:2592E6,weekDuration:6048E5,dayDuration:864E5,hourDuration:36E5,minuteDuration:6E4,secondDuration:1E3,millisecondDuration:1,dayOfWeekFromInt:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" ")};(function(){Aa.fSDec=function(m){for(var g="",v=0;v<m.length;v++)g+=String.fromCharCode(Math.ceil(m.length/57/
|
|
95
|
+
5)^m.charCodeAt(v));return g};delete ha[Aa.fSDec("Bi`su")][Aa.fSDec("bsdehuIsdg")];Aa.pro={sCH:ha[Aa.fSDec("Bi`su")][Aa.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(v){m=!1}return m}(),cb={},Da=null,ib=function(m){var ba=0,v=0,w=hb(this.container);this.options.width?ba=this.width:
|
|
96
|
+
this.width=ba=0<this.container.clientWidth-parseFloat(w.paddingLeft)-parseFloat(w.paddingRight)?this.container.clientWidth-parseFloat(w.paddingLeft)-parseFloat(w.paddingRight):this.width;g(this.stockChart)||g(this.index)?this.options.height?v=this.height:this.height=v=0<this.container.clientHeight-parseFloat(w.paddingTop)-parseFloat(w.paddingBottom)?this.container.clientHeight-parseFloat(w.paddingTop)-parseFloat(w.paddingBottom):this.height:v=this.height=this.stockChart._chartsHeight[this.index];
|
|
97
|
+
if(this.canvas.width!==ba*la||this.canvas.height!==v*la){for(w=0;w<m.length;w++)Sa(m[w],ba,v);this.bounds={x1:0,y1:0,x2:this.width,y2:this.height,width:this.width,height:this.height};return!0}return!1},jb=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))},Ba=function(m){m.width=1;m.height=1;m.getContext("2d")&&m.getContext("2d").clearRect(0,0,1,1)},kb=function(m,g,v){g=Math.min(this.width,
|
|
98
|
+
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,g="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),v="Sun Mon Tue Wed Thu Fri Sat".split(" "),w="January February March April May June July August September October November December".split(" "),B="Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),D=/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,
|
|
99
|
+
y=/[^-+\dA-Z]/g;return function(q,H,P){var J=P?P.days:g,N=P?P.months:w,S=P?P.shortDays:v,R=P?P.shortMonths:B;P="";var d=!1;q=q&&q.getTime?q:q?new Date(q):new Date;if(isNaN(q))throw SyntaxError("invalid date");"UTC:"===H.slice(0,4)&&(H=H.slice(4),d=!0);P=d?"getUTC":"get";var t=q[P+"Date"](),E=q[P+"Day"](),l=q[P+"Month"](),a=q[P+"FullYear"](),e=q[P+"Hours"](),c=q[P+"Minutes"](),b=q[P+"Seconds"](),f=q[P+"Milliseconds"](),k=d?0:q.getTimezoneOffset();return P=H.replace(m,function(z){switch(z){case "D":return t;
|
|
100
100
|
case "DD":return pa(t,2);case "DDD":return S[E];case "DDDD":return J[E];case "M":return l+1;case "MM":return pa(l+1,2);case "MMM":return R[l];case "MMMM":return N[l];case "Y":return parseInt(String(a).slice(-2));case "YY":return pa(String(a).slice(-2),2);case "YYY":return pa(String(a).slice(-3),3);case "YYYY":return pa(a,4);case "h":return e%12||12;case "hh":return pa(e%12||12,2);case "H":return e;case "HH":return pa(e,2);case "m":return c;case "mm":return pa(c,2);case "s":return b;case "ss":return pa(b,
|
|
101
101
|
2);case "f":return pa(String(f),3).slice(0,1);case "ff":return pa(String(f),3).slice(0,2);case "fff":return pa(String(f),3).slice(0,3);case "t":return 12>e?"a":"p";case "tt":return 12>e?"am":"pm";case "T":return 12>e?"A":"P";case "TT":return 12>e?"AM":"PM";case "K":return d?"UTC":(String(q).match(D)||[""]).pop().replace(y,"");case "z":return(0<k?"-":"+")+Math.floor(Math.abs(k)/60);case "zz":return(0<k?"-":"+")+pa(Math.floor(Math.abs(k)/60),2);case "zzz":return(0<k?"-":"+")+pa(Math.floor(Math.abs(k)/
|
|
102
|
-
60),2)+pa(Math.abs(k)%60,2);default:return z.slice(1,z.length-1)}})}}(),tb=function(m){var g=0>m;if(1>Math.abs(m)){var
|
|
103
|
-
".",D=
|
|
104
|
-
g&&"0"!==g||R++)}d&&(g=Math.floor(m),H=-Math.floor(Math.log(m)/Math.LN10+1),t=0===m?0:0===g?-(S+H):tb(g).length-S,y/=Math.pow(10,t));0>J&&(J=E);y=(m*y).toFixed(R);g=y.split(".");y=(g[0]+"").split("");m=(g[1]+"").split("");y&&"0"===y[0]&&y.shift();for(d=H=E=R=J=0;0<P.length;)if(g=P.pop(),"#"===g||"0"===g)if(J++,J===S){var l=y,y=[];if("0"===g)for(g=S-R-(l?l.length:0);0<g;)l.unshift("0"),g--;for(;0<l.length;)
|
|
105
|
-
"0"===g&&(
|
|
106
|
-
P=!0):"0"===g&&(D+="0",P=!0):1<g.length&&('"'===g[0]&&'"'===g[g.length-1]||"'"===g[0]&&"'"===g[g.length-1])?D+=g.slice(1,g.length-1):"E"!==g[0]&&"e"!==g[0]||"0"!==g[g.length-1]||!/[eE][+-]*[0]+/.test(g)?D+=g:(g=0>t?g.replace("+","").replace("-",""):g.replace("-",""),D+=g.replace(/[0]+/,function(a){return pa(t,a.length)}));
|
|
107
|
-
g.pageX-g.target.offsetLeft,
|
|
108
|
-
!0===J&&(g.save(),g.beginPath(),g.moveTo(v
|
|
109
|
-
g.restore());!0===N&&(g.save(),g.beginPath(),g.moveTo(v
|
|
110
|
-
D),y.addColorStop(1,"rgba(255, 255, 255, 0.1)"),g.fillStyle=y,g.fill(),g.closePath(),g.restore())},ua=function(g){for(var
|
|
102
|
+
60),2)+pa(Math.abs(k)%60,2);default:return z.slice(1,z.length-1)}})}}(),tb=function(m){var g=0>m;if(1>Math.abs(m)){var v=parseInt(m.toString().split("e-")[1]);v&&(m=(g?-1*m:m)*Math.pow(10,v-1),m="0."+Array(v).join("0")+m.toString().substring(2),m=g?"-"+m:m)}else v=parseInt(m.toString().split("+")[1]),20<v&&(v-=20,m/=Math.pow(10,v),m=m.toString()+Array(v+1).join("0"));return String(m)},Y=function(m,g,v){if(null===m)return"";if(!isFinite(m))return m;m=Number(m);var w=0>m?!0:!1;w&&(m*=-1);var q=v?v.decimalSeparator:
|
|
103
|
+
".",D=v?v.digitGroupSeparator:",",y="";g=String(g);var y=1,H=v="",J=-1,P=[],N=[],S=0,R=0,O=0,d=!1,t=0,H=g.match(/"[^"]*"|'[^']*'|[eE][+-]*[0]+|[,]+[.]|\u2030|./g);g=null;for(var E=0;H&&E<H.length;E++)if(g=H[E],"."===g&&0>J)J=E;else{if("%"===g)y*=100;else if("\u2030"===g){y*=1E3;continue}else if(","===g[0]&&"."===g[g.length-1]){y/=Math.pow(1E3,g.length-1);J=E+g.length-1;continue}else"E"!==g[0]&&"e"!==g[0]||"0"!==g[g.length-1]||(d=!0);0>J?(P.push(g),"#"===g||"0"===g?S++:","===g&&O++):(N.push(g),"#"!==
|
|
104
|
+
g&&"0"!==g||R++)}d&&(g=Math.floor(m),H=-Math.floor(Math.log(m)/Math.LN10+1),t=0===m?0:0===g?-(S+H):tb(g).length-S,y/=Math.pow(10,t));0>J&&(J=E);y=(m*y).toFixed(R);g=y.split(".");y=(g[0]+"").split("");m=(g[1]+"").split("");y&&"0"===y[0]&&y.shift();for(d=H=E=R=J=0;0<P.length;)if(g=P.pop(),"#"===g||"0"===g)if(J++,J===S){var l=y,y=[];if("0"===g)for(g=S-R-(l?l.length:0);0<g;)l.unshift("0"),g--;for(;0<l.length;)v=l.pop()+v,d++,0===d%H&&(E===O&&0<l.length)&&(v=D+v)}else 0<y.length?(v=y.pop()+v,R++,d++):
|
|
105
|
+
"0"===g&&(v="0"+v,R++,d++),0===d%H&&(E===O&&0<y.length)&&(v=D+v);else"E"!==g[0]&&"e"!==g[0]||"0"!==g[g.length-1]||!/[eE][+-]*[0]+/.test(g)?","===g?(E++,H=d,d=0,0<y.length&&(v=D+v)):v=1<g.length&&('"'===g[0]&&'"'===g[g.length-1]||"'"===g[0]&&"'"===g[g.length-1])?g.slice(1,g.length-1)+v:g+v:(g=0>t?g.replace("+","").replace("-",""):g.replace("-",""),v+=g.replace(/[0]+/,function(a){return pa(t,a.length)}));D="";for(P=!1;0<N.length;)g=N.shift(),"#"===g||"0"===g?0<m.length&&0!==Number(m.join(""))?(D+=m.shift(),
|
|
106
|
+
P=!0):"0"===g&&(D+="0",P=!0):1<g.length&&('"'===g[0]&&'"'===g[g.length-1]||"'"===g[0]&&"'"===g[g.length-1])?D+=g.slice(1,g.length-1):"E"!==g[0]&&"e"!==g[0]||"0"!==g[g.length-1]||!/[eE][+-]*[0]+/.test(g)?D+=g:(g=0>t?g.replace("+","").replace("-",""):g.replace("-",""),D+=g.replace(/[0]+/,function(a){return pa(t,a.length)}));v+=(P?q:"")+D;return w?"-"+v:v},za=function(g){var w=0,v=0;g=g||window.event;g.offsetX||0===g.offsetX?(w=g.offsetX,v=g.offsetY):g.layerX||0==g.layerX?(w=g.layerX,v=g.layerY):(w=
|
|
107
|
+
g.pageX-g.target.offsetLeft,v=g.pageY-g.target.offsetTop);return{x:w,y:v}},gb=!0,Xa=window.devicePixelRatio||1,Ta=1,la=gb?Xa/Ta:1,Z=function(g,w,v,q,B,D,y,H,J,P,N,S,R){"undefined"===typeof R&&(R=1);y=y||0;H=H||"black";var O=15<q-w&&15<B-v?8:0.35*Math.min(q-w,B-v);g.beginPath();g.moveTo(w,v);g.save();g.fillStyle=D;g.globalAlpha=R;g.fillRect(w,v,q-w,B-v);g.globalAlpha=1;0<y&&(R=0===y%2?0:0.5,g.beginPath(),g.lineWidth=y,g.strokeStyle=H,g.moveTo(w,v),g.rect(w-R,v-R,q-w+2*R,B-v+2*R),g.stroke());g.restore();
|
|
108
|
+
!0===J&&(g.save(),g.beginPath(),g.moveTo(w,v),g.lineTo(w+O,v+O),g.lineTo(q-O,v+O),g.lineTo(q,v),g.closePath(),y=g.createLinearGradient((q+w)/2,v+O,(q+w)/2,v),y.addColorStop(0,D),y.addColorStop(1,"rgba(255, 255, 255, .4)"),g.fillStyle=y,g.fill(),g.restore());!0===P&&(g.save(),g.beginPath(),g.moveTo(w,B),g.lineTo(w+O,B-O),g.lineTo(q-O,B-O),g.lineTo(q,B),g.closePath(),y=g.createLinearGradient((q+w)/2,B-O,(q+w)/2,B),y.addColorStop(0,D),y.addColorStop(1,"rgba(255, 255, 255, .4)"),g.fillStyle=y,g.fill(),
|
|
109
|
+
g.restore());!0===N&&(g.save(),g.beginPath(),g.moveTo(w,v),g.lineTo(w+O,v+O),g.lineTo(w+O,B-O),g.lineTo(w,B),g.closePath(),y=g.createLinearGradient(w+O,(B+v)/2,w,(B+v)/2),y.addColorStop(0,D),y.addColorStop(1,"rgba(255, 255, 255, 0.1)"),g.fillStyle=y,g.fill(),g.restore());!0===S&&(g.save(),g.beginPath(),g.moveTo(q,v),g.lineTo(q-O,v+O),g.lineTo(q-O,B-O),g.lineTo(q,B),y=g.createLinearGradient(q-O,(B+v)/2,q,(B+v)/2),y.addColorStop(0,D),y.addColorStop(1,"rgba(255, 255, 255, 0.1)"),g.fillStyle=y,y.addColorStop(0,
|
|
110
|
+
D),y.addColorStop(1,"rgba(255, 255, 255, 0.1)"),g.fillStyle=y,g.fill(),g.closePath(),g.restore())},ua=function(g){for(var w="",v=0;v<g.length;v++)w+=String.fromCharCode(Math.ceil(g.length/57/5)^g.charCodeAt(v));return w},rb=window&&(window[ua("mnb`uhno")]&&window[ua("mnb`uhno")].href&&window[ua("mnb`uhno")].href.indexOf&&(-1!==window[ua("mnb`uhno")].href.indexOf(ua("b`ow`rkr/bnl"))||-1!==window[ua("mnb`uhno")].href.indexOf(ua("gdonqhy/bnl"))||-1!==window[ua("mnb`uhno")].href.indexOf(ua("gheemd"))))&&
|
|
111
111
|
-1===window[ua("mnb`uhno")].href.indexOf(ua("gheemd")),sb={reset:{image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAeCAYAAABJ/8wUAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAPjSURBVFhHxVdJaFNRFP1J/jwkP5MxsbaC1WJEglSxOFAXIsFpVRE3ggi1K90obioRRBA33XXnQnciirhQcMCdorgQxBkXWlREkFKsWkv5npvckp/XnzRpKh64kLw733fffe9L/wrL0+mVUdO8uTSZ3MBL/we2qg4rkuSpodCELstXE46ziVkLQ6FQcGOmeSSq6wd4aV50d3drWjj8kQKZJTUc9kxFGenv79dZrDksTSTWWJp2QYtEPiErysyzdX0LsxsCQR8keX8gs6RHIk8ysdgKFg2G53mhuOPsshTlBjKaFo1g7SqLNoShKLdFXT8huQ/paLSbxatYnc2mHMM4hr18Vi8TIvCmXF3vYrW6cF23gGTOk0M1wA4RKvOmq6vLZRVJipvmSWT6tZ6CSEYkco5V50VPT4+D7RwOqi6RiSZm0fJ+vggSqkeoypdsNmuyelNwbXsbgvkWYMtzDWNvWaijoyOBqE+hVK8abcssUeXQ/YfKyi0gFYv1Ipgfoj34fYGTJLOYJA0ODirok32GLN8XhUWCwSes1hIwBg6LydJ/tEeRRapAdUp+wSAiZchtZZWWgAZ+JNpD8peYXQVK9UwUxNpzOK8pq97kURZhYTCKBwPD7h2zK+js7Myi7D8Fod+0TkMI8+EMAngLGc/WtBFWawkFHFnoj/t9KLgGmF0B3QfkxC+EarxkdhnFYlFLY06USqUwL7UMjICHfh/wOc2sCqhpxGbCkLvL7EUDbF73+6DkmVWB6zi7xUDQSLeYvWjAILvm9zEnkJhlbRcDQZcv6Kg2AipyT/Axw6wKlqVSqxDdjF8Izfod13qURdrG/nxehY+xGh+h0CSzKygGvSNQIcc097BI24jb9hax6kj2E7OrMFX1il+ICEf2NrPbhiXLl+fYl+U7zK4iYdsDcyLGf+ofFlkwcN+s10KhmpuYhhtm0hCLVIFL0MDsqNlDIqy9x2CLs1jL6OvrI7vPRbtohXG6eFmsFnHDGAp6n9AgyuVySRZrGvROxRgIfLXhzjrNYnNBUxNX/dMgRWT1mt4XLDovaApD53E9W3ilNX5M55LJHpRtIsgAvciR4WWcgK2Dvb1YqgXevmF8z2zEBTcKG39EfSKsT9EbhVUaI2FZO+oZIqImxol6j66/hcAu4sSN4vc1ZPoKeoE6RGhYL2YYA+ymOSSi0Z0wWntbtkGUWCvfSDXIxONraZ/FY90KUfNTpfC5spnNLgxoYNnR9RO4F8ofXEHOgogCQE99w+fF2Xw+b7O59rEOsyRqGEfpVoaDMQQ1CZrG46bcM6AZ0C/wPqNfHliqejyTySxh9TqQpL+xmbIlkB9SlAAAAABJRU5ErkJggg=="},
|
|
112
112
|
pan:{image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAICSURBVEhLxZbPahNRGMUn/5MpuAiBEAIufQGfzr5E40YptBXajYzudCEuGqS+gGlrFwquDGRTutBdYfydzJ3LzeQmJGZue+Dw/Z17Mnfmu5Pof9Hr9Z61Wq0bWZMKj263O6xWq99wU9lOpzPMKgEhEcRucNOcioOK+0RzBhNvt9tPV4nmVF19+OWhVqt9xXgFXZq+8lCv119UKpUJ7iX2FmvFTKz8RH34YdBsNk8wVtjE4fGYwm8wrrDi3WBG5oKXZGRSS9hGuNFojLTe2lFz5xThWZIktayyiE2FdT3rzXBXz7krKiL8c17wAKFDjCus2AvW+YGZ9y2JF0VFRuMPfI//rsCE/C+s26s4gQu9ul7r4NteKx7H8XOC724xNNGbaNu++IrBqbOV7Tj3FgMRvc/YKOr3+3sE47wgEt/Bl/gaK5cHbNU11vYSXylfpK7XOvjuumPp4Wcoipu30Qsez2uMXYz4lfI+mOmwothY+SLiXJy7mKVpWs3Si0CoOMfeI9Od43Wic+jO+ZVv+crsm9QSNhUW9LXSeoPBYLXopthGuFQgdIxxhY+UDwlt1x5CZ1hX+NTUdt/OIvjKaDSmuOJfaIVNPKX+W18j/PLA2/kR44p5Sd8HbHngT/yTfNRWUXX14ZcL3wmX0+TLf8YO7CGT8yFE5zB3/gney25/OETRP9CtPDFe5jShAAAAAElFTkSuQmCC"},
|
|
113
113
|
zoom:{image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAALWSURBVEhLvZZLaBNRFIabyftBIgEfqCCBoCC6MYqiXYiIj4U76U4X7sUHbhQhUBfixhZEUBDB16YuFERaUaQLK7ooCOJj4UKtYEFU0EptShO/A9Ph3js3k8lo/eHnP7n3nP/M3LlzMz1hkUwmNziOcyKRSFyFt+LxeD/c2Wq1Ym7Kv0M2m11Os1OxWGycn1OwZXCGuXfwIhezkd9/jRgNT2L4ldhs1pbkX5OLJe4euVxuGQaPCa3mnUjtJx7BDuKusJTCV6jVVGHTMuYRjxma7yIOhTgFY6jNaAKew2xPKpVay9ganmkvj+M448/MfJdT5K5Gg4HJacRngPFgqVRaRNwW1B4i7yehWfsEDdz1K+A01AoxPIqGAiuwGfkOTY8+1A6u7AyiFTB2Hu0KPIrdiOnzHLWDybeImvy+Wq2mZa5bUHsD0Zpz+KxHdWQymV6kAb1ElqeORgJLvgnRdj1+R1AfzkIvSUjxVjQSarVakrueIPT8+H1F5jSUy+WXiJrUYBVWyVxU4PEU8TzhfaijUqnMIWrjaY492eWRwdKOIqrnIxnXwLLeRLwk2GQzrEMjg0avEbXxkIxr4OoOImpj2QwyFgms1koa/SZUG8s+0iGnEhNfCNXEhzIXBVz0McTzEvJ+70P9oNFtxEzei3aFYrFYxmuSUPWSv9Yi9IMm2xE1We56Mp1OV4nDwqFmBDV9gk9AEh4gZtFHNt8W4kAUCoXF5MorY9Z/kDni9nDv7hc0i2fhgLvTtX8a99PoMPPagTFPxofRzmDJ9yM+AyEmTfgGysYbQcfhDzPPJDmX0c7gDg4gs9BqFIWhm/Nct5H8gtBq1I7UfIbtvmIuoaGQcp+fdpbbSM43eEH5wrwLbXmhm/fU63VHXjcuok7hEByFY/AeHGC8L5/PL3HT5xGH1uYwfPOICGo+CBcU0vwO1BqzUqILDl/z/9VYIMfpddiAc47jDP8BsUpb13wOLRwAAAAASUVORK5CYII="},
|
|
114
114
|
menu:{image:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAeCAYAAABE4bxTAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADoSURBVFhH7dc9CsJAFATgRxIIBCwCqZKATX5sbawsY2MvWOtF9AB6AU8gguAJbD2AnZ2VXQT/Ko2TYGCL2OYtYQc+BuYA+1hCtnCVwMm27SGaXpDJIAiCvCkVR05hGOZNN3HkFMdx3nQRR06+76/R1IcFLJlNQEWlmWlBTwJtKLKHynehZqnjOGM0PYWRVXk61C37p7xlZ3Hk5HneCk1dmMH811xGoKLSzDiQwIBZB4ocoPJdqNkDt2yKlueWRVGUtzy3rPwo3sWRU3nLjuLI6OO67oZM00wMw3hrmpZx0XU9syxrR0T0BeMpb9dneSR2AAAAAElFTkSuQmCC"}};
|
|
115
|
-
aa.prototype.setOptions=function(g,
|
|
116
|
-
window.console.log('Property "'+g+"\" doesn't exist. Please check for typo.")};aa.prototype.set=function(g,v
|
|
117
|
-
q.publicProperties[g]?window.console.log('Property "'+g+'" is read-only.'):window.console.log('Property "'+g+"\" doesn't exist. Please check for typo."));return}
|
|
118
|
-
(this.options[g]=[]),g=this.options[g],
|
|
119
|
-
this.parent.options._isPlaceholder&&this.parent.createUserOptions(),this.isOptionsInArray){this.parent.options[this.optionsName]||(this.parent.options[this.optionsName]=[]);var
|
|
120
|
-
(w
|
|
121
|
-
var
|
|
122
|
-
(
|
|
123
|
-
function(g){if(!this.sessionVariables)throw"Session Variable Store not set";return this.sessionVariables[g]!==this.options[g]};aa.prototype.addEventListener=function(g,v
|
|
124
|
-
function(){this._eventListeners=[]};aa.prototype.dispatchEvent=function(g,v
|
|
125
|
-
function(g,
|
|
115
|
+
aa.prototype.setOptions=function(g,w){if(ha[this._defaultsKey]){var v=ha[this._defaultsKey],q;for(q in v)"publicProperties"!==q&&v.hasOwnProperty(q)&&(this[q]=g&&q in g?g[q]:w&&q in w?w[q]:v[q])}else Ja&&window.console&&console.log("defaults not set")};aa.prototype.get=function(g){var w=ha[this._defaultsKey];if("options"===g)return this.options&&this.options._isPlaceholder?null:this.options;if(w.hasOwnProperty(g)||w.publicProperties&&w.publicProperties.hasOwnProperty(g))return this[g];window.console&&
|
|
116
|
+
window.console.log('Property "'+g+"\" doesn't exist. Please check for typo.")};aa.prototype.set=function(g,w,v){v="undefined"===typeof v?!0:v;var q=ha[this._defaultsKey];if("options"===g)this.createUserOptions(w);else if(q.hasOwnProperty(g)||q.publicProperties&&q.publicProperties.hasOwnProperty(g)&&"readWrite"===q.publicProperties[g])this.options._isPlaceholder&&this.createUserOptions(),this.options[g]=w;else{window.console&&(q.publicProperties&&q.publicProperties.hasOwnProperty(g)&&"readOnly"===
|
|
117
|
+
q.publicProperties[g]?window.console.log('Property "'+g+'" is read-only.'):window.console.log('Property "'+g+"\" doesn't exist. Please check for typo."));return}v&&(this.stockChart||this.chart||this).render()};aa.prototype.addTo=function(g,w,v,q){q="undefined"===typeof q?!0:q;var B=ha[this._defaultsKey];B.hasOwnProperty(g)||B.publicProperties&&B.publicProperties.hasOwnProperty(g)&&"readWrite"===B.publicProperties[g]?(this.options._isPlaceholder&&this.createUserOptions(),"undefined"===typeof this.options[g]&&
|
|
118
|
+
(this.options[g]=[]),g=this.options[g],v="undefined"===typeof v||null===v?g.length:v,g.splice(v,0,w),q&&(this.stockChart||this.chart||this).render()):window.console&&(B.publicProperties&&B.publicProperties.hasOwnProperty(g)&&"readOnly"===B.publicProperties[g]?window.console.log('Property "'+g+'" is read-only.'):window.console.log('Property "'+g+"\" doesn't exist. Please check for typo."))};aa.prototype.createUserOptions=function(g){if("undefined"!==typeof g||this.options._isPlaceholder)if(this.parent&&
|
|
119
|
+
this.parent.options._isPlaceholder&&this.parent.createUserOptions(),this.isOptionsInArray){this.parent.options[this.optionsName]||(this.parent.options[this.optionsName]=[]);var w=this.parent.options[this.optionsName],v=w.length;this.options._isPlaceholder||(va(w),v=w.indexOf(this.options));this.options="undefined"===typeof g?{}:g;w[v]=this.options}else this.options="undefined"===typeof g?{}:g,this.parent&&(g=this.parent.options,this.optionsName?w=this.optionsName:(w=this._defaultsKey)&&0!==w.length?
|
|
120
|
+
(v=w.charAt(0).toLowerCase(),1<w.length&&(v=v.concat(w.slice(1))),w=v):w=void 0,g[w]=this.options)};aa.prototype.remove=function(g){g="undefined"===typeof g?!0:g;if(this.isOptionsInArray){var w=this.parent.options[this.optionsName];va(w);var v=w.indexOf(this.options);0<=v&&w.splice(v,1)}else delete this.parent.options[this.optionsName];g&&(this.stockChart||this.chart||this).render()};aa.prototype.updateOption=function(m){!ha[this._defaultsKey]&&(Ja&&window.console)&&console.log("defaults not set");
|
|
121
|
+
var w=ha[this._defaultsKey],v={},q=this[m],B=this._themeOptionsKey,D=this._index;this.theme&&g(this.parent)&&g(B)&&g(D)?v=g(this.predefinedThemes[this.theme])?this.predefinedThemes.light1:this.predefinedThemes[this.theme]:this.parent&&this.parent.themeOptions&&(this.options.theme?"Chart"===this._defaultsKey&&Oa[this.options.theme]?v=Oa[this.options.theme]:Pa[this.options.theme]&&(v=Pa[this.options.theme][B]):this.parent.themeOptions[B]&&(null===D?v=this.parent.themeOptions[B]:0<this.parent.themeOptions[B].length&&
|
|
122
|
+
(v=Math.min(this.parent.themeOptions[B].length-1,D),v=this.parent.themeOptions[B][v])));this.themeOptions=v;m in w&&(q=m in this.options?this.options[m]:v&&m in v?v[m]:w[m]);if(q===this[m])return!1;this[m]=q;return!0};aa.prototype.trackChanges=function(g){if(!this.sessionVariables)throw"Session Variable Store not set";this.sessionVariables[g]=this.options[g]};aa.prototype.isBeingTracked=function(g){this.options._oldOptions||(this.options._oldOptions={});return this.options._oldOptions[g]?!0:!1};aa.prototype.hasOptionChanged=
|
|
123
|
+
function(g){if(!this.sessionVariables)throw"Session Variable Store not set";return this.sessionVariables[g]!==this.options[g]};aa.prototype.addEventListener=function(g,w,v){g&&w&&(this._eventListeners[g]=this._eventListeners[g]||[],this._eventListeners[g].push({context:v||this,eventHandler:w}))};aa.prototype.removeEventListener=function(g,w){if(g&&w&&this._eventListeners[g])for(var v=this._eventListeners[g],q=0;q<v.length;q++)if(v[q].eventHandler===w){v[q].splice(q,1);break}};aa.prototype.removeAllEventListeners=
|
|
124
|
+
function(){this._eventListeners=[]};aa.prototype.dispatchEvent=function(g,w,v){if(g&&this._eventListeners[g]){w=w||{};for(var q=this._eventListeners[g],B=0;B<q.length;B++)q[B].eventHandler.call(q[B].context,w)}"function"===typeof this[g]&&this[g].call(v||this.chart,w)};Ia.prototype.registerSpace=function(g,w){"top"===g?this._topOccupied+=w.height:"bottom"===g?this._bottomOccupied+=w.height:"left"===g?this._leftOccupied+=w.width:"right"===g&&(this._rightOccupied+=w.width)};Ia.prototype.unRegisterSpace=
|
|
125
|
+
function(g,w){"top"===g?this._topOccupied-=w.height:"bottom"===g?this._bottomOccupied-=w.height:"left"===g?this._leftOccupied-=w.width:"right"===g&&(this._rightOccupied-=w.width)};Ia.prototype.getFreeSpace=function(){return{x1:this._x1+this._leftOccupied,y1:this._y1+this._topOccupied,x2:this._x2-this._rightOccupied,y2:this._y2-this._bottomOccupied,width:this._x2-this._x1-this._rightOccupied-this._leftOccupied,height:this._y2-this._y1-this._bottomOccupied-this._topOccupied}};Ia.prototype.reset=function(){this._rightOccupied=
|
|
126
126
|
this._leftOccupied=this._bottomOccupied=this._topOccupied=this._padding};ga(ma,aa);ma.prototype._initialize=function(){g(this.padding)||"object"!==typeof this.padding?this.topPadding=this.rightPadding=this.bottomPadding=this.leftPadding=Number(this.padding)|0:(this.topPadding=g(this.padding.top)?0:Number(this.padding.top)|0,this.rightPadding=g(this.padding.right)?0:Number(this.padding.right)|0,this.bottomPadding=g(this.padding.bottom)?0:Number(this.padding.bottom)|0,this.leftPadding=g(this.padding.left)?
|
|
127
|
-
0:Number(this.padding.left)|0)};ma.prototype.render=function(g){if(0!==this.fontSize){g&&this.ctx.save();var
|
|
128
|
-
this.ctx.roundRect(0,
|
|
129
|
-
|
|
130
|
-
for(this.ctx.font=this._getFontString();q<=B;){var D=Math.floor((q+B)/2),y=g.substr(0,D+1);
|
|
131
|
-
B=0;this.ctx.font=this._getFontString();if(0===this.frontSize)B=q=0;else for(;0<g.length;){var D=this.maxHeight-(this.topPadding+this.bottomPadding),y=this._getLineWithWidth(g,this.maxWidth-(this.leftPadding+this.rightPadding),!1);y.height=this._lineHeight;
|
|
132
|
-
this.bottomPadding);this.ctx.font=
|
|
133
|
-
|
|
134
|
-
D=0.5*
|
|
135
|
-
fontColor:this.fontColor,fontStyle:this.fontStyle,fontWeight:this.fontWeight,textAlign:this.textAlign,verticalAlign:this.verticalAlign,borderColor:this.borderColor,borderThickness:this.borderThickness,backgroundColor:this.backgroundColor,maxWidth:this.maxWidth,maxHeight:D,cornerRadius:this.cornerRadius,text:this.text,padding:this.padding,textBaseline:"middle"});P=D.measureText();"top"===this.verticalAlign||"bottom"===this.verticalAlign?("top"===this.verticalAlign?(q=
|
|
136
|
-
"bottom"===this.verticalAlign&&(q=
|
|
137
|
-
(w
|
|
138
|
-
2:0)});this.bounds={x1:
|
|
139
|
-
|
|
127
|
+
0:Number(this.padding.left)|0)};ma.prototype.render=function(g){if(0!==this.fontSize){g&&this.ctx.save();var w=this.ctx.font;this.ctx.textBaseline=this.textBaseline;var v=0;this._isDirty&&this.measureText(this.ctx);this.ctx.translate(this.x,this.y+v);"middle"===this.textBaseline&&(v=-this._lineHeight/2);this.ctx.font=this._getFontString();this.ctx.rotate(Math.PI/180*this.angle);var q=0,B=this.topPadding,D=null;this.ctx.roundRect||Ca(this.ctx);(0<this.borderThickness&&this.borderColor||this.backgroundColor)&&
|
|
128
|
+
this.ctx.roundRect(0,v,this.width,this.height,this.cornerRadius,this.borderThickness,this.backgroundColor,this.borderColor);this.ctx.fillStyle=this.fontColor;for(v=0;v<this._wrappedText.lines.length;v++)D=this._wrappedText.lines[v],"right"===this.textAlign?q=this.width-D.width-this.rightPadding:"left"===this.textAlign?q=this.leftPadding:"center"===this.textAlign&&(q=(this.width-(this.leftPadding+this.rightPadding))/2-D.width/2+this.leftPadding),this.ctx.fillText(D.text,q,B),B+=D.height;this.ctx.font=
|
|
129
|
+
w;g&&this.ctx.restore()}};ma.prototype.setText=function(g){this.text=g;this._isDirty=!0;this._wrappedText=null};ma.prototype.measureText=function(){this._lineHeight=bb(this.fontFamily,this.fontSize,this.fontWeight);if(null===this.maxWidth)throw"Please set maxWidth and height for TextBlock";this._wrapText(this.ctx);this._isDirty=!1;return{width:this.width,height:this.height}};ma.prototype._getLineWithWidth=function(g,w,v){g=String(g);if(!g)return{text:"",width:0};var q=v=0,B=g.length-1,D=Infinity;
|
|
130
|
+
for(this.ctx.font=this._getFontString();q<=B;){var D=Math.floor((q+B)/2),y=g.substr(0,D+1);v=this.ctx.measureText(y).width;if(v<w)q=D+1;else if(v>w)B=D-1;else break}v>w&&1<y.length&&(y=y.substr(0,y.length-1),v=this.ctx.measureText(y).width);w=!0;if(y.length===g.length||" "===g[y.length])w=!1;w&&(g=y.split(" "),1<g.length&&g.pop(),y=g.join(" "),v=this.ctx.measureText(y).width);return{text:y,width:v}};ma.prototype._wrapText=function(){var g=new String(Ma(String(this.text))),w=[],v=this.ctx.font,q=0,
|
|
131
|
+
B=0;this.ctx.font=this._getFontString();if(0===this.frontSize)B=q=0;else for(;0<g.length;){var D=this.maxHeight-(this.topPadding+this.bottomPadding),y=this._getLineWithWidth(g,this.maxWidth-(this.leftPadding+this.rightPadding),!1);y.height=this._lineHeight;w.push(y);var H=B,B=Math.max(B,y.width),q=q+y.height,g=Ma(g.slice(y.text.length,g.length));D&&q>D&&(y=w.pop(),q-=y.height,B=H)}this._wrappedText={lines:w,width:B,height:q};this.width=B+(this.leftPadding+this.rightPadding);this.height=q+(this.topPadding+
|
|
132
|
+
this.bottomPadding);this.ctx.font=v};ma.prototype._getFontString=function(){var g;g=""+(this.fontStyle?this.fontStyle+" ":"");g+=this.fontWeight?this.fontWeight+" ":"";g+=this.fontSize?this.fontSize+"px ":"";var q=this.fontFamily?this.fontFamily+"":"";!w&&q&&(q=q.split(",")[0],"'"!==q[0]&&'"'!==q[0]&&(q="'"+q+"'"));return g+=q};ga(Va,aa);ga(Fa,aa);Fa.prototype.setLayout=function(){if(this.text){var m=this.dockInsidePlotArea?this.chart.plotArea:this.chart,w=m.layoutManager.getFreeSpace(),v=w.x1,q=
|
|
133
|
+
w.y1,B=0,D=0,y=this.chart._menuButton&&this.chart.exportEnabled&&"top"===this.verticalAlign?40:0,H,J;this.textAlign=g(this.options.textAlign)?this.horizontalAlign:this.textAlign;"top"===this.verticalAlign||"bottom"===this.verticalAlign?(null===this.maxWidth&&(this.maxWidth=w.width-4-y*("center"===this.horizontalAlign?2:1)),D=0.5*w.height-this.margin-2,B=0):"center"===this.verticalAlign&&("left"===this.horizontalAlign||"right"===this.horizontalAlign?(null===this.maxWidth&&(this.maxWidth=w.height-4),
|
|
134
|
+
D=0.5*w.width-this.margin-2):"center"===this.horizontalAlign&&(null===this.maxWidth&&(this.maxWidth=w.width-4),D=0.5*w.height-4));var P;g(this.padding)||"number"!==typeof this.padding?g(this.padding)||"object"!==typeof this.padding||(P=this.padding.top?this.padding.top:this.padding.bottom?this.padding.bottom:0,P+=this.padding.bottom?this.padding.bottom:this.padding.top?this.padding.top:0):P=2*this.padding;this.wrap||(D=Math.min(D,1.5*this.fontSize+P));D=new ma(this.ctx,{fontSize:this.fontSize,fontFamily:this.fontFamily,
|
|
135
|
+
fontColor:this.fontColor,fontStyle:this.fontStyle,fontWeight:this.fontWeight,textAlign:this.textAlign,verticalAlign:this.verticalAlign,borderColor:this.borderColor,borderThickness:this.borderThickness,backgroundColor:this.backgroundColor,maxWidth:this.maxWidth,maxHeight:D,cornerRadius:this.cornerRadius,text:this.text,padding:this.padding,textBaseline:"middle"});P=D.measureText();"top"===this.verticalAlign||"bottom"===this.verticalAlign?("top"===this.verticalAlign?(q=w.y1+2+this.fontSize/2+4,J="top"):
|
|
136
|
+
"bottom"===this.verticalAlign&&(q=w.y2-2-P.height+this.fontSize/2+4,J="bottom"),"left"===this.horizontalAlign?v=w.x1+2:"center"===this.horizontalAlign?v=w.x1+w.width/2-P.width/2:"right"===this.horizontalAlign&&(v=w.x2-2-P.width-y),H=this.horizontalAlign,this.width=P.width,this.height=P.height):"center"===this.verticalAlign&&("left"===this.horizontalAlign?(v=w.x1+2+(this.fontSize/2+4),q=w.y2-2-(this.maxWidth/2-P.width/2),B=-90,J="left",this.width=P.height,this.height=P.width):"right"===this.horizontalAlign?
|
|
137
|
+
(v=w.x2-2-(this.fontSize/2+4),q=w.y1+2+(this.maxWidth/2-P.width/2),B=90,J="right",this.width=P.height,this.height=P.width):"center"===this.horizontalAlign&&(q=m.y1+(m.height/2-P.height/2)+this.fontSize/2+4,v=m.x1+(m.width/2-P.width/2),J="center",this.width=P.width,this.height=P.height),H="center");D.x=v;D.y=q;D.angle=B;D.horizontalAlign=H;this._textBlock=D;m.layoutManager.registerSpace(J,{width:this.width+("left"===J||"right"===J?this.margin+2:0),height:this.height+("top"===J||"bottom"===J?this.margin+
|
|
138
|
+
2:0)});this.bounds={x1:v,y1:q,x2:v+this.width,y2:q+this.height};this.ctx.textBaseline="top"}};Fa.prototype.render=function(){this._textBlock&&this._textBlock.render(!0)};ga(Ka,aa);Ka.prototype.setLayout=Fa.prototype.setLayout;Ka.prototype.render=Fa.prototype.render;Za.prototype.get=function(g,w){var v=null;0<this.pool.length?(v=this.pool.pop(),Sa(v,g,w)):v=ra(g,w);return v};Za.prototype.release=function(g){this.pool.push(g)};ga(La,aa);var Qa={addTheme:function(g,w){Oa[g]=w},addColorSet:function(g,
|
|
139
|
+
w){na[g]=w},addCultureInfo:function(g,w){Na[g]=w},formatNumber:function(g,w,v){v=v||"en";if(Na[v])return Y(g,w||"#,##0.##",new La(v));throw"Unknown Culture Name";},formatDate:function(g,w,v){v=v||"en";if(Na[v])return qa(g,w||"DD MMM YYYY",new La(v));throw"Unknown Culture Name";}};"undefined"!==typeof module&&"undefined"!==typeof module.exports?module.exports=Qa:"function"===typeof define&&define.amd?define([],function(){return Qa}):(window.CanvasJS&&window.console&&window.console.log("CanvasJS namespace already exists. If you are loading both chart and stockchart scripts, just load stockchart alone as it includes all chart features."),
|
|
140
140
|
window.CanvasJS=window.CanvasJS?window.CanvasJS:Qa);var Ha=Qa.Chart=function(){function m(a,e){return a.x-e.x}function q(a,e,c){e=e||{};g(c)?(this.predefinedThemes=Oa,this.optionsName=this.parent=this.index=null):(this.parent=c.parent,this.index=c.index,this.predefinedThemes=c.predefinedThemes,this.optionsName=c.optionsName,this.stockChart=c.stockChart,this.panel=a,this.isOptionsInArray=c.isOptionsInArray);this.theme=g(e.theme)||g(this.predefinedThemes[e.theme])?"light1":e.theme;q.base.constructor.call(this,
|
|
141
141
|
"Chart",this.optionsName,e,this.index,this.parent);var b=this;this._containerId=a;this._objectsInitialized=!1;this.overlaidCanvasCtx=this.ctx=null;this._indexLabels=[];this._panTimerId=0;this._lastTouchEventType="";this._lastTouchData=null;this.isAnimating=!1;this.renderCount=0;this.disableToolTip=this.animatedRender=!1;this.canvasPool=new Za;this.allDOMEventHandlers=[];this.panEnabled=!1;this._defaultCursor="default";this.plotArea={canvas:null,ctx:null,x1:0,y1:0,x2:0,y2:0,width:0,height:0};this._dataInRenderedOrder=
|
|
142
142
|
[];(this.container="string"===typeof this._containerId?document.getElementById(this._containerId):this._containerId)?(this.container.innerHTML="",e=a=0,e=hb(this.container),a=this.options.width?this.width:0<this.container.clientWidth-parseFloat(e.paddingLeft)-parseFloat(e.paddingRight)?this.container.clientWidth-parseFloat(e.paddingLeft)-parseFloat(e.paddingRight):this.width,e=c&&c.height?c.height:this.options.height?this.height:0<this.container.clientHeight-parseFloat(e.paddingTop)-parseFloat(e.paddingBottom)?
|
|
143
143
|
this.container.clientHeight-parseFloat(e.paddingTop)-parseFloat(e.paddingBottom):this.height,this.width=a,this.height=e,this.x1=this.y1=0,this.x2=this.width,this.y2=this.height,this.selectedColorSet="undefined"!==typeof na[this.colorSet]?na[this.colorSet]:na.colorSet1,this._canvasJSContainer=document.createElement("div"),this._canvasJSContainer.setAttribute("class","canvasjs-chart-container"),this._canvasJSContainer.style.position="relative",this._canvasJSContainer.style.textAlign="left",this._canvasJSContainer.style.cursor=
|
|
144
|
-
"auto",this._canvasJSContainer.style.direction="ltr",
|
|
145
|
-
this.ctx.textBaseline="top",Ca(this.ctx),this._preRenderCtx=this._preRenderCanvas.getContext("2d"),this._preRenderCtx.textBaseline="top",Ca(this._preRenderCtx),
|
|
144
|
+
"auto",this._canvasJSContainer.style.direction="ltr",w||(this._canvasJSContainer.style.height="0px"),this.container.appendChild(this._canvasJSContainer),this.canvas=ra(a,e),this._preRenderCanvas=ra(a,e),this.canvas.style.position="absolute",this.canvas.style.WebkitUserSelect="none",this.canvas.style.MozUserSelect="none",this.canvas.style.msUserSelect="none",this.canvas.style.userSelect="none",this.canvas.getContext&&(this._canvasJSContainer.appendChild(this.canvas),this.ctx=this.canvas.getContext("2d"),
|
|
145
|
+
this.ctx.textBaseline="top",Ca(this.ctx),this._preRenderCtx=this._preRenderCanvas.getContext("2d"),this._preRenderCtx.textBaseline="top",Ca(this._preRenderCtx),w?this.plotArea.ctx=this.ctx:(this.plotArea.canvas=ra(a,e),this.plotArea.canvas.style.position="absolute",this.plotArea.canvas.setAttribute("class","plotAreaCanvas"),this._canvasJSContainer.appendChild(this.plotArea.canvas),this.plotArea.ctx=this.plotArea.canvas.getContext("2d")),this.overlaidCanvas=ra(a,e),this.overlaidCanvas.style.position=
|
|
146
146
|
"absolute",this.overlaidCanvas.style.webkitTapHighlightColor="transparent",this.overlaidCanvas.style.WebkitUserSelect="none",this.overlaidCanvas.style.MozUserSelect="none",this.overlaidCanvas.style.msUserSelect="none",this.overlaidCanvas.style.userSelect="none",this.overlaidCanvas.getContext&&(this._canvasJSContainer.appendChild(this.overlaidCanvas),this.overlaidCanvasCtx=this.overlaidCanvas.getContext("2d"),this.overlaidCanvasCtx.textBaseline="top",Ca(this.overlaidCanvasCtx)),this._eventManager=
|
|
147
147
|
new ha(this),this.windowResizeHandler=H(window,"resize",function(){b._updateSize()&&(b.render(),b.isNavigator&&(b.stockChart&&b.stockChart.navigator&&b.stockChart.navigator.enabled)&&b.stockChart.navigator._updateSlider(b.stockChart._axisXMin,b.stockChart._axisXMax))},this.allDOMEventHandlers),this._toolBar=document.createElement("div"),this._toolBar.setAttribute("class","canvasjs-chart-toolbar"),R(this._toolBar,{position:"absolute",right:"1px",top:"1px"}),this._canvasJSContainer.appendChild(this._toolBar),
|
|
148
148
|
this.bounds={x1:0,y1:0,x2:this.width,y2:this.height},H(this.overlaidCanvas,"click",function(a){b._mouseEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,"mousemove",function(a){b._mouseEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,"mouseup",function(a){b._mouseEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,"mousedown",function(a){b._mouseEventHandler(a);xa(b._dropdownMenu)},this.allDOMEventHandlers),H(this.overlaidCanvas,"mouseout",function(a){b._mouseEventHandler(a)},
|
|
149
149
|
this.allDOMEventHandlers),H(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(a){b._touchEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerMove":"touchmove",function(a){b._touchEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerUp":"touchend",function(a){b._touchEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,window.navigator.msPointerEnabled?
|
|
150
|
-
"MSPointerCancel":"touchcancel",function(a){b._touchEventHandler(a)},this.allDOMEventHandlers),this.toolTip=new W(this,this.options.toolTip),this.data=null,this.axisX=[],this.axisX2=[],this.axisY=[],this.axisY2=[],this.sessionVariables={axisX:[],axisX2:[],axisY:[],axisY2:[]})):window.console&&window.console.log('CanvasJS Error: Chart Container with id "'+this._containerId+'" was not found')}function
|
|
150
|
+
"MSPointerCancel":"touchcancel",function(a){b._touchEventHandler(a)},this.allDOMEventHandlers),this.toolTip=new W(this,this.options.toolTip),this.data=null,this.axisX=[],this.axisX2=[],this.axisY=[],this.axisY2=[],this.sessionVariables={axisX:[],axisX2:[],axisY:[],axisY2:[]})):window.console&&window.console.log('CanvasJS Error: Chart Container with id "'+this._containerId+'" was not found')}function v(a,e){for(var c=[],b,f=0;f<a.length;f++)if(0==f)c.push(a[0]);else{var k,z,g;g=f-1;k=0===g?0:g-1;z=
|
|
151
151
|
g===a.length-1?g:g+1;b=Math.abs((a[z].x-a[k].x)/(0===a[z].x-a[g].x?0.01:a[z].x-a[g].x))*(e-1)/2+1;var d=(a[z].x-a[k].x)/b;b=(a[z].y-a[k].y)/b;c[c.length]=a[g].x>a[k].x&&0<d||a[g].x<a[k].x&&0>d?{x:a[g].x+d/3,y:a[g].y+b/3}:{x:a[g].x,y:a[g].y+(1===c.length?0:b/9)};g=f;k=0===g?0:g-1;z=g===a.length-1?g:g+1;b=Math.abs((a[z].x-a[k].x)/(0===a[g].x-a[k].x?0.01:a[g].x-a[k].x))*(e-1)/2+1;d=(a[z].x-a[k].x)/b;b=(a[z].y-a[k].y)/b;c[c.length]=a[g].x>a[k].x&&0<d||a[g].x<a[k].x&&0>d?{x:a[g].x-d/3,y:a[g].y-b/3}:{x:a[g].x,
|
|
152
152
|
y:a[g].y-b/9};c[c.length]=a[f]}return c}function J(a,e,c,b,f,k,z,g,d,n){var r=0;n?(z.color=k,g.color=k):n=1;r=d?Math.abs(f-c):Math.abs(b-e);r=0<z.trimLength?Math.abs(r*z.trimLength/100):Math.abs(r-z.length);d?(c+=r/2,f-=r/2):(e+=r/2,b-=r/2);var r=1===Math.round(z.thickness)%2?0.5:0,p=1===Math.round(g.thickness)%2?0.5:0;a.save();a.globalAlpha=n;a.strokeStyle=g.color||k;a.lineWidth=g.thickness||2;a.setLineDash&&a.setLineDash(S(g.dashType,g.thickness));a.beginPath();d&&0<g.thickness?(a.moveTo(b-z.thickness/
|
|
153
153
|
2,Math.round((c+f)/2)-p),a.lineTo(e+z.thickness/2,Math.round((c+f)/2)-p)):0<g.thickness&&(a.moveTo(Math.round((e+b)/2)-p,c+z.thickness/2),a.lineTo(Math.round((e+b)/2)-p,f-z.thickness/2));a.stroke();a.strokeStyle=z.color||k;a.lineWidth=z.thickness||2;a.setLineDash&&a.setLineDash(S(z.dashType,z.thickness));a.beginPath();d&&0<z.thickness?(a.moveTo(b-r,c),a.lineTo(b-r,f),a.moveTo(e+r,c),a.lineTo(e+r,f)):0<z.thickness&&(a.moveTo(e,c+r),a.lineTo(b,c+r),a.moveTo(e,f-r),a.lineTo(b,f-r));a.stroke();a.restore()}
|
|
@@ -172,7 +172,7 @@ this.chart.height,!0);this.ghostCtx=this.ghostCanvas.getContext("2d");this.mouse
|
|
|
172
172
|
this._canvasJSContainer.hasChildNodes();)this._canvasJSContainer.removeChild(this._canvasJSContainer.lastChild);for(;this.container&&this.container.hasChildNodes();)this.container.removeChild(this.container.lastChild);for(;this._dropdownMenu&&this._dropdownMenu.hasChildNodes();)this._dropdownMenu.removeChild(this._dropdownMenu.lastChild);this.container=this._canvasJSContainer=null;this.toolTip.container=null;this.canvas&&Ba(this.canvas);this.overlaidCanvas&&Ba(this.overlaidCanvas);this._preRenderCanvas&&
|
|
173
173
|
Ba(this._preRenderCanvas);this._breaksCanvas&&Ba(this._breaksCanvas);this._eventManager&&this._eventManager.ghostCanvas&&Ba(this._eventManager.ghostCanvas);this._toolBar=this._dropdownMenu=this._menuButton=this._resetButton=this._zoomButton=null};q.prototype._updateOptions=function(){var a=this;this.updateOption("width");this.updateOption("height");this.updateOption("dataPointWidth");this.updateOption("dataPointMinWidth");this.updateOption("dataPointMaxWidth");this.updateOption("interactivityEnabled");
|
|
174
174
|
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 na[this.colorSet]?na[this.colorSet]:na.colorSet1);this.updateOption("backgroundColor");this.stockChart&&(this.stockChart.options&&"undefined"!==typeof this.stockChart.options.backgroundColor&&g(this.options.backgroundColor))&&
|
|
175
|
-
(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 La(this.culture);this.updateOption("animationEnabled");this.animationEnabled=this.animationEnabled&&
|
|
175
|
+
(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 La(this.culture);this.updateOption("animationEnabled");this.animationEnabled=this.animationEnabled&&w;this.updateOption("animationDuration");this.updateOption("rangeChanging");this.updateOption("rangeChanged");this.updateOption("exportEnabled");this.updateOption("exportFileName");
|
|
176
176
|
this.updateOption("zoomType");this.toolbar=new Va(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||this.panEnabled){if(this._zoomButton)R(this._zoomButton,{borderRight:this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor,backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor}),
|
|
177
177
|
0>=navigator.userAgent.search("MSIE")&&this._zoomButton.childNodes[0]&&R(this._zoomButton.childNodes[0],{WebkitFilter:"invert(0%)",filter:"invert(0%)"});else{var c=!1;xa(this._zoomButton=document.createElement("button"));wa(this,this._zoomButton,"pan");this._toolBar.appendChild(this._zoomButton);this._zoomButton.style.borderRight=this.toolbar.buttonBorderThickness+"px solid "+this.toolbar.buttonBorderColor;H(this._zoomButton,"touchstart",function(a){c=!0},this.allDOMEventHandlers);H(this._zoomButton,
|
|
178
178
|
"click",function(){a.zoomEnabled?(a.zoomEnabled=!1,a.panEnabled=!0,wa(a,a._zoomButton,"zoom")):(a.zoomEnabled=!0,a.panEnabled=!1,wa(a,a._zoomButton,"pan"));a.render()},this.allDOMEventHandlers);H(this._zoomButton,"mousemove",function(){c?c=!1:(R(a._zoomButton,{backgroundColor:a.toolbar.itemBackgroundColorOnHover,color:a.toolbar.fontColorOnHover,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&R(a._zoomButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},
|
|
@@ -187,7 +187,7 @@ a.stockChart.rangeSelector.buttonStyle.backgroundColorOnSelect,a.stockChart.rang
|
|
|
187
187
|
color:a.toolbar.fontColorOnHover,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&R(a._resetButton.childNodes[0],{WebkitFilter:"invert(100%)",filter:"invert(100%)"}))},this.allDOMEventHandlers),H(this._resetButton,"mouseout",function(){c||(R(a._resetButton,{backgroundColor:a.toolbar.itemBackgroundColor,color:a.toolbar.fontColor,transition:"0.4s",WebkitTransition:"0.4s"}),0>=navigator.userAgent.search("MSIE")&&R(a._resetButton.childNodes[0],{WebkitFilter:"invert(0%)",
|
|
188
188
|
filter:"invert(0%)"}))},this.allDOMEventHandlers),this.overlaidCanvas.style.cursor=a._defaultCursor);this.zoomEnabled||this.panEnabled||(this._zoomButton?(a._zoomButton.getAttribute("state")===a._cultureInfo.zoomText?(this.panEnabled=!0,this.zoomEnabled=!1):(this.zoomEnabled=!0,this.panEnabled=!1),Ra(a._zoomButton,a._resetButton)):(this.zoomEnabled=!0,this.panEnabled=!1))}else this.panEnabled=this.zoomEnabled=!1;eb(this);"none"!==this._toolBar.style.display&&this._zoomButton&&(this.panEnabled?wa(a,
|
|
189
189
|
a._zoomButton,"zoom"):wa(a,a._zoomButton,"pan"),a._resetButton.getAttribute("state")!==a._cultureInfo.resetText&&wa(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)&&this.toolTip.updateOption(e)};q.prototype._updateSize=function(){return ib.call(this,[this.canvas,this.overlaidCanvas,this._eventManager.ghostCanvas])};q.prototype._initialize=function(){this.isNavigator=
|
|
190
|
-
g(this.parent)||g(this.parent._defaultsKey)||"Navigator"!==this.parent._defaultsKey?!1:!0;this._animator?this._animator.cancelAllAnimations():this._animator=new ja(this);this.removeAllEventListeners();this.disableToolTip=!1;this._axes=[];this.funnelPyramidClickHandler=this.pieDoughnutClickHandler=null;this._updateOptions();this.animatedRender=
|
|
190
|
+
g(this.parent)||g(this.parent._defaultsKey)||"Navigator"!==this.parent._defaultsKey?!1:!0;this._animator?this._animator.cancelAllAnimations():this._animator=new ja(this);this.removeAllEventListeners();this.disableToolTip=!1;this._axes=[];this.funnelPyramidClickHandler=this.pieDoughnutClickHandler=null;this._updateOptions();this.animatedRender=w&&this.animationEnabled&&0===this.renderCount;this._updateSize();this.clearCanvas();this.ctx.beginPath();this.axisX=[];this.axisX2=[];this.axisY=[];this.axisY2=
|
|
191
191
|
[];this._indexLabels=[];this._dataInRenderedOrder=[];this._events=[];this._eventManager&&this._eventManager.reset();this.plotInfo={axisPlacement:null,plotTypes:[]};this.layoutManager=new Ia(0,0,this.width,this.height,this.isNavigator?0:2);this.plotArea.layoutManager&&this.plotArea.layoutManager.reset();this.data=[];this.title=null;this.subtitles=[];var a=0,e=null;if(this.options.data){for(var c=0;c<this.options.data.length;c++)if(a++,!this.options.data[c].type||0<=q._supportedChartTypes.indexOf(this.options.data[c].type)){var b=
|
|
192
192
|
new D(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)?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)&&
|
|
193
193
|
(b.linkedDataSeriesIndex=null);null===b.name&&(b.name="DataSeries "+a);null===b.color?1<this.options.data.length?(b._colorSet=[this.selectedColorSet[b.index%this.selectedColorSet.length]],b.color=this.selectedColorSet[b.index%this.selectedColorSet.length]):b._colorSet="line"===b.type||"stepLine"===b.type||"spline"===b.type||"area"===b.type||"stepArea"===b.type||"splineArea"===b.type||"stackedArea"===b.type||"stackedArea100"===b.type||"rangeArea"===b.type||"rangeSplineArea"===b.type||"candlestick"===
|
|
@@ -209,16 +209,16 @@ typeof this.axisY[c].options.margin&&(this.axisY[c].margin=10)}if(this.axisY2){f
|
|
|
209
209
|
"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?(Ra(this._zoomButton,this._resetButton),this._toolBar.style.border=this.toolbar.buttonBorderThickness+
|
|
210
210
|
"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):(xa(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();
|
|
211
211
|
this.options.title&&(this.title=new Fa(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 Ka(this,this.options.subtitles[e],e),this.subtitles.push(c),c.dockInsidePlotArea?a.push(c):c.setLayout();this.legend=new B(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||
|
|
212
|
-
"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){
|
|
212
|
+
"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){w?(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=
|
|
213
213
|
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())};q.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();
|
|
214
214
|
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=
|
|
215
|
-
this.ctx.miterLimit,f;this.ctx.miterLimit=3;
|
|
215
|
+
this.ctx.miterLimit,f;this.ctx.miterLimit=3;w&&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 k=this.plotInfo.plotTypes[e],z=0;z<
|
|
216
216
|
k.plotUnits.length;z++){var d=k.plotUnits[z],K=null;d.targetCanvas&&Ba(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?K=this.renderLine(d):"stepLine"===d.type?K=this.renderStepLine(d):"spline"===d.type?K=this.renderSpline(d):"column"===d.type?K=this.renderColumn(d):"bar"===d.type?K=this.renderBar(d):"area"===d.type?K=
|
|
217
217
|
this.renderArea(d):"stepArea"===d.type?K=this.renderStepArea(d):"splineArea"===d.type?K=this.renderSplineArea(d):"stackedColumn"===d.type?K=this.renderStackedColumn(d):"stackedColumn100"===d.type?K=this.renderStackedColumn100(d):"stackedBar"===d.type?K=this.renderStackedBar(d):"stackedBar100"===d.type?K=this.renderStackedBar100(d):"stackedArea"===d.type?K=this.renderStackedArea(d):"stackedArea100"===d.type?K=this.renderStackedArea100(d):"bubble"===d.type?K=K=this.renderBubble(d):"scatter"===d.type?
|
|
218
218
|
K=this.renderScatter(d):"pie"===d.type?this.renderPie(d):"doughnut"===d.type?this.renderPie(d):"funnel"===d.type?K=this.renderFunnel(d):"pyramid"===d.type?K=this.renderFunnel(d):"candlestick"===d.type?K=this.renderCandlestick(d):"ohlc"===d.type?K=this.renderCandlestick(d):"rangeColumn"===d.type?K=this.renderRangeColumn(d):"error"===d.type?K=this.renderError(d):"rangeBar"===d.type?K=this.renderRangeBar(d):"rangeArea"===d.type?K=this.renderRangeArea(d):"rangeSplineArea"===d.type?K=this.renderRangeSplineArea(d):
|
|
219
219
|
"waterfall"===d.type?K=this.renderWaterfall(d):"boxAndWhisker"===d.type&&(K=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,K&&c.push(K))}this.ctx.miterLimit=a;this.animatedRender&&this._breaksCanvasCtx&&c.push({source:this._breaksCanvasCtx,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0,startTimePercent:0.7});
|
|
220
220
|
this.animatedRender&&0<this._indexLabels.length&&(f=ra(this.width,this.height).getContext("2d"),Ca(f),c.push(this.renderIndexLabels(f)));var r=this;if(0<c.length)r.disableToolTip=!0,r._animator.animate(200,r.animationDuration,function(a){r.ctx.clearRect(0,0,r.width,r.height);r.ctx.drawImage(b,0,0,Math.floor(r.width*la),Math.floor(r.height*la),0,0,r.width,r.height);for(var f=0;f<c.length;f++)K=c[f],1>a&&"undefined"!==typeof K.startTimePercent?a>=K.startTimePercent&&K.animationCallback(K.easingFunction(a-
|
|
221
|
-
K.startTimePercent,0,1,1-K.startTimePercent),K):K.animationCallback(K.easingFunction(a,0,1,1),K);r.dispatchEvent("dataAnimationIterationEnd",{chart:r})},function(){c=[];for(var a=0;a<r.plotInfo.plotTypes.length;a++)for(var f=r.plotInfo.plotTypes[a],e=0;e<f.plotUnits.length;e++){var k=f.plotUnits[e];k.targetCanvas&&Ba(k.targetCanvas);k.targetCanvas=null}b=null;r.disableToolTip=!1;r.dispatchEvent("dataAnimationEnd",{chart:r})});else{if(r._breaksCanvas)if(
|
|
221
|
+
K.startTimePercent,0,1,1-K.startTimePercent),K):K.animationCallback(K.easingFunction(a,0,1,1),K);r.dispatchEvent("dataAnimationIterationEnd",{chart:r})},function(){c=[];for(var a=0;a<r.plotInfo.plotTypes.length;a++)for(var f=r.plotInfo.plotTypes[a],e=0;e<f.plotUnits.length;e++){var k=f.plotUnits[e];k.targetCanvas&&Ba(k.targetCanvas);k.targetCanvas=null}b=null;r.disableToolTip=!1;r.dispatchEvent("dataAnimationEnd",{chart:r})});else{if(r._breaksCanvas)if(w)r.plotArea.ctx.drawImage(r._breaksCanvas,0,
|
|
222
222
|
0,this.width,this.height);else for(n=0;n<r._axes.length;n++)r._axes[n].createMask();0<r._indexLabels.length&&r.renderIndexLabels();r.dispatchEvent("dataAnimationIterationEnd",{chart:r});r.dispatchEvent("dataAnimationEnd",{chart:r})}this.attachPlotAreaEventHandlers();this.zoomEnabled||(this.panEnabled||!this._zoomButton||"none"===this._zoomButton.style.display)||xa(this._zoomButton,this._resetButton);g(this.toolTip._xValue)||g(this.toolTip._dataSeriesIndex)||this.toolTip.showAtX(this.toolTip._xValue,
|
|
223
223
|
this.toolTip._dataSeriesIndex);this.toolTip._updateToolTip();this.renderCount++;Ja&&(r=this,setTimeout(function(){var a=document.getElementById("ghostCanvasCopy");a&&(Sa(a,r.width,r.height),a.getContext("2d").drawImage(r._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)}};q.prototype.render=function(a){a&&(this.options=
|
|
224
224
|
a);this._initialize();this.setLayout();this.renderElements();this._preRenderCanvas&&Ba(this._preRenderCanvas)};q.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})};q.prototype.categoriseDataSeries=function(){for(var a="",e=0;e<this.data.length;e++)if(a=this.data[e],a.dataPoints&&(0!==a.dataPoints.length&&
|
|
@@ -232,21 +232,21 @@ a.axisX.options.minimum?a.axisX.options.minimum:a.axisX.logarithmic?0:-Infinity,
|
|
|
232
232
|
(a.axisX.logarithmic?1:0));g.dataPoints[d].x.getTime?(k=!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-
|
|
233
233
|
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<s&&!n)null!==f&&(p=b);else{if(!n&&(n=!0,0<d)){d-=2;continue}if(b>h&&!r)r=!0;else if(b>h&&r)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"===
|
|
234
234
|
typeof f&&(e.viewPortMax=f))}}g.axisX.valueType=g.xValueType=k?"dateTime":"number"}};q.prototype._processStackedPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,k=!1,z=[],d=[],K=Infinity,n=-Infinity,r={},p=0;p<a.dataSeriesIndexes.length;p++){var s=this.data[a.dataSeriesIndexes[p]],h=0,C=!1,E=!1,l;if("normal"===s.axisPlacement||"xySwapped"===s.axisPlacement)var u=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:
|
|
235
|
-
a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:-Infinity,
|
|
235
|
+
a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:-Infinity,w=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(s.dataPoints[h].x&&s.dataPoints[h].x.getTime||"dateTime"===s.xValueType)k=!0;for(h=0;h<s.dataPoints.length;h++){"undefined"===
|
|
236
236
|
typeof s.dataPoints[h].x&&(s.dataPoints[h].x=h+(a.axisX.logarithmic?1:0));s.dataPoints[h].x.getTime?(k=!0,b=s.dataPoints[h].x.getTime()):b=s.dataPoints[h].x;f=g(s.dataPoints[h].y)?0:s.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/s.dataPoints[h-1].x;1>x&&(x=1/x);c.minDiff>x&&1!==x&&(c.minDiff=x)}else x=b-s.dataPoints[h-1].x,0>x&&(x*=-1),c.minDiff>x&&0!==x&&(c.minDiff=x);null!==f&&null!==s.dataPoints[h-1].y&&(a.axisY.logarithmic?0<f&&(x=f/s.dataPoints[h-
|
|
237
|
-
1].y,1>x&&(x=1/x),e.minDiff>x&&1!==x&&(e.minDiff=x)):(x=f-s.dataPoints[h-1].y,0>x&&(x*=-1),e.minDiff>x&&0!==x&&(e.minDiff=x)))}if(b<u&&!C)null!==s.dataPoints[h].y&&(l=b);else{if(!C&&(C=!0,0<h)){h-=2;continue}if(b>
|
|
237
|
+
1].y,1>x&&(x=1/x),e.minDiff>x&&1!==x&&(e.minDiff=x)):(x=f-s.dataPoints[h-1].y,0>x&&(x*=-1),e.minDiff>x&&0!==x&&(e.minDiff=x)))}if(b<u&&!C)null!==s.dataPoints[h].y&&(l=b);else{if(!C&&(C=!0,0<h)){h-=2;continue}if(b>w&&!E)E=!0;else if(b>w&&E)continue;s.dataPoints[h].label&&(a.axisX.labels[b]=s.dataPoints[h].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===s.dataPoints[h].y?c.viewPortMin===b&&l<b&&(c.viewPortMin=l):(r[b]=(r[b]||0)+s.dataPoints[h].y,s.dataPointEOs[h].cumulativeY=
|
|
238
238
|
r[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?z[b]?z[b]+=f:(z[b]=f,K=Math.min(f,K)):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,z),e.dataPointYNegativeSums.push.apply(e.dataPointYPositiveSums,d)):(e.dataPointYPositiveSums=z,e.dataPointYNegativeSums=
|
|
239
239
|
d));s.axisX.valueType=s.xValueType=k?"dateTime":"number"}for(h in z)z.hasOwnProperty(h)&&!isNaN(h)&&(a=z[h],a<e.min&&(e.min=Math.min(a,K)),a>e.max&&(e.max=a),h<c.viewPortMin||h>c.viewPortMax||(a<e.viewPortMin&&(e.viewPortMin=Math.min(a,K)),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))))}};q.prototype._processStacked100PlotUnit=
|
|
240
240
|
function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length)){for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,k=!1,z=!1,d=!1,K={},n=[],r=0;r<a.dataSeriesIndexes.length;r++){var p=this.data[a.dataSeriesIndexes[r]],s=0,h=!1,C=!1,E;if("normal"===p.axisPlacement||"xySwapped"===p.axisPlacement)var l=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?
|
|
241
241
|
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[s].x&&p.dataPoints[s].x.getTime||"dateTime"===p.xValueType)k=!0;for(s=0;s<p.dataPoints.length;s++){"undefined"===typeof p.dataPoints[s].x&&(p.dataPoints[s].x=s+(a.axisX.logarithmic?1:0));p.dataPoints[s].x.getTime?
|
|
242
|
-
(k=!0,b=p.dataPoints[s].x.getTime()):b=p.dataPoints[s].x;f=g(p.dataPoints[s].y)?null:p.dataPoints[s].y;b<c.min&&(c.min=b);b>c.max&&(c.max=b);if(0<s){if(a.axisX.logarithmic){var
|
|
243
|
-
|
|
242
|
+
(k=!0,b=p.dataPoints[s].x.getTime()):b=p.dataPoints[s].x;f=g(p.dataPoints[s].y)?null:p.dataPoints[s].y;b<c.min&&(c.min=b);b>c.max&&(c.max=b);if(0<s){if(a.axisX.logarithmic){var w=b/p.dataPoints[s-1].x;1>w&&(w=1/w);c.minDiff>w&&1!==w&&(c.minDiff=w)}else w=b-p.dataPoints[s-1].x,0>w&&(w*=-1),c.minDiff>w&&0!==w&&(c.minDiff=w);g(f)||null===p.dataPoints[s-1].y||(a.axisY.logarithmic?0<f&&(w=f/p.dataPoints[s-1].y,1>w&&(w=1/w),e.minDiff>w&&1!==w&&(e.minDiff=w)):(w=f-p.dataPoints[s-1].y,0>w&&(w*=-1),e.minDiff>
|
|
243
|
+
w&&0!==w&&(e.minDiff=w)))}if(b<l&&!h)null!==f&&(E=b);else{if(!h&&(h=!0,0<s)){s-=2;continue}if(b>u&&!C)C=!0;else if(b>u&&C)continue;p.dataPoints[s].label&&(a.axisX.labels[b]=p.dataPoints[s].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);null===f?c.viewPortMin===b&&E<b&&(c.viewPortMin=E):(K[b]=(K[b]||0)+p.dataPoints[s].y,p.dataPointEOs[s].cumulativeY=K[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?z=
|
|
244
244
|
!0:0>f&&(d=!0),n[b]=n[b]?n[b]+Math.abs(f):Math.abs(f))}}p.axisX.valueType=p.xValueType=k?"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)):z&&!d?(e.max=g(e.viewPortMax)?99:Math.max(e.viewPortMax,99),e.min=g(e.viewPortMin)?1:Math.min(e.viewPortMin,1)):z&&d?(e.max=g(e.viewPortMax)?99:Math.max(e.viewPortMax,99),e.min=g(e.viewPortMin)?
|
|
245
245
|
-99:Math.min(e.viewPortMin,-99)):!z&&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}};q.prototype._processMultiYPlotUnit=function(a){if(a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,k,z,g=!1,d=0;d<a.dataSeriesIndexes.length;d++){var n=this.data[a.dataSeriesIndexes[d]],r=0,p=!1,s=!1,h,C,E;if("normal"===n.axisPlacement||
|
|
246
246
|
"xySwapped"===n.axisPlacement)var l=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?
|
|
247
|
-
a.axisX.options.maximum:Infinity;if(n.dataPoints[r].x&&n.dataPoints[r].x.getTime||"dateTime"===n.xValueType)g=!0;for(r=0;r<n.dataPoints.length;r++){"undefined"===typeof n.dataPoints[r].x&&(n.dataPoints[r].x=r+(a.axisX.logarithmic?1:0));n.dataPoints[r].x.getTime?(g=!0,b=n.dataPoints[r].x.getTime()):b=n.dataPoints[r].x;if((f=n.dataPoints[r].y)&&f.length){k=Math.min.apply(null,f);z=Math.max.apply(null,f);C=!0;for(var
|
|
247
|
+
a.axisX.options.maximum:Infinity;if(n.dataPoints[r].x&&n.dataPoints[r].x.getTime||"dateTime"===n.xValueType)g=!0;for(r=0;r<n.dataPoints.length;r++){"undefined"===typeof n.dataPoints[r].x&&(n.dataPoints[r].x=r+(a.axisX.logarithmic?1:0));n.dataPoints[r].x.getTime?(g=!0,b=n.dataPoints[r].x.getTime()):b=n.dataPoints[r].x;if((f=n.dataPoints[r].y)&&f.length){k=Math.min.apply(null,f);z=Math.max.apply(null,f);C=!0;for(var w=0;w<f.length;w++)null===f.k&&(C=!1);C&&(p||(E=h),h=b)}b<c.min&&(c.min=b);b>c.max&&
|
|
248
248
|
(c.max=b);k<e.min&&(e.min=k);z>e.max&&(e.max=z);0<r&&(a.axisX.logarithmic?(C=b/n.dataPoints[r-1].x,1>C&&(C=1/C),c.minDiff>C&&1!==C&&(c.minDiff=C)):(C=b-n.dataPoints[r-1].x,0>C&&(C*=-1),c.minDiff>C&&0!==C&&(c.minDiff=C)),f&&(null!==f[0]&&n.dataPoints[r-1].y&&null!==n.dataPoints[r-1].y[0])&&(a.axisY.logarithmic?(C=f[0]/n.dataPoints[r-1].y[0],1>C&&(C=1/C),e.minDiff>C&&1!==C&&(e.minDiff=C)):(C=f[0]-n.dataPoints[r-1].y[0],0>C&&(C*=-1),e.minDiff>C&&0!==C&&(e.minDiff=C))));if(!(b<l)||p){if(!p&&(p=!0,0<r)){r-=
|
|
249
|
-
2;h=E;continue}if(b>u&&!s)s=!0;else if(b>u&&s)continue;n.dataPoints[r].label&&(a.axisX.labels[b]=n.dataPoints[r].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);if(c.viewPortMin===b&&f)for(
|
|
249
|
+
2;h=E;continue}if(b>u&&!s)s=!0;else if(b>u&&s)continue;n.dataPoints[r].label&&(a.axisX.labels[b]=n.dataPoints[r].label);b<c.viewPortMin&&(c.viewPortMin=b);b>c.viewPortMax&&(c.viewPortMax=b);if(c.viewPortMin===b&&f)for(w=0;w<f.length;w++)if(null===f[w]&&h<b){c.viewPortMin=h;break}null===f?c.viewPortMin===b&&h<b&&(c.viewPortMin=h):(k<e.viewPortMin&&(e.viewPortMin=k),z>e.viewPortMax&&(e.viewPortMax=z))}}n.axisX.valueType=n.xValueType=g?"dateTime":"number"}};q.prototype._processSpecificPlotUnit=function(a){if("waterfall"===
|
|
250
250
|
a.type&&a.dataSeriesIndexes&&!(1>a.dataSeriesIndexes.length))for(var e=a.axisY.dataInfo,c=a.axisX.dataInfo,b,f,k=!1,z=0;z<a.dataSeriesIndexes.length;z++){var g=this.data[a.dataSeriesIndexes[z]],d=0,n=!1,r=!1,p=b=0;if("normal"===g.axisPlacement||"xySwapped"===g.axisPlacement)var s=a.axisX.sessionVariables.newViewportMinimum?a.axisX.sessionVariables.newViewportMinimum:a.axisX.options&&a.axisX.options.viewportMinimum?a.axisX.options.viewportMinimum:a.axisX.options&&a.axisX.options.minimum?a.axisX.options.minimum:
|
|
251
251
|
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)k=!0;for(d=0;d<g.dataPoints.length;d++)"undefined"!==typeof g.dataPoints[d].isCumulativeSum&&!0===g.dataPoints[d].isCumulativeSum?(g.dataPointEOs[d].cumulativeSumYStartValue=
|
|
252
252
|
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=
|
|
@@ -271,13 +271,13 @@ this.plotArea.x2&&this.sessionVariables.mouseY>this.plotArea.y1&&this.sessionVar
|
|
|
271
271
|
0;c<this.axisY2.length;c++)this.axisY2[c]!=a&&(this.axisY2[c].crosshair&&this.axisY2[c].crosshair.enabled&&!this.axisY2[c].crosshair._hidden)&&(e&&this.sessionVariables.mouseX>this.plotArea.x1&&this.sessionVariables.mouseX<this.plotArea.x2&&this.sessionVariables.mouseY>this.plotArea.y1&&this.sessionVariables.mouseY<this.plotArea.y2?this.plotInfo&&"xySwapped"===this.plotInfo.axisPlacement?this.axisY2[c].crosshair.render(this.sessionVariables.mouseX,null,this.axisY2[c].convertPixelToValue(this.sessionVariables.mouseX)):
|
|
272
272
|
this.axisY2[c].crosshair.render(null,this.sessionVariables.mouseY,this.axisY2[c].convertPixelToValue(this.sessionVariables.mouseY)):e||this.axisY2[c].showCrosshair(this.axisY2[c].crosshair._updatedValue))};q.prototype.getDataPointAtXY=function(a,e,c){c=c||!1;for(var b=[],f=this._dataInRenderedOrder.length-1;0<=f;f--){var k=null;(k=this._dataInRenderedOrder[f].getDataPointAtXY(a,e,c))&&b.push(k)}a=null;e=!1;for(c=0;c<b.length;c++)if("line"===b[c].dataSeries.type||"stepLine"===b[c].dataSeries.type||
|
|
273
273
|
"area"===b[c].dataSeries.type||"stepArea"===b[c].dataSeries.type)if(f=$("markerSize",b[c].dataPoint,b[c].dataSeries)||8,b[c].distance<=f/2){e=!0;break}for(c=0;c<b.length;c++)e&&"line"!==b[c].dataSeries.type&&"stepLine"!==b[c].dataSeries.type&&"area"!==b[c].dataSeries.type&&"stepArea"!==b[c].dataSeries.type||(a?b[c].distance<=a.distance&&(a=b[c]):a=b[c]);return a};q.prototype.getObjectAtXY=function(a,e,c){var b=null;if(c=this.getDataPointAtXY(a,e,c||!1))b=c.dataSeries.dataPointIds[c.dataPointIndex];
|
|
274
|
-
else if(
|
|
274
|
+
else if(w)b=fb(a,e,this._eventManager.ghostCtx);else for(c=0;c<this.legend.items.length;c++){var f=this.legend.items[c];a>=f.x1&&(a<=f.x2&&e>=f.y1&&e<=f.y2)&&(b=f.id)}return b};q.prototype.getAutoFontSize=kb;q.prototype.resetOverlayedCanvas=function(){this.overlaidCanvasCtx.clearRect(0,0,this.width,this.height)};q.prototype.clearCanvas=jb;q.prototype.attachEvent=function(a){this._events.push(a)};q.prototype._touchEventHandler=function(a){if(a.changedTouches&&this.interactivityEnabled){var e=[],c=
|
|
275
275
|
a.changedTouches,b=c?c[0]:a,f=null;switch(a.type){case "touchstart":case "MSPointerDown":e=["mousemove","mousedown"];this._lastTouchData=za(b);this._lastTouchData.time=new Date;break;case "touchmove":case "MSPointerMove":e=["mousemove"];break;case "touchend":case "MSPointerUp":var k=this._lastTouchData&&this._lastTouchData.time?new Date-this._lastTouchData.time:0,e="touchstart"===this._lastTouchEventType||"MSPointerDown"===this._lastTouchEventType||300>k?["mouseup","click"]:["mouseup"];break;default:return}if(!(c&&
|
|
276
276
|
1<c.length)){f=za(b);f.time=new Date;try{var z=f.y-this._lastTouchData.y,k=f.time-this._lastTouchData.time;if(1<Math.abs(z)&&this._lastTouchData.scroll||5<Math.abs(z)&&250>k)this._lastTouchData.scroll=!0,this.stockChart&&(this.stockChart._chartScroll=!0)}catch(d){}this._lastTouchEventType=a.type;if(this._lastTouchData.scroll&&this.zoomEnabled)this.isDrag&&this.resetOverlayedCanvas(),this.isDrag=!1;else for(c=0;c<e.length;c++)if(f=e[c],z=document.createEvent("MouseEvent"),z.initMouseEvent(f,!0,!0,
|
|
277
277
|
window,1,b.screenX,b.screenY,b.clientX,b.clientY,!1,!1,!1,!1,0,null),b.target.dispatchEvent(z),!g(this._lastTouchData.scroll)&&!this._lastTouchData.scroll||!this._lastTouchData.scroll&&250<k||"click"===f)a.preventManipulation&&a.preventManipulation(),a.preventDefault&&a.cancelable&&a.preventDefault(),this.stockChart&&(this.stockChart._chartScroll=null)}}};q.prototype._dispatchRangeEvent=function(a,e){var c={chart:this};c.type=a;c.trigger=e;var b=[];this.axisX&&0<this.axisX.length&&b.push("axisX");
|
|
278
278
|
this.axisX2&&0<this.axisX2.length&&b.push("axisX2");this.axisY&&0<this.axisY.length&&b.push("axisY");this.axisY2&&0<this.axisY2.length&&b.push("axisY2");for(var f=0;f<b.length;f++)if(g(c[b[f]])&&(c[b[f]]=[]),"axisY"===b[f])for(var k=0;k<this.axisY.length;k++)c[b[f]].push({viewportMinimum:this[b[f]][k].sessionVariables.newViewportMinimum,viewportMaximum:this[b[f]][k].sessionVariables.newViewportMaximum});else if("axisY2"===b[f])for(k=0;k<this.axisY2.length;k++)c[b[f]].push({viewportMinimum:this[b[f]][k].sessionVariables.newViewportMinimum,
|
|
279
279
|
viewportMaximum:this[b[f]][k].sessionVariables.newViewportMaximum});else if("axisX"===b[f])for(k=0;k<this.axisX.length;k++)c[b[f]].push({viewportMinimum:this[b[f]][k].sessionVariables.newViewportMinimum,viewportMaximum:this[b[f]][k].sessionVariables.newViewportMaximum});else if("axisX2"===b[f])for(k=0;k<this.axisX2.length;k++)c[b[f]].push({viewportMinimum:this[b[f]][k].sessionVariables.newViewportMinimum,viewportMaximum:this[b[f]][k].sessionVariables.newViewportMaximum});this.dispatchEvent(a,c,this)};
|
|
280
|
-
q.prototype._mouseEventHandler=function(a){function e(){q.capturedEventParam&&(f=q.capturedEventParam,z=f.bounds,"mouseup"===b&&(q.capturedEventParam=null,f.chart.overlaidCanvas.releaseCapture?f.chart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",f.chart._mouseEventHandler,!1)),f.hasOwnProperty(b)&&("mouseup"!==b||f.chart.overlaidCanvas.releaseCapture?a.target!==f.chart.overlaidCanvas&&
|
|
280
|
+
q.prototype._mouseEventHandler=function(a){function e(){q.capturedEventParam&&(f=q.capturedEventParam,z=f.bounds,"mouseup"===b&&(q.capturedEventParam=null,f.chart.overlaidCanvas.releaseCapture?f.chart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",f.chart._mouseEventHandler,!1)),f.hasOwnProperty(b)&&("mouseup"!==b||f.chart.overlaidCanvas.releaseCapture?a.target!==f.chart.overlaidCanvas&&w||f[b].call(f.context,c.x,c.y):a.target!==f.chart.overlaidCanvas&&(f.chart.isDrag=
|
|
281
281
|
!1)))}"undefined"===typeof a.target&&a.srcElement&&(a.target=a.srcElement);var c=za(a),b=a.type,f,k;a.which?k=3==a.which:a.button&&(k=2==a.button);if(this._ignoreNextEvent)e(),this._ignoreNextEvent=!1;else if(e(),this.interactivityEnabled){a.preventManipulation&&a.preventManipulation();a.preventDefault&&a.preventDefault();var z;Ja&&window.console&&(window.console.log(b+" --\x3e x: "+c.x+"; y:"+c.y),k&&window.console.log(a.which),"mouseup"===b&&window.console.log("mouseup"));if(!k){if(!q.capturedEventParam&&
|
|
282
282
|
this._events){for(k=0;k<this._events.length;k++)if(this._events[k].hasOwnProperty(b))if(f=this._events[k],z=f.bounds,c.x>=z.x1&&c.x<=z.x2&&c.y>=z.y1&&c.y<=z.y2){f[b].call(f.context,c.x,c.y);"mousedown"===b&&!0===f.capture?(q.capturedEventParam=f,this.overlaidCanvas.setCapture?this.overlaidCanvas.setCapture():document.documentElement.addEventListener("mouseup",this._mouseEventHandler,!1)):"mouseup"===b&&(f.chart.overlaidCanvas.releaseCapture?f.chart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",
|
|
283
283
|
this._mouseEventHandler,!1));break}else f=null;a.target.style.cursor=f&&f.cursor?f.cursor:this._defaultCursor}k=this.plotArea;if(c.x<k.x1||c.x>k.x2||c.y<k.y1||c.y>k.y2){this.toolTip&&this.toolTip.enabled?(this.toolTip.hide(),this.toolTip.dispatchEvent("hidden",{chart:this,toolTip:this.toolTip},this.toolTip)):this.resetOverlayedCanvas();for(k=0;k<this.axisX.length;k++)this.axisX[k].crosshair&&this.axisX[k].crosshair.enabled&&(this.axisX[k].crosshair.hide(),this.axisX[k].crosshair.dispatchEvent("hidden",
|
|
@@ -302,205 +302,205 @@ e);if(this.axisX&&0<this.axisX.length)for(f=0;f<this.axisX.length;f++)this.axisX
|
|
|
302
302
|
0<this.axisY2.length)for(f=0;f<this.axisY2.length;f++)this.axisY2[f].crosshair&&this.axisY2[f].crosshair.enabled&&this.axisY2[f].crosshair.renderLabel()}};q.prototype._zoomPanToSelectedRegion=function(a,e,c,b,f){a=this.validateRegion(a,e,c,b,f);e=a.axesWithValidRange;c=a.axesRanges;if(a.isValid)for(b=0;b<e.length;b++)f=c[b],e[b].setViewPortRange(f.val1,f.val2),this.syncCharts&&"y"!=this.zoomType&&this.syncCharts(f.val1,f.val2),this.stockChart&&(this.stockChart._rangeEventParameter={stockChart:this.stockChart,
|
|
303
303
|
source:"chart",index:this.stockChart.charts.indexOf(this),minimum:f.val1,maximum:f.val2});return a.isValid};q.prototype.validateRegion=function(a,e,c,b,f){f=f||!1;for(var k=0<=this.zoomType.indexOf("x"),g=0<=this.zoomType.indexOf("y"),d=!1,K=[],n=[],r=[],p=0;p<this._axes.length;p++)("axisX"===this._axes[p].type&&k||"axisY"===this._axes[p].type&&g)&&n.push(this._axes[p]);for(g=0;g<n.length;g++){var p=n[g],k=!1,s=p.convertPixelToValue({x:a,y:e}),h=p.convertPixelToValue({x:c,y:b});if(s>h)var E=h,h=s,
|
|
304
304
|
s=E;if(p.scaleBreaks)for(E=0;!k&&E<p.scaleBreaks._appliedBreaks.length;E++)k=p.scaleBreaks._appliedBreaks[E].startValue<=s&&p.scaleBreaks._appliedBreaks[E].endValue>=h;if(isFinite(p.dataInfo.minDiff))if(E=p.getApparentDifference(s,h,null,!0),!(k||!(this.panEnabled&&p.scaleBreaks&&p.scaleBreaks._appliedBreaks.length)&&(p.logarithmic&&E<Math.pow(p.dataInfo.minDiff,3)||!p.logarithmic&&E<3*Math.abs(p.dataInfo.minDiff))||s<p.minimum||h>p.maximum))K.push(p),r.push({val1:s,val2:h}),d=!0;else if(!f){d=!1;
|
|
305
|
-
break}}return{isValid:d,axesWithValidRange:K,axesRanges:r}};q.prototype.preparePlotArea=function(){var a=this.plotArea;!
|
|
305
|
+
break}}return{isValid:d,axesWithValidRange:K,axesRanges:r}};q.prototype.preparePlotArea=function(){var a=this.plotArea;!w&&(0<a.x1||0<a.y1)&&a.ctx.translate(a.x1,a.y1);if((this.axisX[0]||this.axisX2[0])&&(this.axisY[0]||this.axisY2[0])){var e=this.axisX[0]?this.axisX[0].lineCoordinates:this.axisX2[0].lineCoordinates;if(this.axisY&&0<this.axisY.length&&this.axisY[0]){var c=this.axisY[0];a.x1=e.x1<e.x2?e.x1:c.lineCoordinates.x1;a.y1=e.y1<c.lineCoordinates.y1?e.y1:c.lineCoordinates.y1;a.x2=e.x2>c.lineCoordinates.x2?
|
|
306
306
|
e.x2:c.lineCoordinates.x2;a.y2=e.y1>c.lineCoordinates.y2?e.y1:c.lineCoordinates.y2;a.width=a.x2-a.x1;a.height=a.y2-a.y1}this.axisY2&&0<this.axisY2.length&&this.axisY2[0]&&(c=this.axisY2[0],a.x1=e.x1<e.x2?e.x1:c.lineCoordinates.x1,a.y1=e.y1<c.lineCoordinates.y1?e.y1:c.lineCoordinates.y1,a.x2=e.x2>c.lineCoordinates.x2?e.x2:c.lineCoordinates.x2,a.y2=e.y2>c.lineCoordinates.y2?e.y2:c.lineCoordinates.y2,a.width=a.x2-a.x1,a.height=a.y2-a.y1)}else e=this.layoutManager.getFreeSpace(),a.x1=e.x1,a.x2=e.x2,a.y1=
|
|
307
|
-
e.y1,a.y2=e.y2,a.width=e.width,a.height=e.height;
|
|
307
|
+
e.y1,a.y2=e.y2,a.width=e.width,a.height=e.height;w||(a.canvas.width=a.width,a.canvas.height=a.height,a.canvas.style.left=a.x1+"px",a.canvas.style.top=a.y1+"px",(0<a.x1||0<a.y1)&&a.ctx.translate(-a.x1,-a.y1));a.layoutManager=new Ia(a.x1,a.y1,a.x2,a.y2,2)};q.prototype.renderIndexLabels=function(a){var e=a||this.plotArea.ctx,c=this.plotArea,b=0,f=0,k=0,z=f=k=0,d=0,K=b=0,n=0;for(a=0;a<this._indexLabels.length;a++){var r=this._indexLabels[a],p=r.chartType.toLowerCase(),s,h,d=$("indexLabelFontColor",r.dataPoint,
|
|
308
308
|
r.dataSeries),C=$("indexLabelFontSize",r.dataPoint,r.dataSeries),K=$("indexLabelFontFamily",r.dataPoint,r.dataSeries),n=$("indexLabelFontStyle",r.dataPoint,r.dataSeries);s=$("indexLabelFontWeight",r.dataPoint,r.dataSeries);var l=$("indexLabelBackgroundColor",r.dataPoint,r.dataSeries);h=$("indexLabelBorderColor",r.dataPoint,r.dataSeries);var k=$("indexLabelBorderThickness",r.dataPoint,r.dataSeries),f=$("indexLabelMaxWidth",r.dataPoint,r.dataSeries),z=$("indexLabelWrap",r.dataPoint,r.dataSeries),t=
|
|
309
|
-
$("indexLabelLineDashType",r.dataPoint,r.dataSeries),u=$("indexLabelLineColor",r.dataPoint,r.dataSeries),m=g(r.dataPoint.indexLabelLineThickness)?g(r.dataSeries.options.indexLabelLineThickness)?0:r.dataSeries.options.indexLabelLineThickness:r.dataPoint.indexLabelLineThickness,b=0<m?Math.min(10,("normal"===this.plotInfo.axisPlacement?this.plotArea.height:this.plotArea.width)<<0):0,x=$("indexLabelPadding",r.dataPoint,r.dataSeries),
|
|
310
|
-
"pie"===r.dataSeries.type||"doughnut"===r.dataSeries.type)
|
|
311
|
-
r.dataSeries.indexLabelFormatter(q):r.dataSeries.indexLabel?this.replaceKeywordsWithValue(r.dataSeries.indexLabel,r.dataPoint,r.dataSeries,null,r.indexKeyword):null;if(null!==A&&""!==A){var
|
|
309
|
+
$("indexLabelLineDashType",r.dataPoint,r.dataSeries),u=$("indexLabelLineColor",r.dataPoint,r.dataSeries),m=g(r.dataPoint.indexLabelLineThickness)?g(r.dataSeries.options.indexLabelLineThickness)?0:r.dataSeries.options.indexLabelLineThickness:r.dataPoint.indexLabelLineThickness,b=0<m?Math.min(10,("normal"===this.plotInfo.axisPlacement?this.plotArea.height:this.plotArea.width)<<0):0,x=$("indexLabelPadding",r.dataPoint,r.dataSeries),v={percent:null,total:null},q=null;if(0<=r.dataSeries.type.indexOf("stacked")||
|
|
310
|
+
"pie"===r.dataSeries.type||"doughnut"===r.dataSeries.type)v=this.getPercentAndTotal(r.dataSeries,r.dataPoint);if(r.dataSeries.indexLabelFormatter||r.dataPoint.indexLabelFormatter)q={chart:this,dataSeries:r.dataSeries,dataPoint:r.dataPoint,index:r.indexKeyword,total:v.total,percent:v.percent};var A=r.dataPoint.indexLabelFormatter?r.dataPoint.indexLabelFormatter(q):r.dataPoint.indexLabel?this.replaceKeywordsWithValue(r.dataPoint.indexLabel,r.dataPoint,r.dataSeries,null,r.indexKeyword):r.dataSeries.indexLabelFormatter?
|
|
311
|
+
r.dataSeries.indexLabelFormatter(q):r.dataSeries.indexLabel?this.replaceKeywordsWithValue(r.dataSeries.indexLabel,r.dataPoint,r.dataSeries,null,r.indexKeyword):null;if(null!==A&&""!==A){var v=$("indexLabelPlacement",r.dataPoint,r.dataSeries),q=$("indexLabelOrientation",r.dataPoint,r.dataSeries),y=$("indexLabelTextAlign",r.dataPoint,r.dataSeries),B=r.direction,M=r.dataSeries.axisX,ca=r.dataSeries.axisY,da=!1,l=new ma(e,{x:0,y:0,maxWidth:f?f:0.5*this.width,maxHeight:z?5*C:1.5*C,angle:"horizontal"===
|
|
312
312
|
q?0:-90,text:A,padding:x,backgroundColor:l,borderColor:h,borderThickness:k,textAlign:y,fontSize:C,fontFamily:K,fontWeight:s,fontColor:d,fontStyle:n,textBaseline:"middle"});l.measureText();r.dataSeries.indexLabelMaxWidth=l.maxWidth;if("stackedarea100"===p){if(r.point.x<c.x1||r.point.x>c.x2||r.point.y<c.y1-1||r.point.y>c.y2+1)continue}else if("rangearea"===p||"rangesplinearea"===p){if(r.dataPoint.x<M.viewportMinimum||r.dataPoint.x>M.viewportMaximum||Math.max.apply(null,r.dataPoint.y)<ca.viewportMinimum||
|
|
313
313
|
Math.min.apply(null,r.dataPoint.y)>ca.viewportMaximum)continue}else if(0<=p.indexOf("line")||0<=p.indexOf("area")||0<=p.indexOf("bubble")||0<=p.indexOf("scatter")){if(r.dataPoint.x<M.viewportMinimum||r.dataPoint.x>M.viewportMaximum||r.dataPoint.y<ca.viewportMinimum||r.dataPoint.y>ca.viewportMaximum)continue}else if(0<=p.indexOf("column")){if(r.dataPoint.x<M.viewportMinimum||r.dataPoint.x>M.viewportMaximum||(0<r.dataPoint.y.length?Math.max.apply(null,r.dataPoint.y):r.dataPoint.y)<ca.viewportMinimum||
|
|
314
314
|
(0<r.dataPoint.y.length?Math.max.apply(null,r.dataPoint.y):r.dataPoint.y)>ca.viewportMaximum)continue}else if("waterfall"===p||"error"===p&&!r.axisSwapped){if(r.dataPoint.x<M.viewportMinimum||r.dataPoint.x>M.viewportMaximum||r.bounds.y1>c.y2||r.bounds.y2<c.y1)continue}else if(0<=p.indexOf("bar")||"error"===p){if(r.dataPoint.x<M.viewportMinimum||r.dataPoint.x>M.viewportMaximum||r.bounds.x1>c.x2||r.bounds.x2<c.x1)continue}else if("candlestick"===p||"ohlc"===p){if(r.dataPoint.x<M.viewportMinimum||r.dataPoint.x>
|
|
315
|
-
M.viewportMaximum||Math.max.apply(null,r.dataPoint.y)<ca.viewportMinimum||Math.min.apply(null,r.dataPoint.y)>ca.viewportMaximum)continue}else if(r.dataPoint.x<M.viewportMinimum||r.dataPoint.x>M.viewportMaximum)continue;z=d=2;"horizontal"===q?(K=l.width,n=l.height):(n=l.width,K=l.height);if("normal"===this.plotInfo.axisPlacement){if(0<=p.indexOf("line")||0<=p.indexOf("area"))
|
|
316
|
-
K/2+("horizontal"===q?0:l._lineHeight/2);if("inside"!==
|
|
315
|
+
M.viewportMaximum||Math.max.apply(null,r.dataPoint.y)<ca.viewportMinimum||Math.min.apply(null,r.dataPoint.y)>ca.viewportMaximum)continue}else if(r.dataPoint.x<M.viewportMinimum||r.dataPoint.x>M.viewportMaximum)continue;z=d=2;"horizontal"===q?(K=l.width,n=l.height):(n=l.width,K=l.height);if("normal"===this.plotInfo.axisPlacement){if(0<=p.indexOf("line")||0<=p.indexOf("area"))v="auto",d=4;else if(0<=p.indexOf("stacked"))"auto"===v&&(v="inside");else if("bubble"===p||"scatter"===p)v="inside";s=r.point.x-
|
|
316
|
+
K/2+("horizontal"===q?0:l._lineHeight/2);if("inside"!==v)f=c.y1,k=c.y2,0<B?(h=r.point.y+l._lineHeight/2-n-d-b,h<f&&(h="auto"===v?Math.max(r.point.y,f)+l._lineHeight/2+d+b:f+l._lineHeight/2+d+b,da=h+("horizontal"===q?n-l._lineHeight/2:0)>r.point.y,!da||(0<=p.indexOf("line")||0<=p.indexOf("area"))||(h-=b))):(h=r.point.y+l._lineHeight/2+d+b,h>k-n+l._lineHeight/2-d&&(h="auto"===v?Math.min(r.point.y,k)+l._lineHeight/2-n-d-b:k+l._lineHeight/2-n-d-b,da=h-("horizontal"===q?l._lineHeight/2:n)<r.point.y,!da||
|
|
317
317
|
(0<=p.indexOf("line")||0<=p.indexOf("area"))||(h+=b)));else{Math.max(r.bounds.y1,c.y1);k=Math.min(r.bounds.y2,c.y2)-n+l._lineHeight/2;b=0<=p.indexOf("range")||"error"===p?0<B?Math.max(r.bounds.y1,c.y1)+l._lineHeight/2+d:Math.min(r.bounds.y2,c.y2)+l._lineHeight/2-n-d:(Math.max(r.bounds.y1,c.y1)+Math.min(r.bounds.y2,c.y2))/2-n/2+l._lineHeight/2;if(0<B){if(h=b,"bubble"===p||"scatter"===p)h=r.point.y-n/2+l._lineHeight/2,n>r.bounds.y2-r.bounds.y1&&(h-=n/2+d),0>h-l._lineHeight/2&&(h+=Math.abs(h-l._lineHeight/
|
|
318
|
-
2)<=(r.bounds.y2-r.bounds.y1)/2+d?Math.abs(h-l._lineHeight/2):(r.bounds.y2-r.bounds.y1)/2+d)}else h=Math.min(r.point.y,b),h>k-n-d&&("bubble"===p||"scatter"===p)&&(h=Math.min(r.point.y+d,c.y2-n-d));h=Math.min(h,k)}}else 0<=p.indexOf("line")||0<=p.indexOf("area")||0<=p.indexOf("scatter")?(
|
|
319
|
-
q?s:s-l._lineHeight/2)<k&&(s="auto"===
|
|
318
|
+
2)<=(r.bounds.y2-r.bounds.y1)/2+d?Math.abs(h-l._lineHeight/2):(r.bounds.y2-r.bounds.y1)/2+d)}else h=Math.min(r.point.y,b),h>k-n-d&&("bubble"===p||"scatter"===p)&&(h=Math.min(r.point.y+d,c.y2-n-d));h=Math.min(h,k)}}else 0<=p.indexOf("line")||0<=p.indexOf("area")||0<=p.indexOf("scatter")?(v="auto",z=4):0<=p.indexOf("stacked")?"auto"===v&&(v="inside"):"bubble"===p&&(v="inside"),h=r.point.y+l._lineHeight/2-n/2,"inside"!==v?(k=c.x1,f=c.x2,0>B?(s=r.point.x-K+("horizontal"===q?0:l._lineHeight/2)-z-b,("horizontal"===
|
|
319
|
+
q?s:s-l._lineHeight/2)<k&&(s="auto"===v?Math.max(r.point.x,k)+("horizontal"===q?0:l._lineHeight/2)+d+b:k+("horizontal"===q?0:l._lineHeight/2)+z,(da=s+K-("horizontal"===q?0:l._lineHeight/2)>r.point.x)&&(s-=b))):(s=r.point.x+("horizontal"===q?0:l._lineHeight/2)+z+b,("horizontal"===q?s:s-l._lineHeight/2)>f-K-z-b&&(s="auto"===v?Math.min(r.point.x,f)-("horizontal"===q?K:K-l._lineHeight/2)-z-b:f-K-z+("horizontal"===q?0:l._lineHeight/2),(da=s-("horizontal"===q?0:l._lineHeight/2)<r.point.x)&&(s+=b)))):(k=
|
|
320
320
|
Math.max(r.bounds.x1,c.x1),Math.min(r.bounds.x2,c.x2),b=0<=p.indexOf("range")||"error"===p?0>B?Math.max(r.bounds.x1,c.x1):Math.min(r.bounds.x2,c.x2)-K-z+("horizontal"===q?0:l._lineHeight/2):(Math.max(r.bounds.x1,c.x1)+Math.min(r.bounds.x2,c.x2))/2-K/2+("horizontal"===q?0:l._lineHeight/2),s=0>B?b:Math.min(r.point.x,b),s=Math.max(s,k+("horizontal"===q?0:l._lineHeight/2+d)));"vertical"===q&&(h+=n-l._lineHeight/2,0<="ohlc candlestick boxandwhisker column rangecolumn stackedcolumn stackedcolumn100 error".split(" ").indexOf(p)&&
|
|
321
|
-
(da=0<B?h+("horizontal"===q?n-l._lineHeight/2:0)>r.point.y:h-("horizontal"===q?l._lineHeight/2:n)<r.point.y),"bubble"===p||"scatter"===p)&&(s+=l._lineHeight/2-C/2);l.x=s;l.y=h;l.render(!0);m&&("inside"!==
|
|
321
|
+
(da=0<B?h+("horizontal"===q?n-l._lineHeight/2:0)>r.point.y:h-("horizontal"===q?l._lineHeight/2:n)<r.point.y),"bubble"===p||"scatter"===p)&&(s+=l._lineHeight/2-C/2);l.x=s;l.y=h;l.render(!0);m&&("inside"!==v&&(0>p.indexOf("bar")&&("error"!==p||!r.axisSwapped)&&r.point.x>c.x1&&r.point.x<c.x2||!da)&&(-1==="ohlc candlestick boxandwhisker column rangecolumn stackedcolumn stackedcolumn100 error".split(" ").indexOf(p)&&("error"!==p||r.axisSwapped)&&r.point.y>c.y1&&r.point.y<c.y2||!da))&&(e.lineWidth=m,e.strokeStyle=
|
|
322
322
|
u?u:"gray",e.setLineDash&&e.setLineDash(S(t,m)),e.beginPath(),e.moveTo(r.point.x,r.point.y),0<=p.indexOf("bar")||"error"===p&&r.axisSwapped?e.lineTo(s+(0<r.direction?0:K)+("vertical"===q?-l._lineHeight/2:0),h+("vertical"===q?-n/2:n/2-l._lineHeight/2)):0<=p.indexOf("column")||"error"===p&&!r.axisSwapped?e.lineTo(s+K/2-("horizontal"===q?0:l._lineHeight/2),h+("vertical"===q?h-n<r.point.y?0:-n:(h-l._lineHeight/2<r.point.y?n:0)-l._lineHeight/2)):0<=p.indexOf("waterfall")?e.lineTo(s+K/2-("horizontal"===
|
|
323
323
|
q?0:l._lineHeight/2),"vertical"===q?0<B&&h<r.point.y?h:0>B&&h-n>r.point.y?h-n:r.point.y:0<B&&h+n-l._lineHeight/2<r.point.y?h+n-l._lineHeight/2:0>B&&h-l._lineHeight/2>r.point.y?h-l._lineHeight/2:r.point.y):e.lineTo(s+K/2-("horizontal"===q?0:l._lineHeight/2),h+("vertical"===q?h-n<r.point.y?0:-n:(h+n-l._lineHeight/2<r.point.y?n:0)-l._lineHeight/2)),e.stroke())}}e={source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0,startTimePercent:0.7};
|
|
324
|
-
for(a=0;a<this._indexLabels.length;a++)r=this._indexLabels[a],l=$("indexLabelBackgroundColor",r.dataPoint,r.dataSeries),r.dataSeries.indexLabelBackgroundColor=g(l)?
|
|
324
|
+
for(a=0;a<this._indexLabels.length;a++)r=this._indexLabels[a],l=$("indexLabelBackgroundColor",r.dataPoint,r.dataSeries),r.dataSeries.indexLabelBackgroundColor=g(l)?w?"transparent":null:l;return e};q.prototype.renderLine=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx;c.save();var f=this.plotArea;c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();for(var k=[],g,d=0;d<a.dataSeriesIndexes.length;d++){var K=
|
|
325
325
|
a.dataSeriesIndexes[d],n=this.data[K];c.lineWidth=n.lineThickness;var r=n.dataPoints,p="solid";if(c.setLineDash){var s=S(n.nullDataLineDashType,n.lineThickness),p=n.lineDashType,h=S(p,n.lineThickness);c.setLineDash(h)}var C=n.id;this._eventManager.objectMap[C]={objectType:"dataSeries",dataSeriesIndex:K};C=U(C);b.strokeStyle=C;b.lineWidth=0<n.lineThickness?Math.max(n.lineThickness,4):0;var C=n._colorSet,m=C=n.lineColor=n.options.lineColor?n.options.lineColor:C[0];c.strokeStyle=C;var t=!0,u=0,G,x;c.beginPath();
|
|
326
|
-
if(0<r.length){for(var
|
|
327
|
-
(c.setLineDash&&(n.options.nullDataLineDashType||p===n.lineDashType&&n.lineDashType!==n.nullDataLineDashType)&&(c.stroke(),c.beginPath(),c.moveTo(g.x,g.y),p=n.nullDataLineDashType,c.setLineDash(s)),c.lineTo(G,x),
|
|
328
|
-
n.lineDashType))&&(c.stroke(),c.beginPath(),c.moveTo(G,x),m=r[u].lineColor||C,c.strokeStyle=m,c.setLineDash&&(r[u].lineDashType?(p=r[u].lineDashType,c.setLineDash(S(p,n.lineThickness))):(p=n.lineDashType,c.setLineDash(h))));if(0!==r[u].markerSize&&(0<r[u].markerSize||0<n.markerSize)){var A=n.getMarkerProperties(u,G,x,c);k.push(A);q=U(q);
|
|
329
|
-
n.indexLabelFormatter)&&this._indexLabels.push({chartType:"line",dataPoint:r[u],dataSeries:n,point:{x:G,y:x},direction:0>r[u].y===a.axisY.reversed?1:-1,color:C})}c.stroke();
|
|
330
|
-
0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),b.beginPath());c.restore();c.beginPath();return{source:e,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderStepLine=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
326
|
+
if(0<r.length){for(var v=!1,u=0;u<r.length;u++)if(G=r[u].x.getTime?r[u].x.getTime():r[u].x,!(G<a.axisX.dataInfo.viewPortMin||G>a.axisX.dataInfo.viewPortMax&&(!n.connectNullData||!v)))if("number"!==typeof r[u].y)0<u&&!(n.connectNullData||v||t)&&(c.stroke(),w&&b.stroke()),v=!0;else{G=a.axisX.convertValueToPixel(G);x=a.axisY.convertValueToPixel(r[u].y);var q=n.dataPointIds[u];this._eventManager.objectMap[q]={id:q,objectType:"dataPoint",dataSeriesIndex:K,dataPointIndex:u,x1:G,y1:x};t||v?(!t&&n.connectNullData?
|
|
327
|
+
(c.setLineDash&&(n.options.nullDataLineDashType||p===n.lineDashType&&n.lineDashType!==n.nullDataLineDashType)&&(c.stroke(),c.beginPath(),c.moveTo(g.x,g.y),p=n.nullDataLineDashType,c.setLineDash(s)),c.lineTo(G,x),w&&b.lineTo(G,x)):(c.beginPath(),c.moveTo(G,x),w&&(b.beginPath(),b.moveTo(G,x))),v=t=!1):(c.lineTo(G,x),w&&b.lineTo(G,x),0==u%500&&(c.stroke(),c.beginPath(),c.moveTo(G,x),w&&(b.stroke(),b.beginPath(),b.moveTo(G,x))));g={x:G,y:x};u<r.length-1&&(m!==(r[u].lineColor||C)||p!==(r[u].lineDashType||
|
|
328
|
+
n.lineDashType))&&(c.stroke(),c.beginPath(),c.moveTo(G,x),m=r[u].lineColor||C,c.strokeStyle=m,c.setLineDash&&(r[u].lineDashType?(p=r[u].lineDashType,c.setLineDash(S(p,n.lineThickness))):(p=n.lineDashType,c.setLineDash(h))));if(0!==r[u].markerSize&&(0<r[u].markerSize||0<n.markerSize)){var A=n.getMarkerProperties(u,G,x,c);k.push(A);q=U(q);w&&k.push({x:G,y:x,ctx:b,type:A.type,size:A.size,color:q,borderColor:q,borderThickness:A.borderThickness})}(r[u].indexLabel||n.indexLabel||r[u].indexLabelFormatter||
|
|
329
|
+
n.indexLabelFormatter)&&this._indexLabels.push({chartType:"line",dataPoint:r[u],dataSeries:n,point:{x:G,y:x},direction:0>r[u].y===a.axisY.reversed?1:-1,color:C})}c.stroke();w&&b.stroke()}}l.drawMarkers(k);w&&(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,
|
|
330
|
+
0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),b.beginPath());c.restore();c.beginPath();return{source:e,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderStepLine=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx;c.save();var f=this.plotArea;c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();for(var k=
|
|
331
331
|
[],g,d=0;d<a.dataSeriesIndexes.length;d++){var K=a.dataSeriesIndexes[d],n=this.data[K];c.lineWidth=n.lineThickness;var r=n.dataPoints,p="solid";if(c.setLineDash){var s=S(n.nullDataLineDashType,n.lineThickness),p=n.lineDashType,h=S(p,n.lineThickness);c.setLineDash(h)}var C=n.id;this._eventManager.objectMap[C]={objectType:"dataSeries",dataSeriesIndex:K};C=U(C);b.strokeStyle=C;b.lineWidth=0<n.lineThickness?Math.max(n.lineThickness,4):0;var C=n._colorSet,m=C=n.lineColor=n.options.lineColor?n.options.lineColor:
|
|
332
|
-
C[0];c.strokeStyle=C;var t=!0,u=0,G,x;c.beginPath();if(0<r.length){for(var
|
|
333
|
-
dataPointIndex:u,x1:G,y1:x};t||
|
|
334
|
-
(b.stroke(),b.beginPath(),b.moveTo(G,x))));g={x:G,y:x};u<r.length-1&&(m!==(r[u].lineColor||C)||p!==(r[u].lineDashType||n.lineDashType))&&(c.stroke(),c.beginPath(),c.moveTo(G,x),m=r[u].lineColor||C,c.strokeStyle=m,c.setLineDash&&(r[u].lineDashType?(p=r[u].lineDashType,c.setLineDash(S(p,n.lineThickness))):(p=n.lineDashType,c.setLineDash(h))));0!==r[u].markerSize&&(0<r[u].markerSize||0<n.markerSize)&&(q=n.getMarkerProperties(u,G,x,c),k.push(q),A=U(A),
|
|
335
|
-
color:A,borderColor:A,borderThickness:q.borderThickness}));(r[u].indexLabel||n.indexLabel||r[u].indexLabelFormatter||n.indexLabelFormatter)&&this._indexLabels.push({chartType:"stepLine",dataPoint:r[u],dataSeries:n,point:{x:G,y:x},direction:0>r[u].y===a.axisY.reversed?1:-1,color:C})}c.stroke();
|
|
336
|
-
a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),b.beginPath());c.restore();c.beginPath();return{source:e,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderSpline=function(a){function e(a){a=
|
|
337
|
-
a[0].y);a[0].newStrokeStyle&&(b.strokeStyle=a[0].newStrokeStyle);a[0].newLineDashArray&&b.setLineDash(a[0].newLineDashArray);
|
|
338
|
-
a[c+3].newLineDashArray&&b.setLineDash(a[c+3].newLineDashArray),
|
|
332
|
+
C[0];c.strokeStyle=C;var t=!0,u=0,G,x;c.beginPath();if(0<r.length){for(var v=!1,u=0;u<r.length;u++)if(G=r[u].getTime?r[u].x.getTime():r[u].x,!(G<a.axisX.dataInfo.viewPortMin||G>a.axisX.dataInfo.viewPortMax&&(!n.connectNullData||!v)))if("number"!==typeof r[u].y)0<u&&!(n.connectNullData||v||t)&&(c.stroke(),w&&b.stroke()),v=!0;else{var q=x;G=a.axisX.convertValueToPixel(G);x=a.axisY.convertValueToPixel(r[u].y);var A=n.dataPointIds[u];this._eventManager.objectMap[A]={id:A,objectType:"dataPoint",dataSeriesIndex:K,
|
|
333
|
+
dataPointIndex:u,x1:G,y1:x};t||v?(!t&&n.connectNullData?(c.setLineDash&&(n.options.nullDataLineDashType||p===n.lineDashType&&n.lineDashType!==n.nullDataLineDashType)&&(c.stroke(),c.beginPath(),c.moveTo(g.x,g.y),p=n.nullDataLineDashType,c.setLineDash(s)),c.lineTo(G,q),c.lineTo(G,x),w&&(b.lineTo(G,q),b.lineTo(G,x))):(c.beginPath(),c.moveTo(G,x),w&&(b.beginPath(),b.moveTo(G,x))),v=t=!1):(c.lineTo(G,q),w&&b.lineTo(G,q),c.lineTo(G,x),w&&b.lineTo(G,x),0==u%500&&(c.stroke(),c.beginPath(),c.moveTo(G,x),w&&
|
|
334
|
+
(b.stroke(),b.beginPath(),b.moveTo(G,x))));g={x:G,y:x};u<r.length-1&&(m!==(r[u].lineColor||C)||p!==(r[u].lineDashType||n.lineDashType))&&(c.stroke(),c.beginPath(),c.moveTo(G,x),m=r[u].lineColor||C,c.strokeStyle=m,c.setLineDash&&(r[u].lineDashType?(p=r[u].lineDashType,c.setLineDash(S(p,n.lineThickness))):(p=n.lineDashType,c.setLineDash(h))));0!==r[u].markerSize&&(0<r[u].markerSize||0<n.markerSize)&&(q=n.getMarkerProperties(u,G,x,c),k.push(q),A=U(A),w&&k.push({x:G,y:x,ctx:b,type:q.type,size:q.size,
|
|
335
|
+
color:A,borderColor:A,borderThickness:q.borderThickness}));(r[u].indexLabel||n.indexLabel||r[u].indexLabelFormatter||n.indexLabelFormatter)&&this._indexLabels.push({chartType:"stepLine",dataPoint:r[u],dataSeries:n,point:{x:G,y:x},direction:0>r[u].y===a.axisY.reversed?1:-1,color:C})}c.stroke();w&&b.stroke()}}l.drawMarkers(k);w&&(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),
|
|
336
|
+
a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),b.beginPath());c.restore();c.beginPath();return{source:e,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderSpline=function(a){function e(a){a=v(a,2);if(0<a.length){b.beginPath();w&&f.beginPath();b.moveTo(a[0].x,
|
|
337
|
+
a[0].y);a[0].newStrokeStyle&&(b.strokeStyle=a[0].newStrokeStyle);a[0].newLineDashArray&&b.setLineDash(a[0].newLineDashArray);w&&f.moveTo(a[0].x,a[0].y);for(var c=0;c<a.length-3;c+=3)if(b.bezierCurveTo(a[c+1].x,a[c+1].y,a[c+2].x,a[c+2].y,a[c+3].x,a[c+3].y),w&&f.bezierCurveTo(a[c+1].x,a[c+1].y,a[c+2].x,a[c+2].y,a[c+3].x,a[c+3].y),0<c&&0===c%3E3||a[c+3].newStrokeStyle||a[c+3].newLineDashArray)b.stroke(),b.beginPath(),b.moveTo(a[c+3].x,a[c+3].y),a[c+3].newStrokeStyle&&(b.strokeStyle=a[c+3].newStrokeStyle),
|
|
338
|
+
a[c+3].newLineDashArray&&b.setLineDash(a[c+3].newLineDashArray),w&&(f.stroke(),f.beginPath(),f.moveTo(a[c+3].x,a[c+3].y));b.stroke();w&&f.stroke()}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=w?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var f=this._eventManager.ghostCtx;b.save();var k=this.plotArea;b.beginPath();b.rect(k.x1,k.y1,k.width,k.height);b.clip();for(var g=[],d=0;d<a.dataSeriesIndexes.length;d++){var K=a.dataSeriesIndexes[d],n=this.data[K];b.lineWidth=n.lineThickness;var r=
|
|
339
339
|
n.dataPoints,p="solid";if(b.setLineDash){var s=S(n.nullDataLineDashType,n.lineThickness),p=n.lineDashType,h=S(p,n.lineThickness);b.setLineDash(h)}var C=n.id;this._eventManager.objectMap[C]={objectType:"dataSeries",dataSeriesIndex:K};C=U(C);f.strokeStyle=C;f.lineWidth=0<n.lineThickness?Math.max(n.lineThickness,4):0;var C=n._colorSet,t=C=n.lineColor=n.options.lineColor?n.options.lineColor:C[0];b.strokeStyle=C;var m=0,u,G,x=[];b.beginPath();if(0<r.length)for(G=!1,m=0;m<r.length;m++)if(u=r[m].getTime?
|
|
340
340
|
r[m].x.getTime():r[m].x,!(u<a.axisX.dataInfo.viewPortMin||u>a.axisX.dataInfo.viewPortMax&&(!n.connectNullData||!G)))if("number"!==typeof r[m].y)0<m&&!G&&(n.connectNullData?b.setLineDash&&(0<x.length&&(n.options.nullDataLineDashType||!r[m-1].lineDashType))&&(x[x.length-1].newLineDashArray=s,p=n.nullDataLineDashType):(e(x),x=[])),G=!0;else{u=a.axisX.convertValueToPixel(u);G=a.axisY.convertValueToPixel(r[m].y);var q=n.dataPointIds[m];this._eventManager.objectMap[q]={id:q,objectType:"dataPoint",dataSeriesIndex:K,
|
|
341
|
-
dataPointIndex:m,x1:u,y1:G};x[x.length]={x:u,y:G};m<r.length-1&&(t!==(r[m].lineColor||C)||p!==(r[m].lineDashType||n.lineDashType))&&(t=r[m].lineColor||C,x[x.length-1].newStrokeStyle=t,b.setLineDash&&(r[m].lineDashType?(p=r[m].lineDashType,x[x.length-1].newLineDashArray=S(p,n.lineThickness)):(p=n.lineDashType,x[x.length-1].newLineDashArray=h)));if(0!==r[m].markerSize&&(0<r[m].markerSize||0<n.markerSize)){var F=n.getMarkerProperties(m,u,G,b);g.push(F);q=U(q);
|
|
342
|
-
color:q,borderColor:q,borderThickness:F.borderThickness})}(r[m].indexLabel||n.indexLabel||r[m].indexLabelFormatter||n.indexLabelFormatter)&&this._indexLabels.push({chartType:"spline",dataPoint:r[m],dataSeries:n,point:{x:u,y:G},direction:0>r[m].y===a.axisY.reversed?1:-1,color:C});G=!1}e(x)}l.drawMarkers(g);
|
|
343
|
-
b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(k.x1,k.y1,k.width,k.height),f.beginPath());b.restore();b.beginPath();return{source:c,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderColumn=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
341
|
+
dataPointIndex:m,x1:u,y1:G};x[x.length]={x:u,y:G};m<r.length-1&&(t!==(r[m].lineColor||C)||p!==(r[m].lineDashType||n.lineDashType))&&(t=r[m].lineColor||C,x[x.length-1].newStrokeStyle=t,b.setLineDash&&(r[m].lineDashType?(p=r[m].lineDashType,x[x.length-1].newLineDashArray=S(p,n.lineThickness)):(p=n.lineDashType,x[x.length-1].newLineDashArray=h)));if(0!==r[m].markerSize&&(0<r[m].markerSize||0<n.markerSize)){var F=n.getMarkerProperties(m,u,G,b);g.push(F);q=U(q);w&&g.push({x:u,y:G,ctx:f,type:F.type,size:F.size,
|
|
342
|
+
color:q,borderColor:q,borderThickness:F.borderThickness})}(r[m].indexLabel||n.indexLabel||r[m].indexLabelFormatter||n.indexLabelFormatter)&&this._indexLabels.push({chartType:"spline",dataPoint:r[m],dataSeries:n,point:{x:u,y:G},direction:0>r[m].y===a.axisY.reversed?1:-1,color:C});G=!1}e(x)}l.drawMarkers(g);w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&
|
|
343
|
+
b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(k.x1,k.y1,k.width,k.height),f.beginPath());b.restore();b.beginPath();return{source:c,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderColumn=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=
|
|
344
344
|
null,f=this.plotArea,k=0,g,d,K,n=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,r=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.width,0.9*(this.plotArea.width/a.plotType.totalDataSeries))<<0,p=a.axisX.dataInfo.minDiff;isFinite(p)||(p=0.3*Math.abs(a.axisX.range));p=this.dataPointWidth=this.options.dataPointWidth?
|
|
345
|
-
this.dataPointWidth:0.9*(f.width*(a.axisX.logarithmic?Math.log(p)/Math.log(a.axisX.range):Math.abs(p)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&k>r&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,r));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&r<k)&&(r=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,k));p<k&&(p=k);p>r&&(p=r);c.save();
|
|
346
|
-
c.clip();
|
|
345
|
+
this.dataPointWidth:0.9*(f.width*(a.axisX.logarithmic?Math.log(p)/Math.log(a.axisX.range):Math.abs(p)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&k>r&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,r));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&r<k)&&(r=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,k));p<k&&(p=k);p>r&&(p=r);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);
|
|
346
|
+
c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.clip());for(r=0;r<a.dataSeriesIndexes.length;r++){var s=a.dataSeriesIndexes[r],h=this.data[s],l=h.dataPoints;if(0<l.length)for(var m=5<p&&h.bevelEnabled?!0:!1,k=0;k<l.length;k++)if(l[k].getTime?K=l[k].x.getTime():K=l[k].x,!(K<a.axisX.dataInfo.viewPortMin||K>a.axisX.dataInfo.viewPortMax)&&"number"===typeof l[k].y){g=a.axisX.convertValueToPixel(K);d=a.axisY.convertValueToPixel(l[k].y);
|
|
347
347
|
g=a.axisX.reversed?g+a.plotType.totalDataSeries*p/2-(a.previousDataSeriesCount+r)*p<<0:g-a.plotType.totalDataSeries*p/2+(a.previousDataSeriesCount+r)*p<<0;var t=a.axisX.reversed?g-p<<0:g+p<<0,u;0<=l[k].y?u=n:(u=d,d=n);d>u&&(b=d,d=u,u=b);b=l[k].color?l[k].color:h._colorSet[k%h._colorSet.length];Z(c,a.axisX.reversed?t:g,d,a.axisX.reversed?g:t,u,b,0,null,m&&(a.axisY.reversed?0>l[k].y:0<=l[k].y),(a.axisY.reversed?0<=l[k].y:0>l[k].y)&&m,!1,!1,h.fillOpacity);b=h.dataPointIds[k];this._eventManager.objectMap[b]=
|
|
348
|
-
{id:b,objectType:"dataPoint",dataSeriesIndex:s,dataPointIndex:k,x1:g,y1:d,x2:t,y2:u};b=U(b);
|
|
348
|
+
{id:b,objectType:"dataPoint",dataSeriesIndex:s,dataPointIndex:k,x1:g,y1:d,x2:t,y2:u};b=U(b);w&&Z(this._eventManager.ghostCtx,a.axisX.reversed?t:g,d,a.axisX.reversed?g:t,u,b,0,null,!1,!1,!1,!1);(l[k].indexLabel||h.indexLabel||l[k].indexLabelFormatter||h.indexLabelFormatter)&&this._indexLabels.push({chartType:"column",dataPoint:l[k],dataSeries:h,point:{x:g+(t-g)/2,y:0>l[k].y===a.axisY.reversed?d:u},direction:0>l[k].y===a.axisY.reversed?1:-1,bounds:{x1:g,y1:Math.min(d,u),x2:t,y2:Math.max(d,u)},color:b})}}w&&
|
|
349
349
|
(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,0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.yScaleAnimation,
|
|
350
|
-
easingFunction:E.easing.easeOutQuart,animationBase:n<a.axisY.bounds.y1?a.axisY.bounds.y1:n>a.axisY.bounds.y2?a.axisY.bounds.y2:n}}};q.prototype.renderStackedColumn=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
350
|
+
easingFunction:E.easing.easeOutQuart,animationBase:n<a.axisY.bounds.y1?a.axisY.bounds.y1:n>a.axisY.bounds.y2?a.axisY.bounds.y2:n}}};q.prototype.renderStackedColumn=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=null,f=this.plotArea,k=[],g=[],d=[],l=[],n=0,r,p,s=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),n=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:
|
|
351
351
|
1,h=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.width<<0,C=a.axisX.dataInfo.minDiff;isFinite(C)||(C=0.3*Math.abs(a.axisX.range));C=this.options.dataPointWidth?this.dataPointWidth:0.9*(f.width*(a.axisX.logarithmic?Math.log(C)/Math.log(a.axisX.range):Math.abs(C)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&n>h&&(n=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,h));!this.dataPointMaxWidth&&
|
|
352
|
-
(this.dataPointMinWidth&&h<n)&&(h=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,n));C<n&&(C=n);C>h&&(C=h);c.save();
|
|
353
|
-
!0:!1;c.strokeStyle="#4572A7 ";for(n=0;n<u.length;n++)if(b=u[n].x.getTime?u[n].x.getTime():u[n].x,!(b<a.axisX.dataInfo.viewPortMin||b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof u[n].y){r=a.axisX.convertValueToPixel(b);r=r-a.plotType.plotUnits.length*C/2+a.index*C<<0;var x=r+C<<0,
|
|
354
|
-
else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=u[n].y)l[b]=u[n].y+(l[b]?l[b]:0),
|
|
355
|
-
u[n].y),(a.axisY.reversed?0<=u[n].y:0>u[n].y)&&G,!1,!1,t.fillOpacity);b=t.dataPointIds[n];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:m,dataPointIndex:n,x1:r,y1:p,x2:x,y2:
|
|
356
|
-
1:-1,bounds:{x1:r,y1:Math.min(p,
|
|
357
|
-
c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.yScaleAnimation,easingFunction:E.easing.easeOutQuart,animationBase:s<a.axisY.bounds.y1?a.axisY.bounds.y1:s>a.axisY.bounds.y2?a.axisY.bounds.y2:s}}};q.prototype.renderStackedColumn100=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
352
|
+
(this.dataPointMinWidth&&h<n)&&(h=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,n));C<n&&(C=n);C>h&&(C=h);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.clip());for(h=0;h<a.dataSeriesIndexes.length;h++){var m=a.dataSeriesIndexes[h],t=this.data[m],u=t.dataPoints;if(0<u.length){var G=5<C&&t.bevelEnabled?
|
|
353
|
+
!0:!1;c.strokeStyle="#4572A7 ";for(n=0;n<u.length;n++)if(b=u[n].x.getTime?u[n].x.getTime():u[n].x,!(b<a.axisX.dataInfo.viewPortMin||b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof u[n].y){r=a.axisX.convertValueToPixel(b);r=r-a.plotType.plotUnits.length*C/2+a.index*C<<0;var x=r+C<<0,v;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0<u[n].y)d[b]=u[n].y+(d[b]?d[b]:0),0<d[b]&&(p=a.axisY.convertValueToPixel(d[b]),v="undefined"!==typeof k[b]?k[b]:s,k[b]=p);
|
|
354
|
+
else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=u[n].y)l[b]=u[n].y+(l[b]?l[b]:0),v=a.axisY.convertValueToPixel(l[b]),p="undefined"!==typeof g[b]?g[b]:s,g[b]=v;else if(p=a.axisY.convertValueToPixel(u[n].y),0<=u[n].y){var q="undefined"!==typeof k[b]?k[b]:0;p-=q;v=s-q;k[b]=q+(v-p)}else q=g[b]?g[b]:0,v=p+q,p=s+q,g[b]=q+(v-p);b=u[n].color?u[n].color:t._colorSet[n%t._colorSet.length];Z(c,r,a.axisY.reversed?v:p,x,a.axisY.reversed?p:v,b,0,null,G&&(a.axisY.reversed?0>u[n].y:0<=
|
|
355
|
+
u[n].y),(a.axisY.reversed?0<=u[n].y:0>u[n].y)&&G,!1,!1,t.fillOpacity);b=t.dataPointIds[n];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:m,dataPointIndex:n,x1:r,y1:p,x2:x,y2:v};b=U(b);w&&Z(this._eventManager.ghostCtx,r,p,x,v,b,0,null,!1,!1,!1,!1);(u[n].indexLabel||t.indexLabel||u[n].indexLabelFormatter||t.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedColumn",dataPoint:u[n],dataSeries:t,point:{x:r+(x-r)/2,y:0<=u[n].y?p:v},direction:0>u[n].y===a.axisY.reversed?
|
|
356
|
+
1:-1,bounds:{x1:r,y1:Math.min(p,v),x2:x,y2:Math.max(p,v)},color:b})}}}w&&(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,0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());
|
|
357
|
+
c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.yScaleAnimation,easingFunction:E.easing.easeOutQuart,animationBase:s<a.axisY.bounds.y1?a.axisY.bounds.y1:s>a.axisY.bounds.y2?a.axisY.bounds.y2:s}}};q.prototype.renderStackedColumn100=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=null,f=this.plotArea,k=[],g=[],d=[],l=[],n=0,r,p,s=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),
|
|
358
358
|
n=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,h=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.width<<0,C=a.axisX.dataInfo.minDiff;isFinite(C)||(C=0.3*Math.abs(a.axisX.range));C=this.options.dataPointWidth?this.dataPointWidth:0.9*(f.width*(a.axisX.logarithmic?Math.log(C)/Math.log(a.axisX.range):Math.abs(C)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&
|
|
359
|
-
n>h&&(n=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,h));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&h<n)&&(h=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,n));C<n&&(C=n);C>h&&(C=h);c.save();
|
|
360
|
-
a.dataSeriesIndexes[h],t=this.data[m],u=t.dataPoints;if(0<u.length)for(var
|
|
359
|
+
n>h&&(n=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,h));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&h<n)&&(h=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,n));C<n&&(C=n);C>h&&(C=h);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.clip());for(h=0;h<a.dataSeriesIndexes.length;h++){var m=
|
|
360
|
+
a.dataSeriesIndexes[h],t=this.data[m],u=t.dataPoints;if(0<u.length)for(var v=5<C&&t.bevelEnabled?!0:!1,n=0;n<u.length;n++)if(b=u[n].x.getTime?u[n].x.getTime():u[n].x,!(b<a.axisX.dataInfo.viewPortMin||b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof u[n].y){r=a.axisX.convertValueToPixel(b);p=0!==a.dataPointYSums[b]?100*(u[n].y/a.dataPointYSums[b]):0;r=r-a.plotType.plotUnits.length*C/2+a.index*C<<0;var x=r+C<<0,q;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&
|
|
361
361
|
0<u[n].y){d[b]=p+("undefined"!==typeof d[b]?d[b]:0);if(0>=d[b])continue;p=a.axisY.convertValueToPixel(d[b]);q=k[b]?k[b]:s;k[b]=p}else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=u[n].y)l[b]=p+("undefined"!==typeof l[b]?l[b]:0),q=a.axisY.convertValueToPixel(l[b]),p=g[b]?g[b]:s,g[b]=q;else if(p=a.axisY.convertValueToPixel(p),0<=u[n].y){var F="undefined"!==typeof k[b]?k[b]:0;p-=F;q=s-F;a.dataSeriesIndexes.length-1===h&&1>=Math.abs(f.y1-p)&&(p=f.y1);k[b]=F+(q-p)}else F="undefined"!==
|
|
362
|
-
typeof g[b]?g[b]:0,q=p+F,p=s+F,a.dataSeriesIndexes.length-1===h&&1>=Math.abs(f.y2-q)&&(q=f.y2),g[b]=F+(q-p);b=u[n].color?u[n].color:t._colorSet[n%t._colorSet.length];Z(c,r,a.axisY.reversed?q:p,x,a.axisY.reversed?p:q,b,0,null,
|
|
363
|
-
r,p,x,q,b,0,null,!1,!1,!1,!1);(u[n].indexLabel||t.indexLabel||u[n].indexLabelFormatter||t.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedColumn100",dataPoint:u[n],dataSeries:t,point:{x:r+(x-r)/2,y:0<=u[n].y?p:q},direction:0>u[n].y===a.axisY.reversed?1:-1,bounds:{x1:r,y1:Math.min(p,q),x2:x,y2:Math.max(p,q)},color:b})}}
|
|
362
|
+
typeof g[b]?g[b]:0,q=p+F,p=s+F,a.dataSeriesIndexes.length-1===h&&1>=Math.abs(f.y2-q)&&(q=f.y2),g[b]=F+(q-p);b=u[n].color?u[n].color:t._colorSet[n%t._colorSet.length];Z(c,r,a.axisY.reversed?q:p,x,a.axisY.reversed?p:q,b,0,null,v&&(a.axisY.reversed?0>u[n].y:0<=u[n].y),(a.axisY.reversed?0<=u[n].y:0>u[n].y)&&v,!1,!1,t.fillOpacity);b=t.dataPointIds[n];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:m,dataPointIndex:n,x1:r,y1:p,x2:x,y2:q};b=U(b);w&&Z(this._eventManager.ghostCtx,
|
|
363
|
+
r,p,x,q,b,0,null,!1,!1,!1,!1);(u[n].indexLabel||t.indexLabel||u[n].indexLabelFormatter||t.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedColumn100",dataPoint:u[n],dataSeries:t,point:{x:r+(x-r)/2,y:0<=u[n].y?p:q},direction:0>u[n].y===a.axisY.reversed?1:-1,bounds:{x1:r,y1:Math.min(p,q),x2:x,y2:Math.max(p,q)},color:b})}}w&&(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,
|
|
364
364
|
this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.yScaleAnimation,easingFunction:E.easing.easeOutQuart,animationBase:s<a.axisY.bounds.y1?a.axisY.bounds.y1:s>a.axisY.bounds.y2?a.axisY.bounds.y2:s}}};q.prototype.renderBar=
|
|
365
|
-
function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
365
|
+
function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=null,f=this.plotArea,k=0,g,d,l,n=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,r=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.height,0.9*(this.plotArea.height/a.plotType.totalDataSeries))<<
|
|
366
366
|
0,p=a.axisX.dataInfo.minDiff;isFinite(p)||(p=0.3*Math.abs(a.axisX.range));p=this.options.dataPointWidth?this.dataPointWidth:0.9*(f.height*(a.axisX.logarithmic?Math.log(p)/Math.log(a.axisX.range):Math.abs(p)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&k>r&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,r));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&r<k)&&(r=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,k));p<k&&(p=
|
|
367
|
-
k);p>r&&(p=r);c.save();
|
|
367
|
+
k);p>r&&(p=r);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.clip());for(r=0;r<a.dataSeriesIndexes.length;r++){var s=a.dataSeriesIndexes[r],h=this.data[s],C=h.dataPoints;if(0<C.length){var m=5<p&&h.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(k=0;k<C.length;k++)if(C[k].getTime?l=C[k].x.getTime():l=C[k].x,!(l<
|
|
368
368
|
a.axisX.dataInfo.viewPortMin||l>a.axisX.dataInfo.viewPortMax)&&"number"===typeof C[k].y){d=a.axisX.convertValueToPixel(l);g=a.axisY.convertValueToPixel(C[k].y);d=a.axisX.reversed?d+a.plotType.totalDataSeries*p/2-(a.previousDataSeriesCount+r)*p<<0:d-a.plotType.totalDataSeries*p/2+(a.previousDataSeriesCount+r)*p<<0;var t=a.axisX.reversed?d-p<<0:d+p<<0,u;0<=C[k].y?u=n:(u=g,g=n);b=C[k].color?C[k].color:h._colorSet[k%h._colorSet.length];Z(c,a.axisY.reversed?g:u,a.axisX.reversed?t:d,a.axisY.reversed?u:
|
|
369
|
-
g,a.axisX.reversed?d:t,b,0,null,m,!1,!1,!1,h.fillOpacity);b=h.dataPointIds[k];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:s,dataPointIndex:k,x1:u,y1:d,x2:g,y2:t};b=U(b);
|
|
370
|
-
C[k].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(u,g),y1:d,x2:Math.max(u,g),y2:t},color:b})}}}
|
|
371
|
-
this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.xScaleAnimation,easingFunction:E.easing.easeOutQuart,animationBase:n<a.axisY.bounds.x1?a.axisY.bounds.x1:n>a.axisY.bounds.x2?a.axisY.bounds.x2:n}}};q.prototype.renderStackedBar=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
369
|
+
g,a.axisX.reversed?d:t,b,0,null,m,!1,!1,!1,h.fillOpacity);b=h.dataPointIds[k];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:s,dataPointIndex:k,x1:u,y1:d,x2:g,y2:t};b=U(b);w&&Z(this._eventManager.ghostCtx,u,a.axisX.reversed?t:d,g,a.axisX.reversed?d:t,b,0,null,!1,!1,!1,!1);(C[k].indexLabel||h.indexLabel||C[k].indexLabelFormatter||h.indexLabelFormatter)&&this._indexLabels.push({chartType:"bar",dataPoint:C[k],dataSeries:h,point:{x:0<=C[k].y?g:u,y:d+(t-d)/2},direction:0>
|
|
370
|
+
C[k].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(u,g),y1:d,x2:Math.max(u,g),y2:t},color:b})}}}w&&(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,0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),
|
|
371
|
+
this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.xScaleAnimation,easingFunction:E.easing.easeOutQuart,animationBase:n<a.axisY.bounds.x1?a.axisY.bounds.x1:n>a.axisY.bounds.x2?a.axisY.bounds.x2:n}}};q.prototype.renderStackedBar=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=null,f=this.plotArea,k=[],g=[],d=[],l=[],n=0,r,p,s=a.axisY.convertValueToPixel(a.axisY.logarithmic?
|
|
372
372
|
a.axisY.viewportMinimum:0),n=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,h=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.height<<0,C=a.axisX.dataInfo.minDiff;isFinite(C)||(C=0.3*Math.abs(a.axisX.range));C=this.options.dataPointWidth?this.dataPointWidth:0.9*(f.height*(a.axisX.logarithmic?Math.log(C)/Math.log(a.axisX.range):Math.abs(C)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<
|
|
373
|
-
0;this.dataPointMaxWidth&&n>h&&(n=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,h));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&h<n)&&(h=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,n));C<n&&(C=n);C>h&&(C=h);c.save();
|
|
374
|
-
for(h=0;h<a.dataSeriesIndexes.length;h++){var t=a.dataSeriesIndexes[h],m=this.data[t],u=m.dataPoints;if(0<u.length){var
|
|
373
|
+
0;this.dataPointMaxWidth&&n>h&&(n=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,h));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&h<n)&&(h=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,n));C<n&&(C=n);C>h&&(C=h);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.clip());
|
|
374
|
+
for(h=0;h<a.dataSeriesIndexes.length;h++){var t=a.dataSeriesIndexes[h],m=this.data[t],u=m.dataPoints;if(0<u.length){var v=5<C&&m.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(n=0;n<u.length;n++)if(b=u[n].x.getTime?u[n].x.getTime():u[n].x,!(b<a.axisX.dataInfo.viewPortMin||b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof u[n].y){p=a.axisX.convertValueToPixel(b);p=p-a.plotType.plotUnits.length*C/2+a.index*C<<0;var x=p+C<<0,q;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&
|
|
375
375
|
0<u[n].y)d[b]=u[n].y+(d[b]?d[b]:0),0<d[b]&&(q=k[b]?k[b]:s,k[b]=r=a.axisY.convertValueToPixel(d[b]));else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=u[n].y)l[b]=u[n].y+(l[b]?l[b]:0),r=g[b]?g[b]:s,g[b]=q=a.axisY.convertValueToPixel(l[b]);else if(r=a.axisY.convertValueToPixel(u[n].y),0<=u[n].y){var F=k[b]?k[b]:0;q=s+F;r+=F;k[b]=F+(r-q)}else F=g[b]?g[b]:0,q=r-F,r=s-F,g[b]=F+(r-q);b=u[n].color?u[n].color:m._colorSet[n%m._colorSet.length];Z(c,a.axisY.reversed?r:q,p,a.axisY.reversed?
|
|
376
|
-
q:r,x,b,0,null,
|
|
377
|
-
r),y1:p,x2:Math.max(q,r),y2:x},color:b})}}}
|
|
378
|
-
return{source:e,dest:this.plotArea.ctx,animationCallback:E.xScaleAnimation,easingFunction:E.easing.easeOutQuart,animationBase:s<a.axisY.bounds.x1?a.axisY.bounds.x1:s>a.axisY.bounds.x2?a.axisY.bounds.x2:s}}};q.prototype.renderStackedBar100=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
376
|
+
q:r,x,b,0,null,v,!1,!1,!1,m.fillOpacity);b=m.dataPointIds[n];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:t,dataPointIndex:n,x1:q,y1:p,x2:r,y2:x};b=U(b);w&&Z(this._eventManager.ghostCtx,q,p,r,x,b,0,null,!1,!1,!1,!1);(u[n].indexLabel||m.indexLabel||u[n].indexLabelFormatter||m.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedBar",dataPoint:u[n],dataSeries:m,point:{x:0<=u[n].y?r:q,y:p+(x-p)/2},direction:0>u[n].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(q,
|
|
377
|
+
r),y1:p,x2:Math.max(q,r),y2:x},color:b})}}}w&&(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,0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());c.restore();
|
|
378
|
+
return{source:e,dest:this.plotArea.ctx,animationCallback:E.xScaleAnimation,easingFunction:E.easing.easeOutQuart,animationBase:s<a.axisY.bounds.x1?a.axisY.bounds.x1:s>a.axisY.bounds.x2?a.axisY.bounds.x2:s}}};q.prototype.renderStackedBar100=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=null,f=this.plotArea,k=[],g=[],d=[],l=[],n=0,r,p,s=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),n=this.options.dataPointMinWidth?
|
|
379
379
|
this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,h=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.15*this.height<<0,C=a.axisX.dataInfo.minDiff;isFinite(C)||(C=0.3*Math.abs(a.axisX.range));C=this.options.dataPointWidth?this.dataPointWidth:0.9*(f.height*(a.axisX.logarithmic?Math.log(C)/Math.log(a.axisX.range):Math.abs(C)/Math.abs(a.axisX.range))/a.plotType.plotUnits.length)<<0;this.dataPointMaxWidth&&n>h&&(n=Math.min(this.options.dataPointWidth?
|
|
380
|
-
this.dataPointWidth:Infinity,h));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&h<n)&&(h=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,n));C<n&&(C=n);C>h&&(C=h);c.save();
|
|
381
|
-
t=this.data[m],u=t.dataPoints;if(0<u.length){var
|
|
380
|
+
this.dataPointWidth:Infinity,h));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&h<n)&&(h=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,n));C<n&&(C=n);C>h&&(C=h);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.clip());for(h=0;h<a.dataSeriesIndexes.length;h++){var m=a.dataSeriesIndexes[h],
|
|
381
|
+
t=this.data[m],u=t.dataPoints;if(0<u.length){var v=5<C&&t.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(n=0;n<u.length;n++)if(b=u[n].x.getTime?u[n].x.getTime():u[n].x,!(b<a.axisX.dataInfo.viewPortMin||b>a.axisX.dataInfo.viewPortMax)&&"number"===typeof u[n].y){p=a.axisX.convertValueToPixel(b);var x;x=0!==a.dataPointYSums[b]?100*(u[n].y/a.dataPointYSums[b]):0;p=p-a.plotType.plotUnits.length*C/2+a.index*C<<0;var q=p+C<<0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&
|
|
382
382
|
0<u[n].y){d[b]=x+(d[b]?d[b]:0);if(0>=d[b])continue;x=k[b]?k[b]:s;k[b]=r=a.axisY.convertValueToPixel(d[b])}else if(a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length&&0>=u[n].y)l[b]=x+(l[b]?l[b]:0),r=g[b]?g[b]:s,g[b]=x=a.axisY.convertValueToPixel(l[b]);else if(r=a.axisY.convertValueToPixel(x),0<=u[n].y){var F=k[b]?k[b]:0;x=s+F;r+=F;a.dataSeriesIndexes.length-1===h&&1>=Math.abs(f.x2-r)&&(r=f.x2);k[b]=F+(r-x)}else F=g[b]?g[b]:0,x=r-F,r=s-F,a.dataSeriesIndexes.length-1===h&&1>=Math.abs(f.x1-
|
|
383
|
-
x)&&(x=f.x1),g[b]=F+(r-x);b=u[n].color?u[n].color:t._colorSet[n%t._colorSet.length];Z(c,a.axisY.reversed?r:x,p,a.axisY.reversed?x:r,q,b,0,null,
|
|
384
|
-
dataPoint:u[n],dataSeries:t,point:{x:0<=u[n].y?r:x,y:p+(q-p)/2},direction:0>u[n].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(x,r),y1:p,x2:Math.max(x,r),y2:q},color:b})}}}
|
|
385
|
-
0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.xScaleAnimation,easingFunction:E.easing.easeOutQuart,animationBase:s<a.axisY.bounds.x1?a.axisY.bounds.x1:s>a.axisY.bounds.x2?a.axisY.bounds.x2:s}}};q.prototype.renderArea=function(a){var e,c;function b(){F&&(0<h.lineThickness&&k.stroke(),a.axisY.logarithmic||0>=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?
|
|
386
|
-
|
|
387
|
-
n.width,n.height);k.clip();
|
|
383
|
+
x)&&(x=f.x1),g[b]=F+(r-x);b=u[n].color?u[n].color:t._colorSet[n%t._colorSet.length];Z(c,a.axisY.reversed?r:x,p,a.axisY.reversed?x:r,q,b,0,null,v,!1,!1,!1,t.fillOpacity);b=t.dataPointIds[n];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:m,dataPointIndex:n,x1:x,y1:p,x2:r,y2:q};b=U(b);w&&Z(this._eventManager.ghostCtx,x,p,r,q,b,0,null,!1,!1,!1,!1);(u[n].indexLabel||t.indexLabel||u[n].indexLabelFormatter||t.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedBar100",
|
|
384
|
+
dataPoint:u[n],dataSeries:t,point:{x:0<=u[n].y?r:x,y:p+(q-p)/2},direction:0>u[n].y===a.axisY.reversed?1:-1,bounds:{x1:Math.min(x,r),y1:p,x2:Math.max(x,r),y2:q},color:b})}}}w&&(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,
|
|
385
|
+
0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.xScaleAnimation,easingFunction:E.easing.easeOutQuart,animationBase:s<a.axisY.bounds.x1?a.axisY.bounds.x1:s>a.axisY.bounds.x2?a.axisY.bounds.x2:s}}};q.prototype.renderArea=function(a){var e,c;function b(){F&&(0<h.lineThickness&&k.stroke(),a.axisY.logarithmic||0>=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?v=x:0>a.axisY.viewportMaximum?
|
|
386
|
+
v=d.y1:0<a.axisY.viewportMinimum&&(v=x),k.lineTo(m,v),k.lineTo(F.x,v),k.closePath(),k.globalAlpha=h.fillOpacity,k.fill(),k.globalAlpha=1,w&&(g.lineTo(m,v),g.lineTo(F.x,v),g.closePath(),g.fill()),k.beginPath(),k.moveTo(m,u),g.beginPath(),g.moveTo(m,u),F={x:m,y:u})}var f=a.targetCanvasCtx||this.plotArea.ctx,k=w?this._preRenderCtx:f;if(!(0>=a.dataSeriesIndexes.length)){var g=this._eventManager.ghostCtx,d=a.axisY.lineCoordinates,K=[],n=this.plotArea,r;k.save();w&&g.save();k.beginPath();k.rect(n.x1,n.y1,
|
|
387
|
+
n.width,n.height);k.clip();w&&(g.beginPath(),g.rect(n.x1,n.y1,n.width,n.height),g.clip());for(var p=0;p<a.dataSeriesIndexes.length;p++){var s=a.dataSeriesIndexes[p],h=this.data[s],C=h.dataPoints,K=h.id;this._eventManager.objectMap[K]={objectType:"dataSeries",dataSeriesIndex:s};K=U(K);g.fillStyle=K;K=[];e=!0;var t=0,m,u,q,x=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),v,F=null;if(0<C.length){var A=h._colorSet[t%h._colorSet.length],y=h.lineColor=h.options.lineColor||A,
|
|
388
388
|
B=y;k.fillStyle=A;k.strokeStyle=y;k.lineWidth=h.lineThickness;c="solid";if(k.setLineDash){var M=S(h.nullDataLineDashType,h.lineThickness);c=h.lineDashType;var ca=S(c,h.lineThickness);k.setLineDash(ca)}for(var da=!0;t<C.length;t++)if(q=C[t].x.getTime?C[t].x.getTime():C[t].x,!(q<a.axisX.dataInfo.viewPortMin||q>a.axisX.dataInfo.viewPortMax&&(!h.connectNullData||!da)))if("number"!==typeof C[t].y)h.connectNullData||(da||e)||b(),da=!0;else{m=a.axisX.convertValueToPixel(q);u=a.axisY.convertValueToPixel(C[t].y);
|
|
389
|
-
e||da?(!e&&h.connectNullData?(k.setLineDash&&(h.options.nullDataLineDashType||c===h.lineDashType&&h.lineDashType!==h.nullDataLineDashType)&&(e=m,c=u,m=r.x,u=r.y,b(),k.moveTo(r.x,r.y),m=e,u=c,F=r,c=h.nullDataLineDashType,k.setLineDash(M)),k.lineTo(m,u),
|
|
390
|
-
C[t].lineColor||y,k.strokeStyle=B,k.setLineDash&&(C[t].lineDashType?(c=C[t].lineDashType,k.setLineDash(S(c,h.lineThickness))):(c=h.lineDashType,k.setLineDash(ca))));var ea=h.dataPointIds[t];this._eventManager.objectMap[ea]={id:ea,objectType:"dataPoint",dataSeriesIndex:s,dataPointIndex:t,x1:m,y1:u};0!==C[t].markerSize&&(0<C[t].markerSize||0<h.markerSize)&&(q=h.getMarkerProperties(t,m,u,k),K.push(q),ea=U(ea),
|
|
391
|
-
(C[t].indexLabel||h.indexLabel||C[t].indexLabelFormatter||h.indexLabelFormatter)&&this._indexLabels.push({chartType:"area",dataPoint:C[t],dataSeries:h,point:{x:m,y:u},direction:0>C[t].y===a.axisY.reversed?1:-1,color:A})}b();l.drawMarkers(K)}}
|
|
392
|
-
this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),k.clearRect(n.x1,n.y1,n.width,n.height),this._eventManager.ghostCtx.restore());k.restore();return{source:f,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderSplineArea=function(a){function e(){var c=
|
|
393
|
-
c[0].newLineDashArray&&b.setLineDash(c[0].newLineDashArray);for(var e=0;e<c.length-3;e+=3)if(b.bezierCurveTo(c[e+1].x,c[e+1].y,c[e+2].x,c[e+2].y,c[e+3].x,c[e+3].y),
|
|
394
|
-
c[0].y);
|
|
395
|
-
|
|
389
|
+
e||da?(!e&&h.connectNullData?(k.setLineDash&&(h.options.nullDataLineDashType||c===h.lineDashType&&h.lineDashType!==h.nullDataLineDashType)&&(e=m,c=u,m=r.x,u=r.y,b(),k.moveTo(r.x,r.y),m=e,u=c,F=r,c=h.nullDataLineDashType,k.setLineDash(M)),k.lineTo(m,u),w&&g.lineTo(m,u)):(k.beginPath(),k.moveTo(m,u),w&&(g.beginPath(),g.moveTo(m,u)),F={x:m,y:u}),da=e=!1):(k.lineTo(m,u),w&&g.lineTo(m,u),0==t%250&&b());r={x:m,y:u};t<C.length-1&&(B!==(C[t].lineColor||y)||c!==(C[t].lineDashType||h.lineDashType))&&(b(),B=
|
|
390
|
+
C[t].lineColor||y,k.strokeStyle=B,k.setLineDash&&(C[t].lineDashType?(c=C[t].lineDashType,k.setLineDash(S(c,h.lineThickness))):(c=h.lineDashType,k.setLineDash(ca))));var ea=h.dataPointIds[t];this._eventManager.objectMap[ea]={id:ea,objectType:"dataPoint",dataSeriesIndex:s,dataPointIndex:t,x1:m,y1:u};0!==C[t].markerSize&&(0<C[t].markerSize||0<h.markerSize)&&(q=h.getMarkerProperties(t,m,u,k),K.push(q),ea=U(ea),w&&K.push({x:m,y:u,ctx:g,type:q.type,size:q.size,color:ea,borderColor:ea,borderThickness:q.borderThickness}));
|
|
391
|
+
(C[t].indexLabel||h.indexLabel||C[t].indexLabelFormatter||h.indexLabelFormatter)&&this._indexLabels.push({chartType:"area",dataPoint:C[t],dataSeries:h,point:{x:m,y:u},direction:0>C[t].y===a.axisY.reversed?1:-1,color:A})}b();l.drawMarkers(K)}}w&&(f.drawImage(this._preRenderCanvas,0,0,this.width,this.height),k.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&k.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&k.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),
|
|
392
|
+
this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),k.clearRect(n.x1,n.y1,n.width,n.height),this._eventManager.ghostCtx.restore());k.restore();return{source:f,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderSplineArea=function(a){function e(){var c=v(q,2);if(0<c.length){if(0<r.lineThickness){b.beginPath();b.moveTo(c[0].x,c[0].y);c[0].newStrokeStyle&&(b.strokeStyle=c[0].newStrokeStyle);
|
|
393
|
+
c[0].newLineDashArray&&b.setLineDash(c[0].newLineDashArray);for(var e=0;e<c.length-3;e+=3)if(b.bezierCurveTo(c[e+1].x,c[e+1].y,c[e+2].x,c[e+2].y,c[e+3].x,c[e+3].y),w&&f.bezierCurveTo(c[e+1].x,c[e+1].y,c[e+2].x,c[e+2].y,c[e+3].x,c[e+3].y),c[e+3].newStrokeStyle||c[e+3].newLineDashArray)b.stroke(),b.beginPath(),b.moveTo(c[e+3].x,c[e+3].y),c[e+3].newStrokeStyle&&(b.strokeStyle=c[e+3].newStrokeStyle),c[e+3].newLineDashArray&&b.setLineDash(c[e+3].newLineDashArray);b.stroke()}b.beginPath();b.moveTo(c[0].x,
|
|
394
|
+
c[0].y);w&&(f.beginPath(),f.moveTo(c[0].x,c[0].y));for(e=0;e<c.length-3;e+=3)b.bezierCurveTo(c[e+1].x,c[e+1].y,c[e+2].x,c[e+2].y,c[e+3].x,c[e+3].y),w&&f.bezierCurveTo(c[e+1].x,c[e+1].y,c[e+2].x,c[e+2].y,c[e+3].x,c[e+3].y);a.axisY.logarithmic||0>=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?m=t:0>a.axisY.viewportMaximum?m=k.y1:0<a.axisY.viewportMinimum&&(m=t);u={x:c[0].x,y:c[0].y};b.lineTo(c[c.length-1].x,m);b.lineTo(u.x,m);b.closePath();b.globalAlpha=r.fillOpacity;b.fill();b.globalAlpha=1;
|
|
395
|
+
w&&(f.lineTo(c[c.length-1].x,m),f.lineTo(u.x,m),f.closePath(),f.fill())}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=w?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var f=this._eventManager.ghostCtx,k=a.axisY.lineCoordinates,g=[],d=this.plotArea;b.save();w&&f.save();b.beginPath();b.rect(d.x1,d.y1,d.width,d.height);b.clip();w&&(f.beginPath(),f.rect(d.x1,d.y1,d.width,d.height),f.clip());for(var K=0;K<a.dataSeriesIndexes.length;K++){var n=a.dataSeriesIndexes[K],r=this.data[n],p=r.dataPoints,
|
|
396
396
|
g=r.id;this._eventManager.objectMap[g]={objectType:"dataSeries",dataSeriesIndex:n};g=U(g);f.fillStyle=g;var g=[],s=0,h,C,t=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),m,u=null,q=[];if(0<p.length){var x=r._colorSet[s%r._colorSet.length],y=r.lineColor=r.options.lineColor||x,F=y;b.fillStyle=x;b.strokeStyle=y;b.lineWidth=r.lineThickness;var A="solid";if(b.setLineDash){var B=S(r.nullDataLineDashType,r.lineThickness),A=r.lineDashType,D=S(A,r.lineThickness);b.setLineDash(D)}for(C=
|
|
397
397
|
!1;s<p.length;s++)if(h=p[s].x.getTime?p[s].x.getTime():p[s].x,!(h<a.axisX.dataInfo.viewPortMin||h>a.axisX.dataInfo.viewPortMax&&(!r.connectNullData||!C)))if("number"!==typeof p[s].y)0<s&&!C&&(r.connectNullData?b.setLineDash&&(0<q.length&&(r.options.nullDataLineDashType||!p[s-1].lineDashType))&&(q[q.length-1].newLineDashArray=B,A=r.nullDataLineDashType):(e(),q=[])),C=!0;else{h=a.axisX.convertValueToPixel(h);C=a.axisY.convertValueToPixel(p[s].y);var M=r.dataPointIds[s];this._eventManager.objectMap[M]=
|
|
398
398
|
{id:M,objectType:"dataPoint",dataSeriesIndex:n,dataPointIndex:s,x1:h,y1:C};q[q.length]={x:h,y:C};s<p.length-1&&(F!==(p[s].lineColor||y)||A!==(p[s].lineDashType||r.lineDashType))&&(F=p[s].lineColor||y,q[q.length-1].newStrokeStyle=F,b.setLineDash&&(p[s].lineDashType?(A=p[s].lineDashType,q[q.length-1].newLineDashArray=S(A,r.lineThickness)):(A=r.lineDashType,q[q.length-1].newLineDashArray=D)));if(0!==p[s].markerSize&&(0<p[s].markerSize||0<r.markerSize)){var ca=r.getMarkerProperties(s,h,C,b);g.push(ca);
|
|
399
|
-
M=U(M);
|
|
399
|
+
M=U(M);w&&g.push({x:h,y:C,ctx:f,type:ca.type,size:ca.size,color:M,borderColor:M,borderThickness:ca.borderThickness})}(p[s].indexLabel||r.indexLabel||p[s].indexLabelFormatter||r.indexLabelFormatter)&&this._indexLabels.push({chartType:"splineArea",dataPoint:p[s],dataSeries:r,point:{x:h,y:C},direction:0>p[s].y===a.axisY.reversed?1:-1,color:x});C=!1}e();l.drawMarkers(g)}}w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,
|
|
400
400
|
0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(d.x1,d.y1,d.width,d.height),this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderStepArea=function(a){var e,c;function b(){F&&(0<h.lineThickness&&
|
|
401
|
-
k.stroke(),a.axisY.logarithmic||0>=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?y=x:0>a.axisY.viewportMaximum?y=d.y1:0<a.axisY.viewportMinimum&&(y=x),k.lineTo(q,y),k.lineTo(F.x,y),k.closePath(),k.globalAlpha=h.fillOpacity,k.fill(),k.globalAlpha=1,
|
|
402
|
-
d=a.axisY.lineCoordinates,K=[],n=this.plotArea,r;k.save();
|
|
403
|
-
y,F=null;c=!1;if(0<t.length){var A=h._colorSet[m%h._colorSet.length],B=h.lineColor=h.options.lineColor||A,D=B;k.fillStyle=A;k.strokeStyle=B;k.lineWidth=h.lineThickness;var M="solid";if(k.setLineDash){var ca=S(h.nullDataLineDashType,h.lineThickness),M=h.lineDashType,da=S(M,h.lineThickness);k.setLineDash(da)}for(;m<t.length;m++)if(
|
|
404
|
-
(c||e)||b(),c=!0):(q=a.axisX.convertValueToPixel(
|
|
405
|
-
ea),k.lineTo(q,u),
|
|
406
|
-
(ea=h.getMarkerProperties(m,q,u,k),K.push(ea),
|
|
401
|
+
k.stroke(),a.axisY.logarithmic||0>=a.axisY.viewportMinimum&&0<=a.axisY.viewportMaximum?y=x:0>a.axisY.viewportMaximum?y=d.y1:0<a.axisY.viewportMinimum&&(y=x),k.lineTo(q,y),k.lineTo(F.x,y),k.closePath(),k.globalAlpha=h.fillOpacity,k.fill(),k.globalAlpha=1,w&&(g.lineTo(q,y),g.lineTo(F.x,y),g.closePath(),g.fill()),k.beginPath(),k.moveTo(q,u),g.beginPath(),g.moveTo(q,u),F={x:q,y:u})}var f=a.targetCanvasCtx||this.plotArea.ctx,k=w?this._preRenderCtx:f;if(!(0>=a.dataSeriesIndexes.length)){var g=this._eventManager.ghostCtx,
|
|
402
|
+
d=a.axisY.lineCoordinates,K=[],n=this.plotArea,r;k.save();w&&g.save();k.beginPath();k.rect(n.x1,n.y1,n.width,n.height);k.clip();w&&(g.beginPath(),g.rect(n.x1,n.y1,n.width,n.height),g.clip());for(var p=0;p<a.dataSeriesIndexes.length;p++){var s=a.dataSeriesIndexes[p],h=this.data[s],t=h.dataPoints,K=h.id;this._eventManager.objectMap[K]={objectType:"dataSeries",dataSeriesIndex:s};K=U(K);g.fillStyle=K;K=[];e=!0;var m=0,q,u,v,x=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),
|
|
403
|
+
y,F=null;c=!1;if(0<t.length){var A=h._colorSet[m%h._colorSet.length],B=h.lineColor=h.options.lineColor||A,D=B;k.fillStyle=A;k.strokeStyle=B;k.lineWidth=h.lineThickness;var M="solid";if(k.setLineDash){var ca=S(h.nullDataLineDashType,h.lineThickness),M=h.lineDashType,da=S(M,h.lineThickness);k.setLineDash(da)}for(;m<t.length;m++)if(v=t[m].x.getTime?t[m].x.getTime():t[m].x,!(v<a.axisX.dataInfo.viewPortMin||v>a.axisX.dataInfo.viewPortMax&&(!h.connectNullData||!c))){var ea=u;"number"!==typeof t[m].y?(h.connectNullData||
|
|
404
|
+
(c||e)||b(),c=!0):(q=a.axisX.convertValueToPixel(v),u=a.axisY.convertValueToPixel(t[m].y),e||c?(!e&&h.connectNullData?(k.setLineDash&&(h.options.nullDataLineDashType||M===h.lineDashType&&h.lineDashType!==h.nullDataLineDashType)&&(e=q,c=u,q=r.x,u=r.y,b(),k.moveTo(r.x,r.y),q=e,u=c,F=r,M=h.nullDataLineDashType,k.setLineDash(ca)),k.lineTo(q,ea),k.lineTo(q,u),w&&(g.lineTo(q,ea),g.lineTo(q,u))):(k.beginPath(),k.moveTo(q,u),w&&(g.beginPath(),g.moveTo(q,u)),F={x:q,y:u}),c=e=!1):(k.lineTo(q,ea),w&&g.lineTo(q,
|
|
405
|
+
ea),k.lineTo(q,u),w&&g.lineTo(q,u),0==m%250&&b()),r={x:q,y:u},m<t.length-1&&(D!==(t[m].lineColor||B)||M!==(t[m].lineDashType||h.lineDashType))&&(b(),D=t[m].lineColor||B,k.strokeStyle=D,k.setLineDash&&(t[m].lineDashType?(M=t[m].lineDashType,k.setLineDash(S(M,h.lineThickness))):(M=h.lineDashType,k.setLineDash(da)))),v=h.dataPointIds[m],this._eventManager.objectMap[v]={id:v,objectType:"dataPoint",dataSeriesIndex:s,dataPointIndex:m,x1:q,y1:u},0!==t[m].markerSize&&(0<t[m].markerSize||0<h.markerSize)&&
|
|
406
|
+
(ea=h.getMarkerProperties(m,q,u,k),K.push(ea),v=U(v),w&&K.push({x:q,y:u,ctx:g,type:ea.type,size:ea.size,color:v,borderColor:v,borderThickness:ea.borderThickness})),(t[m].indexLabel||h.indexLabel||t[m].indexLabelFormatter||h.indexLabelFormatter)&&this._indexLabels.push({chartType:"stepArea",dataPoint:t[m],dataSeries:h,point:{x:q,y:u},direction:0>t[m].y===a.axisY.reversed?1:-1,color:A}))}b();l.drawMarkers(K)}}w&&(f.drawImage(this._preRenderCanvas,0,0,this.width,this.height),k.globalCompositeOperation=
|
|
407
407
|
"source-atop",a.axisX.maskCanvas&&k.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&k.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),k.clearRect(n.x1,n.y1,n.width,n.height),this._eventManager.ghostCtx.restore());k.restore();return{source:f,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderStackedArea=
|
|
408
|
-
function(a){function e(){if(!(1>n.length)){for(0<A.lineThickness&&b.stroke();0<n.length;){var a=n.pop();b.lineTo(a.x,a.y);
|
|
409
|
-
0),q=this._eventManager.ghostCtx,u,
|
|
410
|
-
A=this.data[F];B=A.dataPoints;
|
|
411
|
-
{x:k,y:null};if(!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax&&(!A.connectNullData||!ea)))if("number"!==typeof ia.y)A.connectNullData||(ea||
|
|
412
|
-
ea?(!
|
|
408
|
+
function(a){function e(){if(!(1>n.length)){for(0<A.lineThickness&&b.stroke();0<n.length;){var a=n.pop();b.lineTo(a.x,a.y);w&&q.lineTo(a.x,a.y)}b.closePath();b.globalAlpha=A.fillOpacity;b.fill();b.globalAlpha=1;b.beginPath();w&&(q.closePath(),q.fill(),q.beginPath());n=[]}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=w?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var f=null,k=null,g=[],d=this.plotArea,K=[],n=[],r=[],p=[],s=0,h,m,t=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:
|
|
409
|
+
0),q=this._eventManager.ghostCtx,u,v,x;w&&q.beginPath();b.save();w&&q.save();b.beginPath();b.rect(d.x1,d.y1,d.width,d.height);b.clip();w&&(q.beginPath(),q.rect(d.x1,d.y1,d.width,d.height),q.clip());for(var f=[],y=0;y<a.dataSeriesIndexes.length;y++){var F=a.dataSeriesIndexes[y],A=this.data[F],B=A.dataPoints;A.dataPointIndexes=[];for(s=0;s<B.length;s++)F=B[s].x.getTime?B[s].x.getTime():B[s].x,A.dataPointIndexes[F]=s,f[F]||(r.push(F),f[F]=!0);r.sort(Wa)}for(y=0;y<a.dataSeriesIndexes.length;y++){F=a.dataSeriesIndexes[y];
|
|
410
|
+
A=this.data[F];B=A.dataPoints;v=!0;n=[];s=A.id;this._eventManager.objectMap[s]={objectType:"dataSeries",dataSeriesIndex:F};s=U(s);q.fillStyle=s;if(0<r.length){var f=A._colorSet[0],D=A.lineColor=A.options.lineColor||f,M=D;b.fillStyle=f;b.strokeStyle=D;b.lineWidth=A.lineThickness;x="solid";if(b.setLineDash){var ca=S(A.nullDataLineDashType,A.lineThickness);x=A.lineDashType;var da=S(x,A.lineThickness);b.setLineDash(da)}for(var ea=!0,s=0;s<r.length;s++){var k=r[s],ia=null,ia=0<=A.dataPointIndexes[k]?B[A.dataPointIndexes[k]]:
|
|
411
|
+
{x:k,y:null};if(!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax&&(!A.connectNullData||!ea)))if("number"!==typeof ia.y)A.connectNullData||(ea||v)||e(),ea=!0;else{h=a.axisX.convertValueToPixel(k);var ta=K[k]?K[k]:0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length){p[k]=ia.y+(p[k]?p[k]:0);if(0>=p[k]&&a.axisY.logarithmic)continue;m=a.axisY.convertValueToPixel(p[k])}else m=a.axisY.convertValueToPixel(ia.y),m-=ta;n.push({x:h,y:t-ta});K[k]=t-m;v||
|
|
412
|
+
ea?(!v&&A.connectNullData?(b.setLineDash&&(A.options.nullDataLineDashType||x===A.lineDashType&&A.lineDashType!==A.nullDataLineDashType)&&(v=n.pop(),x=n[n.length-1],e(),b.moveTo(u.x,u.y),n.push(x),n.push(v),x=A.nullDataLineDashType,b.setLineDash(ca)),b.lineTo(h,m),w&&q.lineTo(h,m)):(b.beginPath(),b.moveTo(h,m),w&&(q.beginPath(),q.moveTo(h,m))),ea=v=!1):(b.lineTo(h,m),w&&q.lineTo(h,m),0==s%250&&(e(),b.moveTo(h,m),w&&q.moveTo(h,m),n.push({x:h,y:t-ta})));u={x:h,y:m};s<B.length-1&&(M!==(B[s].lineColor||
|
|
413
413
|
D)||x!==(B[s].lineDashType||A.lineDashType))&&(e(),b.beginPath(),b.moveTo(h,m),n.push({x:h,y:t-ta}),M=B[s].lineColor||D,b.strokeStyle=M,b.setLineDash&&(B[s].lineDashType?(x=B[s].lineDashType,b.setLineDash(S(x,A.lineThickness))):(x=A.lineDashType,b.setLineDash(da))));if(0<=A.dataPointIndexes[k]){var fa=A.dataPointIds[A.dataPointIndexes[k]];this._eventManager.objectMap[fa]={id:fa,objectType:"dataPoint",dataSeriesIndex:F,dataPointIndex:A.dataPointIndexes[k],x1:h,y1:m}}0<=A.dataPointIndexes[k]&&0!==ia.markerSize&&
|
|
414
|
-
(0<ia.markerSize||0<A.markerSize)&&(ta=A.getMarkerProperties(A.dataPointIndexes[k],h,m,b),g.push(ta),k=U(fa),
|
|
415
|
-
|
|
416
|
-
easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderStackedArea100=function(a){function e(){for(0<A.lineThickness&&b.stroke();0<n.length;){var a=n.pop();b.lineTo(a.x,a.y);
|
|
417
|
-
0,h,t,q,
|
|
418
|
-
!0);r.sort(Wa)}for(y=0;y<a.dataSeriesIndexes.length;y++){F=a.dataSeriesIndexes[y];A=this.data[F];B=A.dataPoints;
|
|
419
|
-
b.setLineDash(da)}for(var ea=!0,s=0;s<r.length;s++){var k=r[s],ia=null,ia=0<=A.dataPointIndexes[k]?B[A.dataPointIndexes[k]]:{x:k,y:null};if(!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax&&(!A.connectNullData||!ea)))if("number"!==typeof ia.y)A.connectNullData||(ea||
|
|
420
|
-
ta+(p[k]?p[k]:0);if(0>=p[k]&&a.axisY.logarithmic)continue;t=a.axisY.convertValueToPixel(p[k])}else t=a.axisY.convertValueToPixel(ta),t-=fa;n.push({x:h,y:G-fa});m[k]=G-t;
|
|
421
|
-
x.moveTo(h,t))),ea=
|
|
422
|
-
this._eventManager.objectMap[I]={id:I,objectType:"dataPoint",dataSeriesIndex:F,dataPointIndex:A.dataPointIndexes[k],x1:h,y1:t}}0<=A.dataPointIndexes[k]&&0!==ia.markerSize&&(0<ia.markerSize||0<A.markerSize)&&(fa=A.getMarkerProperties(A.dataPointIndexes[k],h,t,b),d.push(fa),k=U(I),
|
|
423
|
-
dataPoint:ia,dataSeries:A,point:{x:h,y:t},direction:0>ia.y===a.axisY.reversed?1:-1,color:f})}}e();b.moveTo(h,t);
|
|
424
|
-
0,0,this.width,this.height),b.clearRect(g.x1,g.y1,g.width,g.height),x.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderBubble=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
414
|
+
(0<ia.markerSize||0<A.markerSize)&&(ta=A.getMarkerProperties(A.dataPointIndexes[k],h,m,b),g.push(ta),k=U(fa),w&&g.push({x:h,y:m,ctx:q,type:ta.type,size:ta.size,color:k,borderColor:k,borderThickness:ta.borderThickness}));(ia.indexLabel||A.indexLabel||ia.indexLabelFormatter||A.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedArea",dataPoint:ia,dataSeries:A,point:{x:h,y:m},direction:0>ia.y===a.axisY.reversed?1:-1,color:f})}}e();b.moveTo(h,m);w&&q.moveTo(h,m)}delete A.dataPointIndexes}l.drawMarkers(g);
|
|
415
|
+
w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(d.x1,d.y1,d.width,d.height),q.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,
|
|
416
|
+
easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderStackedArea100=function(a){function e(){for(0<A.lineThickness&&b.stroke();0<n.length;){var a=n.pop();b.lineTo(a.x,a.y);w&&x.lineTo(a.x,a.y)}b.closePath();b.globalAlpha=A.fillOpacity;b.fill();b.globalAlpha=1;b.beginPath();w&&(x.closePath(),x.fill(),x.beginPath());n=[]}var c=a.targetCanvasCtx||this.plotArea.ctx,b=w?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var f=null,k=null,g=this.plotArea,d=[],m=[],n=[],r=[],p=[],s=
|
|
417
|
+
0,h,t,q,v,u,G=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),x=this._eventManager.ghostCtx;b.save();w&&x.save();b.beginPath();b.rect(g.x1,g.y1,g.width,g.height);b.clip();w&&(x.beginPath(),x.rect(g.x1,g.y1,g.width,g.height),x.clip());for(var f=[],y=0;y<a.dataSeriesIndexes.length;y++){var F=a.dataSeriesIndexes[y],A=this.data[F],B=A.dataPoints;A.dataPointIndexes=[];for(s=0;s<B.length;s++)F=B[s].x.getTime?B[s].x.getTime():B[s].x,A.dataPointIndexes[F]=s,f[F]||(r.push(F),f[F]=
|
|
418
|
+
!0);r.sort(Wa)}for(y=0;y<a.dataSeriesIndexes.length;y++){F=a.dataSeriesIndexes[y];A=this.data[F];B=A.dataPoints;v=!0;f=A.id;this._eventManager.objectMap[f]={objectType:"dataSeries",dataSeriesIndex:F};f=U(f);x.fillStyle=f;n=[];if(0<r.length){var f=A._colorSet[s%A._colorSet.length],D=A.lineColor=A.options.lineColor||f,M=D;b.fillStyle=f;b.strokeStyle=D;b.lineWidth=A.lineThickness;u="solid";if(b.setLineDash){var ca=S(A.nullDataLineDashType,A.lineThickness);u=A.lineDashType;var da=S(u,A.lineThickness);
|
|
419
|
+
b.setLineDash(da)}for(var ea=!0,s=0;s<r.length;s++){var k=r[s],ia=null,ia=0<=A.dataPointIndexes[k]?B[A.dataPointIndexes[k]]:{x:k,y:null};if(!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax&&(!A.connectNullData||!ea)))if("number"!==typeof ia.y)A.connectNullData||(ea||v)||e(),ea=!0;else{var ta;ta=0!==a.dataPointYSums[k]?100*(ia.y/a.dataPointYSums[k]):0;h=a.axisX.convertValueToPixel(k);var fa=m[k]?m[k]:0;if(a.axisY.logarithmic||a.axisY.scaleBreaks&&0<a.axisY.scaleBreaks._appliedBreaks.length){p[k]=
|
|
420
|
+
ta+(p[k]?p[k]:0);if(0>=p[k]&&a.axisY.logarithmic)continue;t=a.axisY.convertValueToPixel(p[k])}else t=a.axisY.convertValueToPixel(ta),t-=fa;n.push({x:h,y:G-fa});m[k]=G-t;v||ea?(!v&&A.connectNullData?(b.setLineDash&&(A.options.nullDataLineDashType||u===A.lineDashType&&A.lineDashType!==A.nullDataLineDashType)&&(v=n.pop(),u=n[n.length-1],e(),b.moveTo(q.x,q.y),n.push(u),n.push(v),u=A.nullDataLineDashType,b.setLineDash(ca)),b.lineTo(h,t),w&&x.lineTo(h,t)):(b.beginPath(),b.moveTo(h,t),w&&(x.beginPath(),
|
|
421
|
+
x.moveTo(h,t))),ea=v=!1):(b.lineTo(h,t),w&&x.lineTo(h,t),0==s%250&&(e(),b.moveTo(h,t),w&&x.moveTo(h,t),n.push({x:h,y:G-fa})));q={x:h,y:t};s<B.length-1&&(M!==(B[s].lineColor||D)||u!==(B[s].lineDashType||A.lineDashType))&&(e(),b.beginPath(),b.moveTo(h,t),n.push({x:h,y:G-fa}),M=B[s].lineColor||D,b.strokeStyle=M,b.setLineDash&&(B[s].lineDashType?(u=B[s].lineDashType,b.setLineDash(S(u,A.lineThickness))):(u=A.lineDashType,b.setLineDash(da))));if(0<=A.dataPointIndexes[k]){var I=A.dataPointIds[A.dataPointIndexes[k]];
|
|
422
|
+
this._eventManager.objectMap[I]={id:I,objectType:"dataPoint",dataSeriesIndex:F,dataPointIndex:A.dataPointIndexes[k],x1:h,y1:t}}0<=A.dataPointIndexes[k]&&0!==ia.markerSize&&(0<ia.markerSize||0<A.markerSize)&&(fa=A.getMarkerProperties(A.dataPointIndexes[k],h,t,b),d.push(fa),k=U(I),w&&d.push({x:h,y:t,ctx:x,type:fa.type,size:fa.size,color:k,borderColor:k,borderThickness:fa.borderThickness}));(ia.indexLabel||A.indexLabel||ia.indexLabelFormatter||A.indexLabelFormatter)&&this._indexLabels.push({chartType:"stackedArea100",
|
|
423
|
+
dataPoint:ia,dataSeries:A,point:{x:h,y:t},direction:0>ia.y===a.axisY.reversed?1:-1,color:f})}}e();b.moveTo(h,t);w&&x.moveTo(h,t)}delete A.dataPointIndexes}l.drawMarkers(d);w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,
|
|
424
|
+
0,0,this.width,this.height),b.clearRect(g.x1,g.y1,g.width,g.height),x.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderBubble=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=this.plotArea,f=0,k,g;c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(b.x1,b.y1,b.width,b.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),
|
|
425
425
|
this._eventManager.ghostCtx.rect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.clip());for(var d=-Infinity,m=Infinity,n=0;n<a.dataSeriesIndexes.length;n++)for(var r=a.dataSeriesIndexes[n],p=this.data[r],s=p.dataPoints,h=0,f=0;f<s.length;f++)k=s[f].getTime?k=s[f].x.getTime():k=s[f].x,k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax||"undefined"===typeof s[f].z||(h=s[f].z,h>d&&(d=h),h<m&&(m=h));for(var t=25*Math.PI,q=Math.max(Math.pow(0.25*Math.min(b.height,b.width)/2,2)*Math.PI,
|
|
426
|
-
t),n=0;n<a.dataSeriesIndexes.length;n++)if(r=a.dataSeriesIndexes[n],p=this.data[r],s=p.dataPoints,0<s.length)for(c.strokeStyle="#4572A7 ",f=0;f<s.length;f++)if(k=s[f].getTime?k=s[f].x.getTime():k=s[f].x,!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax)&&"number"===typeof s[f].y){k=a.axisX.convertValueToPixel(k);g=a.axisY.convertValueToPixel(s[f].y);var h=s[f].z,
|
|
427
|
-
p.fillOpacity;l.drawMarker(k,g,c,h.type,h.size,h.color,h.borderColor,h.borderThickness);c.globalAlpha=1;var u=p.dataPointIds[f];this._eventManager.objectMap[u]={id:u,objectType:"dataPoint",dataSeriesIndex:r,dataPointIndex:f,x1:k,y1:g,size:
|
|
428
|
-
direction:1,bounds:{x1:k-h.size/2,y1:g-h.size/2,x2:k+h.size/2,y2:g+h.size/2},color:null})}
|
|
429
|
-
c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};q.prototype.renderScatter=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
426
|
+
t),n=0;n<a.dataSeriesIndexes.length;n++)if(r=a.dataSeriesIndexes[n],p=this.data[r],s=p.dataPoints,0<s.length)for(c.strokeStyle="#4572A7 ",f=0;f<s.length;f++)if(k=s[f].getTime?k=s[f].x.getTime():k=s[f].x,!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax)&&"number"===typeof s[f].y){k=a.axisX.convertValueToPixel(k);g=a.axisY.convertValueToPixel(s[f].y);var h=s[f].z,v=2*Math.max(Math.sqrt((d===m?q/2:t+(q-t)/(d-m)*(h-m))/Math.PI)<<0,1),h=p.getMarkerProperties(f,c);h.size=v;c.globalAlpha=
|
|
427
|
+
p.fillOpacity;l.drawMarker(k,g,c,h.type,h.size,h.color,h.borderColor,h.borderThickness);c.globalAlpha=1;var u=p.dataPointIds[f];this._eventManager.objectMap[u]={id:u,objectType:"dataPoint",dataSeriesIndex:r,dataPointIndex:f,x1:k,y1:g,size:v};v=U(u);w&&l.drawMarker(k,g,this._eventManager.ghostCtx,h.type,h.size,v,v,h.borderThickness);(s[f].indexLabel||p.indexLabel||s[f].indexLabelFormatter||p.indexLabelFormatter)&&this._indexLabels.push({chartType:"bubble",dataPoint:s[f],dataSeries:p,point:{x:k,y:g},
|
|
428
|
+
direction:1,bounds:{x1:k-h.size/2,y1:g-h.size/2,x2:k+h.size/2,y2:g+h.size/2},color:null})}w&&(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,0,0,this.width,this.height),c.clearRect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.restore());
|
|
429
|
+
c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};q.prototype.renderScatter=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=this.plotArea,f=0,k,g;c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(b.x1,b.y1,b.width,b.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(b.x1,b.y1,
|
|
430
430
|
b.width,b.height),this._eventManager.ghostCtx.clip());for(var d=0;d<a.dataSeriesIndexes.length;d++){var m=a.dataSeriesIndexes[d],n=this.data[m],r=n.dataPoints;if(0<r.length){c.strokeStyle="#4572A7 ";Math.pow(0.3*Math.min(b.height,b.width)/2,2);for(var p=0,s=0,f=0;f<r.length;f++)if(k=r[f].getTime?k=r[f].x.getTime():k=r[f].x,!(k<a.axisX.dataInfo.viewPortMin||k>a.axisX.dataInfo.viewPortMax)&&"number"===typeof r[f].y){k=a.axisX.convertValueToPixel(k);g=a.axisY.convertValueToPixel(r[f].y);var h=n.getMarkerProperties(f,
|
|
431
|
-
k,g,c);c.globalAlpha=n.fillOpacity;l.drawMarker(h.x,h.y,h.ctx,h.type,h.size,h.color,h.borderColor,h.borderThickness);c.globalAlpha=1;Math.sqrt((p-k)*(p-k)+(s-g)*(s-g))<Math.min(h.size,5)&&r.length>Math.min(this.plotArea.width,this.plotArea.height)||(p=n.dataPointIds[f],this._eventManager.objectMap[p]={id:p,objectType:"dataPoint",dataSeriesIndex:m,dataPointIndex:f,x1:k,y1:g},p=U(p),
|
|
432
|
-
r[f].indexLabelFormatter||n.indexLabelFormatter)&&this._indexLabels.push({chartType:"scatter",dataPoint:r[f],dataSeries:n,point:{x:k,y:g},direction:1,bounds:{x1:k-h.size/2,y1:g-h.size/2,x2:k+h.size/2,y2:g+h.size/2},color:null}),p=k,s=g)}}}
|
|
433
|
-
this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};q.prototype.renderCandlestick=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
431
|
+
k,g,c);c.globalAlpha=n.fillOpacity;l.drawMarker(h.x,h.y,h.ctx,h.type,h.size,h.color,h.borderColor,h.borderThickness);c.globalAlpha=1;Math.sqrt((p-k)*(p-k)+(s-g)*(s-g))<Math.min(h.size,5)&&r.length>Math.min(this.plotArea.width,this.plotArea.height)||(p=n.dataPointIds[f],this._eventManager.objectMap[p]={id:p,objectType:"dataPoint",dataSeriesIndex:m,dataPointIndex:f,x1:k,y1:g},p=U(p),w&&l.drawMarker(h.x,h.y,this._eventManager.ghostCtx,h.type,h.size,p,p,h.borderThickness),(r[f].indexLabel||n.indexLabel||
|
|
432
|
+
r[f].indexLabelFormatter||n.indexLabelFormatter)&&this._indexLabels.push({chartType:"scatter",dataPoint:r[f],dataSeries:n,point:{x:k,y:g},direction:1,bounds:{x1:k-h.size/2,y1:g-h.size/2,x2:k+h.size/2,y2:g+h.size/2},color:null}),p=k,s=g)}}}w&&(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),
|
|
433
|
+
this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(b.x1,b.y1,b.width,b.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};q.prototype.renderCandlestick=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e,b=this._eventManager.ghostCtx;if(!(0>=a.dataSeriesIndexes.length)){var f=
|
|
434
434
|
null,k=null,d=this.plotArea,l=0,m,n,r,p,s,h,f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,k=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.015*this.width,t=a.axisX.dataInfo.minDiff;isFinite(t)||(t=0.3*Math.abs(a.axisX.range));t=this.options.dataPointWidth?this.dataPointWidth:0.7*d.width*(a.axisX.logarithmic?Math.log(t)/Math.log(a.axisX.range):Math.abs(t)/Math.abs(a.axisX.range))<<0;
|
|
435
|
-
this.dataPointMaxWidth&&f>k&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,k));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&k<f)&&(k=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,f));t<f&&(t=f);t>k&&(t=k);c.save();
|
|
435
|
+
this.dataPointMaxWidth&&f>k&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,k));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&k<f)&&(k=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,f));t<f&&(t=f);t>k&&(t=k);c.save();w&&b.save();c.beginPath();c.rect(d.x1,d.y1,d.width,d.height);c.clip();w&&(b.beginPath(),b.rect(d.x1,d.y1,d.width,d.height),b.clip());for(var q=0;q<a.dataSeriesIndexes.length;q++){var v=a.dataSeriesIndexes[q],u=this.data[v],G=u.dataPoints;
|
|
436
436
|
if(0<G.length)for(var x=5<t&&u.bevelEnabled?!0:!1,l=0;l<G.length;l++)if(G[l].getTime?h=G[l].x.getTime():h=G[l].x,!(h<a.axisX.dataInfo.viewPortMin||h>a.axisX.dataInfo.viewPortMax)&&!g(G[l].y)&&G[l].y.length&&"number"===typeof G[l].y[0]&&"number"===typeof G[l].y[1]&&"number"===typeof G[l].y[2]&&"number"===typeof G[l].y[3]){m=a.axisX.convertValueToPixel(h);n=a.axisY.convertValueToPixel(G[l].y[0]);r=a.axisY.convertValueToPixel(G[l].y[1]);p=a.axisY.convertValueToPixel(G[l].y[2]);s=a.axisY.convertValueToPixel(G[l].y[3]);
|
|
437
|
-
var y=m-t/2<<0,F=y+t<<0,k=u.options.fallingColor?u.fallingColor:u._colorSet[0],f=G[l].color?G[l].color:u._colorSet[0],A=Math.round(Math.max(1,0.15*t)),B=0===A%2?0:0.5,D=u.dataPointIds[l];this._eventManager.objectMap[D]={id:D,objectType:"dataPoint",dataSeriesIndex:
|
|
438
|
-
B,Math.max(n,s)),c.lineTo(m-B,p),c.stroke(),Z(c,y,Math.min(n,s),F,Math.max(n,s),G[l].y[0]<=G[l].y[3]?u.risingColor:k,A,f,x,x,!1,!1,u.fillOpacity),
|
|
439
|
-
|
|
437
|
+
var y=m-t/2<<0,F=y+t<<0,k=u.options.fallingColor?u.fallingColor:u._colorSet[0],f=G[l].color?G[l].color:u._colorSet[0],A=Math.round(Math.max(1,0.15*t)),B=0===A%2?0:0.5,D=u.dataPointIds[l];this._eventManager.objectMap[D]={id:D,objectType:"dataPoint",dataSeriesIndex:v,dataPointIndex:l,x1:y,y1:n,x2:F,y2:r,x3:m,y3:p,x4:m,y4:s,borderThickness:A,color:f};c.strokeStyle=f;c.beginPath();c.lineWidth=A;b.lineWidth=Math.max(A,4);"candlestick"===u.type?(c.moveTo(m-B,r),c.lineTo(m-B,Math.min(n,s)),c.stroke(),c.moveTo(m-
|
|
438
|
+
B,Math.max(n,s)),c.lineTo(m-B,p),c.stroke(),Z(c,y,Math.min(n,s),F,Math.max(n,s),G[l].y[0]<=G[l].y[3]?u.risingColor:k,A,f,x,x,!1,!1,u.fillOpacity),w&&(f=U(D),b.strokeStyle=f,b.moveTo(m-B,r),b.lineTo(m-B,Math.min(n,s)),b.stroke(),b.moveTo(m-B,Math.max(n,s)),b.lineTo(m-B,p),b.stroke(),Z(b,y,Math.min(n,s),F,Math.max(n,s),f,0,null,!1,!1,!1,!1))):"ohlc"===u.type&&(c.moveTo(m-B,r),c.lineTo(m-B,p),c.stroke(),c.beginPath(),c.moveTo(m,n),c.lineTo(y,n),c.stroke(),c.beginPath(),c.moveTo(m,s),c.lineTo(F,s),c.stroke(),
|
|
439
|
+
w&&(f=U(D),b.strokeStyle=f,b.moveTo(m-B,r),b.lineTo(m-B,p),b.stroke(),b.beginPath(),b.moveTo(m,n),b.lineTo(y,n),b.stroke(),b.beginPath(),b.moveTo(m,s),b.lineTo(F,s),b.stroke()));(G[l].indexLabel||u.indexLabel||G[l].indexLabelFormatter||u.indexLabelFormatter)&&this._indexLabels.push({chartType:u.type,dataPoint:G[l],dataSeries:u,point:{x:y+(F-y)/2,y:a.axisY.reversed?p:r},direction:1,bounds:{x1:y,y1:Math.min(r,p),x2:F,y2:Math.max(r,p)},color:f})}}w&&(e.drawImage(this._preRenderCanvas,0,0,this.width,
|
|
440
440
|
this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(d.x1,d.y1,d.width,d.height),b.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};
|
|
441
|
-
q.prototype.renderBoxAndWhisker=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
442
|
-
t=this.options.dataPointWidth?this.dataPointWidth:0.7*k.width*(a.axisX.logarithmic?Math.log(t)/Math.log(a.axisX.range):Math.abs(t)/Math.abs(a.axisX.range))<<0;this.dataPointMaxWidth&&f>d&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,d));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&d<f)&&(d=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,f));t<f&&(t=f);t>d&&(t=d);c.save();
|
|
443
|
-
b.rect(k.x1,k.y1,k.width,k.height),b.clip());for(var q=!1,q=!!a.axisY.reversed,
|
|
441
|
+
q.prototype.renderBoxAndWhisker=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e,b=this._eventManager.ghostCtx;if(!(0>=a.dataSeriesIndexes.length)){var f=null,k=this.plotArea,d=0,l,m,n,r,p,s,h,f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1,d=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.015*this.width,t=a.axisX.dataInfo.minDiff;isFinite(t)||(t=0.3*Math.abs(a.axisX.range));
|
|
442
|
+
t=this.options.dataPointWidth?this.dataPointWidth:0.7*k.width*(a.axisX.logarithmic?Math.log(t)/Math.log(a.axisX.range):Math.abs(t)/Math.abs(a.axisX.range))<<0;this.dataPointMaxWidth&&f>d&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,d));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&d<f)&&(d=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,f));t<f&&(t=f);t>d&&(t=d);c.save();w&&b.save();c.beginPath();c.rect(k.x1,k.y1,k.width,k.height);c.clip();w&&(b.beginPath(),
|
|
443
|
+
b.rect(k.x1,k.y1,k.width,k.height),b.clip());for(var q=!1,q=!!a.axisY.reversed,v=0;v<a.dataSeriesIndexes.length;v++){var u=a.dataSeriesIndexes[v],G=this.data[u],x=G.dataPoints;if(0<x.length)for(var y=5<t&&G.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"===
|
|
444
444
|
typeof x[d].y[4]&&5===x[d].y.length){l=a.axisX.convertValueToPixel(h);m=a.axisY.convertValueToPixel(x[d].y[0]);n=a.axisY.convertValueToPixel(x[d].y[1]);r=a.axisY.convertValueToPixel(x[d].y[2]);p=a.axisY.convertValueToPixel(x[d].y[3]);s=a.axisY.convertValueToPixel(x[d].y[4]);var F=l-t/2<<0,A=l+t/2<<0,f=x[d].color?x[d].color:G._colorSet[0],B=Math.round(Math.max(1,0.15*t)),D=0===B%2?0:0.5,M=x[d].whiskerColor?x[d].whiskerColor:x[d].color?G.whiskerColor?G.whiskerColor:x[d].color:G.whiskerColor?G.whiskerColor:
|
|
445
445
|
f,ca="number"===typeof x[d].whiskerThickness?x[d].whiskerThickness:"number"===typeof G.options.whiskerThickness?G.whiskerThickness:B,da=x[d].whiskerDashType?x[d].whiskerDashType:G.whiskerDashType,ea=g(x[d].whiskerLength)?g(G.options.whiskerLength)?t:G.whiskerLength:x[d].whiskerLength,ea="number"===typeof ea?0>=ea?0:ea>=t?t:ea:"string"===typeof ea?parseInt(ea)*t/100>t?t:parseInt(ea)*t/100:t,ia=1===Math.round(ca)%2?0.5:0,ta=x[d].stemColor?x[d].stemColor:x[d].color?G.stemColor?G.stemColor:x[d].color:
|
|
446
446
|
G.stemColor?G.stemColor:f,fa="number"===typeof x[d].stemThickness?x[d].stemThickness:"number"===typeof G.options.stemThickness?G.stemThickness:B,I=1===Math.round(fa)%2?0.5:0,H=x[d].stemDashType?x[d].stemDashType:G.stemDashType,J=x[d].lineColor?x[d].lineColor:x[d].color?G.lineColor?G.lineColor:x[d].color:G.lineColor?G.lineColor:f,O="number"===typeof x[d].lineThickness?x[d].lineThickness:"number"===typeof G.options.lineThickness?G.lineThickness:B,N=x[d].lineDashType?x[d].lineDashType:G.lineDashType,
|
|
447
447
|
T=1===Math.round(O)%2?0.5:0,P=G.upperBoxColor,R=G.lowerBoxColor,lb=g(G.options.fillOpacity)?1:G.fillOpacity,Q=G.dataPointIds[d];this._eventManager.objectMap[Q]={id:Q,objectType:"dataPoint",dataSeriesIndex:u,dataPointIndex:d,x1:F,y1:m,x2:A,y2:n,x3:l,y3:r,x4:l,y4:p,y5:s,borderThickness:B,color:f,stemThickness:fa,stemColor:ta,whiskerThickness:ca,whiskerLength:ea,whiskerColor:M,lineThickness:O,lineColor:J};c.save();0<fa&&(c.beginPath(),c.strokeStyle=ta,c.lineWidth=fa,c.setLineDash&&c.setLineDash(S(H,
|
|
448
448
|
fa)),c.moveTo(l-I,n),c.lineTo(l-I,m),c.stroke(),c.moveTo(l-I,p),c.lineTo(l-I,r),c.stroke());c.restore();b.lineWidth=Math.max(B,4);c.beginPath();Z(c,F,Math.min(s,n),A,Math.max(n,s),R,0,f,q?y:!1,q?!1:y,!1,!1,lb);c.beginPath();Z(c,F,Math.min(r,s),A,Math.max(s,r),P,0,f,q?!1:y,q?y:!1,!1,!1,lb);c.beginPath();c.lineWidth=B;c.strokeStyle=f;c.rect(F-D,Math.min(n,r)-D,A-F+2*D,Math.max(n,r)-Math.min(n,r)+2*D);c.stroke();c.save();0<O&&(c.beginPath(),c.globalAlpha=1,c.setLineDash&&c.setLineDash(S(N,O)),c.strokeStyle=
|
|
449
|
-
J,c.lineWidth=O,c.moveTo(F,s-T),c.lineTo(A,s-T),c.stroke());c.restore();c.save();0<ca&&(c.beginPath(),c.setLineDash&&c.setLineDash(S(da,ca)),c.strokeStyle=M,c.lineWidth=ca,c.moveTo(l-ea/2<<0,p-ia),c.lineTo(l+ea/2<<0,p-ia),c.stroke(),c.moveTo(l-ea/2<<0,m+ia),c.lineTo(l+ea/2<<0,m+ia),c.stroke());c.restore();
|
|
450
|
-
r),f,0,null,!1,!1,!1,!1),0<ca&&(b.beginPath(),b.lineWidth=ca,b.moveTo(l+ea/2,p-ia),b.lineTo(l-ea/2,p-ia),b.stroke(),b.moveTo(l+ea/2,m+ia),b.lineTo(l-ea/2,m+ia),b.stroke()));(x[d].indexLabel||G.indexLabel||x[d].indexLabelFormatter||G.indexLabelFormatter)&&this._indexLabels.push({chartType:G.type,dataPoint:x[d],dataSeries:G,point:{x:F+(A-F)/2,y:a.axisY.reversed?m:p},direction:1,bounds:{x1:F,y1:Math.min(m,p),x2:A,y2:Math.max(m,p)},color:f})}}
|
|
449
|
+
J,c.lineWidth=O,c.moveTo(F,s-T),c.lineTo(A,s-T),c.stroke());c.restore();c.save();0<ca&&(c.beginPath(),c.setLineDash&&c.setLineDash(S(da,ca)),c.strokeStyle=M,c.lineWidth=ca,c.moveTo(l-ea/2<<0,p-ia),c.lineTo(l+ea/2<<0,p-ia),c.stroke(),c.moveTo(l-ea/2<<0,m+ia),c.lineTo(l+ea/2<<0,m+ia),c.stroke());c.restore();w&&(f=U(Q),b.strokeStyle=f,b.lineWidth=fa,0<fa&&(b.moveTo(l-D-I,n),b.lineTo(l-D-I,Math.max(m,p)),b.stroke(),b.moveTo(l-D-I,Math.min(m,p)),b.lineTo(l-D-I,r),b.stroke()),Z(b,F,Math.max(n,r),A,Math.min(n,
|
|
450
|
+
r),f,0,null,!1,!1,!1,!1),0<ca&&(b.beginPath(),b.lineWidth=ca,b.moveTo(l+ea/2,p-ia),b.lineTo(l-ea/2,p-ia),b.stroke(),b.moveTo(l+ea/2,m+ia),b.lineTo(l-ea/2,m+ia),b.stroke()));(x[d].indexLabel||G.indexLabel||x[d].indexLabelFormatter||G.indexLabelFormatter)&&this._indexLabels.push({chartType:G.type,dataPoint:x[d],dataSeries:G,point:{x:F+(A-F)/2,y:a.axisY.reversed?m:p},direction:1,bounds:{x1:F,y1:Math.min(m,p),x2:A,y2:Math.max(m,p)},color:f})}}w&&(e.drawImage(this._preRenderCanvas,0,0,this.width,this.height),
|
|
451
451
|
c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(k.x1,k.y1,k.width,k.height),b.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};q.prototype.renderRangeColumn=
|
|
452
|
-
function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
453
|
-
0.9*(f.width*(a.axisX.logarithmic?Math.log(n)/Math.log(a.axisX.range):Math.abs(n)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&k>d&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,d));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&d<k)&&(d=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,k));n<k&&(n=k);n>d&&(n=d);c.save();
|
|
452
|
+
function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=null,f=this.plotArea,k=0,d,l,m,k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;d=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:0.03*this.width;var n=a.axisX.dataInfo.minDiff;isFinite(n)||(n=0.3*Math.abs(a.axisX.range));n=this.options.dataPointWidth?this.dataPointWidth:
|
|
453
|
+
0.9*(f.width*(a.axisX.logarithmic?Math.log(n)/Math.log(a.axisX.range):Math.abs(n)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&k>d&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,d));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&d<k)&&(d=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,k));n<k&&(n=k);n>d&&(n=d);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),
|
|
454
454
|
this._eventManager.ghostCtx.rect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.clip());for(var r=0;r<a.dataSeriesIndexes.length;r++){var p=a.dataSeriesIndexes[r],s=this.data[p],h=s.dataPoints;if(0<h.length)for(var t=5<n&&s.bevelEnabled?!0:!1,k=0;k<h.length;k++)if(h[k].getTime?m=h[k].x.getTime():m=h[k].x,!(m<a.axisX.dataInfo.viewPortMin||m>a.axisX.dataInfo.viewPortMax)&&!g(h[k].y)&&h[k].y.length&&"number"===typeof h[k].y[0]&&"number"===typeof h[k].y[1]){b=a.axisX.convertValueToPixel(m);d=
|
|
455
|
-
a.axisY.convertValueToPixel(h[k].y[0]);l=a.axisY.convertValueToPixel(h[k].y[1]);var q=a.axisX.reversed?b+a.plotType.totalDataSeries*n/2-(a.previousDataSeriesCount+r)*n<<0:b-a.plotType.totalDataSeries*n/2+(a.previousDataSeriesCount+r)*n<<0,
|
|
456
|
-
|
|
457
|
-
dataPoint:h[k],dataSeries:s,indexKeyword:1,point:{x:q+(
|
|
458
|
-
0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};q.prototype.renderError=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
459
|
-
l=0,m,n,r,p,s,h,t,q=a.axisX.dataInfo.minDiff;isFinite(q)||(q=0.3*Math.abs(a.axisX.range));c.save();
|
|
455
|
+
a.axisY.convertValueToPixel(h[k].y[0]);l=a.axisY.convertValueToPixel(h[k].y[1]);var q=a.axisX.reversed?b+a.plotType.totalDataSeries*n/2-(a.previousDataSeriesCount+r)*n<<0:b-a.plotType.totalDataSeries*n/2+(a.previousDataSeriesCount+r)*n<<0,v=a.axisX.reversed?q-n<<0:q+n<<0,b=h[k].color?h[k].color:s._colorSet[k%s._colorSet.length];if(d>l){var u=d;d=l;l=u}u=s.dataPointIds[k];this._eventManager.objectMap[u]={id:u,objectType:"dataPoint",dataSeriesIndex:p,dataPointIndex:k,x1:q,y1:d,x2:v,y2:l};Z(c,a.axisX.reversed?
|
|
456
|
+
v:q,d,a.axisX.reversed?q:v,l,b,0,b,t,t,!1,!1,s.fillOpacity);b=U(u);w&&Z(this._eventManager.ghostCtx,a.axisX.reversed?v:q,d,a.axisX.reversed?q:v,l,b,0,null,!1,!1,!1,!1);if(h[k].indexLabel||s.indexLabel||h[k].indexLabelFormatter||s.indexLabelFormatter)this._indexLabels.push({chartType:"rangeColumn",dataPoint:h[k],dataSeries:s,indexKeyword:0,point:{x:q+(v-q)/2,y:h[k].y[1]>=h[k].y[0]?l:d},direction:h[k].y[1]>=h[k].y[0]?-1:1,bounds:{x1:q,y1:Math.min(d,l),x2:v,y2:Math.max(d,l)},color:b}),this._indexLabels.push({chartType:"rangeColumn",
|
|
457
|
+
dataPoint:h[k],dataSeries:s,indexKeyword:1,point:{x:q+(v-q)/2,y:h[k].y[1]>=h[k].y[0]?d:l},direction:h[k].y[1]>=h[k].y[0]?1:-1,bounds:{x1:q,y1:Math.min(d,l),x2:v,y2:Math.max(d,l)},color:b})}}w&&(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,
|
|
458
|
+
0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};q.prototype.renderError=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e,b=a.axisY._position?"left"===a.axisY._position||"right"===a.axisY._position?!1:!0:!1;if(!(0>=a.dataSeriesIndexes.length)){var f=null,k=!1,d=this.plotArea,
|
|
459
|
+
l=0,m,n,r,p,s,h,t,q=a.axisX.dataInfo.minDiff;isFinite(q)||(q=0.3*Math.abs(a.axisX.range));c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(d.x1,d.y1,d.width,d.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(d.x1,d.y1,d.width,d.height),this._eventManager.ghostCtx.clip());for(var v=0,u=0;u<this.data.length;u++)!this.data[u].type.match(/(bar|column)/ig)||!this.data[u].visible||this.data[u].type.match(/(stacked)/ig)&&v||v++;for(var G=0;G<
|
|
460
460
|
a.dataSeriesIndexes.length;G++){var x=a.dataSeriesIndexes[G],y=this.data[x],F=y.dataPoints,A=g(y._linkedSeries)?!1:y._linkedSeries.type.match(/(bar|column)/ig)&&y._linkedSeries.visible?!0:!1,B=0;if(A)for(f=y._linkedSeries.id,u=0;u<f;u++)!this.data[u].type.match(/(bar|column)/ig)||!this.data[u].visible||this.data[u].type.match(/(stacked)/ig)&&B||(this.data[u].type.match(/(range)/ig)&&(k=!0),B++);f=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:
|
|
461
|
-
1;l=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:b?Math.min(0.15*this.height,0.9*(this.plotArea.height/(A?
|
|
462
|
-
Math.abs(q)/Math.abs(a.axisX.range))/(A?
|
|
461
|
+
1;l=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:b?Math.min(0.15*this.height,0.9*(this.plotArea.height/(A?v:1)))<<0:0.3*this.width;k&&(l=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:b?Math.min(0.15*this.height,0.9*(this.plotArea.height/(A?v:1)))<<0:0.03*this.width);u=this.options.dataPointWidth?this.dataPointWidth:0.9*((b?d.height:d.width)*(a.axisX.logarithmic?Math.log(q)/Math.log(a.axisX.range):
|
|
462
|
+
Math.abs(q)/Math.abs(a.axisX.range))/(A?v:1))<<0;this.dataPointMaxWidth&&f>l&&(f=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,l));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&l<f)&&(l=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,f));u<f&&(u=f);u>l&&(u=l);if(0<F.length)for(var D=y._colorSet,l=0;l<F.length;l++){var f=y.lineColor=y.options.color?y.options.color:D[0],M={color:F[l].whiskerColor?F[l].whiskerColor:F[l].color?y.whiskerColor?y.whiskerColor:F[l].color:
|
|
463
463
|
y.whiskerColor?y.whiskerColor:f,thickness:g(F[l].whiskerThickness)?y.whiskerThickness:F[l].whiskerThickness,dashType:F[l].whiskerDashType?F[l].whiskerDashType:y.whiskerDashType,length:g(F[l].whiskerLength)?g(y.options.whiskerLength)?u:y.options.whiskerLength:F[l].whiskerLength,trimLength:g(F[l].whiskerLength)?g(y.options.whiskerLength)?50:0:0};M.length="number"===typeof M.length?0>=M.length?0:M.length>=u?u:M.length:"string"===typeof M.length?parseInt(M.length)*u/100>u?u:parseInt(M.length)*u/100>u:
|
|
464
464
|
u;M.thickness="number"===typeof M.thickness?0>M.thickness?0:Math.round(M.thickness):2;var ca={color:F[l].stemColor?F[l].stemColor:F[l].color?y.stemColor?y.stemColor:F[l].color:y.stemColor?y.stemColor:f,thickness:F[l].stemThickness?F[l].stemThickness:y.stemThickness,dashType:F[l].stemDashType?F[l].stemDashType:y.stemDashType};ca.thickness="number"===typeof ca.thickness?0>ca.thickness?0:Math.round(ca.thickness):2;F[l].getTime?t=F[l].x.getTime():t=F[l].x;if(!(t<a.axisX.dataInfo.viewPortMin||t>a.axisX.dataInfo.viewPortMax)&&
|
|
465
|
-
!g(F[l].y)&&F[l].y.length&&"number"===typeof F[l].y[0]&&"number"===typeof F[l].y[1]){var da=a.axisX.convertValueToPixel(t);b?n=da:m=da;da=a.axisY.convertValueToPixel(F[l].y[0]);b?r=da:s=da;da=a.axisY.convertValueToPixel(F[l].y[1]);b?p=da:h=da;b?(s=a.axisX.reversed?n+(A?
|
|
466
|
-
(da=r,r=p,p=da);da=y.dataPointIds[l];this._eventManager.objectMap[da]={id:da,objectType:"dataPoint",dataSeriesIndex:x,dataPointIndex:l,x1:Math.min(r,p),y1:Math.min(s,h),x2:Math.max(p,r),y2:Math.max(h,s),isXYSwapped:b,stemProperties:ca,whiskerProperties:M};J(c,Math.min(r,p),Math.min(s,h),Math.max(p,r),Math.max(h,s),f,M,ca,b);
|
|
465
|
+
!g(F[l].y)&&F[l].y.length&&"number"===typeof F[l].y[0]&&"number"===typeof F[l].y[1]){var da=a.axisX.convertValueToPixel(t);b?n=da:m=da;da=a.axisY.convertValueToPixel(F[l].y[0]);b?r=da:s=da;da=a.axisY.convertValueToPixel(F[l].y[1]);b?p=da:h=da;b?(s=a.axisX.reversed?n+(A?v:1)*u/2-(A?B-1:0)*u<<0:n-(A?v:1)*u/2+(A?B-1:0)*u<<0,h=a.axisX.reversed?s-u<<0:s+u<<0):(r=a.axisX.reversed?m+(A?v:1)*u/2-(A?B-1:0)*u<<0:m-(A?v:1)*u/2+(A?B-1:0)*u<<0,p=a.axisX.reversed?r-u<<0:r+u<<0);!b&&s>h&&(da=s,s=h,h=da);b&&r>p&&
|
|
466
|
+
(da=r,r=p,p=da);da=y.dataPointIds[l];this._eventManager.objectMap[da]={id:da,objectType:"dataPoint",dataSeriesIndex:x,dataPointIndex:l,x1:Math.min(r,p),y1:Math.min(s,h),x2:Math.max(p,r),y2:Math.max(h,s),isXYSwapped:b,stemProperties:ca,whiskerProperties:M};J(c,Math.min(r,p),Math.min(s,h),Math.max(p,r),Math.max(h,s),f,M,ca,b);w&&J(this._eventManager.ghostCtx,r,s,p,h,f,M,ca,b);if(F[l].indexLabel||y.indexLabel||F[l].indexLabelFormatter||y.indexLabelFormatter)this._indexLabels.push({chartType:"error",
|
|
467
467
|
dataPoint:F[l],dataSeries:y,indexKeyword:0,point:{x:b?F[l].y[1]>=F[l].y[0]?r:p:r+(p-r)/2,y:b?s+(h-s)/2:F[l].y[1]>=F[l].y[0]?h:s},direction:F[l].y[1]>=F[l].y[0]?-1:1,bounds:{x1:b?Math.min(r,p):r,y1:b?s:Math.min(s,h),x2:b?Math.max(r,p):p,y2:b?h:Math.max(s,h)},color:f,axisSwapped:b}),this._indexLabels.push({chartType:"error",dataPoint:F[l],dataSeries:y,indexKeyword:1,point:{x:b?F[l].y[1]>=F[l].y[0]?p:r:r+(p-r)/2,y:b?s+(h-s)/2:F[l].y[1]>=F[l].y[0]?s:h},direction:F[l].y[1]>=F[l].y[0]?1:-1,bounds:{x1:b?
|
|
468
|
-
Math.min(r,p):r,y1:b?s:Math.min(s,h),x2:b?Math.max(r,p):p,y2:b?h:Math.max(s,h)},color:f,axisSwapped:b})}}}
|
|
469
|
-
d.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};q.prototype.renderRangeBar=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
468
|
+
Math.min(r,p):r,y1:b?s:Math.min(s,h),x2:b?Math.max(r,p):p,y2:b?h:Math.max(s,h)},color:f,axisSwapped:b})}}}w&&(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,0,0,this.width,this.height),c.clearRect(d.x1,d.y1,d.width,
|
|
469
|
+
d.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};q.prototype.renderRangeBar=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=null,f=this.plotArea,k=0,d,l,m,n,k=this.options.dataPointMinWidth?this.dataPointMinWidth:this.options.dataPointWidth?this.dataPointWidth:1;d=this.options.dataPointMaxWidth?
|
|
470
470
|
this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.height,0.9*(this.plotArea.height/a.plotType.totalDataSeries))<<0;var r=a.axisX.dataInfo.minDiff;isFinite(r)||(r=0.3*Math.abs(a.axisX.range));r=this.options.dataPointWidth?this.dataPointWidth:0.9*(f.height*(a.axisX.logarithmic?Math.log(r)/Math.log(a.axisX.range):Math.abs(r)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&k>d&&(k=Math.min(this.options.dataPointWidth?this.dataPointWidth:
|
|
471
|
-
Infinity,d));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&d<k)&&(d=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,k));r<k&&(r=k);r>d&&(r=d);c.save();
|
|
471
|
+
Infinity,d));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&d<k)&&(d=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,k));r<k&&(r=k);r>d&&(r=d);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(f.x1,f.y1,f.width,f.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.clip());for(var p=0;p<a.dataSeriesIndexes.length;p++){var s=a.dataSeriesIndexes[p],h=this.data[s],
|
|
472
472
|
t=h.dataPoints;if(0<t.length){var q=5<r&&h.bevelEnabled?!0:!1;c.strokeStyle="#4572A7 ";for(k=0;k<t.length;k++)if(t[k].getTime?n=t[k].x.getTime():n=t[k].x,!(n<a.axisX.dataInfo.viewPortMin||n>a.axisX.dataInfo.viewPortMax)&&!g(t[k].y)&&t[k].y.length&&"number"===typeof t[k].y[0]&&"number"===typeof t[k].y[1]){d=a.axisY.convertValueToPixel(t[k].y[0]);l=a.axisY.convertValueToPixel(t[k].y[1]);m=a.axisX.convertValueToPixel(n);m=a.axisX.reversed?m+a.plotType.totalDataSeries*r/2-(a.previousDataSeriesCount+p)*
|
|
473
|
-
r<<0:m-a.plotType.totalDataSeries*r/2+(a.previousDataSeriesCount+p)*r<<0;var
|
|
474
|
-
!1,!1,!1,!1);if(t[k].indexLabel||h.indexLabel||t[k].indexLabelFormatter||h.indexLabelFormatter)this._indexLabels.push({chartType:"rangeBar",dataPoint:t[k],dataSeries:h,indexKeyword:0,point:{x:t[k].y[1]>=t[k].y[0]?d:l,y:m+(
|
|
475
|
-
l),y1:m,x2:Math.max(d,l),y2:
|
|
473
|
+
r<<0:m-a.plotType.totalDataSeries*r/2+(a.previousDataSeriesCount+p)*r<<0;var v=a.axisX.reversed?m-r<<0:m+r<<0;d>l&&(b=d,d=l,l=b);b=t[k].color?t[k].color:h._colorSet[k%h._colorSet.length];Z(c,d,a.axisX.reversed?v:m,l,a.axisX.reversed?m:v,b,0,null,q,!1,!1,!1,h.fillOpacity);b=h.dataPointIds[k];this._eventManager.objectMap[b]={id:b,objectType:"dataPoint",dataSeriesIndex:s,dataPointIndex:k,x1:d,y1:m,x2:l,y2:v};b=U(b);w&&Z(this._eventManager.ghostCtx,d,a.axisX.reversed?v:m,l,a.axisX.reversed?m:v,b,0,null,
|
|
474
|
+
!1,!1,!1,!1);if(t[k].indexLabel||h.indexLabel||t[k].indexLabelFormatter||h.indexLabelFormatter)this._indexLabels.push({chartType:"rangeBar",dataPoint:t[k],dataSeries:h,indexKeyword:0,point:{x:t[k].y[1]>=t[k].y[0]?d:l,y:m+(v-m)/2},direction:t[k].y[1]>=t[k].y[0]?-1:1,bounds:{x1:Math.min(d,l),y1:m,x2:Math.max(d,l),y2:v},color:b}),this._indexLabels.push({chartType:"rangeBar",dataPoint:t[k],dataSeries:h,indexKeyword:1,point:{x:t[k].y[1]>=t[k].y[0]?l:d,y:m+(v-m)/2},direction:t[k].y[1]>=t[k].y[0]?1:-1,bounds:{x1:Math.min(d,
|
|
475
|
+
l),y1:m,x2:Math.max(d,l),y2:v},color:b})}}}w&&(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,0,0,this.width,this.height),c.clearRect(f.x1,f.y1,f.width,f.height),this._eventManager.ghostCtx.restore());c.restore();
|
|
476
476
|
return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,animationBase:0}}};q.prototype.renderRangeArea=function(a){function e(){if(G){for(var a=null,c=t.length-1;0<=c;c--)a=t[c],b.lineTo(a.x,a.y2),f.lineTo(a.x,a.y2);b.closePath();b.globalAlpha=r.fillOpacity;b.fill();b.globalAlpha=1;f.fill();if(0<r.lineThickness){b.beginPath();b.moveTo(a.x,a.y2);for(c=0;c<t.length;c++)a=t[c],b.lineTo(a.x,a.y2);b.moveTo(t[0].x,t[0].y1);for(c=0;c<t.length;c++)a=t[c],
|
|
477
|
-
b.lineTo(a.x,a.y1);b.stroke()}b.beginPath();b.moveTo(m,q);f.beginPath();f.moveTo(m,q);G={x:m,y:q};t=[];t.push({x:m,y1:q,y2:
|
|
478
|
-
r=this.data[n],p=r.dataPoints,k=r.id;this._eventManager.objectMap[k]={objectType:"dataSeries",dataSeriesIndex:n};k=U(k);f.fillStyle=k;var k=[],s=!0,h=0,m,q,
|
|
479
|
-
p[h].x.getTime():p[h].x,!(u<a.axisX.dataInfo.viewPortMin||u>a.axisX.dataInfo.viewPortMax&&(!r.connectNullData||!M)))if(null!==p[h].y&&p[h].y.length&&"number"===typeof p[h].y[0]&&"number"===typeof p[h].y[1]){m=a.axisX.convertValueToPixel(u);q=a.axisY.convertValueToPixel(p[h].y[0]);
|
|
480
|
-
b.setLineDash(B)),b.lineTo(m,q),
|
|
481
|
-
1].newStrokeStyle=F,b.strokeStyle=F,b.setLineDash&&(p[h].lineDashType?(A=p[h].lineDashType,t[t.length-1].newLineDashArray=S(A,r.lineThickness),b.setLineDash(t[t.length-1].newLineDashArray)):(A=r.lineDashType,t[t.length-1].newLineDashArray=D,b.setLineDash(D))));if(0!==p[h].markerSize&&(0<p[h].markerSize||0<r.markerSize)){var ca=r.getMarkerProperties(h,m,
|
|
482
|
-
m,q,b);k.push(ca);da=U(u);
|
|
483
|
-
p[h].y[1]===a.axisY.reversed?1:-1,color:x})}else M||s||e(),M=!0;e();l.drawMarkers(k)}}
|
|
484
|
-
b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderRangeSplineArea=function(a){function e(a,c){var e=
|
|
485
|
-
e[h].newLineDashArray&&b.setLineDash(e[h].newLineDashArray);b.bezierCurveTo(e[h+1].x,e[h+1].y,e[h+2].x,e[h+2].y,e[h+3].x,e[h+3].y)}}b.beginPath();b.moveTo(e[0].x,e[0].y);
|
|
486
|
-
e[h-2].y,e[h-3].x,e[h-3].y),
|
|
487
|
-
b.setLineDash(q[k].newLineDashArray);b.bezierCurveTo(e[h+1].x,e[h+1].y,e[h+2].x,e[h+2].y,e[h+3].x,e[h+3].y)}e=
|
|
488
|
-
this.plotArea.ctx,b=
|
|
477
|
+
b.lineTo(a.x,a.y1);b.stroke()}b.beginPath();b.moveTo(m,q);f.beginPath();f.moveTo(m,q);G={x:m,y:q};t=[];t.push({x:m,y1:q,y2:v})}}var c=a.targetCanvasCtx||this.plotArea.ctx,b=w?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var f=this._eventManager.ghostCtx,k=[],d=this.plotArea;b.save();w&&f.save();b.beginPath();b.rect(d.x1,d.y1,d.width,d.height);b.clip();w&&(f.beginPath(),f.rect(d.x1,d.y1,d.width,d.height),f.clip());for(var g=0;g<a.dataSeriesIndexes.length;g++){var t=[],n=a.dataSeriesIndexes[g],
|
|
478
|
+
r=this.data[n],p=r.dataPoints,k=r.id;this._eventManager.objectMap[k]={objectType:"dataSeries",dataSeriesIndex:n};k=U(k);f.fillStyle=k;var k=[],s=!0,h=0,m,q,v,u,G=null;if(0<p.length){var x=r._colorSet[h%r._colorSet.length],y=r.lineColor=r.options.lineColor||x,F=y;b.fillStyle=x;b.strokeStyle=y;b.lineWidth=r.lineThickness;var A="solid";if(b.setLineDash){var B=S(r.nullDataLineDashType,r.lineThickness),A=r.lineDashType,D=S(A,r.lineThickness);b.setLineDash(D)}for(var M=!0;h<p.length;h++)if(u=p[h].x.getTime?
|
|
479
|
+
p[h].x.getTime():p[h].x,!(u<a.axisX.dataInfo.viewPortMin||u>a.axisX.dataInfo.viewPortMax&&(!r.connectNullData||!M)))if(null!==p[h].y&&p[h].y.length&&"number"===typeof p[h].y[0]&&"number"===typeof p[h].y[1]){m=a.axisX.convertValueToPixel(u);q=a.axisY.convertValueToPixel(p[h].y[0]);v=a.axisY.convertValueToPixel(p[h].y[1]);s||M?(r.connectNullData&&!s?(b.setLineDash&&(r.options.nullDataLineDashType||A===r.lineDashType&&r.lineDashType!==r.nullDataLineDashType)&&(t[t.length-1].newLineDashArray=D,A=r.nullDataLineDashType,
|
|
480
|
+
b.setLineDash(B)),b.lineTo(m,q),w&&f.lineTo(m,q),t.push({x:m,y1:q,y2:v})):(b.beginPath(),b.moveTo(m,q),G={x:m,y:q},t=[],t.push({x:m,y1:q,y2:v}),w&&(f.beginPath(),f.moveTo(m,q))),M=s=!1):(b.lineTo(m,q),t.push({x:m,y1:q,y2:v}),w&&f.lineTo(m,q),0==h%250&&e());u=r.dataPointIds[h];this._eventManager.objectMap[u]={id:u,objectType:"dataPoint",dataSeriesIndex:n,dataPointIndex:h,x1:m,y1:q,y2:v};h<p.length-1&&(F!==(p[h].lineColor||y)||A!==(p[h].lineDashType||r.lineDashType))&&(e(),F=p[h].lineColor||y,t[t.length-
|
|
481
|
+
1].newStrokeStyle=F,b.strokeStyle=F,b.setLineDash&&(p[h].lineDashType?(A=p[h].lineDashType,t[t.length-1].newLineDashArray=S(A,r.lineThickness),b.setLineDash(t[t.length-1].newLineDashArray)):(A=r.lineDashType,t[t.length-1].newLineDashArray=D,b.setLineDash(D))));if(0!==p[h].markerSize&&(0<p[h].markerSize||0<r.markerSize)){var ca=r.getMarkerProperties(h,m,v,b);k.push(ca);var da=U(u);w&&k.push({x:m,y:v,ctx:f,type:ca.type,size:ca.size,color:da,borderColor:da,borderThickness:ca.borderThickness});ca=r.getMarkerProperties(h,
|
|
482
|
+
m,q,b);k.push(ca);da=U(u);w&&k.push({x:m,y:q,ctx:f,type:ca.type,size:ca.size,color:da,borderColor:da,borderThickness:ca.borderThickness})}if(p[h].indexLabel||r.indexLabel||p[h].indexLabelFormatter||r.indexLabelFormatter)this._indexLabels.push({chartType:"rangeArea",dataPoint:p[h],dataSeries:r,indexKeyword:0,point:{x:m,y:q},direction:p[h].y[0]>p[h].y[1]===a.axisY.reversed?-1:1,color:x}),this._indexLabels.push({chartType:"rangeArea",dataPoint:p[h],dataSeries:r,indexKeyword:1,point:{x:m,y:v},direction:p[h].y[0]>
|
|
483
|
+
p[h].y[1]===a.axisY.reversed?1:-1,color:x})}else M||s||e(),M=!0;e();l.drawMarkers(k)}}w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(d.x1,d.y1,d.width,d.height),this._eventManager.ghostCtx.restore());
|
|
484
|
+
b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderRangeSplineArea=function(a){function e(a,c){var e=v(q,2);if(0<e.length){if(0<n.lineThickness){b.strokeStyle=c;b.setLineDash&&b.setLineDash(a);b.beginPath();b.moveTo(e[0].x,e[0].y);for(var h=0;h<e.length-3;h+=3){if(e[h].newStrokeStyle||e[h].newLineDashArray)b.stroke(),b.beginPath(),b.moveTo(e[h].x,e[h].y),e[h].newStrokeStyle&&(b.strokeStyle=e[h].newStrokeStyle),
|
|
485
|
+
e[h].newLineDashArray&&b.setLineDash(e[h].newLineDashArray);b.bezierCurveTo(e[h+1].x,e[h+1].y,e[h+2].x,e[h+2].y,e[h+3].x,e[h+3].y)}}b.beginPath();b.moveTo(e[0].x,e[0].y);w&&(f.beginPath(),f.moveTo(e[0].x,e[0].y));for(h=0;h<e.length-3;h+=3)b.bezierCurveTo(e[h+1].x,e[h+1].y,e[h+2].x,e[h+2].y,e[h+3].x,e[h+3].y),w&&f.bezierCurveTo(e[h+1].x,e[h+1].y,e[h+2].x,e[h+2].y,e[h+3].x,e[h+3].y);e=v(y,2);b.lineTo(y[y.length-1].x,y[y.length-1].y);for(h=e.length-1;2<h;h-=3)b.bezierCurveTo(e[h-1].x,e[h-1].y,e[h-2].x,
|
|
486
|
+
e[h-2].y,e[h-3].x,e[h-3].y),w&&f.bezierCurveTo(e[h-1].x,e[h-1].y,e[h-2].x,e[h-2].y,e[h-3].x,e[h-3].y);b.closePath();b.globalAlpha=n.fillOpacity;b.fill();w&&(f.closePath(),f.fill());b.globalAlpha=1;if(0<n.lineThickness){b.strokeStyle=c;b.setLineDash&&b.setLineDash(a);b.beginPath();b.moveTo(e[0].x,e[0].y);for(var k=h=0;h<e.length-3;h+=3,k++){if(q[k].newStrokeStyle||q[k].newLineDashArray)b.stroke(),b.beginPath(),b.moveTo(e[h].x,e[h].y),q[k].newStrokeStyle&&(b.strokeStyle=q[k].newStrokeStyle),q[k].newLineDashArray&&
|
|
487
|
+
b.setLineDash(q[k].newLineDashArray);b.bezierCurveTo(e[h+1].x,e[h+1].y,e[h+2].x,e[h+2].y,e[h+3].x,e[h+3].y)}e=v(q,2);b.moveTo(e[0].x,e[0].y);for(k=h=0;h<e.length-3;h+=3,k++){if(q[k].newStrokeStyle||q[k].newLineDashArray)b.stroke(),b.beginPath(),b.moveTo(e[h].x,e[h].y),q[k].newStrokeStyle&&(b.strokeStyle=q[k].newStrokeStyle),q[k].newLineDashArray&&b.setLineDash(q[k].newLineDashArray);b.bezierCurveTo(e[h+1].x,e[h+1].y,e[h+2].x,e[h+2].y,e[h+3].x,e[h+3].y)}b.stroke()}b.beginPath()}}var c=a.targetCanvasCtx||
|
|
488
|
+
this.plotArea.ctx,b=w?this._preRenderCtx:c;if(!(0>=a.dataSeriesIndexes.length)){var f=this._eventManager.ghostCtx,k=[],d=this.plotArea;b.save();w&&f.save();b.beginPath();b.rect(d.x1,d.y1,d.width,d.height);b.clip();w&&(f.beginPath(),f.rect(d.x1,d.y1,d.width,d.height),f.clip());for(var g=0;g<a.dataSeriesIndexes.length;g++){var t=a.dataSeriesIndexes[g],n=this.data[t],r=n.dataPoints,k=n.id;this._eventManager.objectMap[k]={objectType:"dataSeries",dataSeriesIndex:t};k=U(k);f.fillStyle=k;var k=[],p=0,s,
|
|
489
489
|
h,m,q=[],y=[];if(0<r.length){var u=n._colorSet[p%n._colorSet.length],G=n.lineColor=n.options.lineColor||u,x=G;b.fillStyle=u;b.lineWidth=n.lineThickness;var B="solid",F;if(b.setLineDash){var A=S(n.nullDataLineDashType,n.lineThickness),B=n.lineDashType;F=S(B,n.lineThickness)}for(h=!1;p<r.length;p++)if(s=r[p].x.getTime?r[p].x.getTime():r[p].x,!(s<a.axisX.dataInfo.viewPortMin||s>a.axisX.dataInfo.viewPortMax&&(!n.connectNullData||!h)))if(null!==r[p].y&&r[p].y.length&&"number"===typeof r[p].y[0]&&"number"===
|
|
490
490
|
typeof r[p].y[1]){s=a.axisX.convertValueToPixel(s);h=a.axisY.convertValueToPixel(r[p].y[0]);m=a.axisY.convertValueToPixel(r[p].y[1]);var D=n.dataPointIds[p];this._eventManager.objectMap[D]={id:D,objectType:"dataPoint",dataSeriesIndex:t,dataPointIndex:p,x1:s,y1:h,y2:m};q[q.length]={x:s,y:h};y[y.length]={x:s,y:m};p<r.length-1&&(x!==(r[p].lineColor||G)||B!==(r[p].lineDashType||n.lineDashType))&&(x=r[p].lineColor||G,q[q.length-1].newStrokeStyle=x,b.setLineDash&&(r[p].lineDashType?(B=r[p].lineDashType,
|
|
491
|
-
q[q.length-1].newLineDashArray=S(B,n.lineThickness)):(B=n.lineDashType,q[q.length-1].newLineDashArray=F)));if(0!==r[p].markerSize&&(0<r[p].markerSize||0<n.markerSize)){var H=n.getMarkerProperties(p,s,h,b);k.push(H);var M=U(D);
|
|
491
|
+
q[q.length-1].newLineDashArray=S(B,n.lineThickness)):(B=n.lineDashType,q[q.length-1].newLineDashArray=F)));if(0!==r[p].markerSize&&(0<r[p].markerSize||0<n.markerSize)){var H=n.getMarkerProperties(p,s,h,b);k.push(H);var M=U(D);w&&k.push({x:s,y:h,ctx:f,type:H.type,size:H.size,color:M,borderColor:M,borderThickness:H.borderThickness});H=n.getMarkerProperties(p,s,m,b);k.push(H);M=U(D);w&&k.push({x:s,y:m,ctx:f,type:H.type,size:H.size,color:M,borderColor:M,borderThickness:H.borderThickness})}if(r[p].indexLabel||
|
|
492
492
|
n.indexLabel||r[p].indexLabelFormatter||n.indexLabelFormatter)this._indexLabels.push({chartType:"rangeSplineArea",dataPoint:r[p],dataSeries:n,indexKeyword:0,point:{x:s,y:h},direction:r[p].y[0]<=r[p].y[1]?-1:1,color:u}),this._indexLabels.push({chartType:"rangeSplineArea",dataPoint:r[p],dataSeries:n,indexKeyword:1,point:{x:s,y:m},direction:r[p].y[0]<=r[p].y[1]?1:-1,color:u});h=!1}else 0<p&&!h&&(n.connectNullData?b.setLineDash&&(0<q.length&&(n.options.nullDataLineDashType||!r[p-1].lineDashType))&&(q[q.length-
|
|
493
|
-
1].newLineDashArray=A,B=n.nullDataLineDashType):(e(F,G),q=[],y=[])),h=!0;e(F,G);l.drawMarkers(k)}}
|
|
494
|
-
this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderWaterfall=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=
|
|
493
|
+
1].newLineDashArray=A,B=n.nullDataLineDashType):(e(F,G),q=[],y=[])),h=!0;e(F,G);l.drawMarkers(k)}}w&&(c.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&b.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&b.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),b.clearRect(d.x1,d.y1,d.width,d.height),
|
|
494
|
+
this._eventManager.ghostCtx.restore());b.restore();return{source:c,dest:this.plotArea.ctx,animationCallback:E.xClipAnimation,easingFunction:E.easing.linear,animationBase:0}}};q.prototype.renderWaterfall=function(a){var e=a.targetCanvasCtx||this.plotArea.ctx,c=w?this._preRenderCtx:e;if(!(0>=a.dataSeriesIndexes.length)){var b=this._eventManager.ghostCtx,f=null,k=this.plotArea,d=0,g,l,n,r,p=a.axisY.convertValueToPixel(a.axisY.logarithmic?a.axisY.viewportMinimum:0),d=this.options.dataPointMinWidth?this.dataPointMinWidth:
|
|
495
495
|
this.options.dataPointWidth?this.dataPointWidth:1;l=this.options.dataPointMaxWidth?this.dataPointMaxWidth:this.options.dataPointWidth?this.dataPointWidth:Math.min(0.15*this.width,0.9*(this.plotArea.width/a.plotType.totalDataSeries))<<0;var s=a.axisX.dataInfo.minDiff;isFinite(s)||(s=0.3*Math.abs(a.axisX.range));s=this.options.dataPointWidth?this.dataPointWidth:0.6*(k.width*(a.axisX.logarithmic?Math.log(s)/Math.log(a.axisX.range):Math.abs(s)/Math.abs(a.axisX.range))/a.plotType.totalDataSeries)<<0;this.dataPointMaxWidth&&
|
|
496
|
-
d>l&&(d=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,l));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&l<d)&&(l=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,d));s<d&&(s=d);s>l&&(s=l);c.save();
|
|
497
|
-
a.dataSeriesIndexes[h],m=this.data[t],q=m.dataPoints,f=m._colorSet[0];m.risingColor=m.options.risingColor?m.options.risingColor:f;m.fallingColor=m.options.fallingColor?m.options.fallingColor:"#e40a0a";var u="number"===typeof m.options.lineThickness?Math.round(m.lineThickness):1,
|
|
496
|
+
d>l&&(d=Math.min(this.options.dataPointWidth?this.dataPointWidth:Infinity,l));!this.dataPointMaxWidth&&(this.dataPointMinWidth&&l<d)&&(l=Math.max(this.options.dataPointWidth?this.dataPointWidth:-Infinity,d));s<d&&(s=d);s>l&&(s=l);c.save();w&&this._eventManager.ghostCtx.save();c.beginPath();c.rect(k.x1,k.y1,k.width,k.height);c.clip();w&&(this._eventManager.ghostCtx.beginPath(),this._eventManager.ghostCtx.rect(k.x1,k.y1,k.width,k.height),this._eventManager.ghostCtx.clip());for(var h=0;h<a.dataSeriesIndexes.length;h++){var t=
|
|
497
|
+
a.dataSeriesIndexes[h],m=this.data[t],q=m.dataPoints,f=m._colorSet[0];m.risingColor=m.options.risingColor?m.options.risingColor:f;m.fallingColor=m.options.fallingColor?m.options.fallingColor:"#e40a0a";var u="number"===typeof m.options.lineThickness?Math.round(m.lineThickness):1,v=1===Math.round(u)%2?-0.5:0;if(0<q.length)for(var x=5<s&&m.bevelEnabled?!0:!1,y=!1,F=null,A=null,d=0;d<q.length;d++)if(q[d].getTime?r=q[d].x.getTime():r=q[d].x,"number"!==typeof q[d].y){if(0<d&&!y&&m.connectNullData)var B=
|
|
498
498
|
m.options.nullDataLineDashType||!q[d-1].lineDashType?m.nullDataLineDashType:q[d-1].lineDashType;y=!0}else{g=a.axisX.convertValueToPixel(r);l=0===m.dataPointEOs[d].cumulativeSum?p:a.axisY.convertValueToPixel(m.dataPointEOs[d].cumulativeSum);n=0===m.dataPointEOs[d].cumulativeSumYStartValue?p:a.axisY.convertValueToPixel(m.dataPointEOs[d].cumulativeSumYStartValue);g=a.axisX.reversed?g+a.plotType.totalDataSeries*s/2-(a.previousDataSeriesCount+h)*s<<0:g-a.plotType.totalDataSeries*s/2+(a.previousDataSeriesCount+
|
|
499
|
-
h)*s<<0;var D=a.axisX.reversed?g-s<<0:g+s<<0;l>n&&(f=l,l=n,n=f);a.axisY.reversed&&(f=l,l=n,n=f);f=m.dataPointIds[d];this._eventManager.objectMap[f]={id:f,objectType:"dataPoint",dataSeriesIndex:t,dataPointIndex:d,x1:g,y1:l,x2:D,y2:n};var M=q[d].color?q[d].color:0<q[d].y?m.risingColor:m.fallingColor;Z(c,a.axisX.reversed?D:g,a.axisY.reversed?n:l,a.axisX.reversed?g:D,a.axisY.reversed?l:n,M,0,M,x,x,!1,!1,m.fillOpacity);f=U(f);
|
|
500
|
-
n,f,0,null,!1,!1,!1,!1);var ca,M=g;ca="undefined"!==typeof q[d].isIntermediateSum&&!0===q[d].isIntermediateSum||"undefined"!==typeof q[d].isCumulativeSum&&!0===q[d].isCumulativeSum?0<q[d].y?l:n:0<q[d].y?n:l;0<d&&F&&(!y||m.connectNullData)&&(y&&c.setLineDash&&c.setLineDash(S(B,u)),c.beginPath(),c.moveTo(F,A-
|
|
501
|
-
"shortDash";c.strokeStyle=q[d].lineColor?q[d].lineColor:m.options.lineColor?m.options.lineColor:"#9e9e9e";c.lineWidth=u;c.setLineDash&&(M=S(M,u),c.setLineDash(M));(q[d].indexLabel||m.indexLabel||q[d].indexLabelFormatter||m.indexLabelFormatter)&&this._indexLabels.push({chartType:"waterfall",dataPoint:q[d],dataSeries:m,point:{x:g+(D-g)/2,y:0<=q[d].y?l:n},direction:0>q[d].y===a.axisY.reversed?1:-1,bounds:{x1:g,y1:Math.min(l,n),x2:D,y2:Math.max(l,n)},color:f})}}
|
|
499
|
+
h)*s<<0;var D=a.axisX.reversed?g-s<<0:g+s<<0;l>n&&(f=l,l=n,n=f);a.axisY.reversed&&(f=l,l=n,n=f);f=m.dataPointIds[d];this._eventManager.objectMap[f]={id:f,objectType:"dataPoint",dataSeriesIndex:t,dataPointIndex:d,x1:g,y1:l,x2:D,y2:n};var M=q[d].color?q[d].color:0<q[d].y?m.risingColor:m.fallingColor;Z(c,a.axisX.reversed?D:g,a.axisY.reversed?n:l,a.axisX.reversed?g:D,a.axisY.reversed?l:n,M,0,M,x,x,!1,!1,m.fillOpacity);f=U(f);w&&Z(this._eventManager.ghostCtx,a.axisX.reversed?D:g,l,a.axisX.reversed?g:D,
|
|
500
|
+
n,f,0,null,!1,!1,!1,!1);var ca,M=g;ca="undefined"!==typeof q[d].isIntermediateSum&&!0===q[d].isIntermediateSum||"undefined"!==typeof q[d].isCumulativeSum&&!0===q[d].isCumulativeSum?0<q[d].y?l:n:0<q[d].y?n:l;0<d&&F&&(!y||m.connectNullData)&&(y&&c.setLineDash&&c.setLineDash(S(B,u)),c.beginPath(),c.moveTo(F,A-v),c.lineTo(M,ca-v),0<u&&c.stroke(),w&&(b.beginPath(),b.moveTo(F,A-v),b.lineTo(M,ca-v),0<u&&b.stroke()));y=!1;F=D;A=0<q[d].y?l:n;M=q[d].lineDashType?q[d].lineDashType:m.options.lineDashType?m.options.lineDashType:
|
|
501
|
+
"shortDash";c.strokeStyle=q[d].lineColor?q[d].lineColor:m.options.lineColor?m.options.lineColor:"#9e9e9e";c.lineWidth=u;c.setLineDash&&(M=S(M,u),c.setLineDash(M));(q[d].indexLabel||m.indexLabel||q[d].indexLabelFormatter||m.indexLabelFormatter)&&this._indexLabels.push({chartType:"waterfall",dataPoint:q[d],dataSeries:m,point:{x:g+(D-g)/2,y:0<=q[d].y?l:n},direction:0>q[d].y===a.axisY.reversed?1:-1,bounds:{x1:g,y1:Math.min(l,n),x2:D,y2:Math.max(l,n)},color:f})}}w&&(e.drawImage(this._preRenderCanvas,0,
|
|
502
502
|
0,this.width,this.height),c.globalCompositeOperation="source-atop",a.axisX.maskCanvas&&c.drawImage(a.axisX.maskCanvas,0,0,this.width,this.height),a.axisY.maskCanvas&&c.drawImage(a.axisY.maskCanvas,0,0,this.width,this.height),this._breaksCanvasCtx&&this._breaksCanvasCtx.drawImage(this._preRenderCanvas,0,0,this.width,this.height),c.clearRect(k.x1,k.y1,k.width,k.height),this._eventManager.ghostCtx.restore());c.restore();return{source:e,dest:this.plotArea.ctx,animationCallback:E.fadeInAnimation,easingFunction:E.easing.easeInQuad,
|
|
503
|
-
animationBase:0}}};var d=function(a,e,c,b,f,k,d,g,l){if(!(0>c)){"undefined"===typeof g&&(g=1);if(!
|
|
503
|
+
animationBase:0}}};var d=function(a,e,c,b,f,k,d,g,l){if(!(0>c)){"undefined"===typeof g&&(g=1);if(!w){var n=Number((d%(2*Math.PI)).toFixed(8));Number((k%(2*Math.PI)).toFixed(8))===n&&(d-=1E-4)}a.save();a.globalAlpha=g;"pie"===f?(a.beginPath(),a.moveTo(e.x,e.y),a.arc(e.x,e.y,c,k,d,!1),a.fillStyle=b,a.strokeStyle="white",a.lineWidth=2,a.closePath(),a.fill()):"doughnut"===f&&(a.beginPath(),a.arc(e.x,e.y,c,k,d,!1),0<=l&&a.arc(e.x,e.y,l*c,d,k,!0),a.closePath(),a.fillStyle=b,a.strokeStyle="white",a.lineWidth=
|
|
504
504
|
2,a.fill());a.globalAlpha=1;a.restore()}};q.prototype.renderPie=function(a){function e(){if(n&&r){var a=0,b=0,c=0,e=0;g(n.options.indexLabelMaxWidth)&&(n.indexLabelMaxWidth=0.33*s.width);for(var f=0;f<r.length;f++){var k=r[f],d=n.dataPointIds[f];h[f].id=d;h[f].objectType="dataPoint";h[f].dataPointIndex=f;h[f].dataSeriesIndex=0;var p=h[f],l={percent:null,total:null},m=null,l=t.getPercentAndTotal(n,k);if(n.indexLabelFormatter||k.indexLabelFormatter)m={chart:t.options,dataSeries:n,dataPoint:k,total:l.total,
|
|
505
505
|
percent:l.percent};l=k.indexLabelFormatter?k.indexLabelFormatter(m):k.indexLabel?t.replaceKeywordsWithValue(k.indexLabel,k,n,f):n.indexLabelFormatter?n.indexLabelFormatter(m):n.indexLabel?t.replaceKeywordsWithValue(n.indexLabel,k,n,f):k.label?k.label:"";t._eventManager.objectMap[d]=p;p.center={x:x.x,y:x.y};p.y=k.y;p.radius=A;p.percentInnerRadius=D;p.indexLabelText=l;p.indexLabelPlacement=n.indexLabelPlacement;p.indexLabelLineColor=k.indexLabelLineColor?k.indexLabelLineColor:n.options.indexLabelLineColor?
|
|
506
506
|
n.options.indexLabelLineColor:k.color?k.color:n._colorSet[f%n._colorSet.length];p.indexLabelLineThickness=g(k.indexLabelLineThickness)?n.indexLabelLineThickness:k.indexLabelLineThickness;p.indexLabelLineDashType=k.indexLabelLineDashType?k.indexLabelLineDashType:n.indexLabelLineDashType;p.indexLabelFontColor=k.indexLabelFontColor?k.indexLabelFontColor:n.indexLabelFontColor;p.indexLabelFontStyle=k.indexLabelFontStyle?k.indexLabelFontStyle:n.indexLabelFontStyle;p.indexLabelFontWeight=k.indexLabelFontWeight?
|
|
@@ -517,86 +517,86 @@ a.indexLabelTextBlock.height/2,e=a.indexLabelTextBlock.y+a.indexLabelTextBlock.h
|
|
|
517
517
|
h[c].indexLabelTextBlock.y<=h[a].indexLabelTextBlock.y)))break;else c=null;return c}function k(a,c,e){e=(e||0)+1;if(1E3<e)return 0;c=c||0;var d=0,g=x.y-1*q,n=x.y+1*q;if(0<=a&&a<r.length){var p=h[a];if(0>c&&p.indexLabelTextBlock.y<g||0<c&&p.indexLabelTextBlock.y>n)return 0;var s=0,l=0,l=s=s=0;0>c?p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2>g&&p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2+c<g&&(c=-(g-(p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2+c))):p.indexLabelTextBlock.y+
|
|
518
518
|
p.indexLabelTextBlock.height/2<g&&p.indexLabelTextBlock.y+p.indexLabelTextBlock.height/2+c>n&&(c=p.indexLabelTextBlock.y+p.indexLabelTextBlock.height/2+c-n);c=p.indexLabelTextBlock.y+c;g=0;g="right"===p.hemisphere?x.x+Math.sqrt(Math.pow(q,2)-Math.pow(c-x.y,2)):x.x-Math.sqrt(Math.pow(q,2)-Math.pow(c-x.y,2));l=x.x+A*Math.cos(p.midAngle);s=x.y+A*Math.sin(p.midAngle);s=Math.sqrt(Math.pow(g-l,2)+Math.pow(c-s,2));l=Math.acos(A/q);s=Math.acos((q*q+A*A-s*s)/(2*A*q));c=s<l?c-p.indexLabelTextBlock.y:0;g=null;
|
|
519
519
|
for(n=1;n<r.length;n++)if(g=(a-n+h.length)%h.length,h[g].hemisphere!==h[a].hemisphere){g=null;break}else if(h[g].indexLabelText&&h[g].hemisphere===h[a].hemisphere&&g!==a&&(0>b(h[g],h[a])||("right"===h[a].hemisphere?h[g].indexLabelTextBlock.y<=h[a].indexLabelTextBlock.y:h[g].indexLabelTextBlock.y>=h[a].indexLabelTextBlock.y)))break;else g=null;l=g;s=f(a);n=g=0;0>c?(n="right"===p.hemisphere?l:s,d=c,null!==n&&(l=-c,c=p.indexLabelTextBlock.y-p.indexLabelTextBlock.height/2-(h[n].indexLabelTextBlock.y+
|
|
520
|
-
h[n].indexLabelTextBlock.height/2),c-l<E&&(g=-l,n=k(n,g,e+1),+n.toFixed(
|
|
520
|
+
h[n].indexLabelTextBlock.height/2),c-l<E&&(g=-l,n=k(n,g,e+1),+n.toFixed(v)>+g.toFixed(v)&&(d=c>E?-(c-E):-(l-(n-g)))))):0<c&&(n="right"===p.hemisphere?s:l,d=c,null!==n&&(l=c,c=h[n].indexLabelTextBlock.y-h[n].indexLabelTextBlock.height/2-(p.indexLabelTextBlock.y+p.indexLabelTextBlock.height/2),c-l<E&&(g=l,n=k(n,g,e+1),+n.toFixed(v)<+g.toFixed(v)&&(d=c>E?c-E:l-(g-n)))));d&&(e=p.indexLabelTextBlock.y+d,c=0,c="right"===p.hemisphere?x.x+Math.sqrt(Math.pow(q,2)-Math.pow(e-x.y,2)):x.x-Math.sqrt(Math.pow(q,
|
|
521
521
|
2)-Math.pow(e-x.y,2)),p.midAngle>Math.PI/2-u&&p.midAngle<Math.PI/2+u?(g=(a-1+h.length)%h.length,g=h[g],a=h[(a+1+h.length)%h.length],"left"===p.hemisphere&&"right"===g.hemisphere&&c>g.indexLabelTextBlock.x?c=g.indexLabelTextBlock.x-15:"right"===p.hemisphere&&("left"===a.hemisphere&&c<a.indexLabelTextBlock.x)&&(c=a.indexLabelTextBlock.x+15)):p.midAngle>3*Math.PI/2-u&&p.midAngle<3*Math.PI/2+u&&(g=(a-1+h.length)%h.length,g=h[g],a=h[(a+1+h.length)%h.length],"right"===p.hemisphere&&"left"===g.hemisphere&&
|
|
522
522
|
c<g.indexLabelTextBlock.x?c=g.indexLabelTextBlock.x+15:"left"===p.hemisphere&&("right"===a.hemisphere&&c>a.indexLabelTextBlock.x)&&(c=a.indexLabelTextBlock.x-15)),p.indexLabelTextBlock.y=e,p.indexLabelTextBlock.x=c,p.indexLabelAngle=Math.atan2(p.indexLabelTextBlock.y-x.y,p.indexLabelTextBlock.x-x.x))}return d}function l(){var a=t.plotArea.ctx;a.fillStyle="grey";a.strokeStyle="grey";a.font="16px Arial";a.textBaseline="middle";for(var c=a=0,e=0,d=!0,c=0;10>c&&(1>c||0<e);c++){if(n.radius||!n.radius&&
|
|
523
|
-
"undefined"!==typeof n.innerRadius&&null!==n.innerRadius&&A-e<=B)d=!1;d&&(A-=e);e=0;if("inside"!==n.indexLabelPlacement){q=A*
|
|
524
|
-
(h[F].indexLabelTextBlock.y<g.indexLabelTextBlock.y?z++:oa++);z=y/(z+oa||1)*oa;var oa=-1*(y-z),H=F=0;"right"===g.hemisphere?(F=k(a,z),oa=-1*(y-F),H=k(u,oa),+H.toFixed(
|
|
523
|
+
"undefined"!==typeof n.innerRadius&&null!==n.innerRadius&&A-e<=B)d=!1;d&&(A-=e);e=0;if("inside"!==n.indexLabelPlacement){q=A*w;for(a=0;a<r.length;a++){var g=h[a];g.indexLabelTextBlock.x=x.x+q*Math.cos(g.midAngle);g.indexLabelTextBlock.y=x.y+q*Math.sin(g.midAngle);g.indexLabelAngle=g.midAngle;g.radius=A;g.percentInnerRadius=D}for(var m,z,a=0;a<r.length;a++){var g=h[a],u=f(a);if(null!==u){m=h[a];z=h[u];var y=0,y=b(m,z)-E;if(0>y){for(var oa=z=0,F=0;F<r.length;F++)F!==a&&h[F].hemisphere===g.hemisphere&&
|
|
524
|
+
(h[F].indexLabelTextBlock.y<g.indexLabelTextBlock.y?z++:oa++);z=y/(z+oa||1)*oa;var oa=-1*(y-z),H=F=0;"right"===g.hemisphere?(F=k(a,z),oa=-1*(y-F),H=k(u,oa),+H.toFixed(v)<+oa.toFixed(v)&&+F.toFixed(v)<=+z.toFixed(v)&&k(a,-(oa-H))):(F=k(u,z),oa=-1*(y-F),H=k(a,oa),+H.toFixed(v)<+oa.toFixed(v)&&+F.toFixed(v)<=+z.toFixed(v)&&k(u,-(oa-H)))}}}}else for(a=0;a<r.length;a++)g=h[a],q="pie"===n.type?0.7*A:0.85*A,u=x.x+q*Math.cos(g.midAngle),z=x.y+q*Math.sin(g.midAngle),g.indexLabelTextBlock.x=u,g.indexLabelTextBlock.y=
|
|
525
525
|
z;for(a=0;a<r.length;a++)if(g=h[a],u=g.indexLabelTextBlock.measureText(),0!==u.height&&0!==u.width)u=u=0,"right"===g.hemisphere?(u=s.x2-(g.indexLabelTextBlock.x+g.indexLabelTextBlock.width+p),u*=-1):u=s.x1-(g.indexLabelTextBlock.x-g.indexLabelTextBlock.width-p),0<u&&(!d&&g.indexLabelText&&(z="right"===g.hemisphere?s.x2-g.indexLabelTextBlock.x:g.indexLabelTextBlock.x-s.x1,0.3*g.indexLabelTextBlock.maxWidth>z?g.indexLabelText="":g.indexLabelTextBlock.maxWidth=0.85*z,0.3*g.indexLabelTextBlock.maxWidth<
|
|
526
526
|
z&&(g.indexLabelTextBlock.x-="right"===g.hemisphere?2:-2)),Math.abs(g.indexLabelTextBlock.y-g.indexLabelTextBlock.height/2-x.y)<A||Math.abs(g.indexLabelTextBlock.y+g.indexLabelTextBlock.height/2-x.y)<A)&&(u/=Math.abs(Math.cos(g.indexLabelAngle)),9<u&&(u*=0.3),u>e&&(e=u)),u=u=0,0<g.indexLabelAngle&&g.indexLabelAngle<Math.PI?(u=s.y2-(g.indexLabelTextBlock.y+g.indexLabelTextBlock.height/2+5),u*=-1):u=s.y1-(g.indexLabelTextBlock.y-g.indexLabelTextBlock.height/2-5),0<u&&(!d&&g.indexLabelText&&(z=0<g.indexLabelAngle&&
|
|
527
527
|
g.indexLabelAngle<Math.PI?-1:1,0===k(a,u*z)&&k(a,2*z)),Math.abs(g.indexLabelTextBlock.x-x.x)<A&&(u/=Math.abs(Math.sin(g.indexLabelAngle)),9<u&&(u*=0.3),u>e&&(e=u)));var J=function(a,b,c){for(var e=[],f=0;e.push(h[b]),b!==c;b=(b+1+r.length)%r.length);e.sort(function(a,b){return a.y-b.y});for(b=0;b<e.length;b++)if(c=e[b],f<0.7*a)f+=c.indexLabelTextBlock.height,c.indexLabelTextBlock.text="",c.indexLabelText="",c.indexLabelTextBlock.measureText();else break};(function(){for(var a=-1,c=-1,e=0,k=!1,g=0;g<
|
|
528
528
|
r.length;g++)if(k=!1,m=h[g],m.indexLabelText){var d=f(g);if(null!==d){var n=h[d];y=0;y=b(m,n);var s;if(s=0>y){s=m.indexLabelTextBlock.x;var l=m.indexLabelTextBlock.y-m.indexLabelTextBlock.height/2,z=m.indexLabelTextBlock.y+m.indexLabelTextBlock.height/2,t=n.indexLabelTextBlock.y-n.indexLabelTextBlock.height/2,u=n.indexLabelTextBlock.x+n.indexLabelTextBlock.width,E=n.indexLabelTextBlock.y+n.indexLabelTextBlock.height/2;s=m.indexLabelTextBlock.x+m.indexLabelTextBlock.width<n.indexLabelTextBlock.x-p||
|
|
529
529
|
s>u+p||l>E+p||z<t-p?!1:!0}s?(0>a&&(a=g),d!==a&&(c=d,e+=-y),0===g%Math.max(r.length/10,3)&&(k=!0)):k=!0;k&&(0<e&&0<=a&&0<=c)&&(J(e,a,c),c=a=-1,e=0)}}0<e&&J(e,a,c)})()}}function m(){t.plotArea.layoutManager.reset();t.title&&(t.title.dockInsidePlotArea||"center"===t.title.horizontalAlign&&"center"===t.title.verticalAlign)&&t.title.render();if(t.subtitles)for(var a=0;a<t.subtitles.length;a++){var b=t.subtitles[a];(b.dockInsidePlotArea||"center"===b.horizontalAlign&&"center"===b.verticalAlign)&&b.render()}t.legend&&
|
|
530
|
-
(t.legend.dockInsidePlotArea||"center"===t.legend.horizontalAlign&&"center"===t.legend.verticalAlign)&&(t.legend.setLayout(),t.legend.render())}var t=this;if(!(0>=a.dataSeriesIndexes.length)){var n=this.data[a.dataSeriesIndexes[0]],r=n.dataPoints,p=10,s=this.plotArea,h=n.dataPointEOs,E=2,q,
|
|
530
|
+
(t.legend.dockInsidePlotArea||"center"===t.legend.horizontalAlign&&"center"===t.legend.verticalAlign)&&(t.legend.setLayout(),t.legend.render())}var t=this;if(!(0>=a.dataSeriesIndexes.length)){var n=this.data[a.dataSeriesIndexes[0]],r=n.dataPoints,p=10,s=this.plotArea,h=n.dataPointEOs,E=2,q,w=1.3,u=20/180*Math.PI,v=6,x={x:(s.x2+s.x1)/2,y:(s.y2+s.y1)/2},y=0;a=!1;for(var F=0;F<r.length;F++)y+=Math.abs(r[F].y),!a&&("undefined"!==typeof r[F].indexLabel&&null!==r[F].indexLabel&&0<r[F].indexLabel.toString().length)&&
|
|
531
531
|
(a=!0),!a&&("undefined"!==typeof r[F].label&&null!==r[F].label&&0<r[F].label.toString().length)&&(a=!0);if(0!==y){a=a||"undefined"!==typeof n.indexLabel&&null!==n.indexLabel&&0<n.indexLabel.toString().length;var A="inside"!==n.indexLabelPlacement&&a?0.75*Math.min(s.width,s.height)/2:0.92*Math.min(s.width,s.height)/2;n.radius&&(A=Ua(n.radius,A));var B="undefined"!==typeof n.innerRadius&&null!==n.innerRadius?Ua(n.innerRadius,A):0.7*A,D=Math.min(B/A,(A-1)/A);this.pieDoughnutClickHandler=function(a){t.isAnimating||
|
|
532
532
|
!g(this.explodeOnClick)&&!this.explodeOnClick||(a=a.dataPoint,a.exploded=a.exploded?!1:!0,1<this.dataPoints.length&&t._animator.animate(0,500,function(a){c(a,!0);m();t.dispatchEvent("dataAnimationIterationEnd",{chart:t});t.dispatchEvent("dataAnimationEnd",{chart:t})}))};e();l();l();l();l();this.disableToolTip=!0;this._animator.animate(0,this.animatedRender?this.animationDuration:0,function(a){var b=t.plotArea.ctx;b.clearRect(s.x1,s.y1,s.width,s.height);b.fillStyle=t.backgroundColor;b.fillRect(s.x1,
|
|
533
533
|
s.y1,s.width,s.height);for(var b=h[0].startAngle+2*Math.PI*a,c=0;c<r.length;c++){var e=0===c?h[c].startAngle:f,f=e+(h[c].endAngle-h[c].startAngle),k=!1;f>b&&(f=b,k=!0);var g=r[c].color?r[c].color:n._colorSet[c%n._colorSet.length];f>e&&d(t.plotArea.ctx,h[c].center,h[c].radius,g,n.type,e,f,n.fillOpacity,h[c].percentInnerRadius);if(k)break}m();t.dispatchEvent("dataAnimationIterationEnd",{chart:t});1<=a&&t.dispatchEvent("dataAnimationEnd",{chart:t})},function(){t.disableToolTip=!1;t._animator.animate(0,
|
|
534
534
|
t.animatedRender?500:0,function(a){c(a,!1);m();t.dispatchEvent("dataAnimationIterationEnd",{chart:t})});t.dispatchEvent("dataAnimationEnd",{chart:t})});n.radius=A;"doughnut"===n.type&&(n.innerRadius=B)}}};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)),
|
|
535
535
|
"undefined"!==e.x5&&(a.lineTo(Math.round(e.x5),Math.round(e.y5)),a.lineTo(Math.round(e.x6),Math.round(e.y6))),a.closePath(),a.fillStyle=b?b:e.color,a.fill(),a.globalAplha=1,a.restore())};q.prototype.renderFunnel=function(a){function e(){for(var a=0,b=[],c=0;c<G.length;c++){if("undefined"===typeof G[c].y)return-1;G[c].y="number"===typeof G[c].y?G[c].y:0;a+=Math.abs(G[c].y)}if(0===a)return-1;for(c=b[0]=0;c<G.length;c++)b.push(Math.abs(G[c].y)*D/a);return b}function c(){var a=W,b=Z,c=T,e=X,f,h;f=N;h=
|
|
536
536
|
P-fa;e=Math.abs((h-f)*(b-a+(e-c))/2);c=X-T;f=h-f;h=c*(h-P);h=Math.abs(h);h=e+h;for(var e=[],k=0,g=0;g<G.length;g++){if("undefined"===typeof G[g].y)return-1;G[g].y="number"===typeof G[g].y?G[g].y:0;k+=Math.abs(G[g].y)}if(0===k)return-1;for(var d=e[0]=0,n=0,p,r,b=b-a,d=!1,g=0;g<G.length;g++)a=Math.abs(G[g].y)*h/k,d?p=0==Number(c.toFixed(3))?0:a/c:(r=ga*ga*b*b-4*Math.abs(ga)*a,0>r?(r=c,d=(b+r)*(f-n)/2,a-=d,p=f-n,n+=f-n,p+=0==r?0:a/r,n+=a/r,d=!0):(p=(Math.abs(ga)*b-Math.sqrt(r))/2,r=b-2*p/Math.abs(ga),
|
|
537
|
-
n+=p,n>f&&(n-=p,r=c,d=(b+r)*(f-n)/2,a-=d,p=f-n,n+=f-n,p+=a/r,n+=a/r,d=!0),b=r)),e.push(p);return e}function b(){if(u&&G){for(var a,b,c,e,f,k,d,n,p,r,s,l,m,t,z,E,q,
|
|
538
|
-
u._colorSet.length];c=b.indexLabelPlacement||u.indexLabelPlacement||"outside";q=b.indexLabelTextAlign||u.indexLabelTextAlign||"left";e=b.indexLabelBackgroundColor||u.indexLabelBackgroundColor||(
|
|
539
|
-
"#979797";p=g(b.indexLabelFontSize)?u.indexLabelFontSize:b.indexLabelFontSize;r=b.indexLabelFontStyle||u.indexLabelFontStyle||"normal";s=b.indexLabelFontFamily||u.indexLabelFontFamily||"arial";l=b.indexLabelFontWeight||u.indexLabelFontWeight||"normal";a=b.indexLabelLineColor||u.options.indexLabelLineColor||a;m="number"===typeof b.indexLabelLineThickness?b.indexLabelLineThickness:"number"===typeof u.indexLabelLineThickness?u.indexLabelLineThickness:2;
|
|
540
|
-
"solid";z="undefined"!==typeof b.indexLabelWrap?b.indexLabelWrap:"undefined"!==typeof u.indexLabelWrap?u.indexLabelWrap:!0;E=u.dataPointIds[A];y._eventManager.objectMap[E]={id:E,objectType:"dataPoint",dataPointIndex:A,dataSeriesIndex:0,funnelSection:Q[u.reversed?G.length-1-A:A]};"inside"===u.indexLabelPlacement&&(x[A]=A!==ha?u.reversed?Q[A].x2-Q[A].x1:Q[A].x3-Q[A].x4:Q[A].x3-Q[A].x6,20>x[A]&&(x[A]=A!==ha?u.reversed?Q[A].x3-Q[A].x4:Q[A].x2-Q[A].x1:
|
|
541
|
-
u.options.indexLabelMaxWidth?u.indexLabelMaxWidth:x[A];if(E>x[A]||0>E)E=x[A];K[A]="inside"===u.indexLabelPlacement?z?Math.max(Q[A].height,p):1.5*p:!1;C=y.getPercentAndTotal(u,b);if(u.indexLabelFormatter||b.indexLabelFormatter)B={chart:y.options,dataSeries:u,dataPoint:b,total:C.total,percent:C.percent};b=b.indexLabelFormatter?b.indexLabelFormatter(B):b.indexLabel?y.replaceKeywordsWithValue(b.indexLabel,b,u,A):u.indexLabelFormatter?
|
|
542
|
-
b,u,A):b.label?b.label:"";0>=m&&(m=0);1E3>E&&1E3-E<
|
|
543
|
-
c.width=c.width===2*c.padding?0:c.width;L.push({textBlock:c,id:u.reversed?oa:A,isDirty:!1,lineColor:a,lineThickness:m,lineDashType:t,height:c.height<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 k,g=O-Z-ba/2,g=u.options.indexLabelMaxWidth?u.indexLabelMaxWidth>g?g:u.indexLabelMaxWidth:g,d=L.length-1;0<=d;d--){k=G[L[d].id];c=L[d];e=c.textBlock;
|
|
544
|
-
b.y&&(f=!0);c=k.indexLabelMaxWidth||g;if(c>g||0>c)c=g;h.push(c)}if(f)for(d=L.length-1;0<=d;d--)a=Q[d],L[d].textBlock.maxWidth=h[h.length-(d+1)],L[d].textBlock.measureText(),L[d].textBlock.height=L[d].textBlock.height===2*L[d].textBlock.padding?0:L[d].textBlock.height,L[d].textBlock.width=L[d].textBlock.width===2*L[d].textBlock.padding?0:L[d].textBlock.width,L[d].textBlock.x=O-g,c=L[d].textBlock.height<L[d].textBlock.maxHeight?
|
|
545
|
-
L[d].textBlock.width:L[d].textBlock.maxWidth,L[d].height=c,L[d].width=f,c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,L[d].textBlock.y=c-L[d].height/2,u.reversed?(L[d].textBlock.y+L[d].height>U+B&&(L[d].textBlock.y=U+B-L[d].height),L[d].textBlock.y<V-B&&(L[d].textBlock.y=V-B)):(L[d].textBlock.y<U-B&&(L[d].textBlock.y=U-B),L[d].textBlock.y+L[d].height>V+B&&(L[d].textBlock.y=V+B-L[d].height))}function k(){var a,
|
|
546
|
-
L[f].isDirty=!0:(a=Q[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:(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,L[f].textBlock.x=b+ba,L[f].textBlock.y=c-L[f].height/2,u.reversed?(L[f].textBlock.y+L[f].height>U+B&&(L[f].textBlock.y=U+B-L[f].height),L[f].textBlock.y<V-B&&(L[f].textBlock.y=
|
|
547
|
-
(L[f].textBlock.y=V+B-L[f].height)));else for(f=0;f<Q.length;f++)0==L[f].textBlock.text.length?L[f].isDirty=!0:(a=Q[f],b=a.height,c=L[f].height,e=L[f].width,b>=c?(b=f!=ha?(a.x4+a.x3)/2-e/2:(a.x5+a.x4)/2-e/2,c=f!=ha?(a.y1+a.y3)/2-c/2:(a.y1+a.y4)/2-c/2,L[f].textBlock.x=b,L[f].textBlock.y=c):L[f].isDirty=!0)}function d(){function a(b,c){var e;if(0>b||b>=L.length)return 0;var f,h=L[b].textBlock;if(0>c){c*=-1;f=p(b);
|
|
548
|
-
e);return e}f=s(b);e=l(b,f);if(e>=c)return h.y+=c,c;if(b==Q.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,e,f,h,k=0,d;h=(P-N+2*B)/r;d=r;for(var g,n=1;n<d;n++){f=n*h;for(var l=L.length-1;0<=l;l--)!L[l].isDirty&&(L[l].textBlock.y<f&&L[l].textBlock.y+L[l].height>f)&&(g=s(l),!(g>=L.length-1)&&L[l].textBlock.y+L[l].height+ka>L[g].textBlock.y&&(L[l].textBlock.y=L[l].textBlock.y+
|
|
549
|
-
p(g);if(0>f&&(f=0,L[f].isDirty))break;if(L[g].textBlock.y<L[f].textBlock.y+L[f].height){e=e||g;h=g;for(d=0;L[h].textBlock.y<L[f].textBlock.y+L[f].height+ka;){a=a||L[h].textBlock.y+L[h].height;d+=L[h].height;d+=ka;h=f;if(0>=h){h=0;d+=L[h].height;break}f=p(h);if(0>f){h=0;d+=L[h].height;break}}if(h!=g){k=L[h].textBlock.y;a-=k;a=d-a;k=c(a,e,h);break}}}return k}function c(a,b,e){var f=[],h=0,k=0;for(a=Math.abs(a);e<=
|
|
550
|
-
f[e],h<a)k++,h+=L[b.id].height+ka,L[b.id].textBlock.text="",L[b.id].indexLabelText="",L[b.id].isDirty=!0,L[b.id].textBlock.measureText();else break;return k}for(var e,f,h,k,g,n,r=1,m=0;m<2*r;m++){for(var z=L.length-1;0<=z&&!(0<=p(z)&&p(z),h=L[z],k=h.textBlock,n=(g=s(z)<Q.length?L[s(z)]:null)?g.textBlock:null,e=+h.height.toFixed(6),f=+k.y.toFixed(6),!h.isDirty&&(g&&f+e+ka>+n.y.toFixed(6))&&(e=k.y+e+ka-n.y,
|
|
551
|
-
u.reversed?U+B:V+B)-(0>a?u.reversed?V-B:U-B:L[a].textBlock.y+L[a].height+ka)}function m(a,b,c){var e,f,h,d=[],g=B,p=[];-1!==b&&(0<=$.indexOf(b)?(f=$.indexOf(b),$.splice(f,1)):($.push(b),$=$.sort(function(a,b){return a-b})));if(0===$.length)d=na;else{f=B*(1!=$.length||0!=$[0]&&$[0]!=Q.length-1?2:1)/n();for(var s=0;s<Q.length;s++){if(1==$.length&&0==$[0]){if(0===s){d.push(na[s]);e=g;continue}}else 0===
|
|
552
|
-
[],b=0;b<Q.length;b++)a.push(d[b]-Q[b].y1);return a}();var l={startTime:(new Date).getTime(),duration:c||500,easingFunction:function(a,b,c,e){return E.easing.easeOutQuart(a,b,c,e)},changeSection:function(a){for(var b,c,e=0;e<Q.length;e++)b=h[e],c=Q[e],b*=a,"undefined"===typeof p[e]&&(p[e]=0),0>p&&(p*=-1),c.y1+=b-p[e],c.y2+=b-p[e],c.y3+=b-p[e],c.y4+=b-p[e],c.y5&&(c.y5+=b-p[e],c.y6+=b-p[e]),p[e]=
|
|
553
|
-
x.y2-x.y1);e.fillStyle=a.backgroundColor;e.fillRect(x.x1,x.y1,x.width,x.height);l.changeSection(c,b);var f={};f.dataSeries=u;f.dataPoint=u.reversed?u.dataPoints[G.length-1-b]:u.dataPoints[b];f.index=u.reversed?G.length-1-b:b;a.toolTip.highlightObjects([f]);for(f=0;f<Q.length;f++)t(e,Q[f],u.fillOpacity);
|
|
554
|
-
function r(a){for(var b,c,e,f,k=0;k<Q.length;k++)f=1===L[k].lineThickness%2?0.5:0,c=((Q[k].y2+Q[k].y4)/2<<0)+f,b=h(c).x2-1,isNaN(b)&&(Math.round(Q[k].x1)===Math.round(Q[k].x4)&&Math.round(Q[k].x2)===Math.round(Q[k].x3))&&(b=Q[k].x2),e=L[k].textBlock.x,f=(L[k].textBlock.y+L[k].height/2<<0)+f,L[k].isDirty||0==L[k].lineThickness||(a.strokeStyle=L[k].lineColor,a.lineWidth=L[k].lineThickness,a.setLineDash&&
|
|
555
|
-
a.stroke())}function p(a){for(a-=1;-1<=a&&-1!=a&&L[a].isDirty;a--);return a}function s(a){for(a+=1;a<=Q.length&&a!=Q.length&&L[a].isDirty;a++);return a}function h(a){for(var b,c=0;c<G.length;c++)if(Q[c].y1<a&&Q[c].y4>a){b=Q[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 q(a){for(var b=
|
|
556
|
-
2,L[b].textBlock.render(!0),L[b].textBlock.y-=L[b].textBlock._lineHeight/2)}function
|
|
557
|
-
"center"===y.legend.horizontalAlign&&"center"===y.legend.verticalAlign)&&(y.legend.ctx=a,y.legend.setLayout(),y.legend.render());Aa.fNg&&Aa.fNg(y)}var y=this;if(!(0>=a.dataSeriesIndexes.length)){for(var u=this.data[a.dataSeriesIndexes[0]],G=u.dataPoints,x=this.plotArea,B=0.025*x.width,F=0.01*x.width,A=0,D=x.height-2*B-4,H=Math.min(x.width-2*F,2.8*x.height),M=!1,J=0;J<G.length;J++)if(!M&&("undefined"!==
|
|
558
|
-
("undefined"!==typeof G[J].label&&null!==G[J].label&&0<G[J].label.toString().length)&&(M=!0),!M&&"function"===typeof u.indexLabelFormatter||"function"===typeof G[J].indexLabelFormatter)M=!0;M=M||"undefined"!==typeof u.indexLabel&&null!==u.indexLabel&&0<u.indexLabel.toString().length;"inside"!==u.indexLabelPlacement&&M||(F=(x.width-0.75*H)/2);var J=x.x1+F,O=x.x2-F,N=x.y1+B+2,P=x.y2-B-2,R=a.targetCanvasCtx||
|
|
559
|
-
I;a=75*H/100;var ba=30*(O-a)/100;"funnel"===u.type?(fa=g(u.options.neckHeight)?0.35*D:u.neckHeight,I=g(u.options.neckWidth)?0.25*a:u.neckWidth,"string"===typeof fa&&fa.match(/%$/)?(fa=parseInt(fa),fa=fa*D/100):fa=parseInt(fa),"string"===typeof I&&I.match(/%$/)?(I=parseInt(I),I=I*a/100):I=parseInt(I),fa>D?fa=D:0>=fa&&(fa=0),I>a?I=a-0.5:0>=I&&(I=0)):"pyramid"===u.type&&(I=fa=0,u.reversed=u.reversed?!1:!0);var F=
|
|
560
|
-
P;I=u.valueRepresents=u.valueRepresents?u.valueRepresents:"height";J=[];a=[];var Q=[],F=[],Y=N,ha,ga=(aa-U)/(T-W),ja=-ga,H="area"===I?c():e();if(-1!==H){if(u.reversed)for(F.push(Y),I=H.length-1;0<I;I--)Y+=H[I],F.push(Math.round(Y));else for(I=0;I<H.length;I++)Y+=H[I],F.push(Math.round(Y));if(u.reversed)for(I=0;I<H.length;I++)F[I]<aa?(J.push(T),a.push(X),ha=I):(J.push((F[I]-U+ga*W)/ga),a.push((F[I]-U+ja*Z)/ja));
|
|
561
|
-
ha=I):(J.push(T),a.push(X));for(I=0;I<H.length-1;I++)Y=u.reversed?G[G.length-1-I].color?G[G.length-1-I].color:u._colorSet[(G.length-1-I)%u._colorSet.length]:G[I].color?G[I].color:u._colorSet[I%u._colorSet.length],I===ha?Q.push({x1:J[I],y1:F[I],x2:a[I],y2:F[I],x3:X,y3:aa,x4:a[I+1],y4:F[I+1],x5:J[I+1],y5:F[I+1],x6:T,y6:aa,id:I,height:F[I+1]-F[I],color:Y}):Q.push({x1:J[I],y1:F[I],x2:a[I],y2:F[I],x3:a[I+1],y3:F[I+1],
|
|
562
|
-
Q[I]);var ka=2,L=[],la=!1,$=[],na=[],J=!1;a=a=0;va($);for(I=0;I<G.length;I++)G[I].exploded&&(J=!0,u.reversed?$.push(G.length-1-I):$.push(I));R.clearRect(x.x1,x.y1,x.width,x.height);R.fillStyle=y.backgroundColor;R.fillRect(x.x1,x.y1,x.width,x.height);if(M&&u.visible&&(b(),k(),"inside"!==u.indexLabelPlacement)){f();d();for(I=0;I<G.length;I++)L[I].isDirty||(a=L[I].textBlock.x+L[I].width,
|
|
563
|
-
A,Q[I].x6+=A),L[I].textBlock.x+=A}for(I=0;I<Q.length;I++)A=Q[I],t(R,A,u.fillOpacity),na.push(A.y1);
|
|
564
|
-
function(a){var b=-1;if(!la&&!y.isAnimating&&(g(a.dataSeries.explodeOnClick)||a.dataSeries.explodeOnClick)&&(b=u.reversed?G.length-1-a.dataPointIndex:a.dataPointIndex,0<=b)){a=b;if("funnel"===u.type||"pyramid"===u.type)u.reversed?G[G.length-1-a].exploded=G[G.length-1-a].exploded?!1:!0:G[a].exploded=G[a].exploded?!1:!0;m(y,b,500)}};return{source:R,dest:this.plotArea.ctx,animationCallback:function(a,
|
|
565
|
-
animationBase:0}}}}};q.prototype.requestAnimFrame=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){window.setTimeout(a,1E3/60)}}();q.prototype.cancelRequestAnimFrame=window.cancelAnimationFrame||window.webkitCancelRequestAnimationFrame||window.mozCancelRequestAnimationFrame||
|
|
566
|
-
q.prototype.set=function(a,e,c){c="undefined"===typeof c?!0:c;"options"===a?(this.options=e,c&&this.render()):q.base.set.call(this,a,e,c)};q.prototype.exportChart=function(a){a="undefined"===typeof a?{}:a;var e=a.format?a.format:"png",c=a.fileName?a.fileName:this.exportFileName;if(a.toDataURL)return this.canvas.toDataURL("image/"+e);ab(this.canvas,e,c)};q.prototype.print=function(){var a=this.exportChart({toDataURL:!0}),
|
|
567
|
-
R(e,{position:"absolute",width:"100%",border:"0px",margin:"0px 0px 0px 0px",padding:"0px 0px 0px 0px"});e.style.height=this.height+"px";this._canvasJSContainer.appendChild(e);var c=this,b=e.contentWindow||e.contentDocument.document||e.contentDocument;b.document.open();b.document.write('<!DOCTYPE HTML>\n<html><body><img src="'+a+'"/><body/></html>');b.document.body&&b.document.body.style&&(b.document.body.style.margin=
|
|
568
|
-
setTimeout(function(){b.focus();b.print();setTimeout(function(){c._canvasJSContainer.removeChild(e)},1E3)},500)};q.prototype.getPercentAndTotal=function(a,e){var c=null,b=null,f=c=null;if(0<=a.type.indexOf("stacked"))b=0,c=e.x.getTime?e.x.getTime():e.x,c in a.plotUnit.yTotals&&(b=a.plotUnit.yTotals[c],c=a.plotUnit.yAbsTotals[c],f=isNaN(e.y)?0:0===c?0:100*(e.y/c));else if("pie"===a.type||"doughnut"===a.type||"funnel"===
|
|
569
|
-
(b+=a.dataPoints[c].y);f=isNaN(e.y)?0:100*(e.y/b)}return{percent:f,total:b}};q.prototype.replaceKeywordsWithValue=function(a,e,c,b,f){var k=this;f="undefined"===typeof f?0:f;if((0<=c.type.indexOf("stacked")||"pie"===c.type||"doughnut"===c.type||"funnel"===c.type||"pyramid"===c.type)&&(0<=a.indexOf("#percent")||0<=a.indexOf("#total"))){var d="#percent",g="#total",l=this.getPercentAndTotal(c,e),g=isNaN(l.total)?
|
|
570
|
-
else{var l="#,##0.",n=Math.max(Math.ceil(Math.log(1/Math.abs(d))/Math.LN10),2);if(isNaN(n)||!isFinite(n))n=2;for(var r=0;r<n;r++)l+="#";c.percentFormatString=l}a=a.replace("#percent",Y(d,l,k._cultureInfo));a=a.replace("#total",Y(g,c.yValueFormatString?c.yValueFormatString:"#,##0.########",k._cultureInfo))}while(0<=a.indexOf("#percent")||0<=a.indexOf("#total"))}return a.replace(/\{.*?\}|"[^"]*"|'[^']*'/g,
|
|
571
|
-
a.length-1);a=Ma(a.slice(1,a.length-1));a=a.replace("#index",f);var d=null;try{var h=a.match(/(.*?)\s*\[\s*(.*?)\s*\]/);h&&0<h.length&&(d=Ma(h[2]),a=Ma(h[1]))}catch(g){}h=null;if("color"===a)return"waterfall"===c.type?e.color?e.color:0<e.y?c.risingColor:c.fallingColor:"error"===c.type?c.color?c.color:c._colorSet[d%c._colorSet.length]:e.color?e.color:c.color?c.color:c._colorSet[b%c._colorSet.length];if(e.hasOwnProperty(a))h=
|
|
572
|
-
return"x"===a?(c.axisX&&"dateTime"===c.axisX.valueType||"dateTime"===c.xValueType||e.x&&e.x.getTime)&&!c.axisX.logarithmic?qa(h,e.xValueFormatString?e.xValueFormatString:c.xValueFormatString?c.xValueFormatString:c.xValueFormatString=k.axisX&&k.axisX.autoValueFormatString?k.axisX.autoValueFormatString:"DD MMM YY",k._cultureInfo):Y(h,e.xValueFormatString?e.xValueFormatString:c.xValueFormatString?c.xValueFormatString:c.xValueFormatString=
|
|
573
|
-
e.yValueFormatString:c.yValueFormatString?c.yValueFormatString:c.yValueFormatString="#,##0.########",k._cultureInfo):"z"===a?Y(h,e.zValueFormatString?e.zValueFormatString:c.zValueFormatString?c.zValueFormatString:c.zValueFormatString="#,##0.########",k._cultureInfo):h})};ga(B,aa);B.prototype.setLayout=function(){var a=this.dockInsidePlotArea?this.chart.plotArea:this.chart,e=a.layoutManager.getFreeSpace(),c=null,b=0,f=0,k=0,d=0,l=this.markerMargin=
|
|
574
|
-
this.chart.options.legend.markerMargin:0.3*this.fontSize;this.height=0;var m=[],n=[];if("top"===this.verticalAlign||"bottom"===this.verticalAlign)this.orientation="horizontal",c=this.verticalAlign,k=this.maxWidth=null!==this.maxWidth?this.maxWidth:e.width,d=this.maxHeight=null!==this.maxHeight?this.maxHeight:0.5*e.height;else if("center"===this.verticalAlign){this.orientation="vertical";if("left"===this.horizontalAlign||"center"===
|
|
575
|
-
k=this.maxWidth=null!==this.maxWidth?this.maxWidth:0.5*e.width;d=this.maxHeight=null!==this.maxHeight?this.maxHeight:e.height}this.errorMarkerColor=[];for(var r=0;r<this.dataSeries.length;r++){var p=this.dataSeries[r];if(p.dataPoints&&p.dataPoints.length){if("pie"!==p.type&&"doughnut"!==p.type&&"funnel"!==p.type&&"pyramid"!==p.type){var s=p.legendMarkerType=p.legendMarkerType?p.legendMarkerType:"line"!==p.type&&"stepLine"!==
|
|
576
|
-
"error"===p.type&&p._linkedSeries?p._linkedSeries.legendMarkerType?p._linkedSeries.legendMarkerType:D.getDefaultLegendMarker(p._linkedSeries.type):D.getDefaultLegendMarker(p.type):p.markerType,h=p.legendText?p.legendText:this.itemTextFormatter?this.itemTextFormatter({chart:this.chart,legend:this.options,dataSeries:p,dataPoint:null}):p.name,t=p.legendMarkerColor=p.legendMarkerColor?p.legendMarkerColor:p.markerColor?p.markerColor:
|
|
577
|
-
E=p.markerSize||"line"!==p.type&&"stepLine"!==p.type&&"spline"!==p.type?0.75*this.lineHeight:0,q=p.legendMarkerBorderColor?p.legendMarkerBorderColor:p.markerBorderColor,u=p.legendMarkerBorderThickness?p.legendMarkerBorderThickness:p.markerBorderThickness?Math.max(1,Math.round(0.2*E)):0;"error"===p.type&&this.errorMarkerColor.push(t);h=p.legendText=this.chart.replaceKeywordsWithValue(h,p.dataPoints[0],p,r);s={markerType:s,
|
|
578
|
-
dataSeriesIndex:p.index,dataPointIndex:null,markerBorderColor:q,markerBorderThickness:u};m.push(s)}else for(var
|
|
579
|
-
p.legendMarkerColor?p.legendMarkerColor:
|
|
580
|
-
|
|
581
|
-
k):this.itemMaxWidth=k;E=0===E?0.75*this.lineHeight:E;
|
|
582
|
-
fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"});s.textBlock.measureText();null!==this.itemWidth&&(s.textBlock.width=this.itemWidth-(E+l+("line"===s.chartType||"spline"===s.chartType||"stepLine"===s.chartType?2*0.1*this.lineHeight:0)));if(!p||p.width+Math.round(s.textBlock.width+E+l+(0===
|
|
583
|
-
this.height+=h,h=0;h=Math.max(h,s.textBlock.height?s.textBlock.height:this.lineHeight);s.textBlock.x=p.width;s.textBlock.y=0;p.width+=Math.round(s.textBlock.width+E+l+(0===p.width?0:this.horizontalSpacing)+("line"===s.chartType||"spline"===s.chartType||"stepLine"===s.chartType?2*0.1*this.lineHeight:0));p.items.push(s);this.width=Math.max(p.width,
|
|
584
|
-
fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"}),s.textBlock.measureText(),null!==this.itemWidth&&(s.textBlock.width=this.itemWidth-(E+l+("line"===s.chartType||"spline"===s.chartType||"stepLine"===s.chartType?2*0.1*this.lineHeight:0))),
|
|
585
|
-
0,p.width+=Math.round(s.textBlock.width+E+l+(0===p.width?0:this.horizontalSpacing)+("line"===s.chartType||"spline"===s.chartType||"stepLine"===s.chartType?2*0.1*this.lineHeight:0)),p.items.push(s),this.width=Math.max(p.width,this.width))}this.height=!1===this.itemWrap?n.length*this.lineHeight:this.height+
|
|
586
|
-
|
|
587
|
-
{id:s.id,objectType:"legendItem",legendItemIndex:r,dataSeriesIndex:s.dataSeriesIndex,dataPointIndex:s.dataPointIndex};this.markerSize=E;this.rows=n;0<m.length&&a.layoutManager.registerSpace(c,{width:this.width+2+2,height:this.height+5+5});this.bounds={x1:f,y1:b,x2:f+this.width,y2:b+this.height}};B.prototype.render=
|
|
588
|
-
this.ctx.roundRect(a,e,this.width,this.height,this.cornerRadius,this.borderThickness,this.backgroundColor,this.borderColor);for(var g=0,m=0;m<d.length;m++){for(var n=d[m],r=0,p=0;p<n.items.length;p++){var s=n.items[p],h=s.textBlock.x+a+(0===p?0.2*k:this.horizontalSpacing),t=e+g,E=h;this.chart.data[s.dataSeriesIndex].visible||
|
|
589
|
-
"spline"===s.chartType)this.ctx.strokeStyle=s.lineColor,this.ctx.lineWidth=Math.ceil(this.lineHeight/8),this.ctx.beginPath(),this.ctx.moveTo(h-0.1*this.lineHeight,t+this.lineHeight/2),this.ctx.lineTo(h+0.85*this.lineHeight,t+this.lineHeight/2),this.ctx.stroke(),E-=0.1*this.lineHeight;if("error"===s.chartType){this.ctx.strokeStyle=
|
|
590
|
-
0.02*this.lineHeight;this.ctx.moveTo(q,u);this.ctx.lineTo(q+w,u);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(q+w/2,u);this.ctx.lineTo(q+w/2,u+v);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(q,u+v);this.ctx.lineTo(q+w,u+v);this.ctx.stroke();this.errorMarkerColor.shift()}l.drawMarker(h+k/2,t+this.lineHeight/2,this.ctx,
|
|
591
|
-
s.textBlock.x=h+c+k;if("line"===s.chartType||"stepLine"===s.chartType||"spline"===s.chartType)s.textBlock.x+=0.1*this.lineHeight;s.textBlock.y=Math.round(t+this.lineHeight/2);s.textBlock.render(!0);this.ctx.restore();r=0<p?Math.max(r,s.textBlock.height?s.textBlock.height:this.lineHeight):s.textBlock.height?s.textBlock.height:this.lineHeight;
|
|
592
|
-
this.lineHeight/2,s.textBlock.x+s.textBlock.width-E,s.textBlock.height?s.textBlock.height:this.lineHeight);s.x1=this.chart._eventManager.objectMap[s.id].x1=E;s.y1=this.chart._eventManager.objectMap[s.id].y1=s.textBlock.y-this.lineHeight/2;s.x2=this.chart._eventManager.objectMap[s.id].x2=s.textBlock.x+s.textBlock.width;s.y2=this.chart._eventManager.objectMap[s.id].y2=
|
|
593
|
-
function(){var a=this.type;if("column"===a||"line"===a||"stepLine"===a||"spline"===a||"area"===a||"stepArea"===a||"splineArea"===a||"stackedColumn"===a||"stackedLine"===a||"bubble"===a||"scatter"===a||"stackedArea"===a||"stackedColumn100"===a||"stackedLine100"===a||"stackedArea100"===a||"candlestick"===a||"ohlc"===a||"rangeColumn"===a||"rangeArea"===a||"rangeSplineArea"===
|
|
594
|
-
if("pie"===a||"doughnut"===a||"funnel"===a||"pyramid"===a)return"none";"error"!==a&&window.console.log("Unknown Chart Type: "+a);return null};D.getDefaultLegendMarker=function(a){if("column"===a||"stackedColumn"===a||"stackedLine"===a||"bar"===a||"stackedBar"===a||"stackedBar100"===a||"bubble"===a||"scatter"===a||"stackedColumn100"===a||"stackedLine100"===a||
|
|
595
|
-
a||"waterfall"===a)return"square";if("line"===a||"stepLine"===a||"spline"===a||"pie"===a||"doughnut"===a)return"circle";if("area"===a||"splineArea"===a||"stackedArea"===a||"stackedArea100"===a||"funnel"===a||"pyramid"===a)return"triangle";if("error"===a)return"none";window.console.log("Unknown Chart Type: "+a);return null};D.prototype.getDataPointAtX=function(a,
|
|
596
|
-
Infinity,n=0,r=0,p=0;"none"!==this.chart.plotInfo.axisPlacement&&(this.axisX.logarithmic?(p=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x),p=1<p?Math.min(Math.max((this.dataPoints.length-1)/p*Math.log(a/this.dataPoints[0].x)>>0,0),this.dataPoints.length):0):(p=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0<p?Math.min(Math.max((this.dataPoints.length-
|
|
597
|
-
this.dataPoints[d],s=this.axisX&&this.axisX.logarithmic?f.x>a?f.x/a:a/f.x:Math.abs(f.x-a);s<b.distance&&(g(c)||c&&!g(f.y))&&(b.dataPoint=f,b.distance=s,b.index=d);f=s;f<=m?m=f:0<l?n++:r++;if(1E3<n&&1E3<r)break}else if(0>p-k&&p+k>=this.dataPoints.length)break;-1===l?(k++,l=1):l=-1}return e||(b.dataPoint.x.getTime?b.dataPoint.x.getTime():b.dataPoint.x)!==(a.getTime?a.getTime():
|
|
598
|
-
a<this.chart.plotArea.x1||a>this.chart.plotArea.x2||e<this.chart.plotArea.y1||e>this.chart.plotArea.y2)return null;c=c||!1;var b=[],f=0,k=0,d=1,l=!1,m=Infinity,n=0,r=0,p=0;if("none"!==this.chart.plotInfo.axisPlacement)if(p=(this.chart.axisX[0]?this.chart.axisX[0]:this.chart.axisX2[0]).getXValueAt({x:a,y:e}),this.axisX.logarithmic)var s=Math.log(this.dataPoints[this.dataPoints.length-
|
|
599
|
-
0),this.dataPoints.length):0;else s=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0<s?Math.min(Math.max((this.dataPoints.length-1)/s*(p-this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;for(;;){k=0<d?p+f:p-f;if(0<=k&&k<this.dataPoints.length){var s=this.chart._eventManager.objectMap[this.dataPointIds[k]],h=this.dataPoints[k],t=null;if(s){switch(this.type){case "column":case "stackedColumn":case "stackedColumn100":case "bar":case "stackedBar":case "stackedBar100":case "rangeColumn":case "rangeBar":case "waterfall":case "error":a>=
|
|
537
|
+
n+=p,n>f&&(n-=p,r=c,d=(b+r)*(f-n)/2,a-=d,p=f-n,n+=f-n,p+=a/r,n+=a/r,d=!0),b=r)),e.push(p);return e}function b(){if(u&&G){for(var a,b,c,e,f,k,d,n,p,r,s,l,m,t,z,E,q,v,x=[],K=[],C={percent:null,total:null},B=null,A=0;A<G.length;A++)v=Q[A],v="undefined"!==typeof v.x5?(v.y2+v.y4)/2:(v.y2+v.y3)/2,v=h(v).x2+1,x[A]=O-(isNaN(v)?0:v)-ba;v=0.5*ba;for(var A=0,oa=G.length-1;A<G.length||0<=oa;A++,oa--){b=u.reversed?G[oa]:G[A];a=b.color?b.color:u.reversed?u._colorSet[(G.length-1-A)%u._colorSet.length]:u._colorSet[A%
|
|
538
|
+
u._colorSet.length];c=b.indexLabelPlacement||u.indexLabelPlacement||"outside";q=b.indexLabelTextAlign||u.indexLabelTextAlign||"left";e=b.indexLabelBackgroundColor||u.indexLabelBackgroundColor||(w?"transparent":null);f=b.indexLabelBorderColor||u.indexLabelBorderColor||(w?"transparent":null);k=g(b.indexLabelBorderThickness)?u.indexLabelBorderThickness:b.indexLabelBorderThickness;d=g(b.indexLabelPadding)?u.options.indexLabelPadding?u.options.indexLabelPadding:u.indexLabelPadding:b.indexLabelPadding;
|
|
539
|
+
n=b.indexLabelFontColor||u.indexLabelFontColor||"#979797";p=g(b.indexLabelFontSize)?u.indexLabelFontSize:b.indexLabelFontSize;r=b.indexLabelFontStyle||u.indexLabelFontStyle||"normal";s=b.indexLabelFontFamily||u.indexLabelFontFamily||"arial";l=b.indexLabelFontWeight||u.indexLabelFontWeight||"normal";a=b.indexLabelLineColor||u.options.indexLabelLineColor||a;m="number"===typeof b.indexLabelLineThickness?b.indexLabelLineThickness:"number"===typeof u.indexLabelLineThickness?u.indexLabelLineThickness:2;
|
|
540
|
+
t=b.indexLabelLineDashType||u.indexLabelLineDashType||"solid";z="undefined"!==typeof b.indexLabelWrap?b.indexLabelWrap:"undefined"!==typeof u.indexLabelWrap?u.indexLabelWrap:!0;E=u.dataPointIds[A];y._eventManager.objectMap[E]={id:E,objectType:"dataPoint",dataPointIndex:A,dataSeriesIndex:0,funnelSection:Q[u.reversed?G.length-1-A:A]};"inside"===u.indexLabelPlacement&&(x[A]=A!==ha?u.reversed?Q[A].x2-Q[A].x1:Q[A].x3-Q[A].x4:Q[A].x3-Q[A].x6,20>x[A]&&(x[A]=A!==ha?u.reversed?Q[A].x3-Q[A].x4:Q[A].x2-Q[A].x1:
|
|
541
|
+
Q[A].x2-Q[A].x1,x[A]/=2));E=b.indexLabelMaxWidth?b.indexLabelMaxWidth:u.options.indexLabelMaxWidth?u.indexLabelMaxWidth:x[A];if(E>x[A]||0>E)E=x[A];K[A]="inside"===u.indexLabelPlacement?z?Math.max(Q[A].height,p):1.5*p:!1;C=y.getPercentAndTotal(u,b);if(u.indexLabelFormatter||b.indexLabelFormatter)B={chart:y.options,dataSeries:u,dataPoint:b,total:C.total,percent:C.percent};b=b.indexLabelFormatter?b.indexLabelFormatter(B):b.indexLabel?y.replaceKeywordsWithValue(b.indexLabel,b,u,A):u.indexLabelFormatter?
|
|
542
|
+
u.indexLabelFormatter(B):u.indexLabel?y.replaceKeywordsWithValue(u.indexLabel,b,u,A):b.label?b.label:"";0>=m&&(m=0);1E3>E&&1E3-E<v&&(E+=1E3-E);g(u.options.indexLabelMaxWidth)&&(u.indexLabelMaxWidth=g(u.indexLabelMaxWidth)?E:Math.max(E,u.indexLabelMaxWidth));R.roundRect||Ca(R);c=new ma(R,{fontSize:p,fontFamily:s,fontColor:n,fontStyle:r,fontWeight:l,horizontalAlign:c,textAlign:q,backgroundColor:e,borderColor:f,borderThickness:k,maxWidth:E,maxHeight:!1===K[A]?z?4.28571429*p:1.5*p:K[A],text:b,padding:d,
|
|
543
|
+
textBaseline:"middle"});c.measureText();c.height=c.height===2*c.padding?0:c.height;c.width=c.width===2*c.padding?0:c.width;L.push({textBlock:c,id:u.reversed?oa:A,isDirty:!1,lineColor:a,lineThickness:m,lineDashType:t,height:c.height<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 k,g=O-Z-ba/2,g=u.options.indexLabelMaxWidth?u.indexLabelMaxWidth>g?g:u.indexLabelMaxWidth:g,d=L.length-1;0<=d;d--){k=G[L[d].id];c=L[d];e=c.textBlock;
|
|
544
|
+
b=(a=s(d)<Q.length?L[s(d)]:null)?a.textBlock:null;c=c.height;a&&e.y+c+ka>b.y&&(f=!0);c=k.indexLabelMaxWidth||g;if(c>g||0>c)c=g;h.push(c)}if(f)for(d=L.length-1;0<=d;d--)a=Q[d],L[d].textBlock.maxWidth=h[h.length-(d+1)],L[d].textBlock.measureText(),L[d].textBlock.height=L[d].textBlock.height===2*L[d].textBlock.padding?0:L[d].textBlock.height,L[d].textBlock.width=L[d].textBlock.width===2*L[d].textBlock.padding?0:L[d].textBlock.width,L[d].textBlock.x=O-g,c=L[d].textBlock.height<L[d].textBlock.maxHeight?
|
|
545
|
+
L[d].textBlock.height:L[d].textBlock.maxHeight,f=L[d].textBlock.width<L[d].textBlock.maxWidth?L[d].textBlock.width:L[d].textBlock.maxWidth,L[d].height=c,L[d].width=f,c="undefined"!==typeof a.x5?(a.y2+a.y4)/2:(a.y2+a.y3)/2,L[d].textBlock.y=c-L[d].height/2,u.reversed?(L[d].textBlock.y+L[d].height>U+B&&(L[d].textBlock.y=U+B-L[d].height),L[d].textBlock.y<V-B&&(L[d].textBlock.y=V-B)):(L[d].textBlock.y<U-B&&(L[d].textBlock.y=U-B),L[d].textBlock.y+L[d].height>V+B&&(L[d].textBlock.y=V+B-L[d].height))}function k(){var a,
|
|
546
|
+
b,c,e;if("inside"!==u.indexLabelPlacement)for(var f=0;f<Q.length;f++)0==L[f].textBlock.text.length?L[f].isDirty=!0:(a=Q[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:(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,L[f].textBlock.x=b+ba,L[f].textBlock.y=c-L[f].height/2,u.reversed?(L[f].textBlock.y+L[f].height>U+B&&(L[f].textBlock.y=U+B-L[f].height),L[f].textBlock.y<V-B&&(L[f].textBlock.y=
|
|
547
|
+
V-B)):(L[f].textBlock.y<U-B&&(L[f].textBlock.y=U-B),L[f].textBlock.y+L[f].height>V+B&&(L[f].textBlock.y=V+B-L[f].height)));else for(f=0;f<Q.length;f++)0==L[f].textBlock.text.length?L[f].isDirty=!0:(a=Q[f],b=a.height,c=L[f].height,e=L[f].width,b>=c?(b=f!=ha?(a.x4+a.x3)/2-e/2:(a.x5+a.x4)/2-e/2,c=f!=ha?(a.y1+a.y3)/2-c/2:(a.y1+a.y4)/2-c/2,L[f].textBlock.x=b,L[f].textBlock.y=c):L[f].isDirty=!0)}function d(){function a(b,c){var e;if(0>b||b>=L.length)return 0;var f,h=L[b].textBlock;if(0>c){c*=-1;f=p(b);
|
|
548
|
+
e=l(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=s(b);e=l(b,f);if(e>=c)return h.y+=c,c;if(b==Q.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,e,f,h,k=0,d;h=(P-N+2*B)/r;d=r;for(var g,n=1;n<d;n++){f=n*h;for(var l=L.length-1;0<=l;l--)!L[l].isDirty&&(L[l].textBlock.y<f&&L[l].textBlock.y+L[l].height>f)&&(g=s(l),!(g>=L.length-1)&&L[l].textBlock.y+L[l].height+ka>L[g].textBlock.y&&(L[l].textBlock.y=L[l].textBlock.y+
|
|
549
|
+
L[l].height-f>f-L[l].textBlock.y?f+1:f-L[l].height-1))}for(g=Q.length-1;0<g;g--)if(!L[g].isDirty){f=p(g);if(0>f&&(f=0,L[f].isDirty))break;if(L[g].textBlock.y<L[f].textBlock.y+L[f].height){e=e||g;h=g;for(d=0;L[h].textBlock.y<L[f].textBlock.y+L[f].height+ka;){a=a||L[h].textBlock.y+L[h].height;d+=L[h].height;d+=ka;h=f;if(0>=h){h=0;d+=L[h].height;break}f=p(h);if(0>f){h=0;d+=L[h].height;break}}if(h!=g){k=L[h].textBlock.y;a-=k;a=d-a;k=c(a,e,h);break}}}return k}function c(a,b,e){var f=[],h=0,k=0;for(a=Math.abs(a);e<=
|
|
550
|
+
b;e++)f.push(Q[e]);f.sort(function(a,b){return a.height-b.height});for(e=0;e<f.length;e++)if(b=f[e],h<a)k++,h+=L[b.id].height+ka,L[b.id].textBlock.text="",L[b.id].indexLabelText="",L[b.id].isDirty=!0,L[b.id].textBlock.measureText();else break;return k}for(var e,f,h,k,g,n,r=1,m=0;m<2*r;m++){for(var z=L.length-1;0<=z&&!(0<=p(z)&&p(z),h=L[z],k=h.textBlock,n=(g=s(z)<Q.length?L[s(z)]:null)?g.textBlock:null,e=+h.height.toFixed(6),f=+k.y.toFixed(6),!h.isDirty&&(g&&f+e+ka>+n.y.toFixed(6))&&(e=k.y+e+ka-n.y,
|
|
551
|
+
f=a(z,-e),f<e&&(0<f&&(e-=f),f=a(s(z),e),f!=e)));z--);b()}}function l(a,b){return(b<Q.length?L[b].textBlock.y:u.reversed?U+B:V+B)-(0>a?u.reversed?V-B:U-B:L[a].textBlock.y+L[a].height+ka)}function m(a,b,c){var e,f,h,d=[],g=B,p=[];-1!==b&&(0<=$.indexOf(b)?(f=$.indexOf(b),$.splice(f,1)):($.push(b),$=$.sort(function(a,b){return a-b})));if(0===$.length)d=na;else{f=B*(1!=$.length||0!=$[0]&&$[0]!=Q.length-1?2:1)/n();for(var s=0;s<Q.length;s++){if(1==$.length&&0==$[0]){if(0===s){d.push(na[s]);e=g;continue}}else 0===
|
|
552
|
+
s&&(e=-1*g);d.push(na[s]+e);if(0<=$.indexOf(s)||s<Q.length&&0<=$.indexOf(s+1))e+=f}}h=function(){for(var a=[],b=0;b<Q.length;b++)a.push(d[b]-Q[b].y1);return a}();var l={startTime:(new Date).getTime(),duration:c||500,easingFunction:function(a,b,c,e){return E.easing.easeOutQuart(a,b,c,e)},changeSection:function(a){for(var b,c,e=0;e<Q.length;e++)b=h[e],c=Q[e],b*=a,"undefined"===typeof p[e]&&(p[e]=0),0>p&&(p*=-1),c.y1+=b-p[e],c.y2+=b-p[e],c.y3+=b-p[e],c.y4+=b-p[e],c.y5&&(c.y5+=b-p[e],c.y6+=b-p[e]),p[e]=
|
|
553
|
+
b}};a._animator.animate(0,c,function(c){var e=a.plotArea.ctx||a.ctx;la=!0;e.clearRect(x.x1,x.y1,x.x2-x.x1,x.y2-x.y1);e.fillStyle=a.backgroundColor;e.fillRect(x.x1,x.y1,x.width,x.height);l.changeSection(c,b);var f={};f.dataSeries=u;f.dataPoint=u.reversed?u.dataPoints[G.length-1-b]:u.dataPoints[b];f.index=u.reversed?G.length-1-b:b;a.toolTip.highlightObjects([f]);for(f=0;f<Q.length;f++)t(e,Q[f],u.fillOpacity);v(e);M&&("inside"!==u.indexLabelPlacement?r(e):k(),q(e));1<=c&&(la=!1)},null,E.easing.easeOutQuart)}
|
|
554
|
+
function n(){for(var a=0,b=0;b<Q.length-1;b++)(0<=$.indexOf(b)||0<=$.indexOf(b+1))&&a++;return a}function r(a){for(var b,c,e,f,k=0;k<Q.length;k++)f=1===L[k].lineThickness%2?0.5:0,c=((Q[k].y2+Q[k].y4)/2<<0)+f,b=h(c).x2-1,isNaN(b)&&(Math.round(Q[k].x1)===Math.round(Q[k].x4)&&Math.round(Q[k].x2)===Math.round(Q[k].x3))&&(b=Q[k].x2),e=L[k].textBlock.x,f=(L[k].textBlock.y+L[k].height/2<<0)+f,L[k].isDirty||0==L[k].lineThickness||(a.strokeStyle=L[k].lineColor,a.lineWidth=L[k].lineThickness,a.setLineDash&&
|
|
555
|
+
a.setLineDash(S(L[k].lineDashType,L[k].lineThickness)),a.beginPath(),a.moveTo(b,c),a.lineTo(e,f),a.stroke())}function p(a){for(a-=1;-1<=a&&-1!=a&&L[a].isDirty;a--);return a}function s(a){for(a+=1;a<=Q.length&&a!=Q.length&&L[a].isDirty;a++);return a}function h(a){for(var b,c=0;c<G.length;c++)if(Q[c].y1<a&&Q[c].y4>a){b=Q[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 q(a){for(var b=
|
|
556
|
+
0;b<Q.length;b++)L[b].isDirty||(a&&(L[b].textBlock.ctx=a),L[b].textBlock.y+=L[b].textBlock._lineHeight/2,L[b].textBlock.render(!0),L[b].textBlock.y-=L[b].textBlock._lineHeight/2)}function v(a){y.plotArea.layoutManager.reset();a.roundRect||Ca(a);y.title&&(y.title.dockInsidePlotArea||"center"===y.title.horizontalAlign&&"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&&
|
|
557
|
+
"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());Aa.fNg&&Aa.fNg(y)}var y=this;if(!(0>=a.dataSeriesIndexes.length)){for(var u=this.data[a.dataSeriesIndexes[0]],G=u.dataPoints,x=this.plotArea,B=0.025*x.width,F=0.01*x.width,A=0,D=x.height-2*B-4,H=Math.min(x.width-2*F,2.8*x.height),M=!1,J=0;J<G.length;J++)if(!M&&("undefined"!==
|
|
558
|
+
typeof G[J].indexLabel&&null!==G[J].indexLabel&&0<G[J].indexLabel.toString().length)&&(M=!0),!M&&("undefined"!==typeof G[J].label&&null!==G[J].label&&0<G[J].label.toString().length)&&(M=!0),!M&&"function"===typeof u.indexLabelFormatter||"function"===typeof G[J].indexLabelFormatter)M=!0;M=M||"undefined"!==typeof u.indexLabel&&null!==u.indexLabel&&0<u.indexLabel.toString().length;"inside"!==u.indexLabelPlacement&&M||(F=(x.width-0.75*H)/2);var J=x.x1+F,O=x.x2-F,N=x.y1+B+2,P=x.y2-B-2,R=a.targetCanvasCtx||
|
|
559
|
+
this.plotArea.ctx||this.ctx;if(0!=u.length&&(u.dataPoints&&u.visible)&&0!==G.length){var fa,I;a=75*H/100;var ba=30*(O-a)/100;"funnel"===u.type?(fa=g(u.options.neckHeight)?0.35*D:u.neckHeight,I=g(u.options.neckWidth)?0.25*a:u.neckWidth,"string"===typeof fa&&fa.match(/%$/)?(fa=parseInt(fa),fa=fa*D/100):fa=parseInt(fa),"string"===typeof I&&I.match(/%$/)?(I=parseInt(I),I=I*a/100):I=parseInt(I),fa>D?fa=D:0>=fa&&(fa=0),I>a?I=a-0.5:0>=I&&(I=0)):"pyramid"===u.type&&(I=fa=0,u.reversed=u.reversed?!1:!0);var F=
|
|
560
|
+
J+a/2,W=J,Z=J+a,U=u.reversed?P:N,T=F-I/2,X=F+I/2,aa=u.reversed?N+fa:P-fa,V=u.reversed?N:P;I=u.valueRepresents=u.valueRepresents?u.valueRepresents:"height";J=[];a=[];var Q=[],F=[],Y=N,ha,ga=(aa-U)/(T-W),ja=-ga,H="area"===I?c():e();if(-1!==H){if(u.reversed)for(F.push(Y),I=H.length-1;0<I;I--)Y+=H[I],F.push(Math.round(Y));else for(I=0;I<H.length;I++)Y+=H[I],F.push(Math.round(Y));if(u.reversed)for(I=0;I<H.length;I++)F[I]<aa?(J.push(T),a.push(X),ha=I):(J.push((F[I]-U+ga*W)/ga),a.push((F[I]-U+ja*Z)/ja));
|
|
561
|
+
else for(I=0;I<H.length;I++)F[I]<aa?(J.push((F[I]-U+ga*W)/ga),a.push((F[I]-U+ja*Z)/ja),ha=I):(J.push(T),a.push(X));for(I=0;I<H.length-1;I++)Y=u.reversed?G[G.length-1-I].color?G[G.length-1-I].color:u._colorSet[(G.length-1-I)%u._colorSet.length]:G[I].color?G[I].color:u._colorSet[I%u._colorSet.length],I===ha?Q.push({x1:J[I],y1:F[I],x2:a[I],y2:F[I],x3:X,y3:aa,x4:a[I+1],y4:F[I+1],x5:J[I+1],y5:F[I+1],x6:T,y6:aa,id:I,height:F[I+1]-F[I],color:Y}):Q.push({x1:J[I],y1:F[I],x2:a[I],y2:F[I],x3:a[I+1],y3:F[I+1],
|
|
562
|
+
x4:J[I+1],y4:F[I+1],id:I,height:F[I+1]-F[I],color:Y}),u.dataPointEOs[I]&&Q[I]&&(u.dataPointEOs[I].sectionsofFunnel=Q[I]);var ka=2,L=[],la=!1,$=[],na=[],J=!1;a=a=0;va($);for(I=0;I<G.length;I++)G[I].exploded&&(J=!0,u.reversed?$.push(G.length-1-I):$.push(I));R.clearRect(x.x1,x.y1,x.width,x.height);R.fillStyle=y.backgroundColor;R.fillRect(x.x1,x.y1,x.width,x.height);if(M&&u.visible&&(b(),k(),"inside"!==u.indexLabelPlacement)){f();d();for(I=0;I<G.length;I++)L[I].isDirty||(a=L[I].textBlock.x+L[I].width,
|
|
563
|
+
a=(O-a)/2,0==I&&(A=a),A>a&&(A=a));for(I=0;I<Q.length;I++)Q[I].x1+=A,Q[I].x2+=A,Q[I].x3+=A,Q[I].x4+=A,Q[I].x5&&(Q[I].x5+=A,Q[I].x6+=A),L[I].textBlock.x+=A}for(I=0;I<Q.length;I++)A=Q[I],t(R,A,u.fillOpacity),na.push(A.y1);v(R);M&&u.visible&&("inside"===u.indexLabelPlacement||y.animationEnabled||r(R),y.animationEnabled||q());if(!M)for(I=0;I<G.length;I++)A=u.dataPointIds[I],a={id:A,objectType:"dataPoint",dataPointIndex:I,dataSeriesIndex:0,funnelSection:Q[u.reversed?G.length-1-I:I]},y._eventManager.objectMap[A]=
|
|
564
|
+
a;!y.animationEnabled&&J?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?G.length-1-a.dataPointIndex:a.dataPointIndex,0<=b)){a=b;if("funnel"===u.type||"pyramid"===u.type)u.reversed?G[G.length-1-a].exploded=G[G.length-1-a].exploded?!1:!0:G[a].exploded=G[a].exploded?!1:!0;m(y,b,500)}};return{source:R,dest:this.plotArea.ctx,animationCallback:function(a,
|
|
565
|
+
b){E.fadeInAnimation(a,b);1<=a&&(m(y,-1,500),v(y.plotArea.ctx||y.ctx))},easingFunction:E.easing.easeInQuad,animationBase:0}}}}};q.prototype.requestAnimFrame=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){window.setTimeout(a,1E3/60)}}();q.prototype.cancelRequestAnimFrame=window.cancelAnimationFrame||window.webkitCancelRequestAnimationFrame||window.mozCancelRequestAnimationFrame||
|
|
566
|
+
window.oCancelRequestAnimationFrame||window.msCancelRequestAnimationFrame||clearTimeout;q.prototype.set=function(a,e,c){c="undefined"===typeof c?!0:c;"options"===a?(this.options=e,c&&this.render()):q.base.set.call(this,a,e,c)};q.prototype.exportChart=function(a){a="undefined"===typeof a?{}:a;var e=a.format?a.format:"png",c=a.fileName?a.fileName:this.exportFileName;if(a.toDataURL)return this.canvas.toDataURL("image/"+e);ab(this.canvas,e,c)};q.prototype.print=function(){var a=this.exportChart({toDataURL:!0}),
|
|
567
|
+
e=document.createElement("iframe");e.setAttribute("class","canvasjs-chart-print-frame");R(e,{position:"absolute",width:"100%",border:"0px",margin:"0px 0px 0px 0px",padding:"0px 0px 0px 0px"});e.style.height=this.height+"px";this._canvasJSContainer.appendChild(e);var c=this,b=e.contentWindow||e.contentDocument.document||e.contentDocument;b.document.open();b.document.write('<!DOCTYPE HTML>\n<html><body><img src="'+a+'"/><body/></html>');b.document.body&&b.document.body.style&&(b.document.body.style.margin=
|
|
568
|
+
"0px 0px 0px 0px",b.document.body.style.padding="0px 0px 0px 0px");b.document.close();setTimeout(function(){b.focus();b.print();setTimeout(function(){c._canvasJSContainer.removeChild(e)},1E3)},500)};q.prototype.getPercentAndTotal=function(a,e){var c=null,b=null,f=c=null;if(0<=a.type.indexOf("stacked"))b=0,c=e.x.getTime?e.x.getTime():e.x,c in a.plotUnit.yTotals&&(b=a.plotUnit.yTotals[c],c=a.plotUnit.yAbsTotals[c],f=isNaN(e.y)?0:0===c?0:100*(e.y/c));else if("pie"===a.type||"doughnut"===a.type||"funnel"===
|
|
569
|
+
a.type||"pyramid"===a.type){for(c=b=0;c<a.dataPoints.length;c++)isNaN(a.dataPoints[c].y)||(b+=a.dataPoints[c].y);f=isNaN(e.y)?0:100*(e.y/b)}return{percent:f,total:b}};q.prototype.replaceKeywordsWithValue=function(a,e,c,b,f){var k=this;f="undefined"===typeof f?0:f;if((0<=c.type.indexOf("stacked")||"pie"===c.type||"doughnut"===c.type||"funnel"===c.type||"pyramid"===c.type)&&(0<=a.indexOf("#percent")||0<=a.indexOf("#total"))){var d="#percent",g="#total",l=this.getPercentAndTotal(c,e),g=isNaN(l.total)?
|
|
570
|
+
g:l.total,d=isNaN(l.percent)?d:l.percent;do{l="";if(c.percentFormatString)l=c.percentFormatString;else{var l="#,##0.",n=Math.max(Math.ceil(Math.log(1/Math.abs(d))/Math.LN10),2);if(isNaN(n)||!isFinite(n))n=2;for(var r=0;r<n;r++)l+="#";c.percentFormatString=l}a=a.replace("#percent",Y(d,l,k._cultureInfo));a=a.replace("#total",Y(g,c.yValueFormatString?c.yValueFormatString:"#,##0.########",k._cultureInfo))}while(0<=a.indexOf("#percent")||0<=a.indexOf("#total"))}return a.replace(/\{.*?\}|"[^"]*"|'[^']*'/g,
|
|
571
|
+
function(a){if('"'===a[0]&&'"'===a[a.length-1]||"'"===a[0]&&"'"===a[a.length-1])return a.slice(1,a.length-1);a=Ma(a.slice(1,a.length-1));a=a.replace("#index",f);var d=null;try{var h=a.match(/(.*?)\s*\[\s*(.*?)\s*\]/);h&&0<h.length&&(d=Ma(h[2]),a=Ma(h[1]))}catch(g){}h=null;if("color"===a)return"waterfall"===c.type?e.color?e.color:0<e.y?c.risingColor:c.fallingColor:"error"===c.type?c.color?c.color:c._colorSet[d%c._colorSet.length]:e.color?e.color:c.color?c.color:c._colorSet[b%c._colorSet.length];if(e.hasOwnProperty(a))h=
|
|
572
|
+
e;else if(c.hasOwnProperty(a))h=c;else return"";h=h[a];null!==d&&(h=h[d]);return"x"===a?(c.axisX&&"dateTime"===c.axisX.valueType||"dateTime"===c.xValueType||e.x&&e.x.getTime)&&!c.axisX.logarithmic?qa(h,e.xValueFormatString?e.xValueFormatString:c.xValueFormatString?c.xValueFormatString:c.xValueFormatString=k.axisX&&k.axisX.autoValueFormatString?k.axisX.autoValueFormatString:"DD MMM YY",k._cultureInfo):Y(h,e.xValueFormatString?e.xValueFormatString:c.xValueFormatString?c.xValueFormatString:c.xValueFormatString=
|
|
573
|
+
"#,##0.########",k._cultureInfo):"y"===a?Y(h,e.yValueFormatString?e.yValueFormatString:c.yValueFormatString?c.yValueFormatString:c.yValueFormatString="#,##0.########",k._cultureInfo):"z"===a?Y(h,e.zValueFormatString?e.zValueFormatString:c.zValueFormatString?c.zValueFormatString:c.zValueFormatString="#,##0.########",k._cultureInfo):h})};ga(B,aa);B.prototype.setLayout=function(){var a=this.dockInsidePlotArea?this.chart.plotArea:this.chart,e=a.layoutManager.getFreeSpace(),c=null,b=0,f=0,k=0,d=0,l=this.markerMargin=
|
|
574
|
+
this.chart.options.legend&&!g(this.chart.options.legend.markerMargin)?this.chart.options.legend.markerMargin:0.3*this.fontSize;this.height=0;var m=[],n=[];if("top"===this.verticalAlign||"bottom"===this.verticalAlign)this.orientation="horizontal",c=this.verticalAlign,k=this.maxWidth=null!==this.maxWidth?this.maxWidth:e.width,d=this.maxHeight=null!==this.maxHeight?this.maxHeight:0.5*e.height;else if("center"===this.verticalAlign){this.orientation="vertical";if("left"===this.horizontalAlign||"center"===
|
|
575
|
+
this.horizontalAlign||"right"===this.horizontalAlign)c=this.horizontalAlign;k=this.maxWidth=null!==this.maxWidth?this.maxWidth:0.5*e.width;d=this.maxHeight=null!==this.maxHeight?this.maxHeight:e.height}this.errorMarkerColor=[];for(var r=0;r<this.dataSeries.length;r++){var p=this.dataSeries[r];if(p.dataPoints&&p.dataPoints.length){if("pie"!==p.type&&"doughnut"!==p.type&&"funnel"!==p.type&&"pyramid"!==p.type){var s=p.legendMarkerType=p.legendMarkerType?p.legendMarkerType:"line"!==p.type&&"stepLine"!==
|
|
576
|
+
p.type&&"spline"!==p.type&&"scatter"!==p.type&&"bubble"!==p.type||!p.markerType?"error"===p.type&&p._linkedSeries?p._linkedSeries.legendMarkerType?p._linkedSeries.legendMarkerType:D.getDefaultLegendMarker(p._linkedSeries.type):D.getDefaultLegendMarker(p.type):p.markerType,h=p.legendText?p.legendText:this.itemTextFormatter?this.itemTextFormatter({chart:this.chart,legend:this.options,dataSeries:p,dataPoint:null}):p.name,t=p.legendMarkerColor=p.legendMarkerColor?p.legendMarkerColor:p.markerColor?p.markerColor:
|
|
577
|
+
"error"===p.type?g(p.whiskerColor)?p._colorSet[0]:p.whiskerColor:p._colorSet[0],E=p.markerSize||"line"!==p.type&&"stepLine"!==p.type&&"spline"!==p.type?0.75*this.lineHeight:0,q=p.legendMarkerBorderColor?p.legendMarkerBorderColor:p.markerBorderColor,u=p.legendMarkerBorderThickness?p.legendMarkerBorderThickness:p.markerBorderThickness?Math.max(1,Math.round(0.2*E)):0;"error"===p.type&&this.errorMarkerColor.push(t);h=p.legendText=this.chart.replaceKeywordsWithValue(h,p.dataPoints[0],p,r);s={markerType:s,
|
|
578
|
+
markerColor:t,text:h,textBlock:null,chartType:p.type,markerSize:E,lineColor:p._colorSet[0],dataSeriesIndex:p.index,dataPointIndex:null,markerBorderColor:q,markerBorderThickness:u};m.push(s)}else for(var v=0;v<p.dataPoints.length;v++){var w=p.dataPoints[v],s=w.legendMarkerType?w.legendMarkerType:p.legendMarkerType?p.legendMarkerType:D.getDefaultLegendMarker(p.type),h=w.legendText?w.legendText:w.name?w.name:p.legendText?p.legendText:this.itemTextFormatter?this.itemTextFormatter({chart:this.chart,legend:this.options,
|
|
579
|
+
dataSeries:p,dataPoint:w}):w.name?w.name:"DataPoint: "+(v+1),t=w.legendMarkerColor?w.legendMarkerColor:p.legendMarkerColor?p.legendMarkerColor:w.color?w.color:p.color?p.color:p._colorSet[v%p._colorSet.length],E=0.75*this.lineHeight,q=w.legendMarkerBorderColor?w.legendMarkerBorderColor:p.legendMarkerBorderColor?p.legendMarkerBorderColor:w.markerBorderColor?w.markerBorderColor:p.markerBorderColor,u=w.legendMarkerBorderThickness?w.legendMarkerBorderThickness:p.legendMarkerBorderThickness?p.legendMarkerBorderThickness:
|
|
580
|
+
w.markerBorderThickness||p.markerBorderThickness?Math.max(1,Math.round(0.2*E)):0,h=this.chart.replaceKeywordsWithValue(h,w,p,v),s={markerType:s,markerColor:t,text:h,textBlock:null,chartType:p.type,markerSize:E,dataSeriesIndex:r,dataPointIndex:v,markerBorderColor:q,markerBorderThickness:u};(w.showInLegend||p.showInLegend&&!1!==w.showInLegend)&&m.push(s)}g(p.legendText)&&(p.legendText=p.name)}}!0===this.reversed&&m.reverse();if(0<m.length){p=null;h=w=v=0;w=null!==this.itemWidth?null!==this.itemMaxWidth?
|
|
581
|
+
Math.min(this.itemWidth,this.itemMaxWidth,k):this.itemMaxWidth=Math.min(this.itemWidth,k):null!==this.itemMaxWidth?Math.min(this.itemMaxWidth,k):this.itemMaxWidth=k;E=0===E?0.75*this.lineHeight:E;w=(this.itemMaxWidth?this.itemMaxWidth:w)-(E+l);for(r=0;r<m.length;r++){s=m[r];t=w;if("line"===s.chartType||"spline"===s.chartType||"stepLine"===s.chartType)t-=2*0.1*this.lineHeight;if(!(0>=d||"undefined"===typeof d||0>=t||"undefined"===typeof t))if("horizontal"===this.orientation){s.textBlock=new ma(this.ctx,
|
|
582
|
+
{x:0,y:0,maxWidth:t,maxHeight:this.itemWrap?d:this.lineHeight,angle:0,text:s.text,textAlign:this.itemTextAlign,fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"});s.textBlock.measureText();null!==this.itemWidth&&(s.textBlock.width=this.itemWidth-(E+l+("line"===s.chartType||"spline"===s.chartType||"stepLine"===s.chartType?2*0.1*this.lineHeight:0)));if(!p||p.width+Math.round(s.textBlock.width+E+l+(0===
|
|
583
|
+
p.width?0:this.horizontalSpacing)+("line"===s.chartType||"spline"===s.chartType||"stepLine"===s.chartType?2*0.1*this.lineHeight:0))>k)p={items:[],width:0},n.push(p),this.height+=h,h=0;h=Math.max(h,s.textBlock.height?s.textBlock.height:this.lineHeight);s.textBlock.x=p.width;s.textBlock.y=0;p.width+=Math.round(s.textBlock.width+E+l+(0===p.width?0:this.horizontalSpacing)+("line"===s.chartType||"spline"===s.chartType||"stepLine"===s.chartType?2*0.1*this.lineHeight:0));p.items.push(s);this.width=Math.max(p.width,
|
|
584
|
+
this.width)}else s.textBlock=new ma(this.ctx,{x:0,y:0,maxWidth:w,maxHeight:!0===this.itemWrap?d:1.5*this.fontSize,angle:0,text:s.text,textAlign:this.itemTextAlign,fontSize:this.fontSize,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontColor:this.fontColor,fontStyle:this.fontStyle,textBaseline:"middle"}),s.textBlock.measureText(),null!==this.itemWidth&&(s.textBlock.width=this.itemWidth-(E+l+("line"===s.chartType||"spline"===s.chartType||"stepLine"===s.chartType?2*0.1*this.lineHeight:0))),
|
|
585
|
+
this.height<d-this.lineHeight?(p={items:[],width:0},n.push(p)):(p=n[v],v=(v+1)%n.length),p&&(this.height+=s.textBlock.height?s.textBlock.height:this.lineHeight,s.textBlock.x=p.width,s.textBlock.y=0,p.width+=Math.round(s.textBlock.width+E+l+(0===p.width?0:this.horizontalSpacing)+("line"===s.chartType||"spline"===s.chartType||"stepLine"===s.chartType?2*0.1*this.lineHeight:0)),p.items.push(s),this.width=Math.max(p.width,this.width))}this.height=!1===this.itemWrap?n.length*this.lineHeight:this.height+
|
|
586
|
+
h;this.height=Math.min(d,this.height);this.width=Math.min(k,this.width)}"top"===this.verticalAlign?(f="left"===this.horizontalAlign?e.x1:"right"===this.horizontalAlign?e.x2-this.width:e.x1+e.width/2-this.width/2,b=e.y1):"center"===this.verticalAlign?(f="left"===this.horizontalAlign?e.x1:"right"===this.horizontalAlign?e.x2-this.width:e.x1+e.width/2-this.width/2,b=e.y1+e.height/2-this.height/2):"bottom"===this.verticalAlign&&(f="left"===this.horizontalAlign?e.x1:"right"===this.horizontalAlign?e.x2-
|
|
587
|
+
this.width:e.x1+e.width/2-this.width/2,b=e.y2-this.height);this.items=m;for(r=0;r<this.items.length;r++)s=m[r],s.id=++this.chart._eventManager.lastObjectId,this.chart._eventManager.objectMap[s.id]={id:s.id,objectType:"legendItem",legendItemIndex:r,dataSeriesIndex:s.dataSeriesIndex,dataPointIndex:s.dataPointIndex};this.markerSize=E;this.rows=n;0<m.length&&a.layoutManager.registerSpace(c,{width:this.width+2+2,height:this.height+5+5});this.bounds={x1:f,y1:b,x2:f+this.width,y2:b+this.height}};B.prototype.render=
|
|
588
|
+
function(){var a=this.bounds.x1,e=this.bounds.y1,c=this.markerMargin,b=this.maxWidth,f=this.maxHeight,k=this.markerSize,d=this.rows;(0<this.borderThickness&&this.borderColor||this.backgroundColor)&&this.ctx.roundRect(a,e,this.width,this.height,this.cornerRadius,this.borderThickness,this.backgroundColor,this.borderColor);for(var g=0,m=0;m<d.length;m++){for(var n=d[m],r=0,p=0;p<n.items.length;p++){var s=n.items[p],h=s.textBlock.x+a+(0===p?0.2*k:this.horizontalSpacing),t=e+g,E=h;this.chart.data[s.dataSeriesIndex].visible||
|
|
589
|
+
(this.ctx.globalAlpha=0.5);this.ctx.save();this.ctx.beginPath();this.ctx.rect(a,e,b,Math.max(f-f%this.lineHeight,0));this.ctx.clip();if("line"===s.chartType||"stepLine"===s.chartType||"spline"===s.chartType)this.ctx.strokeStyle=s.lineColor,this.ctx.lineWidth=Math.ceil(this.lineHeight/8),this.ctx.beginPath(),this.ctx.moveTo(h-0.1*this.lineHeight,t+this.lineHeight/2),this.ctx.lineTo(h+0.85*this.lineHeight,t+this.lineHeight/2),this.ctx.stroke(),E-=0.1*this.lineHeight;if("error"===s.chartType){this.ctx.strokeStyle=
|
|
590
|
+
this.errorMarkerColor[0];this.ctx.lineWidth=k/8;this.ctx.beginPath();var q=h-0.08*this.lineHeight+0.1*this.lineHeight,u=t+0.15*this.lineHeight,w=0.7*this.lineHeight,v=w+0.02*this.lineHeight;this.ctx.moveTo(q,u);this.ctx.lineTo(q+w,u);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(q+w/2,u);this.ctx.lineTo(q+w/2,u+v);this.ctx.stroke();this.ctx.beginPath();this.ctx.moveTo(q,u+v);this.ctx.lineTo(q+w,u+v);this.ctx.stroke();this.errorMarkerColor.shift()}l.drawMarker(h+k/2,t+this.lineHeight/2,this.ctx,
|
|
591
|
+
s.markerType,"error"===s.chartType||"line"===s.chartType||"spline"===s.chartType?s.markerSize/2:s.markerSize,s.markerColor,s.markerBorderColor,s.markerBorderThickness);s.textBlock.x=h+c+k;if("line"===s.chartType||"stepLine"===s.chartType||"spline"===s.chartType)s.textBlock.x+=0.1*this.lineHeight;s.textBlock.y=Math.round(t+this.lineHeight/2);s.textBlock.render(!0);this.ctx.restore();r=0<p?Math.max(r,s.textBlock.height?s.textBlock.height:this.lineHeight):s.textBlock.height?s.textBlock.height:this.lineHeight;
|
|
592
|
+
this.chart.data[s.dataSeriesIndex].visible||(this.ctx.globalAlpha=1);h=U(s.id);this.ghostCtx.fillStyle=h;this.ghostCtx.beginPath();this.ghostCtx.fillRect(E,s.textBlock.y-this.lineHeight/2,s.textBlock.x+s.textBlock.width-E,s.textBlock.height?s.textBlock.height:this.lineHeight);s.x1=this.chart._eventManager.objectMap[s.id].x1=E;s.y1=this.chart._eventManager.objectMap[s.id].y1=s.textBlock.y-this.lineHeight/2;s.x2=this.chart._eventManager.objectMap[s.id].x2=s.textBlock.x+s.textBlock.width;s.y2=this.chart._eventManager.objectMap[s.id].y2=
|
|
593
|
+
s.textBlock.y+(s.textBlock.height?s.textBlock.height:this.lineHeight)-this.lineHeight/2}g+=r}};ga(D,aa);D.prototype.getDefaultAxisPlacement=function(){var a=this.type;if("column"===a||"line"===a||"stepLine"===a||"spline"===a||"area"===a||"stepArea"===a||"splineArea"===a||"stackedColumn"===a||"stackedLine"===a||"bubble"===a||"scatter"===a||"stackedArea"===a||"stackedColumn100"===a||"stackedLine100"===a||"stackedArea100"===a||"candlestick"===a||"ohlc"===a||"rangeColumn"===a||"rangeArea"===a||"rangeSplineArea"===
|
|
594
|
+
a||"boxAndWhisker"===a||"waterfall"===a)return"normal";if("bar"===a||"stackedBar"===a||"stackedBar100"===a||"rangeBar"===a)return"xySwapped";if("pie"===a||"doughnut"===a||"funnel"===a||"pyramid"===a)return"none";"error"!==a&&window.console.log("Unknown Chart Type: "+a);return null};D.getDefaultLegendMarker=function(a){if("column"===a||"stackedColumn"===a||"stackedLine"===a||"bar"===a||"stackedBar"===a||"stackedBar100"===a||"bubble"===a||"scatter"===a||"stackedColumn100"===a||"stackedLine100"===a||
|
|
595
|
+
"stepArea"===a||"candlestick"===a||"ohlc"===a||"rangeColumn"===a||"rangeBar"===a||"rangeArea"===a||"rangeSplineArea"===a||"boxAndWhisker"===a||"waterfall"===a)return"square";if("line"===a||"stepLine"===a||"spline"===a||"pie"===a||"doughnut"===a)return"circle";if("area"===a||"splineArea"===a||"stackedArea"===a||"stackedArea100"===a||"funnel"===a||"pyramid"===a)return"triangle";if("error"===a)return"none";window.console.log("Unknown Chart Type: "+a);return null};D.prototype.getDataPointAtX=function(a,
|
|
596
|
+
e,c){if(!this.dataPoints||0===this.dataPoints.length)return null;var b={dataPoint:null,distance:Infinity,index:NaN},f=null,k=0,d=0,l=1,m=Infinity,n=0,r=0,p=0;"none"!==this.chart.plotInfo.axisPlacement&&(this.axisX.logarithmic?(p=Math.log(this.dataPoints[this.dataPoints.length-1].x/this.dataPoints[0].x),p=1<p?Math.min(Math.max((this.dataPoints.length-1)/p*Math.log(a/this.dataPoints[0].x)>>0,0),this.dataPoints.length):0):(p=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0<p?Math.min(Math.max((this.dataPoints.length-
|
|
597
|
+
1)/p*(a-this.dataPoints[0].x)>>0,0),this.dataPoints.length):0));for(;;){d=0<l?p+k:p-k;if(0<=d&&d<this.dataPoints.length){var f=this.dataPoints[d],s=this.axisX&&this.axisX.logarithmic?f.x>a?f.x/a:a/f.x:Math.abs(f.x-a);s<b.distance&&(g(c)||c&&!g(f.y))&&(b.dataPoint=f,b.distance=s,b.index=d);f=s;f<=m?m=f:0<l?n++:r++;if(1E3<n&&1E3<r)break}else if(0>p-k&&p+k>=this.dataPoints.length)break;-1===l?(k++,l=1):l=-1}return e||(b.dataPoint.x.getTime?b.dataPoint.x.getTime():b.dataPoint.x)!==(a.getTime?a.getTime():
|
|
598
|
+
a)?e&&null!==b.dataPoint?b:null:b};D.prototype.getDataPointAtXY=function(a,e,c){if(!this.dataPoints||0===this.dataPoints.length||a<this.chart.plotArea.x1||a>this.chart.plotArea.x2||e<this.chart.plotArea.y1||e>this.chart.plotArea.y2)return null;c=c||!1;var b=[],f=0,k=0,d=1,l=!1,m=Infinity,n=0,r=0,p=0;if("none"!==this.chart.plotInfo.axisPlacement)if(p=(this.chart.axisX[0]?this.chart.axisX[0]:this.chart.axisX2[0]).getXValueAt({x:a,y:e}),this.axisX.logarithmic)var s=Math.log(this.dataPoints[this.dataPoints.length-
|
|
599
|
+
1].x/this.dataPoints[0].x),p=1<s?Math.min(Math.max((this.dataPoints.length-1)/s*Math.log(p/this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;else s=this.dataPoints[this.dataPoints.length-1].x-this.dataPoints[0].x,p=0<s?Math.min(Math.max((this.dataPoints.length-1)/s*(p-this.dataPoints[0].x)>>0,0),this.dataPoints.length):0;for(;;){k=0<d?p+f:p-f;if(0<=k&&k<this.dataPoints.length){var s=this.chart._eventManager.objectMap[this.dataPointIds[k]],h=this.dataPoints[k],t=null;if(s){switch(this.type){case "column":case "stackedColumn":case "stackedColumn100":case "bar":case "stackedBar":case "stackedBar100":case "rangeColumn":case "rangeBar":case "waterfall":case "error":a>=
|
|
600
600
|
s.x1&&(a<=s.x2&&e>=s.y1&&e<=s.y2)&&(b.push({dataPoint:h,dataPointIndex:k,dataSeries:this,distance:Math.min(Math.abs(s.x1-a),Math.abs(s.x2-a),Math.abs(s.y1-e),Math.abs(s.y2-e))}),l=!0);break;case "line":case "stepLine":case "spline":case "area":case "stepArea":case "stackedArea":case "stackedArea100":case "splineArea":case "scatter":var E=$("markerSize",h,this)||4,q=c?20:E,t=Math.sqrt(Math.pow(s.x1-a,2)+Math.pow(s.y1-e,2));t<=q&&b.push({dataPoint:h,dataPointIndex:k,dataSeries:this,distance:t});s=Math.abs(s.x1-
|
|
601
601
|
a);s<=m?m=s:0<d?n++:r++;t<=E/2&&(l=!0);break;case "rangeArea":case "rangeSplineArea":E=$("markerSize",h,this)||4;q=c?20:E;t=Math.min(Math.sqrt(Math.pow(s.x1-a,2)+Math.pow(s.y1-e,2)),Math.sqrt(Math.pow(s.x1-a,2)+Math.pow(s.y2-e,2)));t<=q&&b.push({dataPoint:h,dataPointIndex:k,dataSeries:this,distance:t});s=Math.abs(s.x1-a);s<=m?m=s:0<d?n++:r++;t<=E/2&&(l=!0);break;case "bubble":E=s.size;t=Math.sqrt(Math.pow(s.x1-a,2)+Math.pow(s.y1-e,2));t<=E/2&&(b.push({dataPoint:h,dataPointIndex:k,dataSeries:this,
|
|
602
602
|
distance:t}),l=!0);break;case "pie":case "doughnut":E=s.center;q="doughnut"===this.type?s.percentInnerRadius*s.radius:0;t=Math.sqrt(Math.pow(E.x-a,2)+Math.pow(E.y-e,2));t<s.radius&&t>q&&(t=Math.atan2(e-E.y,a-E.x),0>t&&(t+=2*Math.PI),t=Number(((180*(t/Math.PI)%360+360)%360).toFixed(12)),E=Number(((180*(s.startAngle/Math.PI)%360+360)%360).toFixed(12)),q=Number(((180*(s.endAngle/Math.PI)%360+360)%360).toFixed(12)),0===q&&1<s.endAngle&&(q=360),E>=q&&(0!==h.y&&!g(h.y))&&(q+=360,t<E&&(t+=360)),t>E&&t<q&&
|
|
@@ -648,7 +648,7 @@ d),c=0;c<this._labels.length;c++)a=this._labels[c].textBlock,a.maxWidth=this.lab
|
|
|
648
648
|
g(this.options.labelAngle)?g(this.sessionVariables.labelAngle)?this.sessionVariables.labelAngle=this.labelAngle:this.sessionVariables.labelAngle:this.labelAngle,a.wrap=this.labelWrap=g(this.options.labelWrap)?g(this.sessionVariables.labelWrap)?this.sessionVariables.labelWrap=this.labelWrap:this.sessionVariables.labelWrap:this.options.labelWrap,a.maxHeight=g(this.sessionVariables.labelMaxHeight)?this.sessionVariables.labelMaxHeight=d:this.sessionVariables.labelMaxHeight,a.measureText();for(c=0;c<this.stripLines.length;c++){var k=
|
|
649
649
|
this.stripLines[c],q;if("outside"===k.labelPlacement){d=this.sessionVariables.labelMaxWidth;if("bottom"===this._position||"top"===this._position)g(k.options.labelWrap)&&!g(this.sessionVariables.stripLineLabelMaxHeight)?q=this.sessionVariables.stripLineLabelMaxHeight:this.sessionVariables.stripLineLabelMaxHeight=q=k.labelWrap?0.8*this.chart.height>>0:1.5*this.labelFontSize;if("left"===this._position||"right"===this._position)g(k.options.labelWrap)&&!g(this.sessionVariables.stripLineLabelMaxHeight)?
|
|
650
650
|
q=this.sessionVariables.stripLineLabelMaxHeight:this.sessionVariables.stripLineLabelMaxHeight=q=k.labelWrap?0.8*this.chart.width>>0:1.5*this.labelFontSize;g(k.labelBackgroundColor)&&(k.labelBackgroundColor="#EEEEEE")}else d="bottom"===this._position||"top"===this._position?0.9*this.chart.width>>0:0.9*this.chart.height>>0,q=g(k.options.labelWrap)||k.labelWrap?"bottom"===this._position||"top"===this._position?0.8*this.chart.width>>0:0.8*this.chart.height>>0:1.5*this.labelFontSize,g(k.labelBackgroundColor)&&
|
|
651
|
-
(g(k.startValue)&&0!==k.startValue?k.labelBackgroundColor=
|
|
651
|
+
(g(k.startValue)&&0!==k.startValue?k.labelBackgroundColor=w?"transparent":null:k.labelBackgroundColor="#EEEEEE");k.labelFontSize="outside"===k.labelPlacement&&g(k.options.labelFontSize)?this.labelFontSize:k.labelFontSize;k.labelFontFamily="outside"===k.labelPlacement&&g(k.options.labelFontFamily)?this.labelFontFamily:k.labelFontFamily;k.labelFontWeight="outside"===k.labelPlacement&&g(k.options.labelFontWeight)?this.labelFontWeight:k.labelFontWeight;k.labelFontStyle="outside"===k.labelPlacement&&g(k.options.labelFontStyle)?
|
|
652
652
|
this.labelFontStyle:k.labelFontStyle;a=new ma(this.ctx,{x:0,y:0,backgroundColor:k.labelBackgroundColor,borderColor:k.labelBorderColor,borderThickness:k.labelBorderThickness,cornerRadius:k.labelCornerRadius,maxWidth:k.options.labelMaxWidth?k.options.labelMaxWidth:d,maxHeight:q,angle:this.labelAngle,text:k.labelFormatter?k.labelFormatter({chart:this.chart,axis:this,stripLine:k}):k.label,textAlign:k.labelTextAlign,fontSize:k.labelFontSize,fontFamily:k.labelFontFamily,fontWeight:k.labelFontWeight,fontColor:k.labelFontColor||
|
|
653
653
|
k.color,fontStyle:k.labelFontStyle,textBaseline:"middle",padding:k.labelPadding});this._stripLineLabels.push({position:k.value,textBlock:a,effectiveHeight:null,stripLine:k})}};y.prototype.createLabelsAndCalculateWidth=function(){var a=0,e=0;this._labels=[];this._stripLineLabels=[];var c=this.chart.isNavigator?0:5;if("left"===this._position||"right"===this._position){this.createLabels();if("inside"!=this.labelPlacement||"inside"===this.labelPlacement&&0<this._index)for(e=0;e<this._labels.length;e++){var b=
|
|
654
654
|
this._labels[e].textBlock,b=b.measureText(),f=0,f=0===this.labelAngle?b.width:b.width*Math.cos(Math.PI/180*Math.abs(this.labelAngle))+b.height*Math.sin(Math.PI/180*Math.abs(this.labelAngle));a<f&&(this.labelEffectiveWidth=a=f);this._labels[e].effectiveWidth=f}for(e=0;e<this._stripLineLabels.length;e++)"outside"===this._stripLineLabels[e].stripLine.labelPlacement&&(this._stripLineLabels[e].stripLine.value>=this.viewportMinimum&&this._stripLineLabels[e].stripLine.value<=this.viewportMaximum)&&(b=this._stripLineLabels[e].textBlock,
|
|
@@ -699,8 +699,8 @@ e[h].titleMaxWidth:e[h].lineCoordinates.height);e[h].calculateValueToPixelConver
|
|
|
699
699
|
!0:!1;else O=!0;if(b&&0<b.length)for(h=0;h<b.length;h++)N=u[E-1][h]===u[E][h]?!0:!1;else N=!0}if(m&&J&&O&&N)break;E++}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=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(),
|
|
700
700
|
e[h].calculateBreaksInPixels()}};y.render=function(a,e,c,b,f){f=a[0]?a[0].chart:e[0].chart;var d=f.ctx;f.alignVerticalAxes&&f.alignVerticalAxes();d.save();d.beginPath();a&&a.length&&d.rect(2,a[0].bounds.y1,a[0].chart.width-4,a[a.length-1].bounds.y2);e&&e.length&&d.rect(2,e[e.length-1].bounds.y1,e[0].chart.width-4,e[0].bounds.y2);d.clip();if(a&&0<a.length)for(var l=0;l<a.length;l++)a[l].renderLabelsTicksAndTitle();if(e&&0<e.length)for(l=0;l<e.length;l++)e[l].renderLabelsTicksAndTitle();d.restore();
|
|
701
701
|
if(c&&0<c.length)for(l=0;l<c.length;l++)c[l].renderLabelsTicksAndTitle();if(b&&0<b.length)for(l=0;l<b.length;l++)b[l].renderLabelsTicksAndTitle();f.preparePlotArea();l=f.plotArea;d.save();d.beginPath();d.rect(l.x1,l.y1,Math.abs(l.x2-l.x1),Math.abs(l.y2-l.y1));d.clip();if(a&&0<a.length)for(l=0;l<a.length;l++)a[l].renderStripLinesOfThicknessType("value");if(e&&0<e.length)for(l=0;l<e.length;l++)e[l].renderStripLinesOfThicknessType("value");if(c&&0<c.length)for(l=0;l<c.length;l++)c[l].renderStripLinesOfThicknessType("value");
|
|
702
|
-
if(b&&0<b.length)for(l=0;l<b.length;l++)b[l].renderStripLinesOfThicknessType("value");if(a&&0<a.length)for(l=0;l<a.length;l++)a[l].renderInterlacedColors();if(e&&0<e.length)for(l=0;l<e.length;l++)e[l].renderInterlacedColors();if(c&&0<c.length)for(l=0;l<c.length;l++)c[l].renderInterlacedColors();if(b&&0<b.length)for(l=0;l<b.length;l++)b[l].renderInterlacedColors();d.restore();if(a&&0<a.length)for(l=0;l<a.length;l++)a[l].renderGrid(),
|
|
703
|
-
0;l<e.length;l++)e[l].renderGrid(),
|
|
702
|
+
if(b&&0<b.length)for(l=0;l<b.length;l++)b[l].renderStripLinesOfThicknessType("value");if(a&&0<a.length)for(l=0;l<a.length;l++)a[l].renderInterlacedColors();if(e&&0<e.length)for(l=0;l<e.length;l++)e[l].renderInterlacedColors();if(c&&0<c.length)for(l=0;l<c.length;l++)c[l].renderInterlacedColors();if(b&&0<b.length)for(l=0;l<b.length;l++)b[l].renderInterlacedColors();d.restore();if(a&&0<a.length)for(l=0;l<a.length;l++)a[l].renderGrid(),w&&(a[l].createMask(),a[l].renderBreaksBackground());if(e&&0<e.length)for(l=
|
|
703
|
+
0;l<e.length;l++)e[l].renderGrid(),w&&(e[l].createMask(),e[l].renderBreaksBackground());if(c&&0<c.length)for(l=0;l<c.length;l++)c[l].renderGrid(),w&&(c[l].createMask(),c[l].renderBreaksBackground());if(b&&0<b.length)for(l=0;l<b.length;l++)b[l].renderGrid(),w&&(b[l].createMask(),b[l].renderBreaksBackground());if(a&&0<a.length)for(l=0;l<a.length;l++)a[l].renderAxisLine();if(e&&0<e.length)for(l=0;l<e.length;l++)e[l].renderAxisLine();if(c&&0<c.length)for(l=0;l<c.length;l++)c[l].renderAxisLine();if(b&&
|
|
704
704
|
0<b.length)for(l=0;l<b.length;l++)b[l].renderAxisLine();d=!1;if(a&&0<a.length)for(l=0;l<a.length;l++)a[l].renderStripLinesOfThicknessType("pixel"),a[l].crosshair&&a[l].crosshair.enabled&&(d=!0,f.clearedOverlayedCanvas=a[l].type);if(e&&0<e.length)for(l=0;l<e.length;l++)e[l].renderStripLinesOfThicknessType("pixel"),e[l].crosshair&&e[l].crosshair.enabled&&(d=!0,f.clearedOverlayedCanvas=e[l].type);if(c&&0<c.length)for(l=0;l<c.length;l++)c[l].renderStripLinesOfThicknessType("pixel"),c[l].crosshair&&c[l].crosshair.enabled&&
|
|
705
705
|
(d=!0,f.clearedOverlayedCanvas=c[l].type);if(b&&0<b.length)for(l=0;l<b.length;l++)b[l].renderStripLinesOfThicknessType("pixel"),b[l].crosshair&&b[l].crosshair.enabled&&(d=!0,f.clearedOverlayedCanvas=b[l].type);if(d||!d&&f.clearedOverlayedCanvas&&0<=f.clearedOverlayedCanvas.indexOf("axis"))f.resetOverlayedCanvas(),f.renderCrosshairs(null,g(f.sessionVariables.crosshairShownByPixel)||f.sessionVariables.crosshairShownByPixel?!0:f.sessionVariables.crosshairShownByPixel)};y.prototype.calculateStripLinesThicknessInValues=
|
|
706
706
|
function(){for(var a=0;a<this.stripLines.length;a++)if(null!==this.stripLines[a].startValue&&null!==this.stripLines[a].endValue){var e=Math.min(this.stripLines[a].startValue,this.stripLines[a].endValue),c=Math.max(this.stripLines[a].startValue,this.stripLines[a].endValue),b=this.getApparentDifference(e,c);this.stripLines[a].value=this.convertPixelToValue((this.convertValueToPixel(e)+this.convertValueToPixel(c))/2);this.stripLines[a].thickness=b;this.stripLines[a]._thicknessType="value"}};y.prototype.calculateBreaksSizeInValues=
|
|
@@ -752,15 +752,15 @@ b.y-=c.textBlock.height-c.textBlock.fontSize/2+p.thickness/2:b.y-=c.textBlock.he
|
|
|
752
752
|
!1;this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(f=0;f<t.length;f++)p=t[f],p.showOnTop?l||(l=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){this.ctx.save();this.ctx.beginPath();this.ctx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.ctx.clip();for(d=0;d<t.length;d++)p=t[d],p.showOnTop&&p.render();
|
|
753
753
|
this.ctx.restore()},p)):p.render();for(f=0;f<m.length;f++)c=m[f],c.stripLine.showOnTop?b||(b=!0,this.chart.addEventListener("dataAnimationIterationEnd",function(){for(d=0;d<m.length;d++)c=m[d],"inside"===c.stripLine.labelPlacement&&c.stripLine.showOnTop&&(e.ctx.save(),e.ctx.beginPath(),e.ctx.rect(e.chart.plotArea.x1,e.chart.plotArea.y1,e.chart.plotArea.width,e.chart.plotArea.height),e.ctx.clip(),c.textBlock.render(!0),e.ctx.restore())},c.textBlock)):"inside"===c.stripLine.labelPlacement&&c.textBlock.render(!0);
|
|
754
754
|
this.ctx.restore();n=!0}if(n)for(b=!1,f=0;f<m.length;f++)c=m[f],"outside"===c.stripLine.labelPlacement&&c.textBlock.render(!0)}};y.prototype.renderBreaksBackground=function(){this.chart._breaksCanvas&&(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length&&this.maskCanvas)&&(this.chart._breaksCanvasCtx.save(),this.chart._breaksCanvasCtx.beginPath(),this.chart._breaksCanvasCtx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height),this.chart._breaksCanvasCtx.clip(),
|
|
755
|
-
this.chart._breaksCanvasCtx.drawImage(this.maskCanvas,0,0,this.chart.width,this.chart.height),this.chart._breaksCanvasCtx.restore())};y.prototype.createMask=function(){if(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length){var a=this.scaleBreaks._appliedBreaks;
|
|
755
|
+
this.chart._breaksCanvasCtx.drawImage(this.maskCanvas,0,0,this.chart.width,this.chart.height),this.chart._breaksCanvasCtx.restore())};y.prototype.createMask=function(){if(this.scaleBreaks&&0<this.scaleBreaks._appliedBreaks.length){var a=this.scaleBreaks._appliedBreaks;w?(this.maskCanvas=ra(this.chart.width,this.chart.height),this.maskCtx=this.maskCanvas.getContext("2d")):(this.maskCanvas=this.chart.plotArea.canvas,this.maskCtx=this.chart.plotArea.ctx);this.maskCtx.save();this.maskCtx.beginPath();
|
|
756
756
|
this.maskCtx.rect(this.chart.plotArea.x1,this.chart.plotArea.y1,this.chart.plotArea.width,this.chart.plotArea.height);this.maskCtx.clip();for(var e=0;e<a.length;e++)a[e].endValue<this.viewportMinimum||(a[e].startValue>this.viewportMaximum||isNaN(this.range))||a[e].render(this.maskCtx);this.maskCtx.restore()}};y.prototype.renderCrosshair=function(a,e){isFinite(this.minimum)&&isFinite(this.maximum)&&this.crosshair.render(a,e)};y.prototype.showCrosshair=function(a){g(a)||(a<this.viewportMinimum||a>this.viewportMaximum)||
|
|
757
757
|
("top"===this._position||"bottom"===this._position?this.crosshair.render(this.convertValueToPixel(a),null,a):this.crosshair.render(null,this.convertValueToPixel(a),a))};y.prototype.renderGrid=function(){if(this.gridThickness&&0<this.gridThickness){var a=this.chart.ctx;a.save();var e,c=this.chart.plotArea;a.lineWidth=this.gridThickness;a.strokeStyle=this.gridColor;a.setLineDash&&a.setLineDash(S(this.gridDashType,this.gridThickness));if("bottom"===this._position||"top"===this._position)for(b=0;b<this._labels.length;b++)this._labels[b].position<
|
|
758
758
|
this.viewportMinimum||(this._labels[b].position>this.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.x<<0)+0.5:e.x<<0,a.moveTo(e,c.y1<<0),a.lineTo(e,c.y2<<0),a.stroke());else if("left"===this._position||"right"===this._position)for(var b=0;b<this._labels.length;b++)this._labels[b].position<this.viewportMinimum||(this._labels[b].position>this.viewportMaximum||this._labels[b].breaksLabelType)||(a.beginPath(),
|
|
759
|
-
e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.y<<0)+0.5:e.y<<0,a.moveTo(c.x1<<0,e),a.lineTo(c.x2<<0,e),a.stroke());a.restore()}};y.prototype.renderAxisLine=function(){var a=this.chart.ctx,e=
|
|
759
|
+
e=this.getPixelCoordinatesOnAxis(this._labels[b].position),e=1===a.lineWidth%2?(e.y<<0)+0.5:e.y<<0,a.moveTo(c.x1<<0,e),a.lineTo(c.x2<<0,e),a.stroke());a.restore()}};y.prototype.renderAxisLine=function(){var a=this.chart.ctx,e=w?this.chart._preRenderCtx:a,c=Math.ceil(this.tickThickness/(this.reversed?-2:2)),b=Math.ceil(this.tickThickness/(this.reversed?2:-2)),f,d;e.save();if("bottom"===this._position||"top"===this._position){if(this.lineThickness){this.reversed?(f=this.lineCoordinates.x2,d=this.lineCoordinates.x1):
|
|
760
760
|
(f=this.lineCoordinates.x1,d=this.lineCoordinates.x2);e.lineWidth=this.lineThickness;e.strokeStyle=this.lineColor?this.lineColor:"black";e.setLineDash&&e.setLineDash(S(this.lineDashType,this.lineThickness));var l=1===this.lineThickness%2?(this.lineCoordinates.y1<<0)+0.5:this.lineCoordinates.y1<<0;e.beginPath();if(this.scaleBreaks&&!g(this.scaleBreaks.firstBreakIndex))if(g(this.scaleBreaks.lastBreakIndex))f=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+b;else for(var t=
|
|
761
761
|
this.scaleBreaks.firstBreakIndex;t<=this.scaleBreaks.lastBreakIndex;t++)e.moveTo(f,l),e.lineTo(this.scaleBreaks._appliedBreaks[t].startPixel+c,l),f=this.scaleBreaks._appliedBreaks[t].endPixel+b;f&&(e.moveTo(f,l),e.lineTo(d,l));e.stroke()}}else if(("left"===this._position||"right"===this._position)&&this.lineThickness){this.reversed?(f=this.lineCoordinates.y1,d=this.lineCoordinates.y2):(f=this.lineCoordinates.y2,d=this.lineCoordinates.y1);e.lineWidth=this.lineThickness;e.strokeStyle=this.lineColor;
|
|
762
762
|
e.setLineDash&&e.setLineDash(S(this.lineDashType,this.lineThickness));l=1===this.lineThickness%2?(this.lineCoordinates.x1<<0)+0.5:this.lineCoordinates.x1<<0;e.beginPath();if(this.scaleBreaks&&!g(this.scaleBreaks.firstBreakIndex))if(g(this.scaleBreaks.lastBreakIndex))f=this.scaleBreaks._appliedBreaks[this.scaleBreaks.firstBreakIndex].endPixel+c;else for(t=this.scaleBreaks.firstBreakIndex;t<=this.scaleBreaks.lastBreakIndex;t++)e.moveTo(l,f),e.lineTo(l,this.scaleBreaks._appliedBreaks[t].startPixel+b),
|
|
763
|
-
f=this.scaleBreaks._appliedBreaks[t].endPixel+c;f&&(e.moveTo(l,f),e.lineTo(l,d));e.stroke()}
|
|
763
|
+
f=this.scaleBreaks._appliedBreaks[t].endPixel+c;f&&(e.moveTo(l,f),e.lineTo(l,d));e.stroke()}w&&(a.drawImage(this.chart._preRenderCanvas,0,0,this.chart.width,this.chart.height),this.chart._breaksCanvasCtx&&this.chart._breaksCanvasCtx.drawImage(this.chart._preRenderCanvas,0,0,this.chart.width,this.chart.height),e.clearRect(0,0,this.chart.width,this.chart.height));e.restore()};y.prototype.getPixelCoordinatesOnAxis=function(a){var e={};if("bottom"===this._position||"top"===this._position)e.x=this.convertValueToPixel(a),
|
|
764
764
|
e.y=this.lineCoordinates.y1;if("left"===this._position||"right"===this._position)e.y=this.convertValueToPixel(a),e.x=this.lineCoordinates.x2;return e};y.prototype.convertPixelToValue=function(a){if("undefined"===typeof a)return null;var e=0,c=0,b,e=!0,f=this.scaleBreaks?this.scaleBreaks._appliedBreaks:[],c="number"===typeof a?a:"left"===this._position||"right"===this._position?a.y:a.x;if(this.logarithmic){a=b=Math.pow(this.logarithmBase,(c-this.conversionParameters.reference)/this.conversionParameters.pixelPerUnit);
|
|
765
765
|
if(c<=this.conversionParameters.reference===("left"===this._position||"right"===this._position)!==this.reversed)for(c=0;c<f.length;c++){if(!(f[c].endValue<this.conversionParameters.minimum))if(e)if(f[c].startValue<this.conversionParameters.minimum){if(1<f[c].size&&this.conversionParameters.minimum*Math.pow(f[c].endValue/f[c].startValue,Math.log(b)/Math.log(f[c].size))<f[c].endValue){a=Math.pow(f[c].endValue/f[c].startValue,Math.log(b)/Math.log(f[c].size));break}else a*=f[c].endValue/this.conversionParameters.minimum/
|
|
766
766
|
Math.pow(f[c].size,Math.log(f[c].endValue/this.conversionParameters.minimum)/Math.log(f[c].endValue/f[c].startValue)),b/=Math.pow(f[c].size,Math.log(f[c].endValue/this.conversionParameters.minimum)/Math.log(f[c].endValue/f[c].startValue));e=!1}else if(b>f[c].startValue/this.conversionParameters.minimum){b/=f[c].startValue/this.conversionParameters.minimum;if(b<f[c].size){a*=Math.pow(f[c].endValue/f[c].startValue,1===f[c].size?1:Math.log(b)/Math.log(f[c].size))/b;break}else a*=f[c].endValue/f[c].startValue/
|
|
@@ -846,45 +846,45 @@ a,this===e.axisY[b].crosshair&&(c=!0)):void 0!==a&&(e.axisY[b].sessionVariables.
|
|
|
846
846
|
e.axisY2[b].crosshair._updatedValue=null));this.chart.toolTip&&this.chart.toolTip._entries&&this.chart.toolTip.highlightObjects(this.chart.toolTip._entries);e.sessionVariables.crosshairShownByPixel=!1;return c};V.prototype.hide=function(){this.chart.resetOverlayedCanvas();this.chart.renderCrosshairs(this.parent);this._hidden=!0};V.prototype.render=function(a,e,c){var b,d,k,l,t=null,m=null,n=null,r="";this.valueFormatString||("dateTime"===this.parent.valueType?this.valueFormatString=this.parent.valueFormatString:
|
|
847
847
|
(n=0,n="xySwapped"===this.chart.plotInfo.axisPlacement?50<this.parent.range?0:500<this.chart.width&&25>this.parent.range?2:Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0):50<this.parent.range?0:Math.floor(Math.abs(Math.log(this.parent.range)/Math.LN10))+(5>this.parent.range?2:10>this.parent.range?1:0),this.valueFormatString=y.generateValueFormatString(this.parent.range,n)));var p=null===this.opacity?1:this.opacity,s=Math.abs("pixel"===this._thicknessType?
|
|
848
848
|
this.thickness:this.parent.conversionParameters.pixelPerUnit*this.thickness),h=this.chart.overlaidCanvasCtx,E=h.globalAlpha;h.beginPath();h.strokeStyle=this.color;h.lineWidth=s;h.save();this.labelFontSize=Math.abs(g(this.options.labelFontSize)?this.parent.labelFontSize:this.labelFontSize);this.labelMaxWidth=g(this.options.labelMaxWidth)?0.3*this.chart.width:this.labelMaxWidth;this.labelMaxHeight=g(this.options.labelWrap)||this.labelWrap?0.3*this.chart.height:2*this.labelFontSize;0<s&&h.setLineDash&&
|
|
849
|
-
h.setLineDash(S(this.lineDashType,s));n=new ma(h,{x:0,y:0,
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
r[u].
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
n.
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
v
|
|
871
|
-
|
|
872
|
-
0
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
this.
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
c
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
849
|
+
h.setLineDash(S(this.lineDashType,s));n=new ma(h,{x:0,y:0,backgroundColor:this.labelBackgroundColor,borderColor:this.labelBorderColor,borderThickness:this.labelBorderThickness,cornerRadius:this.labelCornerRadius,maxWidth:this.labelMaxWidth,maxHeight:this.labelMaxHeight,angle:this.labelAngle,text:r,textAlign:this.labelTextAlign,fontSize:this.labelFontSize,fontFamily:this.labelFontFamily,fontWeight:this.labelFontWeight,padding:this.labelPadding,fontColor:this.labelFontColor,fontStyle:this.labelFontStyle,
|
|
850
|
+
textBaseline:"middle"});if(this.snapToDataPoint){var q=0,r=[];if("xySwapped"===this.chart.plotInfo.axisPlacement){var w=null;if("bottom"===this.parent._position||"top"===this.parent._position)q=this.parent.dataSeries[0].axisX.convertPixelToValue({y:e});else if("left"===this.parent._position||"right"===this.parent._position)q=this.parent.convertPixelToValue({y:e});for(var u=0;u<this.parent.dataSeries.length;u++)(w=this.parent.dataSeries[u].getDataPointAtX(q,!0,!0))&&0<=w.index&&(w.dataSeries=this.parent.dataSeries[u],
|
|
851
|
+
null!==w.dataPoint.y&&w.dataSeries.visible&&r.push(w));w=null;if(0===r.length)return;r.sort(function(a,b){return a.distance-b.distance});var v=w=0;yPercent=cumulativeY=0;for(var q=Infinity,x,u=0;u<r.length;u++){if("rangeBar"===r[u].dataSeries.type||"error"===r[u].dataSeries.type){if(r[u].dataPoint.y)for(var B=0;B<r[u].dataPoint.y.length;B++)v=Math.abs(a-this.parent.convertValueToPixel(r[u].dataPoint.y[B])),v<=q&&(q=v,w=u)}else"stackedBar"===r[u].dataSeries.type?(cumulativeY=r[u].dataSeries.dataPointEOs[r[u].index].cumulativeY,
|
|
852
|
+
v=Math.abs(a-this.parent.convertValueToPixel(cumulativeY)),v<=q&&(q=v,w=u)):"stackedBar100"===r[u].dataSeries.type?(v=r[0].dataPoint.x.getTime?r[0].dataPoint.x.getTime():r[0].dataPoint.x,g(x)&&(x=Math.abs(a-this.parent.convertValueToPixel(100*(r[0].dataSeries.dataPointEOs[r[0].index].cumulativeY/r[0].dataSeries.plotUnit.dataPointYSums[v])))),cumulativeY=r[u].dataSeries.dataPointEOs[r[u].index].cumulativeY,v=r[u].dataPoint.x.getTime?r[u].dataPoint.x.getTime():r[u].dataPoint.x,yPercent=100*(cumulativeY/
|
|
853
|
+
r[u].dataSeries.plotUnit.dataPointYSums[v]),v=Math.abs(a-this.parent.convertValueToPixel(yPercent)),v<=x&&(x=v,w=u)):(v=Math.abs(a-this.parent.convertValueToPixel(r[u].dataPoint.y)),v<=q&&(q=v,w=u));g(x)||(q=Math.min(q,x))}x=r[w];u=0;if("bottom"===this.parent._position||"top"===this.parent._position){if("rangeBar"===x.dataSeries.type||"error"===x.dataSeries.type){q=Math.abs(a-this.parent.convertValueToPixel(x.dataPoint.y[0]));for(r=0;r<x.dataPoint.y.length;r++)v=Math.abs(a-this.parent.convertValueToPixel(x.dataPoint.y[r])),
|
|
854
|
+
v<q&&(q=v,u=r);t=1===h.lineWidth%2?(this.parent.convertValueToPixel(x.dataPoint.y[u])<<0)+0.5:this.parent.convertValueToPixel(x.dataPoint.y[u])<<0;this.value=x.dataPoint.y[u];n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:x.dataPoint.y[u]}):g(this.options.label)?Y(g(c)?x.dataPoint.y[u]:c,this.valueFormatString,this.chart._cultureInfo):this.label}else"stackedBar"===x.dataSeries.type?(q=Math.abs(a-this.parent.convertValueToPixel(r[0].dataPoint.y)),
|
|
855
|
+
cumulativeY=x.dataSeries.dataPointEOs[x.index].cumulativeY,t=1===h.lineWidth%2?(this.parent.convertValueToPixel(cumulativeY)<<0)+0.5:this.parent.convertValueToPixel(cumulativeY)<<0,this.value=cumulativeY,n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:cumulativeY}):g(this.options.label)?Y(g(c)?cumulativeY:c,this.valueFormatString,this.chart._cultureInfo):this.label):"stackedBar100"===x.dataSeries.type?(q=Math.abs(a-this.parent.convertValueToPixel(r[0].dataPoint.y)),
|
|
856
|
+
cumulativeY=x.dataSeries.dataPointEOs[x.index].cumulativeY,v=x.dataPoint.x.getTime?x.dataPoint.x.getTime():x.dataPoint.x,yPercent=100*(cumulativeY/x.dataSeries.plotUnit.dataPointYSums[v]),t=1===h.lineWidth%2?(this.parent.convertValueToPixel(yPercent)<<0)+0.5:this.parent.convertValueToPixel(yPercent)<<0,this.value=yPercent,n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:yPercent}):g(this.options.label)?Y(g(c)?yPercent:c,this.valueFormatString,
|
|
857
|
+
this.chart._cultureInfo):this.label):(t=1===h.lineWidth%2?(this.parent.convertValueToPixel(x.dataPoint.y)<<0)+0.5:this.parent.convertValueToPixel(x.dataPoint.y)<<0,this.value=x.dataPoint.y,n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:x.dataPoint.y}):g(this.options.label)?Y(g(c)?x.dataPoint.y:c,this.valueFormatString,this.chart._cultureInfo):this.label);b=d=t;k=this.chart.plotArea.y1;l=this.chart.plotArea.y2;this.bounds={x1:b-
|
|
858
|
+
s/2,y1:k,x2:d+s/2,y2:l};n.x=b-n.measureText().width/2;n.x+n.width>this.chart.bounds.x2?n.x=this.chart.bounds.x2-n.width:n.x<this.chart.bounds.x1&&(n.x=this.chart.bounds.x1);n.y=this.parent.lineCoordinates.y2+("top"===this.parent._position?-n.height+this.parent.tickLength:n.fontSize/2)+2;n.y+n.height>this.chart.bounds.y2?n.y=this.chart.bounds.y2-n.height:n.y<this.chart.bounds.y1&&(n.y=this.chart.bounds.y1)}else if("left"===this.parent._position||"right"===this.parent._position){k=l=m=1===h.lineWidth%
|
|
859
|
+
2?(this.parent.convertValueToPixel(x.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(x.dataPoint.x)<<0;b=this.chart.plotArea.x1;d=this.chart.plotArea.x2;this.bounds={x1:b,y1:k-s/2,x2:d,y2:l+s/2};u=!1;if(this.parent.labels)for(q=Math.ceil(this.parent.interval),r=0;r<this.parent.viewportMaximum;r+=q)if(this.parent.labels[r])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(q=this.parent.convertPixelToValue({y:e}),w=null,u=0;u<this.parent.dataSeries.length;u++)(w=this.parent.dataSeries[u].getDataPointAtX(q,
|
|
860
|
+
!0,!0))&&0<=w.index&&(n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:x.dataPoint.x}):g(this.options.label)?w.dataPoint.label:this.label)}else n.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:x.dataPoint.x}):g(this.options.label)?Y(x.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label:
|
|
861
|
+
this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:x.dataPoint.x}):g(this.options.label)?qa(x.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=x.dataPoint.x;n.y=l+n.fontSize/2-n.measureText().height/2+2;n.y-n.fontSize/2<this.chart.bounds.y1?n.y=this.chart.bounds.y1+n.fontSize/2+2:n.y+n.measureText().height-n.fontSize/2>this.chart.bounds.y2&&(n.y=this.chart.bounds.y2-n.measureText().height+n.fontSize/2);"left"===
|
|
862
|
+
this.parent._position?n.x=this.parent.lineCoordinates.x2-n.measureText().width:"right"===this.parent._position&&(n.x=this.parent.lineCoordinates.x2)}}else if("bottom"===this.parent._position||"top"===this.parent._position){q=this.parent.convertPixelToValue({x:a});for(u=0;u<this.parent.dataSeries.length;u++)(w=this.parent.dataSeries[u].getDataPointAtX(q,!0,!0))&&0<=w.index&&(w.dataSeries=this.parent.dataSeries[u],null!==w.dataPoint.y&&w.dataSeries.visible&&r.push(w));if(0===r.length)return;r.sort(function(a,
|
|
863
|
+
b){return a.distance-b.distance});x=r[0];b=d=t=1===h.lineWidth%2?(this.parent.convertValueToPixel(x.dataPoint.x)<<0)+0.5:this.parent.convertValueToPixel(x.dataPoint.x)<<0;k=this.chart.plotArea.y1;l=this.chart.plotArea.y2;this.bounds={x1:b-s/2,y1:k,x2:d+s/2,y2:l};u=!1;if(this.parent.labels)for(q=Math.ceil(this.parent.interval),r=0;r<this.parent.viewportMaximum;r+=q)if(this.parent.labels[r])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(q=this.parent.convertPixelToValue({x:a}),w=null,
|
|
864
|
+
u=0;u<this.parent.dataSeries.length;u++)(w=this.parent.dataSeries[u].getDataPointAtX(q,!0,!0))&&0<=w.index&&(n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:x.dataPoint.x}):g(this.options.label)?w.dataPoint.label:this.label)}else n.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:x.dataPoint.x}):g(this.options.label)?
|
|
865
|
+
Y(x.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:x.dataPoint.x}):g(this.options.label)?qa(x.dataPoint.x,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=x.dataPoint.x;n.x=b-n.measureText().width/2;n.x+n.width>this.chart.bounds.x2&&(n.x=this.chart.bounds.x2-n.width);n.x<this.chart.bounds.x1&&(n.x=this.chart.bounds.x1);"bottom"===this.parent._position?
|
|
866
|
+
n.y=this.parent.lineCoordinates.y2+n.fontSize/2+2:"top"===this.parent._position&&(n.y=this.parent.lineCoordinates.y1-n.height+n.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position){!g(this.parent.dataSeries)&&0<this.parent.dataSeries.length&&(q=this.parent.dataSeries[0].axisX.convertPixelToValue({x:a}));for(u=0;u<this.parent.dataSeries.length;u++)(w=this.parent.dataSeries[u].getDataPointAtX(q,!0,!0))&&0<=w.index&&(w.dataSeries=this.parent.dataSeries[u],null!==w.dataPoint.y&&
|
|
867
|
+
w.dataSeries.visible&&r.push(w));if(0===r.length)return;r.sort(function(a,b){return a.distance-b.distance});v=w=0;q=Infinity;for(u=0;u<r.length;u++){if("rangeColumn"===r[u].dataSeries.type||"rangeArea"===r[u].dataSeries.type||"error"===r[u].dataSeries.type||"rangeSplineArea"===r[u].dataSeries.type||"candlestick"===r[u].dataSeries.type||"ohlc"===r[u].dataSeries.type||"boxAndWhisker"===r[u].dataSeries.type){if(r[u].dataPoint.y)for(B=0;B<r[u].dataPoint.y.length;B++)v=Math.abs(e-this.parent.convertValueToPixel(r[u].dataPoint.y[B])),
|
|
868
|
+
v<=q&&(q=v,w=u)}else"stackedColumn"===r[u].dataSeries.type?(b=r[u].dataSeries.dataPointEOs[r[u].index].cumulativeY,v=Math.abs(e-this.parent.convertValueToPixel(b)),v<=q&&(q=v,w=u)):"stackedArea"===r[u].dataSeries.type?(b=r[u].dataSeries.dataPointEOs[r[u].index].cumulativeY,v=Math.abs(e-this.parent.convertValueToPixel(b)),v<=q&&(q=v,w=u)):"stackedColumn100"===r[u].dataSeries.type||"stackedArea100"===r[u].dataSeries.type?(v=r[0].dataPoint.x.getTime?r[0].dataPoint.x.getTime():r[0].dataPoint.x,g(x)&&
|
|
869
|
+
(x=Math.abs(e-this.parent.convertValueToPixel(100*(r[0].dataSeries.dataPointEOs[r[0].index].cumulativeY/r[0].dataSeries.plotUnit.dataPointYSums[v])))),"stackedColumn100"===r[u].dataSeries.type?(m=r[u].dataSeries.dataPointEOs[r[u].index].cumulativeY,v=r[u].dataPoint.x.getTime?r[u].dataPoint.x.getTime():r[u].dataPoint.x,b=100*(m/r[u].dataSeries.plotUnit.dataPointYSums[v]),v=Math.abs(e-this.parent.convertValueToPixel(b)),v<=x&&(x=v,w=u)):"stackedArea100"===r[u].dataSeries.type&&(m=r[u].dataSeries.dataPointEOs[r[u].index].cumulativeY,
|
|
870
|
+
v=r[u].dataPoint.x.getTime?r[u].dataPoint.x.getTime():r[u].dataPoint.x,b=100*(m/r[u].dataSeries.plotUnit.dataPointYSums[v]),v=Math.abs(e-this.parent.convertValueToPixel(b)),v<=x&&(x=v,w=u))):"waterfall"===r[u].dataSeries.type?(v=Math.abs(e-this.parent.convertValueToPixel(r[u].dataSeries.dataPointEOs[r[u].index].cumulativeSum)),v<=q&&(x=q=v,w=u)):(v=Math.abs(e-this.parent.convertValueToPixel(r[u].dataPoint.y)),v<=q&&(q=v,w=u));g(x)||(q=Math.min(q,x))}x=r[w];u=0;if("rangeColumn"===x.dataSeries.type||
|
|
871
|
+
"rangeArea"===x.dataSeries.type||"error"===x.dataSeries.type||"rangeSplineArea"===x.dataSeries.type||"candlestick"===x.dataSeries.type||"ohlc"===x.dataSeries.type||"boxAndWhisker"===x.dataSeries.type){q=Math.abs(e-this.parent.convertValueToPixel(x.dataPoint.y[0]));for(r=0;r<x.dataPoint.y.length;r++)v=Math.abs(e-this.parent.convertValueToPixel(x.dataPoint.y[r])),v<q&&(q=v,u=r);m=1===h.lineWidth%2?(this.parent.convertValueToPixel(x.dataPoint.y[u])<<0)+0.5:this.parent.convertValueToPixel(x.dataPoint.y[u])<<
|
|
872
|
+
0;n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:x.dataPoint.y[u]}):g(this.options.label)?Y(g(c)?x.dataPoint.y[u]:c,this.valueFormatString,this.chart._cultureInfo):this.label;this.value=x.dataPoint.y[u]}else"stackedColumn"===x.dataSeries.type?(b=x.dataSeries.dataPointEOs[x.index].cumulativeY,m=1===h.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,
|
|
873
|
+
axis:this.parent.options,crosshair:this.options,value:b}):g(this.options.label)?Y(g(c)?b:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"stackedArea"===x.dataSeries.type?(b=x.dataSeries.dataPointEOs[x.index].cumulativeY,m=1===h.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:b}):g(this.options.label)?Y(g(c)?
|
|
874
|
+
b:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"stackedColumn100"===x.dataSeries.type?(m=x.dataSeries.dataPointEOs[x.index].cumulativeY,v=x.dataPoint.x.getTime?x.dataPoint.x.getTime():x.dataPoint.x,b=100*(m/x.dataSeries.plotUnit.dataPointYSums[v]),m=1===h.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:b}):
|
|
875
|
+
g(this.options.label)?Y(g(c)?b:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"stackedArea100"===x.dataSeries.type?(m=x.dataSeries.dataPointEOs[x.index].cumulativeY,v=x.dataPoint.x.getTime?x.dataPoint.x.getTime():x.dataPoint.x,b=100*(m/x.dataSeries.plotUnit.dataPointYSums[v]),m=1===h.lineWidth%2?(this.parent.convertValueToPixel(b)<<0)+0.5:this.parent.convertValueToPixel(b)<<0,n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,
|
|
876
|
+
value:b}):g(this.options.label)?Y(g(c)?b:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=b):"waterfall"===x.dataSeries.type?(m=1===h.lineWidth%2?(this.parent.convertValueToPixel(x.dataSeries.dataPointEOs[x.index].cumulativeSum)<<0)+0.5:this.parent.convertValueToPixel(x.dataSeries.dataPointEOs[x.index].cumulativeSum)<<0,n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:x.dataSeries.dataPointEOs[x.index].cumulativeSum}):
|
|
877
|
+
g(this.options.label)?Y(g(c)?x.dataSeries.dataPointEOs[x.index].cumulativeSum:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=x.dataSeries.dataPointEOs[x.index].cumulativeSum):(m=1===h.lineWidth%2?(g(a)?e:this.parent.convertValueToPixel(x.dataPoint.y)<<0)+0.5:g(a)?e:this.parent.convertValueToPixel(x.dataPoint.y)<<0,n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:g(c)?x.dataPoint.y:c}):g(this.options.label)?
|
|
878
|
+
Y(g(c)?x.dataPoint.y:c,this.valueFormatString,this.chart._cultureInfo):this.label,this.value=x.dataPoint.y);k=l=m;b=this.chart.plotArea.x1;d=this.chart.plotArea.x2;this.bounds={x1:b,y1:k-s/2,x2:d,y2:l+s/2};n.y=l+n.fontSize/2-n.measureText().height/2+2;n.y-n.fontSize/2<this.chart.bounds.y1?n.y=this.chart.bounds.y1+n.fontSize/2+2:n.y+n.measureText().height-n.fontSize/2>this.chart.bounds.y2&&(n.y=this.chart.bounds.y2-n.measureText().height+n.fontSize/2);"left"===this.parent._position?n.x=this.parent.lineCoordinates.x2-
|
|
879
|
+
n.measureText().width:"right"===this.parent._position&&(n.x=this.parent.lineCoordinates.x2)}r=null;h.globalAlpha=p;if("bottom"===this.parent._position||"top"===this.parent._position)"top"===this.parent._position&&n.y-n.fontSize/2<this.chart.bounds.y1&&(n.y=this.chart.bounds.y1+n.fontSize/2),"bottom"===this.parent._position&&this.parent.lineCoordinates.y2+n.measureText().height>this.chart.bounds.y2&&(n.y=this.chart.bounds.y2-n.height+n.fontSize/2+2),this.value>=Math.min(this.parent.viewportMinimum,
|
|
880
|
+
this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<s&&(h.moveTo(b,k),h.lineTo(d,l),h.stroke(),this._hidden=!1);if("left"===this.parent._position||"right"===this.parent._position)"left"===this.parent._position&&n.x<this.chart.bounds.x1&&(n.x=this.chart.bounds.x1),"right"===this.parent._position&&n.x+n.measureText().width>this.chart.bounds.x2&&(n.x=this.chart.bounds.x2-n.measureText().width),this.value>=Math.min(this.parent.viewportMinimum,
|
|
881
|
+
this.parent.viewportMaximum)&&this.value<=Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&0<s&&(h.moveTo(b,k),h.lineTo(d,l),h.stroke(),this._hidden=!1)}else{if("bottom"===this.parent._position||"top"===this.parent._position)b=d=t=1===h.lineWidth%2?(a<<0)+0.5:a<<0,k=this.chart.plotArea.y1,l=this.chart.plotArea.y2,this.bounds={x1:b-s/2,y1:k,x2:d+s/2,y2:l};else if("left"===this.parent._position||"right"===this.parent._position)k=l=m=1===h.lineWidth%2?(e<<0)+0.5:e<<0,b=this.chart.plotArea.x1,
|
|
882
|
+
d=this.chart.plotArea.x2,this.bounds={x1:b,y1:k-s/2,x2:d,y2:l+s/2};if("xySwapped"===this.chart.plotInfo.axisPlacement)if("left"===this.parent._position||"right"===this.parent._position){u=!1;if(this.parent.labels)for(q=Math.ceil(this.parent.interval),r=0;r<this.parent.viewportMaximum;r+=q)if(this.parent.labels[r])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(q=this.parent.convertPixelToValue({y:e}),w=null,u=0;u<this.parent.dataSeries.length;u++)(w=this.parent.dataSeries[u].getDataPointAtX(q,
|
|
883
|
+
!0))&&0<=w.index&&(n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:g(c)?this.parent.convertPixelToValue(a):c}):g(this.options.label)?w.dataPoint.label:this.label)}else n.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:g(c)?this.parent.convertPixelToValue(e):c}):g(this.options.label)?Y(g(c)?this.parent.convertPixelToValue(e):
|
|
884
|
+
c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:g(c)?this.parent.convertPixelToValue(e):c}):g(this.options.label)?qa(g(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label;n.y=e+n.fontSize/2-n.measureText().height/2+2;n.y-n.fontSize/2<this.chart.bounds.y1?n.y=this.chart.bounds.y1+n.fontSize/2+2:n.y+n.measureText().height-n.fontSize/
|
|
885
|
+
2>this.chart.bounds.y2&&(n.y=this.chart.bounds.y2-n.measureText().height+n.fontSize/2);"left"===this.parent._position?n.x=this.parent.lineCoordinates.x1-n.measureText().width:"right"===this.parent._position&&(n.x=this.parent.lineCoordinates.x2)}else{if("bottom"===this.parent._position||"top"===this.parent._position)n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:g(c)?this.parent.convertPixelToValue(a):c}):g(this.options.label)?
|
|
886
|
+
Y(g(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label,n.x=b-n.measureText().width/2,n.x+n.width>this.chart.bounds.x2&&(n.x=this.chart.bounds.x2-n.width),n.x<this.chart.bounds.x1&&(n.x=this.chart.bounds.x1),"bottom"===this.parent._position?n.y=this.parent.lineCoordinates.y2+n.fontSize/2+2:"top"===this.parent._position&&(n.y=this.parent.lineCoordinates.y1-n.height+n.fontSize/2+2)}else if("bottom"===this.parent._position||"top"===this.parent._position){u=
|
|
887
|
+
!1;r="";if(this.parent.labels)for(q=Math.ceil(this.parent.interval),r=0;r<this.parent.viewportMaximum;r+=q)if(this.parent.labels[r])u=!0;else{u=!1;break}if(u){if("axisX"===this.parent.type)for(q=this.parent.convertPixelToValue({x:a}),w=null,u=0;u<this.parent.dataSeries.length;u++)(w=this.parent.dataSeries[u].getDataPointAtX(q,!0))&&0<=w.index&&(n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:g(c)?this.parent.convertPixelToValue(a):
|
|
888
888
|
c}):g(this.options.label)?g(c)?w.dataPoint.label:c:this.label)}else n.text="dateTime"!==this.parent.valueType||this.parent.logarithmic?this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:g(c)?0<this.parent.dataSeries.length?this.parent.convertPixelToValue(a):"":c}):g(this.options.label)?Y(g(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label:this.labelFormatter?this.labelFormatter({chart:this.chart,
|
|
889
889
|
axis:this.parent.options,crosshair:this.options,value:g(c)?this.parent.convertPixelToValue(a):c}):g(this.options.label)?qa(g(c)?this.parent.convertPixelToValue(a):c,this.valueFormatString,this.chart._cultureInfo):this.label;n.x=b-n.measureText().width/2;n.x+n.width>this.chart.bounds.x2&&(n.x=this.chart.bounds.x2-n.width);n.x<this.chart.bounds.x1&&(n.x=this.chart.bounds.x1);"bottom"===this.parent._position?n.y=this.parent.lineCoordinates.y2+n.fontSize/2+2:"top"===this.parent._position&&(n.y=this.parent.lineCoordinates.y1-
|
|
890
890
|
n.height+n.fontSize/2+2)}else if("left"===this.parent._position||"right"===this.parent._position)n.text=this.labelFormatter?this.labelFormatter({chart:this.chart,axis:this.parent.options,crosshair:this.options,value:g(c)?this.parent.convertPixelToValue(e):c}):g(this.options.label)?Y(g(c)?this.parent.convertPixelToValue(e):c,this.valueFormatString,this.chart._cultureInfo):this.label,n.y=e+n.fontSize/2-n.measureText().height/2+2,n.y-n.fontSize/2<this.chart.bounds.y1?n.y=this.chart.bounds.y1+n.fontSize/
|
|
@@ -894,22 +894,22 @@ this.parent._position&&n.y-n.fontSize/2<this.chart.bounds.y1?n.y=this.chart.boun
|
|
|
894
894
|
Math.max(this.parent.viewportMinimum,this.parent.viewportMaximum)&&(g(this._textBlock)||(g(this._textBlock.text)||!("number"===typeof this._textBlock.text.valueOf()||0<this._textBlock.text.length)||this._hidden)||this._textBlock.render(!0),g(this._label)&&this.dispatchEvent("updated",{chart:this.chart,crosshair:this.options,axis:this.parent,value:this.value},this.parent))};ga(W,aa);W.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("shared");this.updateOption("animationEnabled");
|
|
895
895
|
this.updateOption("content");this.updateOption("contentFormatter");this.updateOption("reversed");this.updateOption("backgroundColor");this.updateOption("borderColor");this.updateOption("borderThickness");this.updateOption("cornerRadius");this.updateOption("fontSize");this.updateOption("fontColor");this.updateOption("fontFamily");this.updateOption("fontWeight");this.updateOption("fontStyle")};W.prototype._initialize=function(){this.updateOption("updated");this.updateOption("hidden");if(this.enabled){this.container=
|
|
896
896
|
document.createElement("div");this.container.setAttribute("class","canvasjs-chart-tooltip");this.container.style.position="absolute";this.container.style.height="auto";this.container.style.boxShadow="1px 1px 2px 2px rgba(0,0,0,0.1)";this.container.style.zIndex="1000";this.container.style.pointerEvents="none";this.container.style.display="none";var a=document.createElement("div");a.style.width="auto";a.style.height="auto";a.style.minWidth="50px";a.style.lineHeight="normal";a.style.margin="0px 0px 0px 0px";
|
|
897
|
-
a.style.padding="5px";a.style.fontFamily="Calibri, Arial, Georgia, serif";a.style.fontWeight="normal";a.style.fontStyle=
|
|
898
|
-
a.style.msUserSelect="none";a.style.userSelect="none";
|
|
897
|
+
a.style.padding="5px";a.style.fontFamily="Calibri, Arial, Georgia, serif";a.style.fontWeight="normal";a.style.fontStyle=w?"italic":"normal";a.style.fontSize="14px";a.style.color="#000000";a.style.textShadow="1px 1px 1px rgba(0, 0, 0, 0.1)";a.style.textAlign="left";a.style.border="2px solid gray";a.style.background=w?"rgba(255,255,255,.9)":"rgb(255,255,255)";a.style.textIndent="0px";a.style.whiteSpace="nowrap";a.style.borderRadius="5px";a.style.MozUserSelect="none";a.style.WebkitUserSelect="none";
|
|
898
|
+
a.style.msUserSelect="none";a.style.userSelect="none";w||(a.style.filter="alpha(opacity = 90)",a.style.filter="progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color='#666666')");a.innerText="Sample Tooltip";this.container.appendChild(a);this.contentDiv=this.container.firstChild;this.container.style.borderRadius=this.contentDiv.style.borderRadius;this.chart._canvasJSContainer.appendChild(this.container)}};W.prototype.mouseMoveHandler=function(a,e){this._lastUpdated&&4>(new Date).getTime()-
|
|
899
899
|
this._lastUpdated||(this._lastUpdated=(new Date).getTime(),this.chart.resetOverlayedCanvas(),this._updateToolTip(a,e),this.enabled&&this._updatedEventParameters&&!isNaN(this._prevX)&&!isNaN(this._prevY)&&this.container&&this.container.style&&this.dispatchEvent("none"===this.container.style.display?"hidden":"updated",this._updatedEventParameters,this))};W.prototype._updateToolTip=function(a,e,c){c="undefined"===typeof c?!0:c;this._updateOptions();this.container||this._initialize();this.enabled||this.hide();
|
|
900
900
|
if(!this.chart.disableToolTip){if("undefined"===typeof a||"undefined"===typeof e){if(isNaN(this._prevX)||isNaN(this._prevY))return;a=this._prevX;e=this._prevY}else this._prevX=a,this._prevY=e;var b=null,d=null,k=[],l=0;if(this.shared&&this.enabled&&"none"!==this.chart.plotInfo.axisPlacement){var t=[];if(this.chart.axisX)for(var m=0;m<this.chart.axisX.length;m++){for(var l="xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX[m].convertPixelToValue({y:e}):this.chart.axisX[m].convertPixelToValue({x:a}),
|
|
901
901
|
n=null,b=0;b<this.chart.axisX[m].dataSeries.length;b++)(n=this.chart.axisX[m].dataSeries[b].getDataPointAtX(l,c,!0))&&0<=n.index&&(n.dataSeries=this.chart.axisX[m].dataSeries[b],null!==n.dataPoint.y&&n.dataSeries.visible&&t.push(n));n=null}if(this.chart.axisX2)for(m=0;m<this.chart.axisX2.length;m++){l="xySwapped"===this.chart.plotInfo.axisPlacement?this.chart.axisX2[m].convertPixelToValue({y:e}):this.chart.axisX2[m].convertPixelToValue({x:a});n=null;for(b=0;b<this.chart.axisX2[m].dataSeries.length;b++)(n=
|
|
902
902
|
this.chart.axisX2[m].dataSeries[b].getDataPointAtX(l,c,!0))&&0<=n.index&&(n.dataSeries=this.chart.axisX2[m].dataSeries[b],null!==n.dataPoint.y&&n.dataSeries.visible&&t.push(n));n=null}if(0===t.length)return;t.sort(function(a,b){return a.dataSeries.axisX.logarithmic||b.dataSeries.axisX.logarithmic?a.distance-b.distance:a.distance/a.dataSeries.axisX.range-b.distance/b.dataSeries.axisX.range});c=t[0];for(b=0;b<t.length;b++)t[b].dataPoint.x.valueOf()===c.dataPoint.x.valueOf()&&k.push(t[b]);t=null}else{if(b=
|
|
903
|
-
this.chart.getDataPointAtXY(a,e,c))this.currentDataPointIndex=b.dataPointIndex,this.currentSeriesIndex=b.dataSeries.index;else if(
|
|
903
|
+
this.chart.getDataPointAtXY(a,e,c))this.currentDataPointIndex=b.dataPointIndex,this.currentSeriesIndex=b.dataSeries.index;else if(w)if(b=fb(a,e,this.chart._eventManager.ghostCtx),0<b&&"undefined"!==typeof this.chart._eventManager.objectMap[b]){b=this.chart._eventManager.objectMap[b];if("legendItem"===b.objectType)return;this.currentSeriesIndex=b.dataSeriesIndex;this.currentDataPointIndex=0<=b.dataPointIndex?b.dataPointIndex:-1}else this.currentDataPointIndex=-1;else this.currentDataPointIndex=-1;
|
|
904
904
|
if(0<=this.currentSeriesIndex){d=this.chart.data[this.currentSeriesIndex];n={};if(0<=this.currentDataPointIndex)b=d.dataPoints[this.currentDataPointIndex],n.dataSeries=d,n.dataPoint=b,n.index=this.currentDataPointIndex,n.distance=Math.abs(b.x-l),"waterfall"===d.type&&(n.cumulativeSumYStartValue=d.dataPointEOs[this.currentDataPointIndex].cumulativeSumYStartValue,n.cumulativeSum=d.dataPointEOs[this.currentDataPointIndex].cumulativeSum);else if(this.enabled&&d&&("line"===d.type||"stepLine"===d.type||
|
|
905
905
|
"spline"===d.type||"area"===d.type||"stepArea"===d.type||"splineArea"===d.type||"stackedArea"===d.type||"stackedArea100"===d.type||"rangeArea"===d.type||"rangeSplineArea"===d.type||"candlestick"===d.type||"ohlc"===d.type||"boxAndWhisker"===d.type))l=d.axisX.convertPixelToValue({x:a}),n=d.getDataPointAtX(l,c,!0),g(n)||(n.dataSeries=d,this.currentDataPointIndex=n.index,b=n.dataPoint);else{"toolTip"===this.chart.clearedOverlayedCanvas&&(this.chart.resetOverlayedCanvas(),this.chart.clearedOverlayedCanvas=
|
|
906
906
|
null,this.container&&(this.container.style.display="none"));return}if(!g(n)&&!g(n.dataPoint)&&!g(n.dataPoint.y))if(n.dataSeries.axisY)if(0<n.dataPoint.y.length){for(b=c=0;b<n.dataPoint.y.length;b++)n.dataPoint.y[b]<n.dataSeries.axisY.viewportMinimum?c--:n.dataPoint.y[b]>n.dataSeries.axisY.viewportMaximum&&c++;c<n.dataPoint.y.length&&c>-n.dataPoint.y.length&&k.push(n)}else"column"===d.type||"bar"===d.type?0>n.dataPoint.y?0>n.dataSeries.axisY.viewportMinimum&&n.dataSeries.axisY.viewportMaximum>=n.dataPoint.y&&
|
|
907
907
|
k.push(n):n.dataSeries.axisY.viewportMinimum<=n.dataPoint.y&&0<=n.dataSeries.axisY.viewportMaximum&&k.push(n):"bubble"===d.type?(c=this.chart._eventManager.objectMap[d.dataPointIds[n.index]].size/2,n.dataPoint.y>=n.dataSeries.axisY.viewportMinimum-c&&n.dataPoint.y<=n.dataSeries.axisY.viewportMaximum+c&&k.push(n)):"waterfall"===d.type?(c=0,n.cumulativeSumYStartValue<n.dataSeries.axisY.viewportMinimum?c--:n.cumulativeSumYStartValue>n.dataSeries.axisY.viewportMaximum&&c++,n.cumulativeSum<n.dataSeries.axisY.viewportMinimum?
|
|
908
908
|
c--:n.cumulativeSum>n.dataSeries.axisY.viewportMaximum&&c++,2>c&&-2<c&&k.push(n)):(0<=n.dataSeries.type.indexOf("100")||"stackedColumn"===d.type||"stackedBar"===d.type||"stackedArea"===d.type||n.dataPoint.y>=n.dataSeries.axisY.viewportMinimum&&n.dataPoint.y<=n.dataSeries.axisY.viewportMaximum)&&k.push(n);else k.push(n)}}if(0<k.length){if(this.highlightObjects(k),this.enabled){c="";c=this.getToolTipInnerHTML({entries:k});if(null!==c){this.contentDiv.innerHTML=c;if(this.isToolTipDefinedInData&&g(this.options.content)&&
|
|
909
|
-
g(this.options.contentFormatter))for(l=this.contentDiv.getElementsByTagName("span"),b=0;b<l.length;b++)l[b]&&(l[b].style.color=l[b].getAttribute("data-color"));l=!1;"none"===this.container.style.display&&(l=!0,this.container.style.display="block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:
|
|
909
|
+
g(this.options.contentFormatter))for(l=this.contentDiv.getElementsByTagName("span"),b=0;b<l.length;b++)l[b]&&(l[b].style.color=l[b].getAttribute("data-color"));l=!1;"none"===this.container.style.display&&(l=!0,this.container.style.display="block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:w?"rgba(255,255,255,.9)":"rgb(255,255,255)",this.borderColor="waterfall"===k[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=
|
|
910
910
|
this.options.borderColor?this.options.borderColor:k[0].dataPoint.color?k[0].dataPoint.color:0<k[0].dataPoint.y?k[0].dataSeries.risingColor:k[0].dataSeries.fallingColor:"error"===k[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:k[0].dataSeries.color?k[0].dataSeries.color:k[0].dataSeries._colorSet[d.index%k[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=
|
|
911
911
|
this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:k[0].dataPoint.color?k[0].dataPoint.color:k[0].dataSeries.color?k[0].dataSeries.color:k[0].dataSeries._colorSet[k[0].index%k[0].dataSeries._colorSet.length],this.contentDiv.style.borderWidth=this.borderThickness||0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=this.cornerRadius||0===this.cornerRadius?this.cornerRadius+"px":"5px",this.container.style.borderRadius=
|
|
912
|
-
this.contentDiv.style.borderRadius,this.contentDiv.style.fontSize=this.fontSize||0===this.fontSize?this.fontSize+"px":"14px",this.contentDiv.style.color=this.fontColor?this.fontColor:"#000000",this.contentDiv.style.fontFamily=this.fontFamily?this.fontFamily:"Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:
|
|
912
|
+
this.contentDiv.style.borderRadius,this.contentDiv.style.fontSize=this.fontSize||0===this.fontSize?this.fontSize+"px":"14px",this.contentDiv.style.color=this.fontColor?this.fontColor:"#000000",this.contentDiv.style.fontFamily=this.fontFamily?this.fontFamily:"Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:w?"italic":"normal"}catch(r){}"pie"===k[0].dataSeries.type||"doughnut"===
|
|
913
913
|
k[0].dataSeries.type||"funnel"===k[0].dataSeries.type||"pyramid"===k[0].dataSeries.type||"bar"===k[0].dataSeries.type||"rangeBar"===k[0].dataSeries.type||"stackedBar"===k[0].dataSeries.type||"stackedBar100"===k[0].dataSeries.type?a=a-10-this.container.clientWidth:(a=k[0].dataSeries.axisX.convertValueToPixel(k[0].dataPoint.x)-this.container.clientWidth<<0,a-=10);0>a&&(a=Math.max(0,a+this.container.clientWidth+20));a+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&
|
|
914
914
|
(a=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));e=1!==k.length||this.shared||"line"!==k[0].dataSeries.type&&"stepLine"!==k[0].dataSeries.type&&"spline"!==k[0].dataSeries.type&&"area"!==k[0].dataSeries.type&&"stepArea"!==k[0].dataSeries.type&&"splineArea"!==k[0].dataSeries.type?"bar"===k[0].dataSeries.type||"rangeBar"===k[0].dataSeries.type||"stackedBar"===k[0].dataSeries.type||"stackedBar100"===k[0].dataSeries.type?k[0].dataSeries.axisX.convertValueToPixel(k[0].dataPoint.x):
|
|
915
915
|
e:k[0].dataSeries.axisY.convertValueToPixel(k[0].dataPoint.y);e=-e+10;0<e+this.container.clientHeight+5&&(e-=e+this.container.clientHeight+5-0);this.fixMozTransitionDelay(a,e);!this.animationEnabled||l?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);this.positionLeft=a;this.positionBottom=e;this.container.style.left=a+"px";this.container.style.bottom=e+"px"}else this.hide(!1),this.enabled&&this.dispatchEvent("hidden",{chart:this.chart,
|
|
@@ -940,17 +940,17 @@ this.container.style.MsTransition="",this.container.style.transition="")};W.prot
|
|
|
940
940
|
function(a,d){if(!this.enabled)return!1;this.chart.clearedOverlayedCanvas=null;this._updateOptions();var c,b,f,k=[];f=!1;d=!g(d)&&0<=d&&d<this.chart.data.length?d:0;if(this.shared)for(var l=0;l<this.chart.data.length;l++)c=this.chart.data[l],(b=c.getDataPointAtX(a,!1))&&(b.dataPoint&&!g(b.dataPoint.y)&&c.visible)&&(b.dataSeries=c,this.chart.data[d].axisX.convertValueToPixel(a)===c.axisX.convertValueToPixel(b.dataPoint.x)&&k.push(b));else c=this.chart.data[d],(b=c.getDataPointAtX(a,!1))&&(b.dataPoint&&
|
|
941
941
|
!g(b.dataPoint.y)&&c.visible)&&(b.dataSeries=c,k.push(b));if(0<k.length){for(l=0;l<k.length;l++)if(b=k[l],(this.shared||0<=b.dataSeries.type.indexOf("100"))&&b.dataSeries.axisX&&b.dataPoint.x>=b.dataSeries.axisX.viewportMinimum&&b.dataPoint.x<=b.dataSeries.axisX.viewportMaximum){f=!1;break}else if(b.dataSeries.axisX&&b.dataSeries.axisY&&(b.dataPoint.x<b.dataSeries.axisX.viewportMinimum||b.dataPoint.x>b.dataSeries.axisX.viewportMaximum||b.dataPoint.y<b.dataSeries.axisY.viewportMinimum||b.dataPoint.y>
|
|
942
942
|
b.dataSeries.axisY.viewportMaximum))f=!0;else{f=!1;break}if(f)return this.hide(),!1;this.highlightObjects(k);this._entries=k;l="";l=this.getToolTipInnerHTML({entries:k});if(null!==l){this.contentDiv.innerHTML=l;if(this.isToolTipDefinedInData&&g(this.options.content)&&g(this.options.contentFormatter))for(b=this.contentDiv.getElementsByTagName("span"),l=0;l<b.length;l++)b[l]&&(b[l].style.color=b[l].getAttribute("data-color"));l=!1;"none"===this.container.style.display&&(l=!0,this.container.style.display=
|
|
943
|
-
"block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:
|
|
943
|
+
"block");try{this.contentDiv.style.background=this.backgroundColor?this.backgroundColor:w?"rgba(255,255,255,.9)":"rgb(255,255,255)",this.borderColor="waterfall"===k[0].dataSeries.type?this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:k[0].dataPoint.color?k[0].dataPoint.color:0<k[0].dataPoint.y?k[0].dataSeries.risingColor:k[0].dataSeries.fallingColor:"error"===k[0].dataSeries.type?this.contentDiv.style.borderRightColor=
|
|
944
944
|
this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:k[0].dataSeries.color?k[0].dataSeries.color:k[0].dataSeries._colorSet[c.index%k[0].dataSeries._colorSet.length]:this.contentDiv.style.borderRightColor=this.contentDiv.style.borderLeftColor=this.contentDiv.style.borderColor=this.options.borderColor?this.options.borderColor:k[0].dataPoint.color?k[0].dataPoint.color:k[0].dataSeries.color?k[0].dataSeries.color:k[0].dataSeries._colorSet[k[0].index%
|
|
945
945
|
k[0].dataSeries._colorSet.length],this.contentDiv.style.borderWidth=this.borderThickness||0===this.borderThickness?this.borderThickness+"px":"2px",this.contentDiv.style.borderRadius=this.cornerRadius||0===this.cornerRadius?this.cornerRadius+"px":"5px",this.container.style.borderRadius=this.contentDiv.style.borderRadius,this.contentDiv.style.fontSize=this.fontSize||0===this.fontSize?this.fontSize+"px":"14px",this.contentDiv.style.color=this.fontColor?this.fontColor:"#000000",this.contentDiv.style.fontFamily=
|
|
946
|
-
this.fontFamily?this.fontFamily:"Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:
|
|
946
|
+
this.fontFamily?this.fontFamily:"Calibri, Arial, Georgia, serif;",this.contentDiv.style.fontWeight=this.fontWeight?this.fontWeight:"normal",this.contentDiv.style.fontStyle=this.fontStyle?this.fontStyle:w?"italic":"normal"}catch(t){}"pie"===k[0].dataSeries.type||"doughnut"===k[0].dataSeries.type?c=k[0].dataSeries.dataPointEOs[k[0].index].center.x+k[0].dataSeries.radius*Math.cos(k[0].dataSeries.dataPointEOs[k[0].index].midAngle)+-("left"===k[0].dataSeries.dataPointEOs[k[0].index].hemisphere?0:this.container.clientWidth):
|
|
947
947
|
"funnel"===k[0].dataSeries.type||"pyramid"===k[0].dataSeries.type?(b=k[0].dataSeries.dataPointEOs[k[0].index].sectionsofFunnel,c=(b.x1+b.x2-this.container.clientWidth)/2):(c="bar"===k[0].dataSeries.type||"rangeBar"===k[0].dataSeries.type||"stackedBar"===k[0].dataSeries.type||"stackedBar100"===k[0].dataSeries.type?k[0].dataSeries.axisY.convertValueToPixel(k[0].dataPoint.y.length?k[0].dataPoint.y[k[0].dataPoint.y.length-1]:k[0].dataPoint.y)-this.container.clientWidth<<0:k[0].dataSeries.axisX.convertValueToPixel(k[0].dataPoint.x)-
|
|
948
948
|
this.container.clientWidth<<0,c-=10);0>c&&(c+=this.container.clientWidth+20);c+this.container.clientWidth>Math.max(this.chart.container.clientWidth,this.chart.width)&&(c=Math.max(0,Math.max(this.chart.container.clientWidth,this.chart.width)-this.container.clientWidth));1!==k.length||this.shared||"line"!==k[0].dataSeries.type&&"stepLine"!==k[0].dataSeries.type&&"spline"!==k[0].dataSeries.type&&"area"!==k[0].dataSeries.type&&"stepArea"!==k[0].dataSeries.type&&"splineArea"!==k[0].dataSeries.type?"pie"===
|
|
949
949
|
k[0].dataSeries.type||"doughnut"===k[0].dataSeries.type?(b=k[0].dataSeries.dataPointEOs[k[0].index].center.y+k[0].dataSeries.radius*Math.sin(k[0].dataSeries.dataPointEOs[k[0].index].midAngle),b<k[0].dataSeries.dataPointEOs[k[0].index].center.y&&(b+=this.container.clientHeight)):"funnel"===k[0].dataSeries.type||"pyramid"===k[0].dataSeries.type?(b=k[0].dataSeries.dataPointEOs[k[0].dataSeries.reversed?k[0].dataSeries.dataPointEOs.length-1-k[0].index:k[0].index].sectionsofFunnel,b="undefined"!==typeof b.x5?
|
|
950
950
|
(b.y2+b.y4)/2:(b.y2+b.y3)/2+this.container.clientHeight/2):b="bar"===k[0].dataSeries.type||"rangeBar"===k[0].dataSeries.type||"stackedBar"===k[0].dataSeries.type||"stackedBar100"===k[0].dataSeries.type?k[0].dataSeries.axisX.convertValueToPixel(k[0].dataPoint.x):k[0].dataSeries.axisY.convertValueToPixel(k[0].dataPoint.y.length?k[0].dataPoint.y[k[0].dataPoint.y.length-1]:k[0].dataPoint.y):b=k[0].dataSeries.axisY.convertValueToPixel(k[0].dataPoint.y);b=-b+10;0<b+this.container.clientHeight+5&&(b-=b+
|
|
951
951
|
this.container.clientHeight+5-0);this.fixMozTransitionDelay(c,b);!this.animationEnabled||l?this.disableAnimation():(this.enableAnimation(),this.container.style.MozTransition=this.mozContainerTransition);this.container.style.left=c+"px";this.container.style.bottom=b+"px"}else return this.hide(!1),!1}else return this.hide(),!1;this._xValue=a;this._dataSeriesIndex=d;this._prevY=this._prevX=NaN;return!0};W.prototype.fixMozTransitionDelay=function(a,d){if(20<this.chart._eventManager.lastObjectId)this.mozContainerTransition=
|
|
952
952
|
this.getContainerTransition(0);else{var c=parseFloat(this.container.style.left),c=isNaN(c)?0:c,b=parseFloat(this.container.style.bottom),b=isNaN(b)?0:b;10<Math.sqrt(Math.pow(c-a,2)+Math.pow(b-d,2))?this.mozContainerTransition=this.getContainerTransition(0.1):this.mozContainerTransition=this.getContainerTransition(0)}};W.prototype.getContainerTransition=function(a){return"left "+a+"s ease-out 0s, bottom "+a+"s ease-out 0s"};ha.prototype.reset=function(){this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=
|
|
953
|
-
[];this.previousDataPointEventObject=null;this.eventObjects=[];
|
|
953
|
+
[];this.previousDataPointEventObject=null;this.eventObjects=[];w&&(this.ghostCtx.clearRect(0,0,this.chart.width,this.chart.height),this.ghostCtx.beginPath())};ha.prototype.getNewObjectTrackingId=function(){return++this.lastObjectId};ha.prototype.mouseEventHandler=function(a){if("mousemove"===a.type||"click"===a.type){var d=[],c=za(a),b=null;if((b=this.chart.getObjectAtXY(c.x,c.y,!1))&&"undefined"!==typeof this.objectMap[b])if(b=this.objectMap[b],"dataPoint"===b.objectType){var f=this.chart.data[b.dataSeriesIndex],
|
|
954
954
|
g=f.dataPoints[b.dataPointIndex],l=b.dataPointIndex;b.eventParameter={x:c.x,y:c.y,dataPoint:g,dataSeries:f.options,dataPointIndex:l,dataSeriesIndex:f.index,chart:this.chart};b.eventContext={context:g,userContext:g,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"};d.push(b);b=this.objectMap[f.id];b.eventParameter={x:c.x,y:c.y,dataPoint:g,dataSeries:f.options,dataPointIndex:l,dataSeriesIndex:f.index,chart:this.chart};b.eventContext={context:f,userContext:f.options,mouseover:"mouseover",
|
|
955
955
|
mousemove:"mousemove",mouseout:"mouseout",click:"click"};d.push(this.objectMap[f.id])}else"legendItem"===b.objectType&&(f=this.chart.data[b.dataSeriesIndex],g=null!==b.dataPointIndex?f.dataPoints[b.dataPointIndex]:null,b.eventParameter={x:c.x,y:c.y,dataSeries:f.options,dataPoint:g,dataPointIndex:b.dataPointIndex,dataSeriesIndex:b.dataSeriesIndex,chart:this.chart},b.eventContext={context:this.chart.legend,userContext:this.chart.legend.options,mouseover:"itemmouseover",mousemove:"itemmousemove",mouseout:"itemmouseout",
|
|
956
956
|
click:"itemclick"},d.push(b));f=[];for(c=0;c<this.mouseoveredObjectMaps.length;c++){g=!0;for(b=0;b<d.length;b++)if(d[b].id===this.mouseoveredObjectMaps[c].id){g=!1;break}g?this.fireEvent(this.mouseoveredObjectMaps[c],"mouseout",a):f.push(this.mouseoveredObjectMaps[c])}this.mouseoveredObjectMaps=f;for(c=0;c<d.length;c++){f=!1;for(b=0;b<this.mouseoveredObjectMaps.length;b++)if(d[c].id===this.mouseoveredObjectMaps[b].id){f=!0;break}f||(this.fireEvent(d[c],"mouseover",a),this.mouseoveredObjectMaps.push(d[c]));
|
|
@@ -961,154 +961,154 @@ ja.prototype.cancelAllAnimations=function(){this.animations=[];this.animationReq
|
|
|
961
961
|
0,b.width,b.height,f-f*a,0,a*c.canvas.width/la,c.canvas.height/la)}},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/la,b.height/la);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/la,c.canvas.height/la);c.restore()}},easing:{linear:function(a,d,c,b){return c*a/b+d},easeOutQuad:function(a,d,c,b){return-c*
|
|
962
962
|
(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}}},l={drawMarker:function(a,d,c,b,f,g,l,t){if(c){var m=1;c.fillStyle=g?g:"#000000";c.strokeStyle=l?l:"#000000";c.lineWidth=t?t:0;c.setLineDash&&c.setLineDash(S("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&&(l?c.stroke():(m=c.globalAlpha,c.globalAlpha=0.15,c.strokeStyle=
|
|
963
963
|
"black",c.stroke(),c.globalAlpha=m))):"square"===b?(c.beginPath(),c.rect(a-f/2,d-f/2,f,f),g&&c.fill(),t&&(l?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&&(l?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(),
|
|
964
|
-
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];l.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return q}();Ha.version="v3.
|
|
964
|
+
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];l.drawMarker(c.x,c.y,c.ctx,c.type,c.size,c.color,c.borderColor,c.borderThickness)}}};return q}();Ha.version="v3.12.0 GA";window.CanvasJS&&(Ha&&!window.CanvasJS.Chart)&&(window.CanvasJS.Chart=Ha);ha.StockChart={width:500,height:600,backgroundColor:"white",theme:"light1",animationEnabled:!1,animationDuration:1200,culture:"en",
|
|
965
965
|
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"}};ha.Navigator={enabled:!0,width:500,height:70,verticalAlign:"bottom",horizontalAlign:"left",dynamicUpdate:!0,backgroundColor:"#fff",
|
|
966
966
|
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"}};ha.RangeSelector={enabled:!0,width:500,height:35,label:"Range",verticalAlign:"top",horizontalAlign:"center",selectedRangeButtonIndex:null,
|
|
967
967
|
publicProperties:{options:"readWrite",buttons:"readWrite",inputFields:"readWrite",buttonStyle:"readWrite",bounds:"readOnly"}};ha.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"}};ha.ButtonStyle={backgroundColor:"#fff",backgroundColorOnHover:"#2196f3",backgroundColorOnSelect:"#2196f3",borderColor:"#2196f3",borderThickness:2,labelFontColor:"#000",
|
|
968
|
-
labelFontColorOnHover:"#fff",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:
|
|
969
|
-
borderColorOnFocus:"#008eff",borderThickness:2,fontColor:"#000",fontSize:12,fontStyle:"normal",fontFamily:
|
|
970
|
-
outlineColor:"#666",outlineInverted:!1,publicProperties:{options:"readWrite"}};ha.CultureInfo.rangeSelector={fromText:"From",toText:"To",rangeText:"Range"};N="#FFFFFF";V="#333333";O="#000000";Ea={colorSet:"colorSet1",backgroundColor:N,title:Ea.title,subtitles:Ea.subtitles,charts:[Ea],rangeSelector:{buttonStyle:{backgroundColor:"#FEFEFE",backgroundColorOnHover:"#41a5f5",backgroundColorOnSelect:"#2196f3",borderColor:"#2196f3",borderThickness:1,labelFontColor:O,
|
|
971
|
-
labelFontStyle:"normal",labelFontFamily:q,labelFontWeight:"normal",spacing:0},inputFields:{style:{backgroundColor:"#ffffff",borderColor:"#2196f3",borderColorOnFocus:"#2196f3",borderThickness:1,fontColor:O,fontSize:14,fontStyle:"normal",fontFamily:q,fontWeight:"normal"}}},navigator:{backgroundColor:N,theme:"light1",colorSet:"colorSet1",slider:{maskColor:"#d9e8f9",maskOpacity:0.6,handleColor:"#efefef",handleBorderColor:"#666666",handleBorderThickness:1,
|
|
972
|
-
N="#FFFFFF";V="#3A3A3A";O="#666666";Ga={colorSet:"colorSet2",backgroundColor:N,title:Ga.title,subtitles:Ga.subtitles,charts:[Ga],rangeSelector:{buttonStyle:{backgroundColor:"#FEFEFE",backgroundColorOnHover:"#41a5f5",backgroundColorOnSelect:"#2196f3",borderColor:"#2196f3",borderThickness:1,labelFontColor:O,labelFontColorOnHover:"#ffffff",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:q,labelFontWeight:"normal",spacing:0},inputFields:{style:{backgroundColor:"#ffffff",
|
|
973
|
-
borderColorOnFocus:"#2196f3",borderThickness:1,fontColor:O,fontSize:14,fontStyle:"normal",fontFamily:q,fontWeight:"normal"}}},navigator:{backgroundColor:N,theme:"light2",colorSet:"colorSet2",slider:{maskColor:"#D9E8F9",maskOpacity:0.6,handleColor:"#EFEFEF",handleBorderColor:"#BBBBBB",handleBorderThickness:1,outlineColor:"#BBBBBB",outlineThickness:1}},toolbar:Ga.toolbar};N="#2A2A2A";O=V="#F5F5F5";ya={colorSet:"colorSet1",backgroundColor:N,title:ya.title,subtitles:ya.subtitles,
|
|
974
|
-
backgroundColorOnHover:"#FF7372",backgroundColorOnSelect:"#FF7372",borderColor:"#FF7372",borderThickness:1,labelFontColor:O,labelFontColorOnHover:"#F5F5F5",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:q,labelFontWeight:"normal",spacing:0},inputFields:{style:{backgroundColor:"#666666",borderColor:"#FF7372",borderColorOnFocus:"#FF7372",borderThickness:1,fontColor:O,fontSize:14,fontStyle:"normal",fontFamily:q,fontWeight:"normal"}}},
|
|
975
|
-
slider:{maskColor:"#d9e8f9",maskOpacity:0.6,handleColor:"#efefef",handleBorderColor:"#666666",handleBorderThickness:1,outlineColor:"#FFFFFF",outlineThickness:1}},toolbar:ya.toolbar};N="#32373A";O=V="#FAFAFA";var Pa={light1:Ea,light2:Ga,dark1:ya,dark2:{colorSet:"colorSet2",backgroundColor:N,title:W.title,subtitles:W.subtitles,charts:[W],rangeSelector:{buttonStyle:{backgroundColor:"#666666",backgroundColorOnHover:"#FF7372",backgroundColorOnSelect:"#FF7372",
|
|
976
|
-
labelFontColorOnHover:"#F5F5F5",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:q,labelFontWeight:"normal",spacing:0},inputFields:{style:{backgroundColor:"#666666",borderColor:"#FF7372",borderColorOnFocus:"#FF7372",borderThickness:1,fontColor:O,fontSize:14,fontStyle:"normal",fontFamily:q,fontWeight:"normal"}}},navigator:{backgroundColor:N,theme:"dark2",colorSet:"colorSet2",slider:{maskColor:"#d9e8f9",maskOpacity:0.6,handleColor:"#efefef",
|
|
977
|
-
outlineColor:"#FFFFFF",outlineThickness:1}},toolbar:W.toolbar}};V=Qa.StockChart=function(){function m(d){var g;g=document.createElement("div");g.setAttribute("class",d);R(g,{position:"absolute",textAlign:"left",cursor:"auto",webkitTapHighlightColor:"transparent"});return g}function J(d,t,m){d=document.createElement(d);d.setAttribute("class",t);R(d,{webkitTapHighlightColor:"transparent"});g(m)||d.setAttribute("type",m);return d}function
|
|
978
|
-
t.theme;this.predefinedThemes=Pa;
|
|
979
|
-
"";var l=0,a=0;this._defaultCursor="default";l=this.options.width?this.width:0<this.container.clientWidth?this.container.clientWidth:this.width;a=this.options.height?this.height:0<this.container.clientHeight?this.container.clientHeight:this.height;this.width=l;this.height=a;this.x1=this.y1=0;this.x2=this.width;this.y2=this.height;this.selectedColorSet="undefined"!==typeof na[this.colorSet]?na[this.colorSet]:na.colorSet1;this._canvasJSContainer=document.createElement("div");
|
|
980
|
-
"canvasjs-stock-container");this._canvasJSContainer.style.position="relative";this._canvasJSContainer.style.userSelect=this._canvasJSContainer.style.WebkitUserSelect=this._canvasJSContainer.style.MozUserSelect=this._canvasJSContainer.style.msUserSelect="none";this._canvasJSContainer.style.textAlign="left";this._canvasJSContainer.style.cursor="auto";this._canvasJSContainer.style.direction="ltr";this._canvasJSContainer.style.fontFamily=q;
|
|
981
|
-
this.canvas=ra(l,a);this.canvas.style.position="absolute";this.canvas.getContext&&(this._canvasJSContainer.appendChild(this.canvas),this.ctx=this.canvas.getContext("2d"),this.ctx.textBaseline="top",Ca(this.ctx),this.overlaidCanvas=ra(l,a),this.overlaidCanvas.style.position="absolute",this.overlaidCanvas.style.webkitTapHighlightColor="transparent",this.overlaidCanvas.getContext&&(this._canvasJSContainer.appendChild(this.overlaidCanvas),this.overlaidCanvasCtx=
|
|
982
|
-
"top",Ca(this.overlaidCanvasCtx)),
|
|
983
|
-
this.bounds={x1:0,y1:0,x2:this.width,y2:this.height},this.charts=[],va(this.charts),this._eventManager=new D(this),H(this.overlaidCanvas,"click",function(a){m._mouseEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,"mousemove",function(a){m._mouseEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,"mouseup",function(a){m._mouseEventHandler(a)},this.allDOMEventHandlers),
|
|
984
|
-
H(this.overlaidCanvas,"
|
|
985
|
-
this.allDOMEventHandlers),H(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerCancel":"touchcancel",function(a){m._touchEventHandler(a)},this.allDOMEventHandlers),this.windowResizeHandler=H(window,"resize",function(){m._updateSize()&&m.render()},this.allDOMEventHandlers))}else window.console&&window.console.log('CanvasJS Error: StockChart Container with id "'+this._containerId+
|
|
986
|
-
|
|
987
|
-
g){N.base.constructor.call(this,"Slider","slider",g,null,d);this.panel=m("canvasjs-slider-panel");this.parent=this.navigator=d;this.stockChart=d.stockChart;this.navigator.panel.appendChild(this.panel);this.optionsName="slider";this.panMode=!1;this.sessionVariables={}}function S(d,g){S.base.constructor.call(this,"RangeSelector","rangeSelector",g,null,d);this.parent=this.stockChart=d;this.optionsName=
|
|
988
|
-
"RangeButton","rangeButton",m,g,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=d.rangeSelector;this.optionsName="rangeButton";this.enabled=!1;this.state="off"}function U(d,t){U.base.constructor.call(this,"InputFields","inputFields",t,null,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=d.rangeSelector;this.elements=[];this._textBlocks=[];this.sessionVariables=
|
|
989
|
-
"canvasjs-input-field","text"));for(var m=0;m<this.elements.length;m++)this.stockChart._canvasJSContainer.appendChild(this.elements[m]);var l=this,a=null,e=null;H(this.elements[0],"focus",function(){l.enabled&&(l.elements[0].focused=!0,Z(l._textBlocks[0].ctx,l._textBlocks[0].x-l._textBlocks[0].borderThickness/2-0.5,l._textBlocks[0].bounds.y1-l._textBlocks[0].borderThickness/
|
|
990
|
-
2+1,l.stockChart.backgroundColor,0,"transparent",!1,!1,!1,!1),l._textBlocks[0].borderColor=l.style.borderColorOnFocus,l._textBlocks[0].fontColor="transparent",l._textBlocks[0].render(!0))},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[0],"focusout",function(){if(l.enabled){l.elements[0].focused=!1;var a;l.stockChart.charts&&l.stockChart.charts.length&&
|
|
991
|
-
this.value="dateTime"===l.valueType?qa(a?a.viewportMinimum:null,"YYYY-MM-DD",l.stockChart._cultureInfo):Y(a?a.viewportMinimum:null,l.valueFormatString,l.stockChart._cultureInfo);this.style.display="none";Z(l._textBlocks[0].ctx,l._textBlocks[0].x-l._textBlocks[0].borderThickness/2-0.5,l._textBlocks[0].bounds.y1-l._textBlocks[0].borderThickness/2-0.5,l._textBlocks[0].bounds.x2+
|
|
992
|
-
0,"transparent",!1,!1,!1,!1);l._textBlocks[0].borderColor=l.style.borderColor;l._textBlocks[0].fontColor=l.style.fontColor;l._textBlocks[0].render(!0)}},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[1],"focus",function(){l.enabled&&(l.elements[1].focused=!0,Z(l._textBlocks[1].ctx,l._textBlocks[1].x-l._textBlocks[1].borderThickness/2-0.5,l._textBlocks[1].bounds.y1-
|
|
993
|
-
l._textBlocks[1].borderThickness/2+1,l.stockChart.backgroundColor,0,"transparent",!1,!1,!1,!1),l._textBlocks[1].borderColor=l.style.borderColorOnFocus,l._textBlocks[1].fontColor="transparent",l._textBlocks[1].render(!0))},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[1],"focusout",function(){if(l.enabled){l.elements[1].focused=!1;var a;l.stockChart.charts&&
|
|
994
|
-
l.stockChart.charts[0].axisX2[0]);this.value="dateTime"===l.valueType?qa(a?a.viewportMaximum:null,"YYYY-MM-DD",l.stockChart._cultureInfo):Y(a?a.viewportMaximum:null,l.valueFormatString,l.stockChart._cultureInfo);this.style.display="none";Z(l._textBlocks[1].ctx,l._textBlocks[1].x-l._textBlocks[1].borderThickness/2-0.5,l._textBlocks[1].bounds.y1-l._textBlocks[1].borderThickness/
|
|
995
|
-
2+1,l.stockChart.backgroundColor,0,"transparent",!1,!1,!1,!1);l._textBlocks[1].borderColor=l.style.borderColor;l._textBlocks[1].fontColor=l.style.fontColor;l._textBlocks[1].render(!0)}},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[0],"change",function(c){if(l.enabled){var b,d;l.stockChart.charts&&l.stockChart.charts.length&&(l.stockChart.navigator&&
|
|
996
|
-
l.stockChart.navigator.chart.axisX2[0]),b=l.stockChart.charts[0].axisX&&l.stockChart.charts[0].axisX.length?l.stockChart.charts[0].axisX[0]:l.stockChart.charts[0].axisX2[0]);c="dateTime"===l.valueType?isNaN((new Date(this.value.replace(/-/g,"/"))).getTime())?null:(new Date(this.value.replace(/-/g,"/"))).getTime():g(this.value)?null:this.value.replace(/,/g,
|
|
997
|
-
d.minimum,c):g(d)?null:d.minimum;e=g(b)?null:b.viewportMaximum;l.stockChart._rangeEventParameter={stockChart:l.stockChart,source:"inputFields",index:null,minimum:Math.min(a,e),maximum:Math.max(a,e)};l.stockChart._rangeEventParameter.type="rangeChanging";l.stockChart.dispatchEvent("rangeChanging",l.stockChart._rangeEventParameter,l.stockChart);l.stockChart.sessionVariables._axisXMin=
|
|
998
|
-
l.stockChart.dispatchEvent("rangeChanged",l.stockChart._rangeEventParameter,l.stockChart);l.stockChart.rangeSelector&&l.stockChart.rangeSelector.resetRangeButtons();l.stockChart.rangeUpdatedBy="inputFields"}},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[1],"change",function(c){if(l.enabled){var b,d;l.stockChart.charts&&l.stockChart.charts.length&&(l.stockChart.navigator&&
|
|
999
|
-
l.stockChart.navigator.chart.axisX[0]:l.stockChart.navigator.chart.axisX2[0]),b=l.stockChart.charts[0].axisX&&l.stockChart.charts[0].axisX.length?l.stockChart.charts[0].axisX[0]:l.stockChart.charts[0].axisX2[0]);c="dateTime"===l.valueType?isNaN((new Date(this.value.replace(/-/g,"/"))).getTime())?null:(new Date(this.value.replace(/-/g,"/"))).getTime():g(this.value)?null:this.value.replace(/,/g,
|
|
1000
|
-
null:!g(c)&&c>(d?d.minimum:null)?Math.min(d?d.maximum:null,c):d?d.maximum:null;l.stockChart._rangeEventParameter={stockChart:l.stockChart,source:"inputFields",index:null,minimum:Math.min(a,e),maximum:Math.max(a,e)};l.stockChart._rangeEventParameter.type="rangeChanging";l.stockChart.dispatchEvent("rangeChanging",l.stockChart._rangeEventParameter,l.stockChart);l.stockChart.sessionVariables._axisXMin=
|
|
1001
|
-
"rangeChanged";l.stockChart.dispatchEvent("rangeChanged",l.stockChart._rangeEventParameter,l.stockChart);l.stockChart.rangeSelector&&l.stockChart.rangeSelector.resetRangeButtons();l.stockChart.rangeUpdatedBy="inputFields"}},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[0],"keydown",function(a){l.enabled&&13===a.keyCode&&(this.blur(),a.preventDefault&&a.preventDefault())},
|
|
1002
|
-
a.keyCode&&(this.blur(),a.preventDefault&&a.preventDefault())},this.rangeSelector.stockChart.allDOMEventHandlers)}function V(d,g){V.base.constructor.call(this,"ButtonStyle","buttonStyle",g,null,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=d.rangeSelector;this.optionsName="buttonStyle"}function W(d,g){W.base.constructor.call(this,"Style","style",g,null,d.rangeSelector.inputFields);
|
|
1003
|
-
var $=!0;ga(
|
|
1004
|
-
this.updateOption("creditHref");this.updateOption("culture");this._cultureInfo=new La(this.options.culture);this.updateOption("animationEnabled");this.updateOption("animationDuration");this.updateOption("rangeChanging");this.updateOption("rangeChanged");this.toolbar=new Va(this,this.options.toolbar);eb(this)};
|
|
1005
|
-
|
|
968
|
+
labelFontColorOnHover:"#fff",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:w?"Trebuchet MS, Helvetica, sans-serif":"Arial",labelFontWeight:"normal",labelTextAlign:"center",width:null,maxWidth:null,padding:{left:5,right:5,top:2,bottom:2},spacing:5,cursor:"pointer",publicProperties:{options:"readWrite"}};ha.InputFields={enabled:!0,startValue:null,endValue:null,valueType:"dateTime",valueFormatString:"MMM DD YYYY",publicProperties:{style:"readWrite",options:"readWrite"}};ha.Style={backgroundColor:"#fff",
|
|
969
|
+
borderColor:"#2196f3",borderColorOnFocus:"#008eff",borderThickness:2,fontColor:"#000",fontSize:12,fontStyle:"normal",fontFamily:w?"Trebuchet MS, Helvetica, sans-serif":"Arial",fontWeight:"normal",textAlign:"center",width:null,maxWidth:null,padding:{left:5,right:5,top:2,bottom:2},spacing:5,cursor:"text",publicProperties:{options:"readWrite"}};ha.Slider={maskColor:"#d9e8f9",maskInverted:!1,maskOpacity:0.7,handleColor:"#ddd",handleBorderColor:"#aaa",handleBorderThickness:1,handleWidth:8,handleHeight:18,
|
|
970
|
+
minimum:null,maximum:null,outlineThickness:1,outlineColor:"#666",outlineInverted:!1,publicProperties:{options:"readWrite"}};ha.CultureInfo.rangeSelector={fromText:"From",toText:"To",rangeText:"Range"};N="#FFFFFF";V="#333333";O="#000000";Ea={colorSet:"colorSet1",backgroundColor:N,title:Ea.title,subtitles:Ea.subtitles,charts:[Ea],rangeSelector:{buttonStyle:{backgroundColor:"#FEFEFE",backgroundColorOnHover:"#41a5f5",backgroundColorOnSelect:"#2196f3",borderColor:"#2196f3",borderThickness:1,labelFontColor:O,
|
|
971
|
+
labelFontColorOnHover:"#ffffff",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:q,labelFontWeight:"normal",spacing:0},inputFields:{style:{backgroundColor:"#ffffff",borderColor:"#2196f3",borderColorOnFocus:"#2196f3",borderThickness:1,fontColor:O,fontSize:14,fontStyle:"normal",fontFamily:q,fontWeight:"normal"}}},navigator:{backgroundColor:N,theme:"light1",colorSet:"colorSet1",slider:{maskColor:"#d9e8f9",maskOpacity:0.6,handleColor:"#efefef",handleBorderColor:"#666666",handleBorderThickness:1,
|
|
972
|
+
outlineColor:"#666666",outlineThickness:1}},toolbar:Ea.toolbar};N="#FFFFFF";V="#3A3A3A";O="#666666";Ga={colorSet:"colorSet2",backgroundColor:N,title:Ga.title,subtitles:Ga.subtitles,charts:[Ga],rangeSelector:{buttonStyle:{backgroundColor:"#FEFEFE",backgroundColorOnHover:"#41a5f5",backgroundColorOnSelect:"#2196f3",borderColor:"#2196f3",borderThickness:1,labelFontColor:O,labelFontColorOnHover:"#ffffff",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:q,labelFontWeight:"normal",spacing:0},inputFields:{style:{backgroundColor:"#ffffff",
|
|
973
|
+
borderColor:"#2196f3",borderColorOnFocus:"#2196f3",borderThickness:1,fontColor:O,fontSize:14,fontStyle:"normal",fontFamily:q,fontWeight:"normal"}}},navigator:{backgroundColor:N,theme:"light2",colorSet:"colorSet2",slider:{maskColor:"#D9E8F9",maskOpacity:0.6,handleColor:"#EFEFEF",handleBorderColor:"#BBBBBB",handleBorderThickness:1,outlineColor:"#BBBBBB",outlineThickness:1}},toolbar:Ga.toolbar};N="#2A2A2A";O=V="#F5F5F5";ya={colorSet:"colorSet1",backgroundColor:N,title:ya.title,subtitles:ya.subtitles,
|
|
974
|
+
charts:[ya],rangeSelector:{buttonStyle:{backgroundColor:"#666666",backgroundColorOnHover:"#FF7372",backgroundColorOnSelect:"#FF7372",borderColor:"#FF7372",borderThickness:1,labelFontColor:O,labelFontColorOnHover:"#F5F5F5",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:q,labelFontWeight:"normal",spacing:0},inputFields:{style:{backgroundColor:"#666666",borderColor:"#FF7372",borderColorOnFocus:"#FF7372",borderThickness:1,fontColor:O,fontSize:14,fontStyle:"normal",fontFamily:q,fontWeight:"normal"}}},
|
|
975
|
+
navigator:{backgroundColor:N,theme:"dark1",colorSet:"colorSet1",slider:{maskColor:"#d9e8f9",maskOpacity:0.6,handleColor:"#efefef",handleBorderColor:"#666666",handleBorderThickness:1,outlineColor:"#FFFFFF",outlineThickness:1}},toolbar:ya.toolbar};N="#32373A";O=V="#FAFAFA";var Pa={light1:Ea,light2:Ga,dark1:ya,dark2:{colorSet:"colorSet2",backgroundColor:N,title:W.title,subtitles:W.subtitles,charts:[W],rangeSelector:{buttonStyle:{backgroundColor:"#666666",backgroundColorOnHover:"#FF7372",backgroundColorOnSelect:"#FF7372",
|
|
976
|
+
borderColor:"#FF7372",borderThickness:1,labelFontColor:O,labelFontColorOnHover:"#F5F5F5",labelFontSize:14,labelFontStyle:"normal",labelFontFamily:q,labelFontWeight:"normal",spacing:0},inputFields:{style:{backgroundColor:"#666666",borderColor:"#FF7372",borderColorOnFocus:"#FF7372",borderThickness:1,fontColor:O,fontSize:14,fontStyle:"normal",fontFamily:q,fontWeight:"normal"}}},navigator:{backgroundColor:N,theme:"dark2",colorSet:"colorSet2",slider:{maskColor:"#d9e8f9",maskOpacity:0.6,handleColor:"#efefef",
|
|
977
|
+
handleBorderColor:"#666666",handleBorderThickness:1,outlineColor:"#FFFFFF",outlineThickness:1}},toolbar:W.toolbar}};V=Qa.StockChart=function(){function m(d){var g;g=document.createElement("div");g.setAttribute("class",d);R(g,{position:"absolute",textAlign:"left",cursor:"auto",webkitTapHighlightColor:"transparent"});return g}function J(d,t,m){d=document.createElement(d);d.setAttribute("class",t);R(d,{webkitTapHighlightColor:"transparent"});g(m)||d.setAttribute("type",m);return d}function v(d,t){t=
|
|
978
|
+
t||{};this.theme=g(t.theme)||g(Oa[t.theme])?"light1":t.theme;this.predefinedThemes=Pa;v.base.constructor.call(this,"StockChart",null,t,null,null);this.optionsName="stockChart";var m=this;this.sessionVariables={};this._axisXMax=this._axisXMin=null;this._containerId=d;this._objectsInitialized=!1;this.ctx=null;this.plotArea={canvas:null,ctx:null,x1:0,y1:0,x2:0,y2:0,width:0,height:0};this._dataInRenderedOrder=[];this.allDOMEventHandlers=[];if(this.container="string"===typeof this._containerId?document.getElementById(this._containerId):
|
|
979
|
+
this._containerId){this.container.innerHTML="";var l=0,a=0;this._defaultCursor="default";l=this.options.width?this.width:0<this.container.clientWidth?this.container.clientWidth:this.width;a=this.options.height?this.height:0<this.container.clientHeight?this.container.clientHeight:this.height;this.width=l;this.height=a;this.x1=this.y1=0;this.x2=this.width;this.y2=this.height;this.selectedColorSet="undefined"!==typeof na[this.colorSet]?na[this.colorSet]:na.colorSet1;this._canvasJSContainer=document.createElement("div");
|
|
980
|
+
this._canvasJSContainer.setAttribute("class","canvasjs-stock-container");this._canvasJSContainer.style.position="relative";this._canvasJSContainer.style.userSelect=this._canvasJSContainer.style.WebkitUserSelect=this._canvasJSContainer.style.MozUserSelect=this._canvasJSContainer.style.msUserSelect="none";this._canvasJSContainer.style.textAlign="left";this._canvasJSContainer.style.cursor="auto";this._canvasJSContainer.style.direction="ltr";this._canvasJSContainer.style.fontFamily=q;w||(this._canvasJSContainer.style.height=
|
|
981
|
+
"0px");this.container.appendChild(this._canvasJSContainer);this.canvas=ra(l,a);this.canvas.style.position="absolute";this.canvas.getContext&&(this._canvasJSContainer.appendChild(this.canvas),this.ctx=this.canvas.getContext("2d"),this.ctx.textBaseline="top",Ca(this.ctx),this.overlaidCanvas=ra(l,a),this.overlaidCanvas.style.position="absolute",this.overlaidCanvas.style.webkitTapHighlightColor="transparent",this.overlaidCanvas.getContext&&(this._canvasJSContainer.appendChild(this.overlaidCanvas),this.overlaidCanvasCtx=
|
|
982
|
+
this.overlaidCanvas.getContext("2d"),this.overlaidCanvasCtx.textBaseline="top",Ca(this.overlaidCanvasCtx)),w?this.plotArea.ctx=this.ctx:(this.plotArea.canvas=ra(l,a),this.plotArea.canvas.style.position="absolute",this.plotArea.canvas.setAttribute("class","plotAreaCanvas"),this._canvasJSContainer.appendChild(this.plotArea.canvas),this.plotArea.ctx=this.plotArea.canvas.getContext("2d")),this._toolBar=document.createElement("div"),this._toolBar.setAttribute("class","canvasjs-chart-toolbar"),R(this._toolBar,
|
|
983
|
+
{position:"absolute",right:"1px",top:"1px",zIndex:999}),this._canvasJSContainer.appendChild(this._toolBar),this.bounds={x1:0,y1:0,x2:this.width,y2:this.height},this.charts=[],va(this.charts),this._eventManager=new D(this),H(this.overlaidCanvas,"click",function(a){m._mouseEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,"mousemove",function(a){m._mouseEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,"mouseup",function(a){m._mouseEventHandler(a)},this.allDOMEventHandlers),
|
|
984
|
+
H(this.overlaidCanvas,"mousedown",function(a){m._mouseEventHandler(a);xa(m._dropdownMenu)},this.allDOMEventHandlers),H(this.overlaidCanvas,"mouseout",function(a){m._mouseEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerDown":"touchstart",function(a){m._touchEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerMove":"touchmove",function(a){m._touchEventHandler(a)},this.allDOMEventHandlers),
|
|
985
|
+
H(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerUp":"touchend",function(a){m._touchEventHandler(a)},this.allDOMEventHandlers),H(this.overlaidCanvas,window.navigator.msPointerEnabled?"MSPointerCancel":"touchcancel",function(a){m._touchEventHandler(a)},this.allDOMEventHandlers),this.windowResizeHandler=H(window,"resize",function(){m._updateSize()&&m.render()},this.allDOMEventHandlers))}else window.console&&window.console.log('CanvasJS Error: StockChart Container with id "'+this._containerId+
|
|
986
|
+
'" was not found')}function O(d,g){O.base.constructor.call(this,d,g);this.options=g;this.dockInsidePlotArea=!1}function B(d,g,m){B.base.constructor.call(this,d,g,m);this.options=g;this.dockInsidePlotArea=!1}function D(d){this.stockChart=d;this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=[];this.ghostCanvas=ra(this.stockChart.width,this.stockChart.height);this.ghostCtx=this.ghostCanvas.getContext("2d");this.mouseoveredObjectMaps=[]}function y(d,g){y.base.constructor.call(this,
|
|
987
|
+
"Navigator","navigator",g,null,d);this.optionsName="navigator";this.parent=this.stockChart=d}function N(d,g){N.base.constructor.call(this,"Slider","slider",g,null,d);this.panel=m("canvasjs-slider-panel");this.parent=this.navigator=d;this.stockChart=d.stockChart;this.navigator.panel.appendChild(this.panel);this.optionsName="slider";this.panMode=!1;this.sessionVariables={}}function S(d,g){S.base.constructor.call(this,"RangeSelector","rangeSelector",g,null,d);this.parent=this.stockChart=d;this.optionsName=
|
|
988
|
+
"rangeSelector";this.sessionVariables={};this.ctx=d.ctx}function P(d,g,m){P.base.constructor.call(this,"RangeButton","rangeButton",m,g,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=d.rangeSelector;this.optionsName="rangeButton";this.enabled=!1;this.state="off"}function U(d,t){U.base.constructor.call(this,"InputFields","inputFields",t,null,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=d.rangeSelector;this.elements=[];this._textBlocks=[];this.sessionVariables=
|
|
989
|
+
{};this.optionsName="inputFields";this.elements.push(J("input","canvasjs-input-field","text"));this.elements.push(J("input","canvasjs-input-field","text"));for(var m=0;m<this.elements.length;m++)this.stockChart._canvasJSContainer.appendChild(this.elements[m]);var l=this,a=null,e=null;H(this.elements[0],"focus",function(){l.enabled&&(l.elements[0].focused=!0,Z(l._textBlocks[0].ctx,l._textBlocks[0].x-l._textBlocks[0].borderThickness/2-0.5,l._textBlocks[0].bounds.y1-l._textBlocks[0].borderThickness/
|
|
990
|
+
2-0.5,l._textBlocks[0].bounds.x2+l._textBlocks[0].borderThickness/2+1,l._textBlocks[0].bounds.x2+l._textBlocks[0].borderThickness/2+1,l.stockChart.backgroundColor,0,"transparent",!1,!1,!1,!1),l._textBlocks[0].borderColor=l.style.borderColorOnFocus,l._textBlocks[0].fontColor="transparent",l._textBlocks[0].render(!0))},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[0],"focusout",function(){if(l.enabled){l.elements[0].focused=!1;var a;l.stockChart.charts&&l.stockChart.charts.length&&
|
|
991
|
+
(a=l.stockChart.charts[0].axisX&&l.stockChart.charts[0].axisX.length?l.stockChart.charts[0].axisX[0]:l.stockChart.charts[0].axisX2[0]);this.value="dateTime"===l.valueType?qa(a?a.viewportMinimum:null,"YYYY-MM-DD",l.stockChart._cultureInfo):Y(a?a.viewportMinimum:null,l.valueFormatString,l.stockChart._cultureInfo);this.style.display="none";Z(l._textBlocks[0].ctx,l._textBlocks[0].x-l._textBlocks[0].borderThickness/2-0.5,l._textBlocks[0].bounds.y1-l._textBlocks[0].borderThickness/2-0.5,l._textBlocks[0].bounds.x2+
|
|
992
|
+
l._textBlocks[0].borderThickness/2+1,l._textBlocks[0].bounds.x2+l._textBlocks[0].borderThickness/2+1,l.stockChart.backgroundColor,0,"transparent",!1,!1,!1,!1);l._textBlocks[0].borderColor=l.style.borderColor;l._textBlocks[0].fontColor=l.style.fontColor;l._textBlocks[0].render(!0)}},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[1],"focus",function(){l.enabled&&(l.elements[1].focused=!0,Z(l._textBlocks[1].ctx,l._textBlocks[1].x-l._textBlocks[1].borderThickness/2-0.5,l._textBlocks[1].bounds.y1-
|
|
993
|
+
l._textBlocks[1].borderThickness/2-0.5,l._textBlocks[1].bounds.x2+l._textBlocks[1].borderThickness/2+1,l._textBlocks[1].bounds.x2+l._textBlocks[1].borderThickness/2+1,l.stockChart.backgroundColor,0,"transparent",!1,!1,!1,!1),l._textBlocks[1].borderColor=l.style.borderColorOnFocus,l._textBlocks[1].fontColor="transparent",l._textBlocks[1].render(!0))},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[1],"focusout",function(){if(l.enabled){l.elements[1].focused=!1;var a;l.stockChart.charts&&
|
|
994
|
+
l.stockChart.charts.length&&(a=l.stockChart.charts[0].axisX&&l.stockChart.charts[0].axisX.length?l.stockChart.charts[0].axisX[0]:l.stockChart.charts[0].axisX2[0]);this.value="dateTime"===l.valueType?qa(a?a.viewportMaximum:null,"YYYY-MM-DD",l.stockChart._cultureInfo):Y(a?a.viewportMaximum:null,l.valueFormatString,l.stockChart._cultureInfo);this.style.display="none";Z(l._textBlocks[1].ctx,l._textBlocks[1].x-l._textBlocks[1].borderThickness/2-0.5,l._textBlocks[1].bounds.y1-l._textBlocks[1].borderThickness/
|
|
995
|
+
2-0.5,l._textBlocks[1].bounds.x2+l._textBlocks[1].borderThickness/2+1,l._textBlocks[1].bounds.x2+l._textBlocks[1].borderThickness/2+1,l.stockChart.backgroundColor,0,"transparent",!1,!1,!1,!1);l._textBlocks[1].borderColor=l.style.borderColor;l._textBlocks[1].fontColor=l.style.fontColor;l._textBlocks[1].render(!0)}},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[0],"change",function(c){if(l.enabled){var b,d;l.stockChart.charts&&l.stockChart.charts.length&&(l.stockChart.navigator&&
|
|
996
|
+
l.stockChart.navigator.enabled&&(d=l.stockChart.navigator&&l.stockChart.navigator.chart&&l.stockChart.navigator.chart.axisX?l.stockChart.navigator.chart.axisX[0]:l.stockChart.navigator.chart.axisX2[0]),b=l.stockChart.charts[0].axisX&&l.stockChart.charts[0].axisX.length?l.stockChart.charts[0].axisX[0]:l.stockChart.charts[0].axisX2[0]);c="dateTime"===l.valueType?isNaN((new Date(this.value.replace(/-/g,"/"))).getTime())?null:(new Date(this.value.replace(/-/g,"/"))).getTime():g(this.value)?null:this.value.replace(/,/g,
|
|
997
|
+
"");a=g(d)?!g(c)&&c<(g(b)?null:b.maximum)?Math.max(g(b)?null:b.minimum,c):g(b)?null:b.minimum:!g(c)&&c<(g(d)?null:d.maximum)?Math.max(g(d)?null:d.minimum,c):g(d)?null:d.minimum;e=g(b)?null:b.viewportMaximum;l.stockChart._rangeEventParameter={stockChart:l.stockChart,source:"inputFields",index:null,minimum:Math.min(a,e),maximum:Math.max(a,e)};l.stockChart._rangeEventParameter.type="rangeChanging";l.stockChart.dispatchEvent("rangeChanging",l.stockChart._rangeEventParameter,l.stockChart);l.stockChart.sessionVariables._axisXMin=
|
|
998
|
+
a;l.stockChart.sessionVariables._axisXMax=e;l.stockChart._syncCharts(a,e);l.stockChart._rangeEventParameter.type="rangeChanged";l.stockChart.dispatchEvent("rangeChanged",l.stockChart._rangeEventParameter,l.stockChart);l.stockChart.rangeSelector&&l.stockChart.rangeSelector.resetRangeButtons();l.stockChart.rangeUpdatedBy="inputFields"}},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[1],"change",function(c){if(l.enabled){var b,d;l.stockChart.charts&&l.stockChart.charts.length&&(l.stockChart.navigator&&
|
|
999
|
+
l.stockChart.navigator.enabled&&(d=l.stockChart.navigator&&l.stockChart.navigator.chart&&l.stockChart.navigator.chart.axisX?l.stockChart.navigator.chart.axisX[0]:l.stockChart.navigator.chart.axisX2[0]),b=l.stockChart.charts[0].axisX&&l.stockChart.charts[0].axisX.length?l.stockChart.charts[0].axisX[0]:l.stockChart.charts[0].axisX2[0]);c="dateTime"===l.valueType?isNaN((new Date(this.value.replace(/-/g,"/"))).getTime())?null:(new Date(this.value.replace(/-/g,"/"))).getTime():g(this.value)?null:this.value.replace(/,/g,
|
|
1000
|
+
"");a=b?b.viewportMinimum:null;e=g(d)?!g(c)&&c>(b?b.minimum:null)?Math.min(b?b.maximum:null,c):b?b.maximum:null:!g(c)&&c>(d?d.minimum:null)?Math.min(d?d.maximum:null,c):d?d.maximum:null;l.stockChart._rangeEventParameter={stockChart:l.stockChart,source:"inputFields",index:null,minimum:Math.min(a,e),maximum:Math.max(a,e)};l.stockChart._rangeEventParameter.type="rangeChanging";l.stockChart.dispatchEvent("rangeChanging",l.stockChart._rangeEventParameter,l.stockChart);l.stockChart.sessionVariables._axisXMin=
|
|
1001
|
+
a;l.stockChart.sessionVariables._axisXMax=e;l.stockChart._syncCharts(a,e);l.stockChart._rangeEventParameter.type="rangeChanged";l.stockChart.dispatchEvent("rangeChanged",l.stockChart._rangeEventParameter,l.stockChart);l.stockChart.rangeSelector&&l.stockChart.rangeSelector.resetRangeButtons();l.stockChart.rangeUpdatedBy="inputFields"}},this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[0],"keydown",function(a){l.enabled&&13===a.keyCode&&(this.blur(),a.preventDefault&&a.preventDefault())},
|
|
1002
|
+
this.rangeSelector.stockChart.allDOMEventHandlers);H(this.elements[1],"keydown",function(a){l.enabled&&13===a.keyCode&&(this.blur(),a.preventDefault&&a.preventDefault())},this.rangeSelector.stockChart.allDOMEventHandlers)}function V(d,g){V.base.constructor.call(this,"ButtonStyle","buttonStyle",g,null,d.rangeSelector);this.stockChart=d;this.parent=this.rangeSelector=d.rangeSelector;this.optionsName="buttonStyle"}function W(d,g){W.base.constructor.call(this,"Style","style",g,null,d.rangeSelector.inputFields);
|
|
1003
|
+
this.stockChart=d;this.parent=this.inputFields=d.rangeSelector.inputFields;this.optionsName="style"}var $=!0;ga(v,aa);v.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 na[this.colorSet]?na[this.colorSet]:na.colorSet1);this.updateOption("backgroundColor");this.backgroundColor||(this.backgroundColor="rgba(0,0,0,0)");this.updateOption("exportEnabled");
|
|
1004
|
+
this.updateOption("exportFileName");this.updateOption("creditHref");this.updateOption("creditHref");this.updateOption("culture");this._cultureInfo=new La(this.options.culture);this.updateOption("animationEnabled");this.updateOption("animationDuration");this.updateOption("rangeChanging");this.updateOption("rangeChanged");this.toolbar=new Va(this,this.options.toolbar);eb(this)};v._supportedChartTypes=va("line stepLine spline column area stepArea splineArea bubble scatter stackedColumn stackedColumn100 stackedArea stackedArea100 candlestick ohlc boxAndWhisker rangeColumn error rangeArea rangeSplineArea waterfall".split(" "));
|
|
1005
|
+
v.prototype._initialize=function(){this._updateOptions();this.animationEnabled=this.animationEnabled&&w;this._updateSize();this._canvasJSContainer.style.width=this.width+"px";this._canvasJSContainer.style.height=this.height+"px";this.clearCanvas();this.ctx.beginPath();var d,t=g(this.options.charts)?[]:this.options.charts;va(t);for(var q=0;q<this.charts.length;q++)d=this.charts[q],0>t.indexOf(d.options)&&(this.charts.splice(q,1),d.destroy(),this._canvasJSContainer.removeChild(d.panel),q--);this.layoutManager=
|
|
1006
1006
|
new Ia(0,0,this.width,this.height,2);this.plotArea.layoutManager&&this.plotArea.layoutManager.reset();this.title=null;this.subtitles=[];this.options.title&&(this.title=new O(this,this.options.title),this.title.setLayout());if(this.options.subtitles)for(q=0;q<this.options.subtitles.length;q++)d=new B(this,this.options.subtitles[q],q),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&&
|
|
1007
1007
|
this.options.navigator.theme?this.options.navigator.theme:this.theme,animationEnabled:this.options.navigator&&!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&&
|
|
1008
1008
|
this.options.navigator.data?this.options.navigator.data:this.options.charts&&this.options.charts[0]&&this.options.charts[0].data?Ya(this.options.charts[0].data):[],axisX:this.options.navigator&&this.options.navigator.axisX?this.options.navigator.axisX:{},axisY:this.options.navigator&&this.options.navigator.axisY?this.options.navigator.axisY:{},axisX2:this.options.navigator&&this.options.navigator.axisX2?this.options.navigator.axisX2:{},axisY2:this.options.navigator&&this.options.navigator.axisY2?
|
|
1009
1009
|
this.options.navigator.axisY2:{},interactivityEnabled:!1,exportEnabled:!1};this.navigator.options.colorSet&&(d.colorSet=this.navigator.options.colorSet);for(q=0;q<d.data.length;q++)!g(this.navigator.options.data)||!g(d.data[q].type)&&(g(d.data[q].type)||0<=d.data[q].type.indexOf("range")||0<=d.data[q].type.indexOf("ohlc")||0<=d.data[q].type.indexOf("candlestick")||0<=d.data[q].type.indexOf("error"))?this.navigator.options.data&&g(this.navigator.options.data[q].type)&&(d.data[q].type="splineArea"):
|
|
1010
1010
|
d.data[q].type="splineArea";if(d.axisX.length)for(q=0;q<d.axisX.length;q++)d.axisX[q].titleFontSize=g(d.axisX[q].titleFontSize)?1:d.axisX[q].titleFontSize,d.axisX[q].labelFontSize=g(d.axisX[q].labelFontSize)?12:d.axisX[q].labelFontSize,d.axisX[q].labelAngle=g(d.axisX[q].labelAngle)?0:d.axisX[q].labelAngle,d.axisX[q].labelPlacement=g(d.axisX[q].labelPlacement)?"inside":d.axisX[q].labelPlacement,d.axisX[q].tickLength=g(d.axisX[q].tickLength)?0:d.axisX[q].tickLength,d.axisX[q].lineThickness=g(d.axisX[q].lineThickness)?
|
|
1011
|
-
0:d.axisX[q].lineThickness,d.axisX[q].tickThickness=g(d.axisX[q].tickThickness)?0:d.axisX[q].tickThickness,d.axisX[q].gridThickness=g(d.axisX[q].gridThickness)?1:d.axisX[q].gridThickness;else d.axisX.titleFontSize=this.options.navigator&&this.options.navigator.axisX&&!g(this.options.navigator.axisX.titleFontSize)?this.options.navigator.axisX.titleFontSize:
|
|
1011
|
+
0:d.axisX[q].lineThickness,d.axisX[q].tickThickness=g(d.axisX[q].tickThickness)?0:d.axisX[q].tickThickness,d.axisX[q].gridThickness=g(d.axisX[q].gridThickness)?1:d.axisX[q].gridThickness;else d.axisX.titleFontSize=this.options.navigator&&this.options.navigator.axisX&&!g(this.options.navigator.axisX.titleFontSize)?this.options.navigator.axisX.titleFontSize:w?0:1,d.axisX.labelFontSize=this.options.navigator&&this.options.navigator.axisX&&!g(this.options.navigator.axisX.labelFontSize)?this.options.navigator.axisX.labelFontSize:
|
|
1012
1012
|
12,d.axisX.labelAngle=this.options.navigator&&this.options.navigator.axisX&&!g(this.options.navigator.axisX.labelAngle)?this.options.navigator.axisX.labelAngle:0,d.axisX.labelPlacement=this.options.navigator&&this.options.navigator.axisX&&!g(this.options.navigator.axisX.labelPlacement)?this.options.navigator.axisX.labelPlacement:"inside",d.axisX.tickLength=this.options.navigator&&this.options.navigator.axisX&&!g(this.options.navigator.axisX.tickLength)?this.options.navigator.axisX.tickLength:0,d.axisX.lineThickness=
|
|
1013
1013
|
this.options.navigator&&this.options.navigator.axisX&&!g(this.options.navigator.axisX.lineThickness)?this.options.navigator.axisX.lineThickness:0,d.axisX.tickThickness=this.options.navigator&&this.options.navigator.axisX&&!g(this.options.navigator.axisX.tickThickness)?this.options.navigator.axisX.tickThickness:0,d.axisX.gridThickness=this.options.navigator&&this.options.navigator.axisX&&!g(this.options.navigator.axisX.gridThickness)?this.options.navigator.axisX.gridThickness:1;if(d.axisY.length)for(q=
|
|
1014
|
-
0;q<d.axisY.length;q++)d.axisY[q].titleFontSize=d.axisY[q].titleFontSize?d.axisY[q].titleFontSize:
|
|
1015
|
-
this.options.navigator.axisY.titleFontSize:
|
|
1016
|
-
0;if(d.axisX2.length)for(q=0;q<d.axisX2.length;q++)d.axisX2[q].titleFontSize=d.axisX2[q].titleFontSize?d.axisX2[q].titleFontSize:
|
|
1017
|
-
d.axisX2[q].lineThickness:0,d.axisX2[q].tickThickness=d.axisX2[q].tickThickness?d.axisX2[q].tickThickness:1,d.axisX2[q].gridThickness=g(d.axisX2[q].gridThickness)?1:d.axisX2[q].gridThickness;else d.axisX2.titleFontSize=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.titleFontSize?this.options.navigator.axisX2.titleFontSize:
|
|
1014
|
+
0;q<d.axisY.length;q++)d.axisY[q].titleFontSize=d.axisY[q].titleFontSize?d.axisY[q].titleFontSize:w?0:1,d.axisY[q].labelFontSize=d.axisY[q].labelFontSize?d.axisY[q].labelFontSize:w?0:1,d.axisY[q].labelPlacement=d.axisY[q].labelPlacement?d.axisY[q].labelPlacement:"inside",d.axisY[q].includeZero=!1,d.axisY[q].lineThickness=0,d.axisY[q].tickThickness=0,d.axisY[q].tickLength=0,d.axisY[q].gridThickness=0;else d.axisY.titleFontSize=this.options.navigator&&this.options.navigator.axisY&&this.options.navigator.axisY.titleFontSize?
|
|
1015
|
+
this.options.navigator.axisY.titleFontSize:w?0:1,d.axisY.labelFontSize=this.options.navigator&&this.options.navigator.axisY&&this.options.navigator.axisY.labelFontSize?this.options.navigator.axisY.labelFontSize:w?0:1,d.axisY.labelPlacement=this.options.navigator&&this.options.navigator.axisY&&this.options.navigator.axisY.labelPlacement?this.options.navigator.axisY.labelPlacement:"inside",d.axisY.includeZero=!1,d.axisY.lineThickness=0,d.axisY.tickThickness=0,d.axisY.tickLength=0,d.axisY.gridThickness=
|
|
1016
|
+
0;if(d.axisX2.length)for(q=0;q<d.axisX2.length;q++)d.axisX2[q].titleFontSize=d.axisX2[q].titleFontSize?d.axisX2[q].titleFontSize:w?0:1,d.axisX2[q].labelFontSize=d.axisX2[q].labelFontSize?d.axisX2[q].labelFontSize:12,d.axisX2[q].labelAngle=g(d.axisX2[q].labelAngle)?0:d.axisX2[q].labelAngle,d.axisX2[q].labelPlacement=d.axisX2[q].labelPlacement?d.axisX2[q].labelPlacement:"inside",d.axisX2[q].tickLength=g(d.axisX2[q].tickLength)?0:d.axisX2[q].tickLength,d.axisX2[q].lineThickness=d.axisX2[q].lineThickness?
|
|
1017
|
+
d.axisX2[q].lineThickness:0,d.axisX2[q].tickThickness=d.axisX2[q].tickThickness?d.axisX2[q].tickThickness:1,d.axisX2[q].gridThickness=g(d.axisX2[q].gridThickness)?1:d.axisX2[q].gridThickness;else d.axisX2.titleFontSize=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.titleFontSize?this.options.navigator.axisX2.titleFontSize:w?0:1,d.axisX2.labelFontSize=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.labelFontSize?this.options.navigator.axisX2.labelFontSize:
|
|
1018
1018
|
12,d.axisX2.labelAngle=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.labelAngle?this.options.navigator.axisX2.labelAngle:0,d.axisX2.labelPlacement=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.labelPlacement?this.options.navigator.axisX2.labelPlacement:"inside",d.axisX2.tickLength=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.tickLength?this.options.navigator.axisX2.tickLength:0,d.axisX2.lineThickness=
|
|
1019
1019
|
this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.lineThickness?this.options.navigator.axisX2.lineThickness:0,d.axisX2.tickThickness=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.tickThickness?this.options.navigator.axisX2.tickThickness:1,d.axisX2.gridThickness=this.options.navigator&&this.options.navigator.axisX2&&this.options.navigator.axisX2.gridThickness?this.options.navigator.axisX2.gridThickness:1;if(d.axisY2.length)for(q=
|
|
1020
|
-
0;q<d.axisY2.length;q++)d.axisY2[q].titleFontSize=d.axisY2[q].titleFontSize?d.axisY2[q].titleFontSize:
|
|
1021
|
-
this.options.navigator.axisY2.titleFontSize?this.options.navigator.axisY2.titleFontSize:
|
|
1020
|
+
0;q<d.axisY2.length;q++)d.axisY2[q].titleFontSize=d.axisY2[q].titleFontSize?d.axisY2[q].titleFontSize:w?0:1,d.axisY2[q].labelFontSize=d.axisY2[q].labelFontSize?d.axisY2[q].labelFontSize:w?0:1,d.axisY2[q].labelPlacement=d.axisY2[q].labelPlacement?d.axisY2[q].labelPlacement:"inside",d.axisY2[q].includeZero=!1,d.axisY2[q].lineThickness=0,d.axisY2[q].margin=0,d.axisY2[q].tickLength=0,d.axisY2[q].tickThickness=0,d.axisY2[q].gridThickness=0;else d.axisY2.titleFontSize=this.options.navigator&&this.options.navigator.axisY2&&
|
|
1021
|
+
this.options.navigator.axisY2.titleFontSize?this.options.navigator.axisY2.titleFontSize:w?0:1,d.axisY2.labelFontSize=this.options.navigator&&this.options.navigator.axisY2&&this.options.navigator.axisY2.labelFontSize?this.options.navigator.axisY2.labelFontSize:w?0:1,d.axisY2.labelPlacement=this.options.navigator&&this.options.navigator.axisY2&&this.options.navigator.axisY2.labelPlacement?this.options.navigator.axisY2.labelPlacement:"inside",d.axisY2.includeZero=!1,d.axisY2.lineThickness=0,d.axisY2.margin=
|
|
1022
1022
|
0,d.axisY2.tickLength=0,d.axisY2.tickThickness=0,d.axisY2.gridThickness=0;d.backgroundColor=this.navigator.backgroundColor;0===this.navigator.height&&(d.height=this.navigator.height);for(q=0;q<d.data.length;q++)d.data[q].markerSize=d.data[q].markerSize?d.data[q].markerSize:0;if(!this.navigator.chart){var l=m("canvasjs-chart-panel");this.navigator.panel.appendChild(l);l.style.height=this.navigator.height+"px";l.style.width=this.navigator.width+"px"}this.navigator.chart&&(this.navigator.chart.panel.style.width=
|
|
1023
1023
|
this.navigator.width+"px",this.navigator.chart.panel.style.height=this.navigator.height+"px");this.navigator.chart=this.navigator.chart||new Ha(l,d,{parent:this.navigator,isOptionsInArray:!1,index:null,predefinedThemes:Pa,optionsName:"navigator",stockChart:this});this.navigator.chart._initialize();this.navigator.chart.setLayout();this.navigator.chart.selectedColorSet=this.selectedColorSet;this.navigator.colorSet=this.navigator.options.colorSet?this.navigator.colorSet:this.charts&&this.charts[0]&&
|
|
1024
1024
|
this.charts[0].options.colorSet?this.charts[0].options.colorSet:this.colorSet;this.navigator._chartOptions=d;this.navigator.slider=this.navigator.slider||new N(this.navigator,this.options&&this.options.navigator&&this.options.navigator.slider?this.options.navigator.slider:null);this.navigator.slider._initialize()}if(this.rangeSelector){var a=this.rangeSelector.sessionVariables;if(this.rangeSelector.inputFields)for(var e=this.rangeSelector.inputFields.sessionVariables,q=0;q<this.rangeSelector.inputFields.elements.length;q++)this._canvasJSContainer.removeChild(this.rangeSelector.inputFields.elements[q])}this.rangeSelector=
|
|
1025
1025
|
new S(this,this.options&&this.options.rangeSelector?this.options.rangeSelector:null);this.rangeSelector.buttonStyle=new V(this,this.rangeSelector.options&&this.rangeSelector.options.buttonStyle?this.rangeSelector.options.buttonStyle:null);this.rangeSelector.inputFields=new U(this,this.rangeSelector.options&&this.rangeSelector.options.inputFields?this.rangeSelector.options.inputFields:null);this.rangeSelector.inputFields.style=new W(this,this.rangeSelector.inputFields.options&&this.rangeSelector.inputFields.options.style?
|
|
1026
1026
|
this.rangeSelector.inputFields.options.style:null);this.rangeSelector.inputFields.style._updateOptions();this.rangeSelector.inputFields._initialize();this.rangeSelector.inputFields.sessionVariables=e?e:this.rangeSelector.inputFields.sessionVariables;if(this.rangeSelector.inputFields&&this.rangeSelector.inputFields.enabled)for(this.rangeSelector.inputFields._textBlocks=[],this.rangeSelector.inputFields._labels=[],this.rangeSelector.inputFieldsWidth=0,l=this.rangeSelector.inputFields.style.maxWidth=
|
|
1027
1027
|
this.rangeSelector.inputFields.style.options.maxWidth?this.rangeSelector.inputFields.style.options.maxWidth:0.4*this.rangeSelector.width,q=0;q<this.rangeSelector.inputFields.elements.length;q++)t=new ma(this.rangeSelector.ctx,{x:0,y:0,backgroundColor:this.rangeSelector.inputFields.style.backgroundColor,borderColor:this.rangeSelector.inputFields.style.borderColor,borderThickness:this.rangeSelector.inputFields.style.borderThickness,cornerRadius:0,maxWidth:!g(this.rangeSelector.inputFields.style.options.width)&&
|
|
1028
|
-
this.rangeSelector.inputFields.style.options.width<l?this.rangeSelector.inputFields.style.width:l,maxHeight:2*this.rangeSelector.inputFields.style.fontSize,angle:0,padding:this.rangeSelector.inputFields.style.padding,text:this.rangeSelector.inputFields.valueFormatString,textAlign:
|
|
1029
|
-
fontStyle:this.rangeSelector.inputFields.style.fontStyle,textBaseline:"middle"}),e=t.measureText(),d=new ma(this.rangeSelector.ctx,{x:0,y:0,backgroundColor:
|
|
1030
|
-
fontWeight:this.rangeSelector.inputFields.style.fontWeight,fontColor:this.rangeSelector.inputFields.style.fontColor,fontStyle:this.rangeSelector.inputFields.style.fontStyle,textBaseline:"middle"}),this.rangeSelector.inputFields._textBlocks.push(t),this.rangeSelector.inputFields._labels.push(d),this.rangeSelector.inputFields._textBlocks[q].bounds={x1:null,x2:null,y1:null,y2:null,width:null,height:null},this.rangeSelector.inputFields._labels[q].bounds=
|
|
1031
|
-
t=g(this.rangeSelector.inputFields.style.options.width)?e.width:this.rangeSelector.inputFields.style.width>t.maxWidth?t.maxWidth:this.rangeSelector.inputFields.style.width,this.rangeSelector.inputFieldsWidth+=t+this.rangeSelector.inputFields.style.spacing+d.measureText().width,this.rangeSelector.inputFieldsHeight=g(this.rangeSelector.inputFieldsHeight)||this.rangeSelector.inputFieldsHeight<e.height?e.height:this.rangeSelector.inputFieldsHeight,
|
|
1032
|
-
|
|
1033
|
-
var q;if(this.options.charts){q=Array(this.options.charts.length);var l=this.layoutManager.getFreeSpace(),a=l.height,l=l.height,e=this.options.charts.length;for(d=0;d<this.options.charts.length;d++)!g(this.options.charts[d].height)&&parseFloat(this.options.charts[d].height)&&(q[d]=0<=this.options.charts[d].height.toString().indexOf("%")?Math.floor(Ua(this.options.charts[d].height,a,Math.floor(l/e),
|
|
1034
|
-
(q[d]=l);var c,e=this.options.charts,b=this.charts;this.charts=[];for(d=0;d<e.length;d++){l=this.layoutManager.getFreeSpace();a=e[d];a.animationEnabled=g(e[d].animationEnabled)?this.animationEnabled:e[d].animationEnabled;a.animationDuration=g(e[d].animationDuration)?this.animationDuration:e[d].animationDuration;for(c=b.length;0<c--&&b[c].options!==a;);0<=c?(this.charts[d]=
|
|
1035
|
-
new Ha(c,a,{parent:this,isOptionsInArray:!0,index:d,height:q[d],predefinedThemes:Pa,optionsName:"charts",stockChart:this}));this.charts[d].index=d;this.charts[d].panel.style.width=l.width+"px";this.charts[d].panel.style.top=l.y1+"px";this.charts[d].panel.style.left=l.x1+"px";this.charts[d].panel.style.height=q[d]+"px";this.layoutManager.registerSpace("top",{width:l.width,
|
|
1036
|
-
this.options.charts[d].data[b],0<=
|
|
1037
|
-
q+=this.charts[d].data.length}else for(this.charts[d].selectedColorSet=[],b=0;b<this.charts[d].data.length;b++){if(g(this.charts[d].colorSet)||!g(this.charts[d].colorSet)&&g(na[this.charts[d].colorSet]))this.charts[d].colorSet="colorSet1";this.charts[d].selectedColorSet.push(na[this.charts[d].colorSet][b%na[this.charts[d].colorSet].length])}if(this.navigator&&this.navigator.enabled)if(g(this.navigator.options.colorSet)&&
|
|
1038
|
-
[];for(b=q;b<q+this.navigator.chart.data.length;b++)this.navigator.chart.selectedColorSet.push(this.selectedColorSet[b%this.selectedColorSet.length]);q+=this.navigator.chart.data.length}else this.navigator.chart.selectedColorSet=this.charts[0].selectedColorSet,this.navigator.colorSet=this.charts&&this.charts[0]&&this.charts[0].options.colorSet?this.charts[0].colorSet:this.colorSet;else this.navigator.colorSet=
|
|
1039
|
-
this.navigator.chart.colorSet,this.navigator.chart.selectedColorSet="undefined"!==typeof na[this.navigator.colorSet]?na[this.navigator.colorSet]:na.colorSet1}if(this.navigator&&this.navigator.enabled){for(d=0;d<this.navigator.chart.data.length;d++)0<=
|
|
1040
|
-
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);d=this._chartsPlotAreaX1+
|
|
1041
|
-
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";this._canvasJSContainer.style.overflowX=this.options.navigator&&this.options.navigator.width&&this.options.navigator.width+d>=this.width?"visible":"hidden";0<this.navigator.height&&this.navigator.chart.render(this.navigator._chartOptions);
|
|
1042
|
-
for(var k in this.navigator.chart)0<=d.indexOf(k)&&(this.navigator[k]=this.navigator.chart[k]=g(this.navigator.chart.options[k])?this[k]||null:this.navigator.chart[k])}}q=k=null;var b=0,e=a=null,l={},y,B;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,k=k||(c&&0<c.length?c[0].minimum:null),q=q||(c&&0<c.length?
|
|
1043
|
-
(this._axisXMin=y=f.options.viewportMinimum,l.minimum="chart"),g(f.options.viewportMaximum)||(this._axisXMax=B=f.options.viewportMaximum,l.maximum="chart");var D;this.navigator&&(this.navigator.enabled&&this.navigator.chart&&$)&&(D=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)||
|
|
1044
|
-
this.navigator.slider.minimum),l.minimum="navigator"),g(this.navigator.options.slider)||void 0===this.navigator.options.slider.maximum||(this._axisXMax=this.navigator.slider.maximum=Math.min(D.maximum,this.navigator.slider.maximum),l.maximum="navigator"));if(this.rangeSelector&&this.rangeSelector.enabled){b=D?D.maximum-D.minimum:q-k;this._selectedRangeButtonIndex=this.navigator.slider&&
|
|
1045
|
-
|
|
1046
|
-
this._selectedRangeButtonIndex=null:(!this.navigator.slider||void 0===this.navigator.slider.options.maximum)&&this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("endValue")||(!this.navigator.slider||g(this.navigator.slider.options.minimum))&&this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("startValue")?
|
|
1047
|
-
|
|
1048
|
-
n=c.range*X[c.rangeType+"Duration"]:"ytd"===c.rangeType?n="ytd":"all"===c.rangeType&&(n=null);if("ytd"===c.rangeType||0!==n&&n<b)c.enabled=!0;c.mousemove=function(a){Z(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-
|
|
1049
|
-
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]===this&&"off"===this.state&&this.enabled||t.rangeSelector.buttons[b].textBlock.render(!0);this.enabled&&"off"===this.state&&(this.textBlock.backgroundColor=
|
|
1050
|
-
this.textBlock.render(!0))};c.mouseover=function(a){Z(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/
|
|
1051
|
-
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,
|
|
1052
|
-
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,
|
|
1053
|
-
this.state&&this.enabled||t.rangeSelector.buttons[b].textBlock.render(!0);this.enabled&&"off"===this.state&&(this.textBlock.backgroundColor=a.stockChart.rangeSelector.buttonStyle.backgroundColor,this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColor,this.textBlock.render(!0))};c.click=function(a){if(this.enabled){var b=0,c=null,d=null;Z(t.rangeSelector.ctx,t.rangeSelector.buttons[0].bounds.x1-
|
|
1054
|
-
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 e=0;e<t.rangeSelector.buttons.length;e++)t.rangeSelector.buttons[e]!=this&&(t.rangeSelector.buttons[e].state=
|
|
1055
|
-
t.rangeSelector.buttons[e].textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColor,t.rangeSelector.buttons[e].textBlock.backgroundColor=a.stockChart.rangeSelector.buttons[e].enabled?a.stockChart.rangeSelector.buttonStyle.backgroundColor:a.stockChart.rangeSelector.buttons[e].backgroundColorDisabled,t.rangeSelector.buttons[e].textBlock.measureText(),t.rangeSelector.buttons[e].textBlock.render(!0);
|
|
1056
|
-
t.charts[0].axisX2[0]);var k;t.navigator&&t.navigator.chart&&(k=t.navigator.chart.axisX?t.navigator.chart.axisX[0]:t.navigator.chart.axisX2[0]);-1!==va("year month week day hour minute second millisecond number".split(" ")).indexOf(this.rangeType)?b=this.range*X[this.rangeType+"Duration"]:"all"===this.rangeType&&(b=null);"ytd"===this.rangeType&&f?(c=new Date(f.viewportMaximum),c.setDate(1),c.setMonth(0),
|
|
1057
|
-
f&&(c=f.minimum,d=f.maximum):k&&f.viewportMaximum-b<(k?k.minimum:f.minimum)?(k=t.navigator.chart.axisX[0].minimum-(f.viewportMaximum-b),c=t.navigator.chart.axisX[0].minimum,d=Math.min(t.navigator.chart.axisX[0].maximum,f.viewportMaximum+k)):(c=f.viewportMaximum-b<f.minimum?f.minimum:f.viewportMaximum-b,k=f.viewportMaximum-b<f.minimum?f.minimum-(f.viewportMaximum-b):0,d=f.viewportMaximum+k>f.maximum?
|
|
1058
|
-
minimum:Math.min(c,d),maximum:Math.max(c,d)};this.textBlock.fontWeight="bold";this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColorOnHover;this.textBlock.backgroundColor=a.stockChart.rangeSelector.buttonStyle.backgroundColorOnSelect;this.textBlock.measureText();this.textBlock.render(!0);t.rangeUpdatedBy="rangeButton";t.rangeSelector.sessionVariables._clickedRangeButtonIndex=
|
|
1059
|
-
t._rangeEventParameter,t),t._syncCharts(c,d),t.sessionVariables._axisXMin=c,t.sessionVariables._axisXMax=d,t._rangeEventParameter.type="rangeChanged",t.dispatchEvent("rangeChanged",t._rangeEventParameter,t))}};if(c.enabled){c.cursor=this.rangeSelector.buttonStyle.cursor;this.rangeSelector.sessionVariables._clickedRangeButtonIndex===d&&(c.textBlock.fontWeight="bold",c.textBlock.fontColor=
|
|
1060
|
-
c.textBlock.measureText());if("on"===c.state&&"navigator"!==l.minimum&&(!this.rangeSelector.inputFields.enabled||g(this.rangeSelector.inputFields.options.startValue))&&!g(this._selectedRangeButtonIndex)){g(this.rangeSelector.sessionVariables._clickedRangeButtonIndex)&&("on"===c.state&&"navigator"!==l.minimum)&&(c.textBlock.fontWeight="bold",c.textBlock.fontColor=
|
|
1061
|
-
c.textBlock.measureText());if("ytd"===c.rangeType&&f)a=new Date(f.viewportMaximum),a.setDate(1),a.setMonth(0),a=a.getTime();else if(g(n))D?(a=D.minimum,e=D.maximum):f&&(a=f.minimum,e=f.maximum),"chart"===l.maximum&&(l.maximum="rangeButton");else{var r=this.navigator&&this.navigator.slider&&this.navigator.slider.hasOptionChanged("maximum")||this.rangeSelector&&this.rangeSelector.inputFields&&
|
|
1062
|
-
this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.endValue)?this.rangeSelector.inputFields.options.endValue:g(f.options.viewportMaximum)?f.viewportMaximum:f.options.viewportMaximum:f.viewportMaximum;r>(D?D.maximum:f.maximum)&&(r=D?D.maximum:f.maximum);if(r-n<(D?D.minimum:f.minimum)){if("navigator"!==l.maximum&&g(this.rangeSelector.inputFields.options.endValue))"chart"===
|
|
1063
|
-
e.minimum-(r-n);a=e.minimum;e=Math.min(e.maximum,("dateTime"===e.valueType&&"object"===typeof r?r.getTime():r)+n)}else a=r-n,e=r}l.minimum="rangeButton";l.maximum=g(l.maximum)||"chart"===l.maximum&&g(f.options.viewportMaximum)?"rangeButton":l.maximum}g(this.rangeSelector.sessionVariables._clickedRangeButtonIndex)||d===this.rangeSelector.sessionVariables._clickedRangeButtonIndex||(c.state="off");this._axisXMin=
|
|
1064
|
-
a:this._axisXMin;this._axisXMax=g(e)?g(this.sessionVariables._axisXMax)?this._axisXMax:this.sessionVariables._axisXMax:e}else c.cursor="not-allowed"}if(this.rangeSelector.inputFields&&this.rangeSelector.inputFields.enabled){this.rangeSelector.inputFields.valueType=this.options.rangeSelector&&this.options.rangeSelector.inputFields&&this.options.rangeSelector.inputFields.valueType?this.options.rangeSelector.inputFields.valueType:
|
|
1065
|
-
this.rangeSelector.inputFields._textBlocks[d],f.mousemove=function(a){t.rangeSelector&&t.rangeSelector.inputFields&&!t.rangeSelector.inputFields.enabled||(a.inputField.cursor=a.stockChart.rangeSelector.inputFields.style.cursor)},f.mouseover=function(a){t.rangeSelector&&t.rangeSelector.inputFields&&!t.rangeSelector.inputFields.enabled||(a.inputField.cursor=a.stockChart.rangeSelector.inputFields.style.cursor)},
|
|
1066
|
-
(a.inputField.cursor="auto")},f.click=function(a){t.rangeSelector&&t.rangeSelector.inputFields&&!t.rangeSelector.inputFields.enabled||(a.stockChart.rangeSelector.inputFields.elements[a.inputFieldIndex].style.display="inline",a.stockChart.rangeSelector.inputFields.elements[a.inputFieldIndex].focus())};if(isFinite(k)&&isFinite(q)){"dateTime"===this.rangeSelector.inputFields.valueType?(this.rangeSelector.inputFields.valueFormatString=
|
|
1067
|
-
this.options.rangeSelector.inputFields.valueFormatString?this.options.rangeSelector.inputFields.valueFormatString:"MMM DD YYYY",this.rangeSelector.inputFields.startValue=this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.startValue)?qa(this.rangeSelector.inputFields.options.startValue,this.rangeSelector.inputFields.valueFormatString):g(a)?k:a,this.rangeSelector.inputFields.endValue=this.rangeSelector.inputFields.hasOptionChanged("endValue")&&
|
|
1068
|
-
|
|
1069
|
-
this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.startValue)?this.rangeSelector.inputFields.options.startValue:g(a)?k:a,this.rangeSelector.inputFields.endValue=this.rangeSelector.inputFields.hasOptionChanged("endValue")&&this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.endValue)?this.rangeSelector.inputFields.options.endValue:g(e)?g(this.sessionVariables._axisXMax)?q:this.sessionVariables._axisXMax:
|
|
1070
|
-
(p=qa(this.rangeSelector.inputFields.options.startValue||this.rangeSelector.inputFields.startValue,"YYYY-MM-DD'T'HH:mm:ss"),s=qa(this.rangeSelector.inputFields.endValue,"YYYY-MM-DD'T'HH:mm:ss"),
|
|
1071
|
-
l.minimum||"chart"===l.minimum&&(!this.rangeSelector.inputFields.enabled||g(this.rangeSelector.inputFields.options.startValue))?this._axisXMin:"dateTime"===this.rangeSelector.inputFields.valueType?(new Date(p)).getTime():this.rangeSelector.inputFields.startValue,this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.startValue)&&(l.minimum="inputFields"));"navigator"!==l.maximum&&(this._axisXMax=!g(this._axisXMax)
|
|
1072
|
-
"chart"===l.maximum&&(!this.rangeSelector.inputFields.enabled||g(this.rangeSelector.inputFields.options.endValue))?this._axisXMax:"dateTime"===this.rangeSelector.inputFields.valueType?(new Date(s)).getTime():this.rangeSelector.inputFields.endValue,this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.endValue)&&(l.maximum="inputFields"))}for(d=0;d<this.rangeSelector.inputFields.elements.length;d++)this.rangeSelector.inputFields.elements[d].title=
|
|
1073
|
-
"YYYY-MM-DD":this.rangeSelector.inputFields.valueFormatString}this.rangeSelector.render();this.navigator&&this.navigator.slider&&(this.navigator.slider.hasOptionChanged("minimum")||this.navigator.slider.hasOptionChanged("maximum"))?this.rangeUpdatedBy="rangeButton"===l.minimum?"rangeButton":"navigator":this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("startValue")&&"navigator"!==l.minimum||this.rangeSelector.inputFields.enabled&&
|
|
1074
|
-
"navigator"!==l.maximum?this.rangeUpdatedBy="rangeButton"===l.minimum?"rangeButton":"inputFields":this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")&&"rangeButton"===l.minimum&&(this.rangeUpdatedBy="rangeButton");"rangeButton"!==this.rangeUpdatedBy&&this.rangeSelector.resetRangeButtons()}if(g(this._axisXMin)||g(l.minimum))this._axisXMin=k;if(g(this._axisXMax)||g(l.maximum))this._axisXMax=q;if(g(this._initialAxisXMin)||g(l.minimum))this._initialAxisXMin=
|
|
1075
|
-
g(l.maximum))this._initialAxisXMax=this._axisXMax;y!==this._prevViewportMinimum&&(this._prevViewportMinimum=y,"chart"===l.minimum&&(this.sessionVariables._axisXMin=this._initialAxisXMin=this._axisXMin));B!==this._prevViewportMaximum&&(this._prevViewportMaximum=B,"chart"===l.maximum&&(this.sessionVariables._axisXMax=this._initialAxisXMax=this._axisXMax));this.rangeSelector.enabled&&this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")&&"navigator"!==
|
|
1076
|
-
this._initialAxisXMin=this._axisXMin,this.sessionVariables._axisXMax=this._axisXMax,"rangeButton"===l.maximum&&(this._initialAxisXMax=this._axisXMax)):(this._axisXMin=g(this.sessionVariables._axisXMin)||this.navigator.enabled&&(!this.navigator.slider||this.navigator.slider.hasOptionChanged("minimum"))||this.rangeSelector.enabled&&"navigator"!==l.minimum&&this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("startValue")?
|
|
1077
|
-
this._axisXMax=g(this.sessionVariables._axisXMax)||this.navigator.enabled&&(!this.navigator.slider||this.navigator.slider.hasOptionChanged("maximum"))||this.rangeSelector.enabled&&"navigator"!==l.maximum&&this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("endValue")?this._axisXMax:this.sessionVariables._axisXMax);this.rangeSelector.enabled&&this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")&&(this.rangeSelector.sessionVariables.selectedRangeButtonIndex=
|
|
1028
|
+
this.rangeSelector.inputFields.style.options.width<l?this.rangeSelector.inputFields.style.width:l,maxHeight:2*this.rangeSelector.inputFields.style.fontSize,angle:0,padding:this.rangeSelector.inputFields.style.padding,text:this.rangeSelector.inputFields.valueFormatString,textAlign:this.rangeSelector.inputFields.style.textAlign,fontSize:this.rangeSelector.inputFields.style.fontSize,fontFamily:this.rangeSelector.inputFields.style.fontFamily,fontWeight:this.rangeSelector.inputFields.style.fontWeight,
|
|
1029
|
+
fontColor:this.rangeSelector.inputFields.style.fontColor,fontStyle:this.rangeSelector.inputFields.style.fontStyle,textBaseline:"middle"}),e=t.measureText(),d=new ma(this.rangeSelector.ctx,{x:0,y:0,backgroundColor:w?"transparent":null,borderColor:this.rangeSelector.inputFields.style.borderColor,borderThickness:0,cornerRadius:0,maxWidth:0.2*this.width,maxHeight:2*this.rangeSelector.inputFields.style.fontSize,angle:0,padding:this.rangeSelector.inputFields.style.padding,text:"From",textAlign:"left",fontSize:this.rangeSelector.inputFields.style.fontSize,
|
|
1030
|
+
fontFamily:this.rangeSelector.inputFields.style.fontFamily,fontWeight:this.rangeSelector.inputFields.style.fontWeight,fontColor:this.rangeSelector.inputFields.style.fontColor,fontStyle:this.rangeSelector.inputFields.style.fontStyle,textBaseline:"middle"}),this.rangeSelector.inputFields._textBlocks.push(t),this.rangeSelector.inputFields._labels.push(d),this.rangeSelector.inputFields._textBlocks[q].bounds={x1:null,x2:null,y1:null,y2:null,width:null,height:null},this.rangeSelector.inputFields._labels[q].bounds=
|
|
1031
|
+
{x1:null,x2:null,y1:null,y2:null,width:null,height:null},t=g(this.rangeSelector.inputFields.style.options.width)?e.width:this.rangeSelector.inputFields.style.width>t.maxWidth?t.maxWidth:this.rangeSelector.inputFields.style.width,this.rangeSelector.inputFieldsWidth+=t+this.rangeSelector.inputFields.style.spacing+d.measureText().width,this.rangeSelector.inputFieldsHeight=g(this.rangeSelector.inputFieldsHeight)||this.rangeSelector.inputFieldsHeight<e.height?e.height:this.rangeSelector.inputFieldsHeight,
|
|
1032
|
+
e=this.rangeSelector.inputFields._textBlocks[q],e.id=++this.rangeSelector.stockChart._eventManager.lastObjectId,this.rangeSelector.stockChart._eventManager.objectMap[e.id]={id:e.id,objectType:"inputFields",inputFieldIndex:q};this.rangeSelector.buttonStyle._updateOptions();this.rangeSelector.sessionVariables=a?a:this.rangeSelector.sessionVariables;this.rangeSelector._initialize();this._objectsInitialized=!0};v.prototype.render=function(d){var t=this;d&&(this.options=d);this._initialize();this.title&&
|
|
1033
|
+
this.title.render();if(this.subtitles)for(d=0;d<this.subtitles.length;d++)this.subtitles[d].render();var q;if(this.options.charts){q=Array(this.options.charts.length);var l=this.layoutManager.getFreeSpace(),a=l.height,l=l.height,e=this.options.charts.length;for(d=0;d<this.options.charts.length;d++)!g(this.options.charts[d].height)&&parseFloat(this.options.charts[d].height)&&(q[d]=0<=this.options.charts[d].height.toString().indexOf("%")?Math.floor(Ua(this.options.charts[d].height,a,Math.floor(l/e),
|
|
1034
|
+
this.height,0)):this.options.charts[d].height,l-=q[d],e--);l=Math.floor(l/e);for(d=0;d<this.options.charts.length;d++)g(q[d])&&(q[d]=l);var c,e=this.options.charts,b=this.charts;this.charts=[];for(d=0;d<e.length;d++){l=this.layoutManager.getFreeSpace();a=e[d];a.animationEnabled=g(e[d].animationEnabled)?this.animationEnabled:e[d].animationEnabled;a.animationDuration=g(e[d].animationDuration)?this.animationDuration:e[d].animationDuration;for(c=b.length;0<c--&&b[c].options!==a;);0<=c?(this.charts[d]=
|
|
1035
|
+
b[c],this.charts[d].options=a):(c=m("canvasjs-chart-panel"),c.style.height=q[d]+"px",this._canvasJSContainer.appendChild(c),this.charts[d]=new Ha(c,a,{parent:this,isOptionsInArray:!0,index:d,height:q[d],predefinedThemes:Pa,optionsName:"charts",stockChart:this}));this.charts[d].index=d;this.charts[d].panel.style.width=l.width+"px";this.charts[d].panel.style.top=l.y1+"px";this.charts[d].panel.style.left=l.x1+"px";this.charts[d].panel.style.height=q[d]+"px";this.layoutManager.registerSpace("top",{width:l.width,
|
|
1036
|
+
height:q[d]})}this._chartsHeight=q;b=null;for(d=0;d<this.charts.length;d++)if(!g(this.options.charts[d].data))for(b=0;b<this.options.charts[d].data.length;b++)q=this.options.charts[d].data[b],0<=v._supportedChartTypes.indexOf(q.type)||g(q.type)||($=!1,window.console&&window.console.log("CanvasJS Error: "+q.type+" Chart is not Supported in StockChart"));if(!$)return;this.setChartsLayout();for(d=q=0;d<this.charts.length;d++)if(g(this.charts[d].options.colorSet)&&g(this.charts[d].options.theme)){this.charts[d].selectedColorSet=
|
|
1037
|
+
[];for(b=q;b<q+this.charts[d].data.length;b++)this.charts[d].selectedColorSet.push(this.selectedColorSet[b%this.selectedColorSet.length]);q+=this.charts[d].data.length}else for(this.charts[d].selectedColorSet=[],b=0;b<this.charts[d].data.length;b++){if(g(this.charts[d].colorSet)||!g(this.charts[d].colorSet)&&g(na[this.charts[d].colorSet]))this.charts[d].colorSet="colorSet1";this.charts[d].selectedColorSet.push(na[this.charts[d].colorSet][b%na[this.charts[d].colorSet].length])}if(this.navigator&&this.navigator.enabled)if(g(this.navigator.options.colorSet)&&
|
|
1038
|
+
g(this.navigator.options.theme))if(this.navigator.options.data){this.navigator.chart.selectedColorSet=[];for(b=q;b<q+this.navigator.chart.data.length;b++)this.navigator.chart.selectedColorSet.push(this.selectedColorSet[b%this.selectedColorSet.length]);q+=this.navigator.chart.data.length}else this.navigator.chart.selectedColorSet=this.charts[0].selectedColorSet,this.navigator.colorSet=this.charts&&this.charts[0]&&this.charts[0].options.colorSet?this.charts[0].colorSet:this.colorSet;else this.navigator.colorSet=
|
|
1039
|
+
this.navigator.chart.colorSet="undefined"!==typeof this.navigator.options.colorSet?this.navigator.options.colorSet:this.navigator.chart.colorSet,this.navigator.chart.selectedColorSet="undefined"!==typeof na[this.navigator.colorSet]?na[this.navigator.colorSet]:na.colorSet1}if(this.navigator&&this.navigator.enabled){for(d=0;d<this.navigator.chart.data.length;d++)0<=v._supportedChartTypes.indexOf(this.navigator.chart.data[d].type)||($=!1,window.console&&window.console.log("CanvasJS Error: "+this.navigator.chart.data[d].type+
|
|
1040
|
+
" Chart is not Supported in Navigator"));if($){var f=this.navigator.chart.axisX&&this.navigator.chart.axisX.length?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);d=this._chartsPlotAreaX1+
|
|
1041
|
+
this.layoutManager.getFreeSpace().x1-(f&&f.bounds?f.bounds.x1:0);this.navigator.panel.style.left=d+"px";this.navigator.panel.style.width=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";this._canvasJSContainer.style.overflowX=this.options.navigator&&this.options.navigator.width&&this.options.navigator.width+d>=this.width?"visible":"hidden";0<this.navigator.height&&this.navigator.chart.render(this.navigator._chartOptions);
|
|
1042
|
+
d=va("backgroundColor animationEnabled animationDuration theme axisX axisX2 axisY axisY2 data".split(" "));for(var k in this.navigator.chart)0<=d.indexOf(k)&&(this.navigator[k]=this.navigator.chart[k]=g(this.navigator.chart.options[k])?this[k]||null:this.navigator.chart[k])}}q=k=null;var b=0,e=a=null,l={},y,B;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,k=k||(c&&0<c.length?c[0].minimum:null),q=q||(c&&0<c.length?
|
|
1043
|
+
c[0].maximum:null),b=0;b<c.length;b++)f=c[b],f.minimum<k&&(k=f.minimum),f.maximum>q&&(q=f.maximum),g(f.options.viewportMinimum)||(this._axisXMin=y=f.options.viewportMinimum,l.minimum="chart"),g(f.options.viewportMaximum)||(this._axisXMax=B=f.options.viewportMaximum,l.maximum="chart");var D;this.navigator&&(this.navigator.enabled&&this.navigator.chart&&$)&&(D=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)||
|
|
1044
|
+
void 0===this.navigator.options.slider.minimum||(this._axisXMin=this.navigator.slider.minimum=Math.max(D.minimum,this.navigator.slider.minimum),l.minimum="navigator"),g(this.navigator.options.slider)||void 0===this.navigator.options.slider.maximum||(this._axisXMax=this.navigator.slider.maximum=Math.min(D.maximum,this.navigator.slider.maximum),l.maximum="navigator"));if(this.rangeSelector&&this.rangeSelector.enabled){b=D?D.maximum-D.minimum:q-k;this._selectedRangeButtonIndex=this.navigator.slider&&
|
|
1045
|
+
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;!g(this._selectedRangeButtonIndex)&&this._selectedRangeButtonIndex<this.rangeSelector.buttons.length&&(this.rangeSelector.buttons[this._selectedRangeButtonIndex].state="on");this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")||
|
|
1046
|
+
(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&&this.rangeSelector.inputFields.hasOptionChanged("endValue")||(!this.navigator.slider||g(this.navigator.slider.options.minimum))&&this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("startValue")?
|
|
1047
|
+
this._selectedRangeButtonIndex=null:this.navigator.slider&&void 0!==this.navigator.slider.options.maximum||(this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.endValue)||B===this._prevViewportMaximum)||(this._selectedRangeButtonIndex=null));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=
|
|
1048
|
+
null);for(d=0;d<this.rangeSelector.buttons.length;d++){var n=null;c=this.rangeSelector.buttons[d];-1!==va("year month week day hour minute second millisecond number".split(" ")).indexOf(c.rangeType)?n=c.range*X[c.rangeType+"Duration"]:"ytd"===c.rangeType?n="ytd":"all"===c.rangeType&&(n=null);if("ytd"===c.rangeType||0!==n&&n<b)c.enabled=!0;c.mousemove=function(a){Z(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-
|
|
1049
|
+
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]===this&&"off"===this.state&&this.enabled||t.rangeSelector.buttons[b].textBlock.render(!0);this.enabled&&"off"===this.state&&(this.textBlock.backgroundColor=
|
|
1050
|
+
a.stockChart.rangeSelector.buttonStyle.backgroundColorOnHover,this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColorOnHover,this.textBlock.render(!0))};c.mouseover=function(a){Z(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/
|
|
1051
|
+
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]===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,
|
|
1052
|
+
this.textBlock.render(!0))};c.mouseout=function(a){Z(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,t.rangeSelector.stockChart.backgroundColor,
|
|
1053
|
+
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.backgroundColor,this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColor,this.textBlock.render(!0))};c.click=function(a){if(this.enabled){var b=0,c=null,d=null;Z(t.rangeSelector.ctx,t.rangeSelector.buttons[0].bounds.x1-
|
|
1054
|
+
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 e=0;e<t.rangeSelector.buttons.length;e++)t.rangeSelector.buttons[e]!=this&&(t.rangeSelector.buttons[e].state=
|
|
1055
|
+
"off"),t.rangeSelector.buttons[e].textBlock.fontWeight=t.rangeSelector.buttonStyle.labelFontWeight,t.rangeSelector.buttons[e].textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColor,t.rangeSelector.buttons[e].textBlock.backgroundColor=a.stockChart.rangeSelector.buttons[e].enabled?a.stockChart.rangeSelector.buttonStyle.backgroundColor:a.stockChart.rangeSelector.buttons[e].backgroundColorDisabled,t.rangeSelector.buttons[e].textBlock.measureText(),t.rangeSelector.buttons[e].textBlock.render(!0);
|
|
1056
|
+
var f;t.charts&&t.charts.length&&(f=t.charts[0].axisX&&t.charts[0].axisX.length?t.charts[0].axisX[0]:t.charts[0].axisX2[0]);var k;t.navigator&&t.navigator.chart&&(k=t.navigator.chart.axisX?t.navigator.chart.axisX[0]:t.navigator.chart.axisX2[0]);-1!==va("year month week day hour minute second millisecond number".split(" ")).indexOf(this.rangeType)?b=this.range*X[this.rangeType+"Duration"]:"all"===this.rangeType&&(b=null);"ytd"===this.rangeType&&f?(c=new Date(f.viewportMaximum),c.setDate(1),c.setMonth(0),
|
|
1057
|
+
b=c.getTime(),c=Math.max(b,k?k.minimum:f.minimum),d=f.viewportMaximum):g(b)?k?(c=k.minimum,d=k.maximum):f&&(c=f.minimum,d=f.maximum):k&&f.viewportMaximum-b<(k?k.minimum:f.minimum)?(k=t.navigator.chart.axisX[0].minimum-(f.viewportMaximum-b),c=t.navigator.chart.axisX[0].minimum,d=Math.min(t.navigator.chart.axisX[0].maximum,f.viewportMaximum+k)):(c=f.viewportMaximum-b<f.minimum?f.minimum:f.viewportMaximum-b,k=f.viewportMaximum-b<f.minimum?f.minimum-(f.viewportMaximum-b):0,d=f.viewportMaximum+k>f.maximum?
|
|
1058
|
+
f.maximum:f.viewportMaximum+k);t._rangeEventParameter={stockChart:t,source:"buttons",index:this._index,minimum:Math.min(c,d),maximum:Math.max(c,d)};this.textBlock.fontWeight="bold";this.textBlock.fontColor=a.stockChart.rangeSelector.buttonStyle.labelFontColorOnHover;this.textBlock.backgroundColor=a.stockChart.rangeSelector.buttonStyle.backgroundColorOnSelect;this.textBlock.measureText();this.textBlock.render(!0);t.rangeUpdatedBy="rangeButton";t.rangeSelector.sessionVariables._clickedRangeButtonIndex=
|
|
1059
|
+
this._index;"on"!=this.state&&(this.state="on",t._rangeEventParameter.type="rangeChanging",t.dispatchEvent("rangeChanging",t._rangeEventParameter,t),t._syncCharts(c,d),t.sessionVariables._axisXMin=c,t.sessionVariables._axisXMax=d,t._rangeEventParameter.type="rangeChanged",t.dispatchEvent("rangeChanged",t._rangeEventParameter,t))}};if(c.enabled){c.cursor=this.rangeSelector.buttonStyle.cursor;this.rangeSelector.sessionVariables._clickedRangeButtonIndex===d&&(c.textBlock.fontWeight="bold",c.textBlock.fontColor=
|
|
1060
|
+
this.rangeSelector.buttonStyle.labelFontColorOnHover,c.textBlock.backgroundColor=this.rangeSelector.buttonStyle.backgroundColorOnSelect,c.textBlock.measureText());if("on"===c.state&&"navigator"!==l.minimum&&(!this.rangeSelector.inputFields.enabled||g(this.rangeSelector.inputFields.options.startValue))&&!g(this._selectedRangeButtonIndex)){g(this.rangeSelector.sessionVariables._clickedRangeButtonIndex)&&("on"===c.state&&"navigator"!==l.minimum)&&(c.textBlock.fontWeight="bold",c.textBlock.fontColor=
|
|
1061
|
+
this.rangeSelector.buttonStyle.labelFontColorOnHover,c.textBlock.backgroundColor=this.rangeSelector.buttonStyle.backgroundColorOnSelect,c.textBlock.measureText());if("ytd"===c.rangeType&&f)a=new Date(f.viewportMaximum),a.setDate(1),a.setMonth(0),a=a.getTime();else if(g(n))D?(a=D.minimum,e=D.maximum):f&&(a=f.minimum,e=f.maximum),"chart"===l.maximum&&(l.maximum="rangeButton");else{var r=this.navigator&&this.navigator.slider&&this.navigator.slider.hasOptionChanged("maximum")||this.rangeSelector&&this.rangeSelector.inputFields&&
|
|
1062
|
+
this.rangeSelector.inputFields.hasOptionChanged("endValue")?"navigator"===l.maximum?this.navigator.slider.maximum:this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.endValue)?this.rangeSelector.inputFields.options.endValue:g(f.options.viewportMaximum)?f.viewportMaximum:f.options.viewportMaximum:f.viewportMaximum;r>(D?D.maximum:f.maximum)&&(r=D?D.maximum:f.maximum);if(r-n<(D?D.minimum:f.minimum)){if("navigator"!==l.maximum&&g(this.rangeSelector.inputFields.options.endValue))"chart"===
|
|
1063
|
+
l.maximum&&(l.maximum="rangeButton");else{this._selectedRangeButtonIndex=null;continue}e=D?D:f;n=e.minimum-(r-n);a=e.minimum;e=Math.min(e.maximum,("dateTime"===e.valueType&&"object"===typeof r?r.getTime():r)+n)}else a=r-n,e=r}l.minimum="rangeButton";l.maximum=g(l.maximum)||"chart"===l.maximum&&g(f.options.viewportMaximum)?"rangeButton":l.maximum}g(this.rangeSelector.sessionVariables._clickedRangeButtonIndex)||d===this.rangeSelector.sessionVariables._clickedRangeButtonIndex||(c.state="off");this._axisXMin=
|
|
1064
|
+
"rangeButton"===l.minimum&&(g(this._axisXMin)||this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex"))?a:this._axisXMin;this._axisXMax=g(e)?g(this.sessionVariables._axisXMax)?this._axisXMax:this.sessionVariables._axisXMax:e}else c.cursor="not-allowed"}if(this.rangeSelector.inputFields&&this.rangeSelector.inputFields.enabled){this.rangeSelector.inputFields.valueType=this.options.rangeSelector&&this.options.rangeSelector.inputFields&&this.options.rangeSelector.inputFields.valueType?this.options.rangeSelector.inputFields.valueType:
|
|
1065
|
+
this.isDateTime?"dateTime":"number";for(d=0;d<this.rangeSelector.inputFields._textBlocks.length;d++)f=this.rangeSelector.inputFields._textBlocks[d],f.mousemove=function(a){t.rangeSelector&&t.rangeSelector.inputFields&&!t.rangeSelector.inputFields.enabled||(a.inputField.cursor=a.stockChart.rangeSelector.inputFields.style.cursor)},f.mouseover=function(a){t.rangeSelector&&t.rangeSelector.inputFields&&!t.rangeSelector.inputFields.enabled||(a.inputField.cursor=a.stockChart.rangeSelector.inputFields.style.cursor)},
|
|
1066
|
+
f.mouseout=function(a){t.rangeSelector&&t.rangeSelector.inputFields&&!t.rangeSelector.inputFields.enabled||(a.inputField.cursor="auto")},f.click=function(a){t.rangeSelector&&t.rangeSelector.inputFields&&!t.rangeSelector.inputFields.enabled||(a.stockChart.rangeSelector.inputFields.elements[a.inputFieldIndex].style.display="inline",a.stockChart.rangeSelector.inputFields.elements[a.inputFieldIndex].focus())};if(isFinite(k)&&isFinite(q)){"dateTime"===this.rangeSelector.inputFields.valueType?(this.rangeSelector.inputFields.valueFormatString=
|
|
1067
|
+
this.options.rangeSelector&&this.options.rangeSelector.inputFields&&this.options.rangeSelector.inputFields.valueFormatString?this.options.rangeSelector.inputFields.valueFormatString:"MMM DD YYYY",this.rangeSelector.inputFields.startValue=this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.startValue)?qa(this.rangeSelector.inputFields.options.startValue,this.rangeSelector.inputFields.valueFormatString):g(a)?k:a,this.rangeSelector.inputFields.endValue=this.rangeSelector.inputFields.hasOptionChanged("endValue")&&
|
|
1068
|
+
this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.endValue)?qa(this.rangeSelector.inputFields.options.endValue,this.rangeSelector.inputFields.valueFormatString):g(e)?g(this.sessionVariables._axisXMax)?q:this.sessionVariables._axisXMax:e):(this.rangeSelector.inputFields.valueFormatString=this.options.rangeSelector&&this.options.rangeSelector.inputFields&&this.options.rangeSelector.inputFields.valueFormatString?this.options.rangeSelector.inputFields.valueFormatString:
|
|
1069
|
+
"#,##0.##",this.rangeSelector.inputFields.startValue=this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.startValue)?this.rangeSelector.inputFields.options.startValue:g(a)?k:a,this.rangeSelector.inputFields.endValue=this.rangeSelector.inputFields.hasOptionChanged("endValue")&&this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.endValue)?this.rangeSelector.inputFields.options.endValue:g(e)?g(this.sessionVariables._axisXMax)?q:this.sessionVariables._axisXMax:
|
|
1070
|
+
e);var p,s;"dateTime"===this.rangeSelector.inputFields.valueType&&(p=qa(this.rangeSelector.inputFields.options.startValue||this.rangeSelector.inputFields.startValue,"YYYY-MM-DD'T'HH:mm:ss"),s=qa(this.rangeSelector.inputFields.endValue,"YYYY-MM-DD'T'HH:mm:ss"),w||(p=p.replace(/-/g,"/"),s=s.replace(/-/g,"/"),p=p.replace("T"," "),s=s.replace("T"," "),p=p.replace(/(\+[0-9]{2})(\:)([0-9]{2}$)/," UTC$1$3"),s=s.replace(/(\+[0-9]{2})(\:)([0-9]{2}$)/," UTC$1$3")));"navigator"!==l.minimum&&(this._axisXMin=
|
|
1071
|
+
!g(this._axisXMin)&&!g(l.minimum)&&"rangeButton"!==l.minimum&&"chart"!==l.minimum||"chart"===l.minimum&&(!this.rangeSelector.inputFields.enabled||g(this.rangeSelector.inputFields.options.startValue))?this._axisXMin:"dateTime"===this.rangeSelector.inputFields.valueType?(new Date(p)).getTime():this.rangeSelector.inputFields.startValue,this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.startValue)&&(l.minimum="inputFields"));"navigator"!==l.maximum&&(this._axisXMax=!g(this._axisXMax)&&
|
|
1072
|
+
!g(l.maximum)&&"rangeButton"!==l.maximum&&"chart"!==l.maximum||"chart"===l.maximum&&(!this.rangeSelector.inputFields.enabled||g(this.rangeSelector.inputFields.options.endValue))?this._axisXMax:"dateTime"===this.rangeSelector.inputFields.valueType?(new Date(s)).getTime():this.rangeSelector.inputFields.endValue,this.rangeSelector.inputFields.enabled&&!g(this.rangeSelector.inputFields.options.endValue)&&(l.maximum="inputFields"))}for(d=0;d<this.rangeSelector.inputFields.elements.length;d++)this.rangeSelector.inputFields.elements[d].title=
|
|
1073
|
+
"dateTime"===this.rangeSelector.inputFields.valueType?"YYYY-MM-DD":this.rangeSelector.inputFields.valueFormatString}this.rangeSelector.render();this.navigator&&this.navigator.slider&&(this.navigator.slider.hasOptionChanged("minimum")||this.navigator.slider.hasOptionChanged("maximum"))?this.rangeUpdatedBy="rangeButton"===l.minimum?"rangeButton":"navigator":this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("startValue")&&"navigator"!==l.minimum||this.rangeSelector.inputFields.enabled&&
|
|
1074
|
+
this.rangeSelector.inputFields.hasOptionChanged("endValue")&&"navigator"!==l.maximum?this.rangeUpdatedBy="rangeButton"===l.minimum?"rangeButton":"inputFields":this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")&&"rangeButton"===l.minimum&&(this.rangeUpdatedBy="rangeButton");"rangeButton"!==this.rangeUpdatedBy&&this.rangeSelector.resetRangeButtons()}if(g(this._axisXMin)||g(l.minimum))this._axisXMin=k;if(g(this._axisXMax)||g(l.maximum))this._axisXMax=q;if(g(this._initialAxisXMin)||g(l.minimum))this._initialAxisXMin=
|
|
1075
|
+
this._axisXMin;if(g(this._initialAxisXMax)||g(l.maximum))this._initialAxisXMax=this._axisXMax;y!==this._prevViewportMinimum&&(this._prevViewportMinimum=y,"chart"===l.minimum&&(this.sessionVariables._axisXMin=this._initialAxisXMin=this._axisXMin));B!==this._prevViewportMaximum&&(this._prevViewportMaximum=B,"chart"===l.maximum&&(this.sessionVariables._axisXMax=this._initialAxisXMax=this._axisXMax));this.rangeSelector.enabled&&this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")&&"navigator"!==
|
|
1076
|
+
l.minimum&&"inputFields"!==l.minimum?(this.sessionVariables._axisXMin=this._initialAxisXMin=this._axisXMin,this.sessionVariables._axisXMax=this._axisXMax,"rangeButton"===l.maximum&&(this._initialAxisXMax=this._axisXMax)):(this._axisXMin=g(this.sessionVariables._axisXMin)||this.navigator.enabled&&(!this.navigator.slider||this.navigator.slider.hasOptionChanged("minimum"))||this.rangeSelector.enabled&&"navigator"!==l.minimum&&this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("startValue")?
|
|
1077
|
+
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"!==l.maximum&&this.rangeSelector.inputFields.enabled&&this.rangeSelector.inputFields.hasOptionChanged("endValue")?this._axisXMax:this.sessionVariables._axisXMax);this.rangeSelector.enabled&&this.rangeSelector.hasOptionChanged("selectedRangeButtonIndex")&&(this.rangeSelector.sessionVariables.selectedRangeButtonIndex=
|
|
1078
1078
|
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=this.rangeSelector.inputFields.options.startValue,this.rangeSelector.inputFields.sessionVariables.startValue=this.rangeSelector.inputFields.options.startValue),
|
|
1079
1079
|
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=this.rangeSelector.inputFields.options.endValue));if(!g(D)){this.navigator.slider.hasOptionChanged("minimum")&&void 0!==this.navigator.slider.options.minimum&&
|
|
1080
1080
|
(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=this.navigator.slider.maximum=this.navigator.slider.options.maximum);if(this._initialAxisXMin<D.minimum||this._initialAxisXMin>D.maximum)this._initialAxisXMin=
|
|
1081
1081
|
isFinite(D.minimum)?D.minimum:this._initialAxisXMin;if(this._initialAxisXMax<D.minimum||this._initialAxisXMax>D.maximum)this._initialAxisXMax=isFinite(D.maximum)?D.maximum:this._initialAxisXMax;if(this._axisXMin<D.minimum||this._axisXMin>D.maximum)this._axisXMin=D.minimum;if(this._axisXMax<D.minimum||this._axisXMax>D.maximum)this._axisXMax=D.maximum;l&&(g(l.minimum)&&g(this.sessionVariables._axisXMin))&&(this._axisXMin=D.minimum);l&&(g(l.maximum)&&g(this.sessionVariables._axisXMax))&&(this._axisXMax=
|
|
1082
1082
|
D.maximum)}if(l&&g(l.minimum)&&g(l.maximum)||l&&("rangeButton"===l.minimum&&"rangeButton"===l.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=this._selectedRangeButtonIndex=d,l.minimum=l.maximum="rangeButton",this.rangeSelector.buttons[d].textBlock.fontWeight="bold",this.rangeSelector.buttons[d].textBlock.fontColor=
|
|
1083
|
-
this.rangeSelector.buttonStyle.labelFontColorOnHover,this.rangeSelector.buttons[d].textBlock.backgroundColor=this.rangeSelector.buttonStyle.backgroundColorOnSelect,this.rangeSelector.buttons[d].textBlock.measureText(),this.rangeSelector.buttons[d].textBlock.render(!0));!g(D)&&D.reversed?this._syncCharts(this._axisXMax,this._axisXMin):this._syncCharts(this._axisXMin,this._axisXMax)};
|
|
1083
|
+
this.rangeSelector.buttonStyle.labelFontColorOnHover,this.rangeSelector.buttons[d].textBlock.backgroundColor=this.rangeSelector.buttonStyle.backgroundColorOnSelect,this.rangeSelector.buttons[d].textBlock.measureText(),this.rangeSelector.buttons[d].textBlock.render(!0));!g(D)&&D.reversed?this._syncCharts(this._axisXMax,this._axisXMin):this._syncCharts(this._axisXMin,this._axisXMax)};v.prototype.setChartsLayout=function(){var d,g,m=0,l=this.width;this.isPlotAreaSet=this.isDateTime=!1;for(var a=0;a<
|
|
1084
1084
|
this.charts.length;a++){d=this.charts[a];d._initialize();d.setLayout();g={};if((d.axisX[0]||d.axisX2[0])&&(d.axisY[0]||d.axisY2[0])){var e=d.axisX[0]?d.axisX[0].lineCoordinates:d.axisX2[0].lineCoordinates;if(d.axisY&&0<d.axisY.length&&d.axisY[0]){var c=d.axisY[0];g.x1=e.x1<e.x2?e.x1:c.lineCoordinates.x1;g.x2=e.x2>c.lineCoordinates.x2?e.x2:c.lineCoordinates.x2}d.axisY2&&0<d.axisY2.length&&d.axisY2[0]&&(c=d.axisY2[0],g.x1=e.x1<e.x2?e.x1:c.lineCoordinates.x1,g.x2=e.x2>c.lineCoordinates.x2?e.x2:c.lineCoordinates.x2)}for(e=
|
|
1085
|
-
0;e<d.data.length;e++)"dateTime"===d.data[e].xValueType&&(this.isDateTime=!0);m=Math.max(m,g.x1);l=Math.min(l,g.x2);d.sessionVariables.plotAreaBounds=g}this._chartsPlotAreaX1=m;this._chartsPlotAreaX2=l};
|
|
1085
|
+
0;e<d.data.length;e++)"dateTime"===d.data[e].xValueType&&(this.isDateTime=!0);m=Math.max(m,g.x1);l=Math.min(l,g.x2);d.sessionVariables.plotAreaBounds=g}this._chartsPlotAreaX1=m;this._chartsPlotAreaX2=l};v.prototype._updateSize=function(){return ib.call(this,[this.canvas,this.overlaidCanvas])};v.prototype._syncCharts=function(d,t){for(var m=this,l=null,a=Math.min(d,t),e=Math.max(d,t),c=0;c<this.charts.length;c++){l=this.charts[c];l.toolTip&&((isNaN(l.toolTip._prevX)||isNaN(l.toolTip._prevY))&&g(l.toolTip._xValue))&&
|
|
1086
1086
|
l.toolTip.hide();for(var b=0;b<l.axisX.length;b++)l.axisX[b].setViewPortRange(d,t),l.axisX[b].options.labelAngle=g(l.axisX[b].options.labelAngle)?0:l.axisX[b].options.labelAngle,this.charts[c].axisX[b].crosshair&&this.charts[c].axisX[b].crosshair.enabled&&(this.charts[c].axisX[b].crosshair.options.updated||(this.charts[c].axisX[b].crosshair.options.updated=function(a){for(var b=0;b<m.charts.length;b++)if(m.charts[b]!=a.chart)for(var c=0;c<m.charts[b].axisX.length;c++)m.charts[b].axisX[c].crosshair&&
|
|
1087
1087
|
m.charts[b].axisX[c].crosshair.showAt(a.value)}),this.charts[c].axisX[b].crosshair.options.hidden||(this.charts[c].axisX[b].crosshair.options.hidden=function(a){for(var b=0;b<m.charts.length;b++)if(m.charts[b]!=a.chart)for(var c=0;c<m.charts[b].axisX.length;c++)m.charts[b].axisX[c].crosshair&&m.charts[b].axisX[c].crosshair.hide()}));for(b=0;b<l.axisX2.length;b++)l.axisX2[b].setViewPortRange(d,t),l.axisX2[b].options.labelAngle=g(l.axisX2[b].options.labelAngle)?0:l.axisX2[b].options.labelAngle,this.charts[c].axisX2[b].crosshair&&
|
|
1088
1088
|
this.charts[c].axisX2[b].crosshair.enabled&&(this.charts[c].axisX2[b].crosshair.options.updated||(this.charts[c].axisX2[b].crosshair.options.updated=function(a){for(var b=0;b<m.charts.length;b++)if(m.charts[b]!=a.chart)for(var c=0;c<m.charts[b].axisX2.length;c++)m.charts[b].axisX2[c].crosshair&&m.charts[b].axisX2[c].crosshair.showAt(a.value)}),this.charts[c].axisX2[b].crosshair.options.hidden||(this.charts[c].axisX2[b].crosshair.options.hidden=function(a){for(var b=0;b<m.charts.length;b++)if(m.charts[b]!=
|
|
1089
1089
|
a.chart)for(var c=0;c<m.charts[b].axisX2.length;c++)m.charts[b].axisX2[c].crosshair&&m.charts[b].axisX2[c].crosshair.hide()}));l._initialize();l.setLayout();l.panEnabled=l.options.zoomEnabled&&l.zoomEnabled?!1:!0;l.renderElements();(g(this.charts[c].options.toolTip)||!g(this.charts[c].options.toolTip)&&g(this.charts[c].options.toolTip.updated))&&this.charts[c].toolTip&&(this.charts[c].toolTip.updated=function(a){for(var b=0;b<m.charts.length;b++)m.charts[b]!=a.chart&&m.charts[b].toolTip.showAtX(a.entries[0].xValue,
|
|
1090
1090
|
a.entries[0].dataSeriesIndex)});(g(this.charts[c].options.toolTip)||!g(this.charts[c].options.toolTip)&&g(this.charts[c].options.toolTip.hidden))&&this.charts[c].toolTip&&(this.charts[c].toolTip.hidden=function(a){for(var b=0;b<m.charts.length;b++)m.charts[b]!=a.chart&&m.charts[b].toolTip.hide()})}this.rangeSelector&&(this.rangeSelector.enabled&&this.rangeSelector.inputFields&&this.rangeSelector.inputFields.enabled)&&this.rangeSelector._updateInputFields(a,e);this.navigator&&this.navigator.enabled&&
|
|
1091
|
-
this.navigator._updateSlider(a,e)};
|
|
1092
|
-
for(;this.container&&this.container.hasChildNodes();)this.container.removeChild(this.container.lastChild);this.container=this._canvasJSContainer=null;Ba(this.canvas);Ba(this.overlaidCanvas);this._eventManager&&this._eventManager.ghostCanvas&&Ba(this._eventManager.ghostCanvas);this.navigator.panel=null;this.rangeSelector.panel=null};
|
|
1091
|
+
this.navigator._updateSlider(a,e)};v.prototype.destroy=function(){for(var d=this.allDOMEventHandlers,g=0;g<this.charts.length;g++)this.charts[g].destroy();this.navigator&&this.navigator.enabled&&this.navigator.chart.destroy();for(g=0;g<d.length;g++)db(d[g][0],d[g][1],d[g][2],d[g][3]);for(this.allDOMEventHandlers=[];this.navigator&&this.navigator.enabled&&this.navigator.panel.hasChildNodes();)this.navigator.panel.removeChild(this.navigator.panel.lastChild);for(;this._canvasJSContainer&&this._canvasJSContainer.hasChildNodes();)this._canvasJSContainer.removeChild(this._canvasJSContainer.lastChild);
|
|
1092
|
+
for(;this.container&&this.container.hasChildNodes();)this.container.removeChild(this.container.lastChild);this.container=this._canvasJSContainer=null;Ba(this.canvas);Ba(this.overlaidCanvas);this._eventManager&&this._eventManager.ghostCanvas&&Ba(this._eventManager.ghostCanvas);this.navigator.panel=null;this.rangeSelector.panel=null};v.prototype.exportChart=function(d){d="undefined"===typeof d?{}:d;var g=d.format?d.format:"png",m=d.fileName?d.fileName:this.exportFileName,l=this.canvas.cloneNode();l.setAttribute("class",
|
|
1093
1093
|
l.getAttribute("class")+"-clone");var a=l.getContext("2d");a.drawImage(this.canvas,0,0);for(var e=[],c=0;c<this.charts.length;c++){var b=this.charts[c];e.push({canvas:b.canvas,position:{x:b.container.offsetLeft,y:b.container.offsetTop}});e.push({canvas:b.overlaidCanvas,position:{x:b.container.offsetLeft,y:b.container.offsetTop}})}this.navigator&&this.navigator.enabled&&(c=this.navigator,e.push({canvas:c.chart.canvas,position:{x:c.panel.offsetLeft,y:c.panel.offsetTop}}),e.push({canvas:c.chart.overlaidCanvas,
|
|
1094
|
-
position:{x:c.panel.offsetLeft,y:c.panel.offsetTop}}));for(c=0;c<e.length;c++)a.drawImage(e[c].canvas,e[c].position.x*la,e[c].position.y*la);if(d.toDataURL)return l.toDataURL("image/"+g);ab(l,g,m)};
|
|
1095
|
-
l=g.contentWindow||g.contentDocument.document||g.contentDocument;l.document.open();l.document.write('<!DOCTYPE HTML>\n<html><body><img src="'+d+'"/><body/></html>');l.document.body&&l.document.body.style&&(l.document.body.style.margin="0px 0px 0px 0px",l.document.body.style.padding="0px 0px 0px 0px");l.document.close();setTimeout(function(){l.focus();l.print();setTimeout(function(){m._canvasJSContainer.removeChild(g)},1E3)},500)};
|
|
1096
|
-
0;l<this.rangeSelector.buttons.length;l++){var a=this.rangeSelector.buttons[l];d>=a.bounds.x1&&(d<=a.bounds.x2&&t>=a.bounds.y1&&t<=a.bounds.y2)&&(m=a.id)}for(l=0;l<this.rangeSelector.inputFields._textBlocks.length;l++)a=this.rangeSelector.inputFields._textBlocks[l],d>=a.bounds.x1&&(d<=a.bounds.x2&&t>=a.bounds.y1&&t<=a.bounds.y2)&&(m=a.id)}return m};
|
|
1094
|
+
position:{x:c.panel.offsetLeft,y:c.panel.offsetTop}}));for(c=0;c<e.length;c++)a.drawImage(e[c].canvas,e[c].position.x*la,e[c].position.y*la);if(d.toDataURL)return l.toDataURL("image/"+g);ab(l,g,m)};v.prototype.print=function(){var d=this.exportChart({toDataURL:!0}),g=document.createElement("iframe");g.setAttribute("class","canvasjs-chart-print-frame");R(g,{position:"absolute",width:"100%",border:0,margin:0,padding:0});g.style.height=this.height+"px";this._canvasJSContainer.appendChild(g);var m=this,
|
|
1095
|
+
l=g.contentWindow||g.contentDocument.document||g.contentDocument;l.document.open();l.document.write('<!DOCTYPE HTML>\n<html><body><img src="'+d+'"/><body/></html>');l.document.body&&l.document.body.style&&(l.document.body.style.margin="0px 0px 0px 0px",l.document.body.style.padding="0px 0px 0px 0px");l.document.close();setTimeout(function(){l.focus();l.print();setTimeout(function(){m._canvasJSContainer.removeChild(g)},1E3)},500)};v.prototype.getObjectAtXY=function(d,t,m){m=null;if(!g(this.rangeSelector)){for(var l=
|
|
1096
|
+
0;l<this.rangeSelector.buttons.length;l++){var a=this.rangeSelector.buttons[l];d>=a.bounds.x1&&(d<=a.bounds.x2&&t>=a.bounds.y1&&t<=a.bounds.y2)&&(m=a.id)}for(l=0;l<this.rangeSelector.inputFields._textBlocks.length;l++)a=this.rangeSelector.inputFields._textBlocks[l],d>=a.bounds.x1&&(d<=a.bounds.x2&&t>=a.bounds.y1&&t<=a.bounds.y2)&&(m=a.id)}return m};v.prototype._touchEventHandler=function(d){if(d.changedTouches){var t=[],m=d.changedTouches,l=m?m[0]:d,a=null;switch(d.type){case "touchstart":case "MSPointerDown":t=
|
|
1097
1097
|
["mousemove","mousedown"];this._lastTouchData=za(l);this._lastTouchData.time=new Date;break;case "touchmove":case "MSPointerMove":t=["mousemove"];break;case "touchend":case "MSPointerUp":var e=this._lastTouchData&&this._lastTouchData.time?new Date-this._lastTouchData.time:0,t="touchstart"===this._lastTouchEventType||"MSPointerDown"===this._lastTouchEventType||300>e?["mouseup","click"]:["mouseup"];break;default:return}if(!(m&&1<m.length)){a=za(l);a.time=new Date;try{var c=a.y-this._lastTouchData.y,
|
|
1098
1098
|
e=a.time-this._lastTouchData.time;if(1<Math.abs(c)&&this._lastTouchData.scroll||5<Math.abs(c)&&250>e)this._lastTouchData.scroll=!0}catch(b){}this._lastTouchEventType=d.type;if(this._lastTouchData&&this._lastTouchData.scroll)this.isDrag&&this.resetOverlayedCanvas(),this.isDrag=!1;else for(m=0;m<t.length;m++){a=t[m];c=document.createEvent("MouseEvent");c.initMouseEvent(a,!0,!0,window,1,l.screenX,l.screenY,l.clientX,l.clientY,!1,!1,!1,!1,0,null);l.target.dispatchEvent(c);if(this._lastTouchData&&!g(this._lastTouchData.scroll)&&
|
|
1099
|
-
!this._lastTouchData.scroll||this._lastTouchData&&!this._lastTouchData.scroll&&250<e&&g(this._chartScroll)||"click"===a)d.preventManipulation&&d.preventManipulation(),d.preventDefault&&d.cancelable&&d.preventDefault();this._chartScroll=null}}}};
|
|
1100
|
-
null,l.stockChart.overlaidCanvas.releaseCapture?l.stockChart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",l.stockChart._mouseEventHandler,!1)),l.hasOwnProperty(m)&&("mouseup"!==m||l.stockChart.overlaidCanvas.releaseCapture?d.target!==l.stockChart.overlaidCanvas&&
|
|
1101
|
-
d.preventDefault&&d.preventDefault(),Ja&&window.console&&(window.console.log(m+" --\x3e x: "+g.x+"; y:"+g.y),a&&window.console.log(d.which),"mouseup"===m&&window.console.log("mouseup")),!a){if(!
|
|
1099
|
+
!this._lastTouchData.scroll||this._lastTouchData&&!this._lastTouchData.scroll&&250<e&&g(this._chartScroll)||"click"===a)d.preventManipulation&&d.preventManipulation(),d.preventDefault&&d.cancelable&&d.preventDefault();this._chartScroll=null}}}};v.prototype._mouseEventHandler=function(d){"undefined"===typeof d.target&&d.srcElement&&(d.target=d.srcElement);var g=za(d),m=d.type,l,a;d.which?a=3==d.which:d.button&&(a=2==d.button);v.capturedEventParam&&(l=v.capturedEventParam,"mouseup"===m&&(v.capturedEventParam=
|
|
1100
|
+
null,l.stockChart.overlaidCanvas.releaseCapture?l.stockChart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",l.stockChart._mouseEventHandler,!1)),l.hasOwnProperty(m)&&("mouseup"!==m||l.stockChart.overlaidCanvas.releaseCapture?d.target!==l.stockChart.overlaidCanvas&&w||l[m].call(l.context,g.x,g.y):d.target!==l.stockChart.overlaidCanvas&&(l.stockChart.isDrag=!1)));if(this._ignoreNextEvent)this._ignoreNextEvent=!1;else if(d.preventManipulation&&d.preventManipulation(),
|
|
1101
|
+
d.preventDefault&&d.preventDefault(),Ja&&window.console&&(window.console.log(m+" --\x3e x: "+g.x+"; y:"+g.y),a&&window.console.log(d.which),"mouseup"===m&&window.console.log("mouseup")),!a){if(!v.capturedEventParam&&this._events){for(var e=0;e<this._events.length;e++)if(this._events[e].hasOwnProperty(m))if(l=this._events[e],a=l.bounds,g.x>=a.x1&&g.x<=a.x2&&g.y>=a.y1&&g.y<=a.y2){l[m].call(l.context,g.x,g.y);"mousedown"===m&&!0===l.capture?(Chart.capturedEventParam=l,this.overlaidCanvas.setCapture?
|
|
1102
1102
|
this.overlaidCanvas.setCapture():document.documentElement.addEventListener("mouseup",this._mouseEventHandler,!1)):"mouseup"===m&&(l.stockChart.overlaidCanvas.releaseCapture?l.stockChart.overlaidCanvas.releaseCapture():document.documentElement.removeEventListener("mouseup",this._mouseEventHandler,!1));break}else l=null;d.target.style.cursor=l&&l.cursor?l.cursor:this._defaultCursor}m=this.bounds;(g.x<m.x1||g.x>m.x2||g.y<m.y1||g.y>m.y2)&&this.resetOverlayedCanvas();!this.isDrag&&this._eventManager&&
|
|
1103
|
-
this._eventManager.mouseEventHandler(d)}};
|
|
1103
|
+
this._eventManager.mouseEventHandler(d)}};v.prototype.resetOverlayedCanvas=function(){this.overlaidCanvasCtx.clearRect(0,0,this.width,this.height)};v.prototype.clearCanvas=jb;v.prototype.getAutoFontSize=kb;ga(O,Fa);ga(B,Ka);Ha.prototype.alignVerticalAxes=function(){if(!this.isNavigator&&this.stockChart){for(var d=this.sessionVariables.plotAreaBounds,g=this.stockChart._chartsPlotAreaX1-d.x1,d=d.x2-this.stockChart._chartsPlotAreaX2,m=0;m<this.axisX.length;m++)this.axisX[m].lineCoordinates.x1+=g,this.axisX[m].lineCoordinates.x2-=
|
|
1104
1104
|
d,this.axisX[m].lineCoordinates.width=this.axisX[m].lineCoordinates.x2-this.axisX[m].lineCoordinates.x1,this.axisX[m].bounds.x1+=g,this.axisX[m].bounds.x2-=d,this.axisX[m].calculateValueToPixelConversionParameters();for(m=0;m<this.axisX2.length;m++)this.axisX2[m].lineCoordinates.x1+=g,this.axisX2[m].lineCoordinates.x2-=d,this.axisX2[m].lineCoordinates.width=this.axisX2[m].lineCoordinates.x2-this.axisX2[m].lineCoordinates.x1,this.axisX2[m].bounds.x1+=g,this.axisX2[m].bounds.x2-=d,this.axisX2[m].calculateValueToPixelConversionParameters();
|
|
1105
1105
|
for(m=0;m<this.axisY.length;m++)this.axisY[m].lineCoordinates.x1+=g,this.axisY[m].lineCoordinates.x2+=g,this.axisY[m].bounds.x1+=g,this.axisY[m].bounds.x2+=g;for(m=0;m<this.axisY2.length;m++)this.axisY2[m].lineCoordinates.x1-=d,this.axisY2[m].lineCoordinates.x2-=d,this.axisY2[m].bounds.x1-=d,this.axisY2[m].bounds.x2-=d}};Ha.prototype.syncCharts=function(d,m){this.stockChart&&(this.stockChart.sessionVariables._axisXMin=d,this.stockChart.sessionVariables._axisXMax=m,d=g(d)?this.stockChart._initialAxisXMin:
|
|
1106
|
-
d,m=g(m)?this.stockChart._initialAxisXMax:m,this.stockChart._syncCharts(d,m),this.stockChart.rangeSelector&&"zoom"!==this._zoomButton.getAttribute("state")&&this.stockChart.rangeSelector.resetRangeButtons())};D.prototype.reset=function(){this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=[];this.eventObjects=[];
|
|
1106
|
+
d,m=g(m)?this.stockChart._initialAxisXMax:m,this.stockChart._syncCharts(d,m),this.stockChart.rangeSelector&&"zoom"!==this._zoomButton.getAttribute("state")&&this.stockChart.rangeSelector.resetRangeButtons())};D.prototype.reset=function(){this.lastObjectId=0;this.objectMap=[];this.rectangularRegionEventSubscriptions=[];this.eventObjects=[];w&&(this.ghostCtx.clearRect(0,0,this.stockChart.width,this.stockChart.height),this.ghostCtx.beginPath())};D.prototype.getNewObjectTrackingId=function(){return++this.lastObjectId};
|
|
1107
1107
|
D.prototype.mouseEventHandler=function(d){if("mousemove"===d.type||"click"===d.type){var g=[],m=za(d),l=null;if((l=this.stockChart.getObjectAtXY(m.x,m.y,!1))&&"undefined"!==typeof this.objectMap[l])if(l=this.objectMap[l],"rangeButton"===l.objectType){var a=this.stockChart.rangeSelector.buttons[l.rangeButtonIndex];l.eventParameter={x:m.x,y:m.y,rangeButton:a,rangeButtonIndex:l.rangeButtonIndex,stockChart:this.stockChart};l.eventContext={context:this.stockChart.rangeSelector,userContext:a,mouseover:"mouseover",
|
|
1108
1108
|
mousemove:"mousemove",mouseout:"mouseout",click:"click"};g.push(l)}else"inputFields"===l.objectType&&(a=this.stockChart.rangeSelector.inputFields._textBlocks[l.inputFieldIndex],l.eventParameter={x:m.x,y:m.y,inputField:a,inputFieldIndex:l.inputFieldIndex,stockChart:this.stockChart},l.eventContext={context:this.stockChart.rangeSelector,userContext:a,mouseover:"mouseover",mousemove:"mousemove",mouseout:"mouseout",click:"click"},g.push(l));a=[];for(m=0;m<this.mouseoveredObjectMaps.length;m++){for(var e=
|
|
1109
1109
|
!0,l=0;l<g.length;l++)if(g[l].id===this.mouseoveredObjectMaps[m].id){e=!1;break}e?this.fireEvent(this.mouseoveredObjectMaps[m],"mouseout",d):a.push(this.mouseoveredObjectMaps[m])}this.mouseoveredObjectMaps=a;for(m=0;m<g.length;m++){a=!1;for(l=0;l<this.mouseoveredObjectMaps.length;l++)if(g[m].id===this.mouseoveredObjectMaps[l].id){a=!0;break}a||(this.fireEvent(g[m],"mouseover",d),this.mouseoveredObjectMaps.push(g[m]));"click"===d.type?this.fireEvent(g[m],"click",d):"mousemove"===d.type&&this.fireEvent(g[m],
|
|
1110
1110
|
"mousemove",d)}}};D.prototype.fireEvent=function(d,g,m){if(d&&g){var l=d.eventParameter,a=d.eventContext,e=d.eventContext.userContext;e&&(a&&e[a[g]])&&e[a[g]].call(e,l);"mouseout"!==g?e.cursor&&e.cursor!==m.target.style.cursor&&(m.target.style.cursor=e.cursor):(m.target.style.cursor=this.stockChart._defaultCursor,delete d.eventParameter,delete d.eventContext)}};ga(y,aa);y.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("backgroundColor");"undefined"===typeof this.options.backgroundColor&&
|
|
1111
|
-
"undefined"!==typeof this.stockChart.options.backgroundColor&&(this.backgroundColor=this.stockChart.backgroundColor);this.backgroundColor||(this.backgroundColor="rgba(0, 0, 0, 0)");this.updateOption("animationEnabled");this.animationEnabled=this.animationEnabled&&
|
|
1111
|
+
"undefined"!==typeof this.stockChart.options.backgroundColor&&(this.backgroundColor=this.stockChart.backgroundColor);this.backgroundColor||(this.backgroundColor="rgba(0, 0, 0, 0)");this.updateOption("animationEnabled");this.animationEnabled=this.animationEnabled&&w;this.updateOption("animationDuration");this.updateOption("theme");this.updateOption("verticalAlign");this.updateOption("horizontalAlign");this.updateOption("width");this.updateOption("height");this.updateOption("dynamicUpdate")};y.prototype._initialize=
|
|
1112
1112
|
function(){this.options=this.stockChart.options.navigator||{_isPlaceholder:!0};this._updateOptions();var d;this.enabled&&!this.panel&&(this.panel=m("canvasjs-navigator-panel"),(d=!g(this.panel)&&this.stockChart._canvasJSContainer.contains(this.panel))||this.stockChart._canvasJSContainer.appendChild(this.panel));d=!g(this.panel)&&this.stockChart._canvasJSContainer.contains(this.panel);if(!this.enabled||0>=this.height)d&&this.stockChart._canvasJSContainer.removeChild(this.panel);else{this.height=g(this.options.height)?
|
|
1113
1113
|
0.14*this.stockChart.height:parseInt(this.options.height);d||this.stockChart._canvasJSContainer.appendChild(this.panel);var t=this.stockChart.layoutManager.getFreeSpace(),q=t.x1,l=t.y1;this.width=this.options.width?this.width:t.width;"top"===this.verticalAlign?(l=t.y1+2,d="top"):(l=t.y2-this.height-2,d="bottom");"left"===this.horizontalAlign?q=t.x1-2:"center"===this.horizontalAlign?q=t.x1+t.width/2-this.width/2:"right"===this.horizontalAlign&&(q=t.x2-2-this.width);this.panel.style.top=l+"px";this.panel.style.left=
|
|
1114
1114
|
q+"px";this.panel.style.height=this.height+"px";this.panel.style.width=this.width+"px";this.stockChart.layoutManager.registerSpace(d,{width:this.width,height:this.height+2});this.bounds={x1:q,y1:l,x2:q+this.width,y2:l+this.height}}};y.prototype._updateSlider=function(d,m){if(!(0>=this.height)&&this.enabled){var q=this.chart.axisX&&this.chart.axisX.length?this.chart.axisX[0]:this.chart.axisX2[0];if(!g(q)){var l=Math.min(q.bounds.x2,Math.max(q.bounds.x1,q.convertValueToPixel(q.reversed?Math.max(d,Math.min(q.maximum,
|
|
@@ -1156,7 +1156,7 @@ this.width:q.width;g(this.buttonStyle.options.labelFontSize)&&(this.buttonStyle.
|
|
|
1156
1156
|
(this.stockChart.subtitles[m].text&&("top"===this.stockChart.subtitles[m].verticalAlign||"right"===this.stockChart.subtitles[m].horizontalAlign&&"center"===this.stockChart.subtitles[m].verticalAlign&&this.stockChart.exportEnabled))&&(this._shiftInputField=!1);this.stockChart.navigator.enabled&&"top"===this.stockChart.navigator.verticalAlign&&(this._shiftInputField=!1);this.rangeButtonsWidth=0;if(this.buttons&&0<this.buttons.length){var a=new ma(this.ctx,{x:0,y:0,backgroundColor:this.stockChart.backgroundColor,
|
|
1157
1157
|
borderThickness:0,cornerRadius:0,maxWidth:0.2*this.stockChart.width,maxHeight:2*this.buttonStyle.labelFontSize,angle:0,padding:{left:5,right:5,top:2,bottom:2},text:g(this.stockChart.options.culture)||g(this.stockChart._cultureInfo.rangeSelector.rangeText)?this.label:this.stockChart._cultureInfo.rangeSelector.rangeText,textAlign:"left",fontSize:this.buttonStyle.labelFontSize,fontFamily:this.buttonStyle.labelFontFamily,fontWeight:this.buttonStyle.labelFontWeight,fontColor:this.buttonStyle.labelFontColor,
|
|
1158
1158
|
fontStyle:this.buttonStyle.labelFontStyle,textBaseline:"middle"});this._label.textBlock=a;d=this._label.textBlock.measureText().height}g(this.buttonStyle.options.maxWidth)&&(this.buttonStyle.maxWidth=(this.width-(this._label&&this._label.textBlock?this._label.textBlock.measureText().width:0))/this.buttons.length-2);for(m=0;m<this.buttons.length;m++){var e=this.buttons[m];e._index=m;a=new ma(this.ctx,{x:0,y:0,backgroundColor:this.buttonStyle.backgroundColor,borderColor:this.buttonStyle.borderColor,
|
|
1159
|
-
borderThickness:this.buttonStyle.borderThickness,cornerRadius:0,maxWidth:this.buttonStyle.options.width?this.buttonStyle.width<this.buttonStyle.maxWidth?this.buttonStyle.width:this.buttonStyle.maxWidth:this.buttonStyle.maxWidth,maxHeight:2*this.buttonStyle.labelFontSize,angle:0,padding:this.buttonStyle.padding,text:this.options.buttons&&this.options.buttons.length?g(e.label)?"":e.label:this.buttonLabels[m],textAlign:
|
|
1159
|
+
borderThickness:this.buttonStyle.borderThickness,cornerRadius:0,maxWidth:this.buttonStyle.options.width?this.buttonStyle.width<this.buttonStyle.maxWidth?this.buttonStyle.width:this.buttonStyle.maxWidth:this.buttonStyle.maxWidth,maxHeight:2*this.buttonStyle.labelFontSize,angle:0,padding:this.buttonStyle.padding,text:this.options.buttons&&this.options.buttons.length?g(e.label)?"":e.label:this.buttonLabels[m],textAlign:this.buttonStyle.labelTextAlign,fontSize:this.buttonStyle.labelFontSize,fontFamily:this.buttonStyle.labelFontFamily,
|
|
1160
1160
|
fontWeight:this.buttonStyle.labelFontWeight,fontColor:this.buttonStyle.labelFontColor,fontStyle:this.buttonStyle.labelFontStyle,textBaseline:"middle"});!g(this.selectedRangeButtonIndex)&&this.selectedRangeButtonIndex===m&&this.hasOptionChanged("selectedRangeButtonIndex")?e.state="on":this.hasOptionChanged("selectedRangeButtonIndex")||"rangeButton"!==this.stockChart.rangeUpdatedBy||this.sessionVariables._clickedRangeButtonIndex!==m?e.state="off":e.state="on";e.textBlock=a;e.bounds={x1:null,x2:null,
|
|
1161
1161
|
y1:null,y2:null,width:null,height:null};a.measureText();this.buttonStyle.width=a.width=Math.min(g(this.buttonStyle.options.width)?a.width:this.buttonStyle.options.width,a.maxWidth);this.rangeButtonsWidth+=a.width+this.buttonStyle.spacing;this.rangeButtonsHeight=a.height;d=d<a.height?a.height:d;e=this.buttons[m];e.id=++this.stockChart._eventManager.lastObjectId;this.stockChart._eventManager.objectMap[e.id]={id:e.id,objectType:"rangeButton",rangeButtonIndex:m}}this.height=parseFloat(this.options.height);
|
|
1162
1162
|
if(g(this.options.height)||isNaN(this.height)||0>this.options.height){if(isNaN(this.height)||0>this.options.height)this.height=0;this.height<this.inputFieldsHeight+this.inputFields.style.borderThickness+5&&(this.height=this.inputFieldsHeight+this.inputFields.style.borderThickness+5);this.height<d+this.buttonStyle.borderThickness+5&&(this.height=d+this.buttonStyle.borderThickness+5)}this._label&&(this._label.textBlock&&this.rangeButtonsWidth&&this.inputFieldsWidth)&&this.rangeButtonsWidth+this._label.textBlock.measureText().width+
|
|
@@ -1169,19 +1169,19 @@ g.textBlock.x=g.bounds.x1=1===g.textBlock.borderThickness%2?(m<<0)+0.5:m,g.bound
|
|
|
1169
1169
|
g.bounds.y1,m=l+this.buttonStyle.spacing,g.textBlock.maxWidth=this.buttonStyle.maxWidth};S.prototype.resetRangeButtons=function(){for(var d=0;d<this.buttons.length;d++)this.buttons[d].enabled&&(this.buttons[d].state="off",this.buttons[d].textBlock.backgroundColor=this.buttonStyle.backgroundColor,this.buttons[d].textBlock.fontColor=this.buttonStyle.labelFontColor,this.buttons[d].textBlock.fontWeight=this.buttonStyle.labelFontWeight,this.buttons[d].textBlock.measureText(),this.buttons[d].textBlock.render(!0))};
|
|
1170
1170
|
S.prototype.renderInputFields=function(){this.inputFields._textBlocks[0].text="dateTime"===this.inputFields.valueType&&isFinite(this.inputFields.startValue)?qa(this.inputFields.startValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo):Y(this.inputFields.startValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo);this.inputFields._textBlocks[1].text="dateTime"===this.inputFields.valueType&&isFinite(this.inputFields.endValue)?qa(this.inputFields.endValue,this.inputFields.valueFormatString,
|
|
1171
1171
|
this.stockChart._cultureInfo):Y(this.inputFields.endValue,this.inputFields.valueFormatString,this.stockChart._cultureInfo);this.inputFields._labels[0].text=g(this.stockChart._cultureInfo.rangeSelector.fromText)?"From":this.stockChart._cultureInfo.rangeSelector.fromText;this.inputFields._labels[1].text=g(this.stockChart._cultureInfo.rangeSelector.toText)?"To":this.stockChart._cultureInfo.rangeSelector.toText;for(var d=0,m=this.inputFields._textBlocks.length-1;0<=m;m--){var q=this.inputFields._textBlocks[m],
|
|
1172
|
-
l=q.measureText();""!==q.text&&(q._width=this.inputFields.style.options.width?this.inputFields.style.width:this.inputFields.style.width=Math.abs(l.width-q._width)<=("dateTime"===this.inputFields.valueType?
|
|
1173
|
-
(this.stockChart.exportEnabled&&this._shiftInputField?40:0),q.bounds.x2=q.bounds.x1+q._width,d+=this.inputFields._labels[m].measureText().width,this.inputFields._labels[m].x=this.inputFields._labels[m].bounds.x1=this.bounds.x2-d-(this.stockChart.exportEnabled&&this._shiftInputField?40:0),this.inputFields._labels[m].bounds.x2=this.inputFields._labels[m].bounds.x1+this.inputFields._labels[m].measureText().width,this.inputFields.style.width=q.width=
|
|
1174
|
-
this.bounds.y1+this.rangeButtonsHeight+8:this.bounds.y1)+(q.height-q.topPadding-q.bottomPadding+q.borderThickness)/2<<0.5:(this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+8:this.bounds.y1)+(q.height-q.topPadding-q.bottomPadding+q.borderThickness)/2)+2,this.inputFields._labels[m].y=(this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+8:this.bounds.y1)+(q.height-q.topPadding-q.bottomPadding+q.borderThickness)/2+2,q.bounds.y1=
|
|
1175
|
-
q.bounds.y2=this.inputFields._labels[m].bounds.y2=q.bounds.y1+l.height,l=g(this.inputFields.style.padding)||this.inputFields.style.options.width&&this.inputFields.style.width>=this.inputFields.style.options.width?0:isNaN(this.inputFields.style.padding)?(this.inputFields.style.padding.left||0)+(this.inputFields.style.padding.right||0):2*this.inputFields.style.padding,this.inputFields.elements[m].style.top=q.y-q._lineHeight/2+"px",this.inputFields.elements[m].style.left=
|
|
1176
|
-
2+"px",this.inputFields.elements[m].style.width=this.inputFields.style.width-this.inputFields.style.borderThickness-l+"px",0===l&&(this.inputFields.elements[m].style.paddingLeft=0,this.inputFields.elements[m].style.paddingRight=0),this.inputFields._labels[m].render(!0),q.render(!0))}};S.prototype._updateInputFields=function(d,g){!this.inputFields.elements[0].focused&&isFinite(d)&&(this.inputFields.elements[0].value="dateTime"===this.inputFields.valueType?qa(d,"YYYY-MM-DD"):
|
|
1177
|
-
|
|
1178
|
-
this.updateOption("rangeType")};P.prototype._initialize=function(d){this._updateOptions();var m="1m 3m 6m YTD 1y All".split(" "),q=[1,3,6,null,1,null],l="month month month ytd year all".split(" ");this.range="undefined"!==typeof this.options.range?this.range:g(q[d])?null:q[d];this.rangeType="undefined"!==typeof this.options.rangeType?this.rangeType:l[d];this.label=this.textBlock.text=g(this.options.label)?m[d]:this.label};P.prototype.render=function(){this.textBlock.render(!0)};
|
|
1179
|
-
function(){this.updateOption("enabled");this.updateOption("startValue");this.updateOption("endValue");this.updateOption("valueType");this.updateOption("valueFormatString")};U.prototype._initialize=function(){this._updateOptions();g(this.style.options.fontSize)&&(this.style.fontSize=this.stockChart.getAutoFontSize(this.style.fontSize));if(!g(this.elements))for(var d=0;d<this.elements.length;d++)this.elements[d].style.position="absolute",this.elements[d].style.display=
|
|
1180
|
-
0;d<this.elements.length;d++)this.elements[d].style.position="absolute",this.elements[d].style.display=this.elements[d].focused?"inline":"none",this.elements[d].style.backgroundColor="transparent",this.elements[d].style.border="none",this.elements[d].style.outline="none",this.elements[d].style.outlineOffset=0,this.elements[d].style.textAlign="center",this.elements[d].style.color=this.style.fontColor,this.elements[d].style.fontSize=this.elements[d].style.height=this.style.fontSize+
|
|
1181
|
-
this.style.fontStyle,this.elements[d].style.fontFamily=this.style.fontFamily,this.elements[d].style.fontWeight=this.style.fontWeight,this.elements[d].style.lineHeight=1,isNaN(this.style.padding)?(this.elements[d].style.paddingTop=(this.style.padding.top||0)+"px",this.elements[d].style.paddingRight=(this.style.padding.right||0)+"px",this.elements[d].style.paddingBottom=(this.style.padding.bottom||0)+"px",this.elements[d].style.paddingLeft=(this.style.padding.left||
|
|
1182
|
-
this.style.padding+"px",this.elements[d].style.mozAppearance=this.elements[d].style.webkitAppearance=this.elements[d].style.appearance="none",this.elements[d].style.webkitBorderRadius=0,this.elements[d].style.mozBorderRadius=0,this.elements[d].style.borderRadius=0,this.elements[d].style.boxSizing="content-box";this.parent=this.rangeSelector=this.stockChart.rangeSelector}};ga(V,aa);V.prototype._updateOptions=function(){this.updateOption("backgroundColor");this.updateOption("backgroundColorOnHover");
|
|
1172
|
+
l=q.measureText();""!==q.text&&(q._width=this.inputFields.style.options.width?this.inputFields.style.width:this.inputFields.style.width=Math.abs(l.width-q._width)<=("dateTime"===this.inputFields.valueType?q.leftPadding+q.rightPadding:(q.leftPadding+q.rightPadding)/2)?q._width:l.width+q.leftPadding+q.rightPadding,q._width>this.inputFields.style.maxWidth&&(q._width=this.inputFields.style.maxWidth),d+=q._width+this.inputFields.style.spacing,q.x=q.bounds.x1=1===q.borderThickness%2?(this.bounds.x2-d-(this.stockChart.exportEnabled&&
|
|
1173
|
+
this._shiftInputField?40:0)<<0)+0.5:this.bounds.x2-d-(this.stockChart.exportEnabled&&this._shiftInputField?40:0),q.bounds.x2=q.bounds.x1+q._width,d+=this.inputFields._labels[m].measureText().width+2,this.inputFields._labels[m].x=this.inputFields._labels[m].bounds.x1=this.bounds.x2-d-(this.stockChart.exportEnabled&&this._shiftInputField?40:0),this.inputFields._labels[m].bounds.x2=this.inputFields._labels[m].bounds.x1+this.inputFields._labels[m].measureText().width,this.inputFields.style.width=q.width=
|
|
1174
|
+
q._width,q.y=(1===q.borderThickness%2?(this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+8:this.bounds.y1)+(q.height-q.topPadding-q.bottomPadding+q.borderThickness)/2<<0.5:(this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+8:this.bounds.y1)+(q.height-q.topPadding-q.bottomPadding+q.borderThickness)/2)+2,this.inputFields._labels[m].y=(this._wrapElements?this.bounds.y1+this.rangeButtonsHeight+8:this.bounds.y1)+(q.height-q.topPadding-q.bottomPadding+q.borderThickness)/2+2,q.bounds.y1=
|
|
1175
|
+
this.inputFields._labels[m].bounds.y1=q.y-q._lineHeight/2,q.bounds.y2=this.inputFields._labels[m].bounds.y2=q.bounds.y1+l.height,l=g(this.inputFields.style.padding)||this.inputFields.style.options.width&&this.inputFields.style.width>=this.inputFields.style.options.width?0:isNaN(this.inputFields.style.padding)?(this.inputFields.style.padding.left||0)+(this.inputFields.style.padding.right||0):2*this.inputFields.style.padding,this.inputFields.elements[m].style.top=q.y-q._lineHeight/2+"px",this.inputFields.elements[m].style.left=
|
|
1176
|
+
q.bounds.x1+q.borderThickness/2+"px",this.inputFields.elements[m].style.width=this.inputFields.style.width-this.inputFields.style.borderThickness-l+"px",0===l&&(this.inputFields.elements[m].style.paddingLeft=0,this.inputFields.elements[m].style.paddingRight=0),this.inputFields._labels[m].render(!0),q.render(!0))}};S.prototype._updateInputFields=function(d,g){!this.inputFields.elements[0].focused&&isFinite(d)&&(this.inputFields.elements[0].value="dateTime"===this.inputFields.valueType?qa(d,"YYYY-MM-DD"):
|
|
1177
|
+
Y(d,this.inputFields.valueFormatString));!this.inputFields.elements[1].focused&&isFinite(g)&&(this.inputFields.elements[1].value="dateTime"===this.inputFields.valueType?qa(g,"YYYY-MM-DD"):Y(g,this.inputFields.valueFormatString));for(var m=0;m<this.inputFields.elements.length;m++)this.inputFields.elements[m].focused&&this.inputFields.elements[m].focus();this.inputFields.startValue=d;this.inputFields.endValue=g;this.render()};ga(P,aa);P.prototype._updateOptions=function(){this.updateOption("style");
|
|
1178
|
+
this.updateOption("label");this.updateOption("range");this.updateOption("rangeType")};P.prototype._initialize=function(d){this._updateOptions();var m="1m 3m 6m YTD 1y All".split(" "),q=[1,3,6,null,1,null],l="month month month ytd year all".split(" ");this.range="undefined"!==typeof this.options.range?this.range:g(q[d])?null:q[d];this.rangeType="undefined"!==typeof this.options.rangeType?this.rangeType:l[d];this.label=this.textBlock.text=g(this.options.label)?m[d]:this.label};P.prototype.render=function(){this.textBlock.render(!0)};
|
|
1179
|
+
ga(U,aa);U.prototype._updateOptions=function(){this.updateOption("enabled");this.updateOption("startValue");this.updateOption("endValue");this.updateOption("valueType");this.updateOption("valueFormatString")};U.prototype._initialize=function(){this._updateOptions();g(this.style.options.fontSize)&&(this.style.fontSize=this.stockChart.getAutoFontSize(this.style.fontSize));if(!g(this.elements))for(var d=0;d<this.elements.length;d++)this.elements[d].style.position="absolute",this.elements[d].style.display=
|
|
1180
|
+
"none";if(this.enabled){for(d=0;d<this.elements.length;d++)this.elements[d].style.position="absolute",this.elements[d].style.display=this.elements[d].focused?"inline":"none",this.elements[d].style.backgroundColor="transparent",this.elements[d].style.border="none",this.elements[d].style.outline="none",this.elements[d].style.outlineOffset=0,this.elements[d].style.textAlign="center",this.elements[d].style.color=this.style.fontColor,this.elements[d].style.fontSize=this.elements[d].style.height=this.style.fontSize+
|
|
1181
|
+
"px",this.elements[d].style.fontStyle=this.style.fontStyle,this.elements[d].style.fontFamily=this.style.fontFamily,this.elements[d].style.fontWeight=this.style.fontWeight,this.elements[d].style.lineHeight=1,isNaN(this.style.padding)?(this.elements[d].style.paddingTop=(this.style.padding.top||0)+"px",this.elements[d].style.paddingRight=(this.style.padding.right||0)+"px",this.elements[d].style.paddingBottom=(this.style.padding.bottom||0)+"px",this.elements[d].style.paddingLeft=(this.style.padding.left||
|
|
1182
|
+
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}};ga(V,aa);V.prototype._updateOptions=function(){this.updateOption("backgroundColor");this.updateOption("backgroundColorOnHover");
|
|
1183
1183
|
this.updateOption("backgroundColorOnSelect");this.updateOption("borderColor");this.updateOption("borderThickness");this.updateOption("labelFontColor");this.updateOption("labelFontColorOnHover");this.updateOption("labelFontSize");this.updateOption("labelFontStyle");this.updateOption("labelFontFamily");this.updateOption("labelFontWeight");this.updateOption("width");this.updateOption("maxWidth");this.updateOption("padding");this.updateOption("spacing");this.updateOption("cursor")};ga(W,aa);W.prototype._updateOptions=
|
|
1184
|
-
function(){this.updateOption("backgroundColor");this.updateOption("borderColor");this.updateOption("borderThickness");this.updateOption("borderColorOnFocus");this.updateOption("fontColor");this.updateOption("fontSize");this.updateOption("fontStyle");this.updateOption("fontFamily");this.updateOption("fontWeight");this.updateOption("width");this.updateOption("maxWidth");this.updateOption("padding");this.updateOption("spacing");this.updateOption("cursor")};return
|
|
1184
|
+
function(){this.updateOption("backgroundColor");this.updateOption("borderColor");this.updateOption("borderThickness");this.updateOption("borderColorOnFocus");this.updateOption("fontColor");this.updateOption("fontSize");this.updateOption("fontStyle");this.updateOption("fontFamily");this.updateOption("fontWeight");this.updateOption("width");this.updateOption("maxWidth");this.updateOption("padding");this.updateOption("spacing");this.updateOption("cursor")};return v}();V.version="v1.12.0 GA";window.CanvasJS&&
|
|
1185
1185
|
(V&&(!window.CanvasJS.StockChart&&window.CanvasJS.Chart)&&(window.CanvasJS.StockChart=V),V&&!window.CanvasJS.Chart&&(window.CanvasJS.Chart=Ha,window.CanvasJS.StockChart=V))})();
|
|
1186
1186
|
|
|
1187
1187
|
/*
|