/* jQWidgets v3.1.0 (2013-Dec-23) Copyright (c) 2011-2014 jQWidgets. License: http://jqwidgets.com/license/ */ (function(a){a.jqx.jqxWidget("jqxChart","",{});a.extend(a.jqx._jqxChart.prototype,{defineInstance:function(){this.title="Title";this.description="Description";this.source=[];this.seriesGroups=[];this.categoryAxis={};this.renderEngine=undefined;this.enableAnimations=true;this.enableAxisTextAnimation=false;this.backgroundImage=this.background=undefined;this.padding={left:5,top:5,right:5,bottom:5};this.backgroundColor="#FFFFFF";this.showBorderLine=true;this.borderLineWidth=1;this.titlePadding={left:5,top:5,right:5,bottom:10};this.showLegend=true;this.legendLayout=undefined;this.enabled=true;this.colorScheme="scheme01";this.animationDuration=500;this.showToolTips=true;this.toolTipShowDelay=this.toolTipDelay=500;this.toolTipHideDelay=4000;this.toolTipFormatFunction=undefined;this.columnSeriesOverlap=false;this.rtl=false;this.legendPosition=null;this.borderLineColor=null;this.borderColor=null;this.greyScale=false;this.axisPadding=5;this.enableCrosshairs=false;this.crosshairsColor="#888888";this.crosshairsDashStyle="2,2";this.crosshairsLineWidth=1},createInstance:function(e){if(!a.jqx.dataAdapter){throw"jqxdata.js is not loaded";return}this._refreshOnDownloadComlete();var c=this;this.host.on("mousemove",function(g){if(c.enabled==false){return}g.preventDefault();var f=g.pageX||g.clientX||g.screenX;var i=g.pageY||g.clientY||g.screenY;var h=c.host.offset();f-=h.left;i-=h.top;c.onmousemove(f,i)});this.addHandler(this.host,"mouseleave",function(f){if(c.enabled==false){return}if(c._plotRect&&c._mouseX>=c._plotRect.x&&c._mouseX<=c._plotRect.x+c._plotRect.width&&c._mouseY>=c._plotRect.y&&c._mouseY<=c._plotRect.y+c._plotRect.height){return}c._cancelTooltipTimer();c._hideToolTip(0)});var d=a.jqx.mobile.isTouchDevice();this.addHandler(this.host,"click",function(g){if(c.enabled==false){return}if(!d){c._cancelTooltipTimer();c._hideToolTip();c._unselect()}if(c._pointMarker&&c._pointMarker.element){var h=c.seriesGroups[c._pointMarker.gidx];var f=h.series[c._pointMarker.sidx];c._raiseItemEvent("click",h,f,c._pointMarker.iidx)}});if(this.element.style){var b=false;if(this.element.style.width!=null){b|=this.element.style.width.toString().indexOf("%")!=-1}if(this.element.style.height!=null){b|=this.element.style.height.toString().indexOf("%")!=-1}if(b){a(window).resize(function(){if(c.timer){clearTimeout(c.timer)}var f=a.jqx.browser.msie?200:1;c.timer=setTimeout(function(){var g=c.enableAnimations;c.enableAnimations=false;c.refresh();c.enableAnimations=g},f)})}}},_refreshOnDownloadComlete:function(){if(this.source instanceof a.jqx.dataAdapter){var c=this;var d=this.source._options;if(d==undefined||(d!=undefined&&!d.autoBind)){this.source.autoSync=false;this.source.dataBind()}if(this.source.records.length==0){var b=function(){if(c.ready){c.ready()}c.refresh()};this.source.unbindDownloadComplete(this.element.id);this.source.bindDownloadComplete(this.element.id,b)}else{if(c.ready){c.ready()}}this.source.unbindBindingUpdate(this.element.id);this.source.bindBindingUpdate(this.element.id,function(){c.refresh()})}},propertyChangedHandler:function(b,c,e,d){if(this.isInitialized==undefined||this.isInitialized==false){return}if(c=="source"){this._refreshOnDownloadComlete()}this.refresh()},_internalRefresh:function(){if(a.jqx.isHidden(this.host)){return}this._stopAnimations();if(!this._isToggleRefresh&&!this._isUpdate){this.host.empty();this._toolTipElement=undefined;var c=null;if(document.createElementNS&&(this.renderEngine=="SVG"||this.renderEngine==undefined)){c=new a.jqx.svgRenderer();if(!c.init(this.host)){if(this.renderEngine=="SVG"){throw"Your browser does not support SVG"}return}}if(c==null&&this.renderEngine!="HTML5"){c=new a.jqx.vmlRenderer();if(!c.init(this.host)){if(this.renderEngine=="VML"){throw"Your browser does not support VML"}return}this._isVML=true}if(c==null&&(this.renderEngine=="HTML5"||this.renderEngine==undefined)){c=new a.jqx.HTML5Renderer();if(!c.init(this.host)){throw"Your browser does not support HTML5 Canvas"}}this.renderer=c}var b=this.renderer.getRect();this._render({x:1,y:1,width:b.width,height:b.height});if(this.renderer instanceof a.jqx.HTML5Renderer){this.renderer.refresh()}this._isUpdate=false},saveAsPNG:function(c,b){return this._saveAsImage("png",c,b)},saveAsJPEG:function(c,b){return this._saveAsImage("jpeg",c,b)},_saveAsImage:function(j,g,l){if(g==undefined||g==""){g="chart."+j}if(l==undefined||l==""){l="http://www.jqwidgets.com/export_server/export.php"}var k=this.renderEngine;var f=this.enableAnimations;this.enableAnimations=false;this.renderEngine="HTML5";if(this.renderEngine!=k){try{this.refresh()}catch(i){this.renderEngine=k;this.refresh();this.enableAnimations=f}}try{var d=this.renderer.getContainer()[0];if(d){var h=d.toDataURL("image/"+j);h=h.replace("data:image/"+j+";base64,","");var c=document.createElement("form");c.method="POST";c.action=l;c.style.display="none";document.body.appendChild(c);var m=document.createElement("input");m.name="fname";m.value=g;m.style.display="none";var b=document.createElement("input");b.name="content";b.value=h;b.style.display="none";c.appendChild(m);c.appendChild(b);c.submit();document.body.removeChild(c)}}catch(i){}if(this.renderEngine!=k){this.renderEngine=k;this.refresh();this.enableAnimations=f}return true},refresh:function(){this._internalRefresh()},update:function(){this._isUpdate=true;this._internalRefresh()},_seriesTypes:["line","stackedline","stackedline100","spline","stackedspline","stackedspline100","stepline","stackedstepline","stackedstepline100","area","stackedarea","stackedarea100","splinearea","stackedsplinearea","stackedsplinearea100","steparea","stackedsteparea","stackedsteparea100","rangearea","splinerangearea","steprangearea","column","stackedcolumn","stackedcolumn100","rangecolumn","pie","donut","scatter","bubble","spider"],_render:function(v){if(!this._isToggleRefresh&&this._isUpdate&&this._renderData){this._renderDataDeepCopy()}this._renderData=[];this.renderer.clear();this._unselect();this._hideToolTip(0);var l=this.backgroundImage;if(l==undefined||l==""){this.host.css({"background-image":""})}else{this.host.css({"background-image":(l.indexOf("(")!=-1?l:"url('"+l+"')")})}var P=this.padding||{left:5,top:5,right:5,bottom:5};var o=this.renderer.createClipRect(v);var D=this.renderer.beginGroup();this.renderer.setClip(D,o);var X=this.renderer.rect(v.x,v.y,v.width-2,v.height-2);if(l==undefined||l==""){this.renderer.attr(X,{fill:this.background||this.backgroundColor||"white"})}else{this.renderer.attr(X,{fill:"transparent"})}if(this.showBorderLine!=false){var A=this.borderLineColor==undefined?this.borderColor:this.borderLineColor;if(A==undefined){A="#888888"}var m=this.borderLineWidth;if(isNaN(m)||m<0||m>10){m=1}this.renderer.attr(X,{"stroke-width":m,stroke:A})}var M={x:P.left,y:P.top,width:v.width-P.left-P.right,height:v.height-P.top-P.bottom};this._paddedRect=M;var e=this.titlePadding||{left:2,top:2,right:2,bottom:2};if(this.title&&this.title.length>0){var J=this.toThemeProperty("jqx-chart-title-text",null);var k=this.renderer.measureText(this.title,0,{"class":J});this.renderer.text(this.title,M.x+e.left,M.y+e.top,M.width-(e.left+e.right),k.height,0,{"class":J},true,"center","center");M.y+=k.height;M.height-=k.height}if(this.description&&this.description.length>0){var K=this.toThemeProperty("jqx-chart-title-description",null);var k=this.renderer.measureText(this.description,0,{"class":K});this.renderer.text(this.description,M.x+e.left,M.y+e.top,M.width-(e.left+e.right),k.height,0,{"class":K},true,"center","center");M.y+=k.height;M.height-=k.height}if(this.title||this.description){M.y+=(e.bottom+e.top);M.height-=(e.bottom+e.top)}var b={x:M.x,y:M.y,width:M.width,height:M.height};this._buildStats(b);var B=this._isPieOnlySeries();var s={};for(var Q=0;Q0&&p[H]>0&&I>0){p[H]+=L}n.push({width:I,position:H,xRel:p[H]});p[H]+=I;p[H+"Count"]++}var T={top:0,bottom:0,topCount:0,bottomCount:0};var N=[];for(var Q=0;Q0&&T[H]>0&&S>0){T[H]+=L}N.push({height:S,position:H,yRel:T[H]});T[H]+=S;T[H+"Count"]++}this._createAnimationGroup("series");this._plotRect=b;var q=(this.showLegend!=false);var u=!q||this.legendLayout?{width:0,height:0}:this._renderLegend(M,true);if(M.heightv.x+v.width){I=v.x+v.width-G}if(F+S>v.y+v.height){S=v.y+v.height-F}this._renderLegend({x:G,y:F,width:I,height:S})}this._hasHorizontalLines=false;if(!B){for(var Q=0;Qj){j=p.height}if(p.width>A){A=p.width}if(h){if(w!=0){k+=j}if(k>q.height){k=0;l+=A+C;A=p.width;m.width=l+A}}else{if(l!=0){l+=C}if(l+2*u+p.width>q.width&&p.widthe){m=this._elementRenderInfo[e].categoryAxis}var q=[];if(r.type!="date"){var E=s.customRange!=false;var B=F;for(var J=s.min;J<=s.max;J+=B){if(E||r.dataField==undefined||r.dataField==""){H=J}else{var N=Math.round(J);H=this._getDataValue(N,r.dataField)}var u=this._formatValue(H,r.formatSettings,r.formatFunction,undefined,undefined,N);if(u==undefined){u=!E?H.toString():(J).toString()}var b={key:H,text:u};if(m&&m.itemOffsets[H]){b.x=m.itemOffsets[H].x;b.y=m.itemOffsets[H].y}q.push(b);if(J+B>s.max){B=s.max-J;if(B<=F/2){break}}}}else{var n=this._getDateTimeArray(s.min,s.max,r.baseUnit,O,F);for(var J=0;Je){r=this._elementRenderInfo[e].categoryAxis}var z=[];if(B.type!="date"){var M=C.customRange!=false;var K=N;for(var V=C.min;V<=C.max;V+=K){if(M||B.dataField==undefined||B.dataField==""){R=V}else{var X=Math.round(V);R=this._getDataValue(X,B.dataField)}var E=this._formatValue(R,B.formatSettings,B.formatFunction,undefined,undefined,X);if(E==undefined){E=!M?R.toString():(V).toString()}var c={key:R,text:E};if(r&&r.itemOffsets[R]){c.x=r.itemOffsets[R].x;c.y=r.itemOffsets[R].y}z.push(c);if(V+K>C.max){K=C.max-V;if(K<=N/2){break}}}}else{var s=this._getDateTimeArray(C.min,C.max,B.baseUnit,Y,N);for(var V=0;V0?u.height+3*V:2*V;T+=r-(ab?r:r/4)}else{T+=ab?r:r/4}}else{U+=V+(u.width>0?(u.width+V):0)+(J?D.width-u.width:0);T+=B}var X=0;var R=0;var z=H.items;n.itemOffsets={};if(this._isToggleRefresh||!this._isUpdate){d=0}var m=false;for(var W=0;WR){R=g.width}if(g.height>X){X=g.height}if(!Y){if((N&&S>D.height+2)||(!N&&S>D.width+2)){break}var P=N?U:U+S;var O=N?T+S:T;n.itemOffsets[z[W].key]={x:P,y:O};if(!m){if(!isNaN(z[W].x)||!isNaN(z[W].y)&&d){m=true}}z[W].targetX=P;z[W].targetY=O;z[W].width=!N?b:D.width-2*V-r-((u.width>0)?u.width+V:0);z[W].height=N?b:D.height-2*V-r-((u.height>0)?u.height+V:0);z[W].visible=!p||(p&&(W%L)==0)}}if(!Y){var A={items:z,textSettings:q};if(isNaN(d)||!m){d=0}this._animateAxisText(A,d==0?1:0);var j=this;this._enqueueAnimation("series",undefined,undefined,d,function(i,h,w){j._animateAxisText(h,w)},A)}M.width+=2*V+r+u.width+R+(N&&u.width>0?V:0);M.height+=2*V+r+u.height+X+(!N&&u.height>0?V:0);var G={};var l={stroke:e.color,"stroke-width":1,"stroke-dasharray":e.dashStyle||""};if(!Y){var O=a.jqx._ptrnd(D.y+(J?D.height:0));if(N){this.renderer.line(a.jqx._ptrnd(D.x+D.width),D.y,a.jqx._ptrnd(D.x+D.width),D.y+D.height,l)}else{this.renderer.line(a.jqx._ptrnd(D.x),O,a.jqx._ptrnd(D.x+D.width+1),O,l)}}var t=0.5;if(!Y&&e.visible!=false){var o=e.unitInterval;if(isNaN(o)||o<=0){o=L}var s=p?z.length:aa;var F=p?1:o;var I=p?b:(N?D.height:D.width)/aa;var W=0;while(W<=s){if(p&&a.jqx._mod(W,o)!=0){W+=F;continue}var k=0;if(N){k=a.jqx._ptrnd(D.y+W*I);if(k>D.y+D.height+t){break}}else{k=a.jqx._ptrnd(D.x+W*I);if(k>D.x+D.width+t){break}}if(N){this.renderer.line(a.jqx._ptrnd(c.x),k,a.jqx._ptrnd(c.x+c.width),k,l)}else{this.renderer.line(k,a.jqx._ptrnd(c.y),k,a.jqx._ptrnd(c.y+c.height),l)}G[k]=true;W+=F;if(W>s&&W!=s+F){W=s}}}var l={stroke:E.color,"stroke-width":1,"stroke-dasharray":E.dashStyle||""};if(!Y&&E.visible){var Q=E.unitInterval;if(isNaN(Q)||Q<=0){Q=L}var s=p?z.length:aa+Q;var F=p?1:Q;var I=p?b:(N?D.height:D.width)/aa;for(var W=0;W<=s;W+=F){if(p&&a.jqx._mod(W,Q/L)!=0){continue}var k=a.jqx._ptrnd((N?D.y:D.x)+W*I);if(G[k-1]){k--}else{if(G[k+1]){k++}}if(N){if(k>D.y+D.height+t){break}}else{if(k>D.x+D.width+t){break}}var f=!J?-r:r;if(N){this.renderer.line(D.x+D.width,k,D.x+D.width+f,k,l)}else{var O=a.jqx._ptrnd(D.y+(J?D.height:0));this.renderer.line(k,O,k,O-f,l)}}}M.width=a.jqx._rup(M.width);M.height=a.jqx._rup(M.height);return M},_calcValueAxisItems:function(j,d){var m=this._stats.seriesGroups[j];if(!m||!m.isValid){return false}var v=this.seriesGroups[j];var b=v.orientation=="horizontal";var f=v.valueAxis;var l=f.valuesOnTicks!=false;var e=f.dataField;var n=m.intervals;var r=d/n;var t=m.min;var q=m.mu;var c=f.logarithmicScale==true;var k=f.logarithmicScaleBase||10;var h=v.type.indexOf("stacked")!=-1&&v.type.indexOf("100")!=-1;if(c){q=!isNaN(f.unitInterval)?f.unitInterval:1}if(!l){n=Math.max(n-1,1)}while(this._renderData.lengtho){m=this._elementRenderInfo[o].valueAxis}for(var H=0;HB)&&((!N||isNaN(z.valueAxis.maxValue))?true:O<=z.valueAxis.maxValue)){B=O}if((isNaN(T)||v=z.valueAxis.minValue)){T=v}if(!isNaN(E)){if(E>k){o+=E}else{if(EL||isNaN(L)){L=B}if(Tc||isNaN(c)){c=o}if(rS){M/=I;R--;t++}n=Math.pow(I,R)}else{if(C){L=Math.max(L,c)}l=a.jqx._rnd(a.jqx.log(L,I),1,true);L=Math.pow(I,l);R=a.jqx._rnd(a.jqx.log(n,I),1,false);n=Math.pow(I,R)}h=I}var K=N?z.valueAxis.tickMarksInterval||h:0;var s=N?z.valueAxis.gridLinesInterval||h:0;if(nc){c=L}var q=J?n:a.jqx._rnd(C?e:n,h,false);var g=J?L:a.jqx._rnd(C?c:L,h,true);if(d&&g>100){g=100}if(d&&!J){g=(g>0)?100:0;q=(q<0)?-100:0;h=N?z.valueAxis.unitInterval:10;if(isNaN(h)||h<=0||h>=100){h=10}if(K<=0||K>=100){K=10}if(s<=0||s>=100){s=10}}if(isNaN(g)||isNaN(q)||isNaN(h)){continue}if(isNaN(t)){t=parseInt(((g-q)/(h==0?1:h)).toFixed())}if(J&&!d){t=l-R;b=Math.pow(I,t)}if(t<1){continue}var D=g-q;u.rmax=C?c:L;u.rmin=C?e:n;u.min=q;u.max=g;u.minPow=R;u.maxPow=l;u.mu=h;u.maxRange=b;u.intervals=t;u.tickMarksInterval=K;u.tickMarksIntervals=K==0?0:D/K;u.gridLinesInterval=s;u.gridLinesIntervals=s==0?0:D/s;if(D==0){D=1}u.scale=C?(c-e)/D:(L-n)/D}},_getDataLen:function(c){var b=this.source;if(c!=undefined&&c!=-1&&this.seriesGroups[c].source){b=this.seriesGroups[c].source}if(b instanceof a.jqx.dataAdapter){b=b.records}if(b){return b.length}return 0},_getDataValue:function(b,e,d){var c=this.source;if(d!=undefined&&d!=-1){c=this.seriesGroups[d].source||c}if(c instanceof a.jqx.dataAdapter){c=c.records}if(!c||b<0||b>c.length-1){return NaN}return(e&&e!="")?c[b][e]:c[b]},_getDataValueAsNumber:function(b,e,c){var d=this._getDataValue(b,e,c);if(this._isDate(d)){return d.valueOf()}if(typeof(d)!="number"){d=parseFloat(d)}if(typeof(d)!="number"){d=undefined}return d},_renderPieSeries:function(o,l){var c=this._getDataLen(o);var n=this.seriesGroups[o];var p=this._calcGroupOffsets(o,l).offsets;for(var m=0;mw.groupIndex&&this._elementRenderInfo[w.groupIndex].series&&this._elementRenderInfo[w.groupIndex].series.length>w.serieIndex){o=this._elementRenderInfo[w.groupIndex].series[w.serieIndex]}var h=360*c;var b=[];for(var B=0;BH){z=H}H=f;if(B==b.length-1&&f!=b[0].from){f=360+b[0].from}}var A=this.renderer.pieSlicePath(G.x,G.y,G.innerRadius,G.outerRadius,z,f,G.centerOffset);this.renderer.attr(G.element,{d:A});var l=this._getColors(w.groupIndex,w.serieIndex,G.itemIndex,"radialGradient",G.outerRadius);var F=w.settings;this.renderer.attr(G.element,{fill:l.fillColor,stroke:l.lineColor,"stroke-width":F.stroke,"fill-opacity":F.opacity,"stroke-opacity":F.opacity,"stroke-dasharray":"none"||F.dashStyle});if(G.labelElement){this.renderer.removeElement(G.labelElement)}var J=z,K=f;var p=Math.abs(J-K);var v=p>180?1:0;if(p>360){J=0;K=360}var u=J*Math.PI*2/360;var j=K*Math.PI*2/360;var n=p/2+J;var I=n*Math.PI*2/360;var r=this._showLabel(w.groupIndex,w.serieIndex,G.itemIndex,{x:0,y:0,width:0,height:0},"left","top",true);var C=this.seriesGroups[w.groupIndex];var q=C.series[w.serieIndex];var e=q.labelRadius||G.outerRadius+Math.max(r.width,r.height);e+=G.centerOffset;var E=a.jqx.getNum([q.offsetX,C.offsetX,w.rect.width/2]);var D=a.jqx.getNum([q.offsetY,C.offsetY,w.rect.height/2]);var m=a.jqx._ptrnd(w.rect.x+E+e*Math.cos(I)-r.width/2);var k=a.jqx._ptrnd(w.rect.y+D-e*Math.sin(I)-r.height/2);G.labelElement=this._showLabel(w.groupIndex,w.serieIndex,G.itemIndex,{x:m,y:k,width:r.width,height:r.height},"left","top");if(c==1){this._installHandlers(G.element,w.groupIndex,w.serieIndex,G.itemIndex)}}},_getColumnGroupsCount:function(c){var e=0;c=c||"vertical";var f=this.seriesGroups;for(var d=0;d1){f=0.5}this.renderer.attr(k,{fill:b,"fill-opacity":f,stroke:b,"stroke-opacity":f,"stroke-width":0})},_renderColumnSeries:function(h,C){var q=this.seriesGroups[h];if(!q.series||q.series.length==0){return}var v=q.type.indexOf("stacked")!=-1;var d=v&&q.type.indexOf("100")!=-1;var A=q.type.indexOf("range")!=-1;var n=this._getDataLen(h);var J=q.columnsGapPercent;if(isNaN(J)||J<0||J>100){J=25}var K=q.seriesGapPercent;if(isNaN(K)||K<0||K>100){K=10}var r=q.orientation=="horizontal";var l=C;if(r){l={x:C.y,y:C.x,width:C.height,height:C.width}}var o=this._calcGroupOffsets(h,l);if(!o||o.xoffsets.length==0){return}var f=this._getColumnGroupsCount(q.orientation);var b=this._getColumnGroupIndex(h);if(this.columnSeriesOverlap==true){f=1;b=0}var M=this._alignValuesWithTicks(h);var c;if(q.polar==true||q.spider==true){c=this._getPolarAxisCoords(h,l);J=0;K=0}var t={groupIndex:h,rect:C,vertical:!r,seriesCtx:[],renderData:o,polarAxisCoords:c};for(var i=0;i1)?(D*K/100)/(q.series.length-1):0;var z=(D-m*(q.series.length-1));if(D<1){D=1}var j=0;if(!v&&q.series.length>1){z/=q.series.length;j=i}var N=H+(B-D)/2+j*(m+z);if(j==q.series.length){z=B-H+D-x}if(!isNaN(E)){var F=Math.min(z,E);N=N+(z-F)/2;z=F}var g=this._isSerieVisible(h,i);var L={seriesIndex:i,columnWidth:z,xAdjust:N,isVisible:g};t.seriesCtx.push(L)}this._animateColumns(t,w==0?1:0);var k=this;this._enqueueAnimation("series",undefined,undefined,w,function(O,s,P){k._animateColumns(s,P)},t)},_getColumnOffsets:function(n,e,p,z,j,b){var g=[];var f=NaN;for(var w=0;we){var k=n.xoffsets.xvalues[z];d=this._elementRenderInfo[e].series[q][k];if(d&&!isNaN(d.from)&&!isNaN(d.to)){r=d.from+(r-d.from)*b;if(!isNaN(f)&&j&&r!=f){r=f}c=d.to+(c-d.to)*b;A=d.xoffset+(A-d.xoffset)*b}}if(!d){c=r+(c-r)*(j?1:b)}f=c;g.push({from:r,to:c,xOffset:A})}if(j&&g.length>1&&!(this._elementRenderInfo&&this._elementRenderInfo.length>e)){var l=g[0].from+(f-g[0].from)*b;for(var v=0;vl){g[v].to=l}if(g[v].from>l){g[v].from=l}}}}return g},_columnAsPieSlice:function(b,f,l,n,o){var e=this._toPolarCoord(n,l,o.x,o.y);var g=this._toPolarCoord(n,l,o.x,o.y+o.height);var p=this._toPolarCoord(n,l,o.x+o.width,o.y);var m=a.jqx._ptdist(n.x,n.y,g.x,g.y);var j=a.jqx._ptdist(n.x,n.y,e.x,e.y);var d=l.width;var c=-((o.x-l.x)*360)/d;var i=-((o.x+o.width-l.x)*360)/d;var k=n.startAngle;k=360*k/(Math.PI*2);c-=k;i-=k;if(b[f]!=undefined){var h=this.renderer.pieSlicePath(n.x,n.y,m,j,i,c,0);this.renderer.attr(b[f],{d:h})}else{b[f]=this.renderer.pieslice(n.x,n.y,m,j,i,c,0)}return{fromAngle:i,toAngle:c,innerRadius:m,outerRadius:j}},_animateColumns:function(e,b){var D=e.groupIndex;var h=this.seriesGroups[D];var r=e.renderData;var j=h.type.indexOf("stacked")!=-1;var m=e.polarAxisCoords;for(var B=r.xoffsets.first;B<=r.xoffsets.last;B++){var g=this._getColumnOffsets(r,D,e.seriesCtx,B,j,b);for(var A=0;At){t=w}}}}var h=F.minRadius;if(isNaN(h)){h=I/50}var A=F.maxRadius;if(isNaN(A)){A=I/25}if(h>A){A=h}var H=F.radius||5;var B=this._getAnimProps(d,f);var v=B.enabled&&!this._isToggleRefresh&&l.xoffsets.length<5000?B.duration:0;var q={groupIndex:d,seriesIndex:f,fill:G.fillColor,"fill-opacity":O.opacity,"stroke-opacity":O.opacity,stroke:G.lineColor,"stroke-width":O.stroke,"stroke-dasharray":O.dashStyle,items:[],polarAxisCoords:b};for(var N=l.xoffsets.first;N<=l.xoffsets.last;N++){var w=this._getDataValueAsNumber(N,u,d);if(typeof(w)!="number"){continue}var E=l.xoffsets.data[N];var D=l.offsets[f][N].to;var C=l.xoffsets.xvalues[N];if(isNaN(E)||isNaN(D)){continue}if(p){var K=E;E=D;D=K+z.y}else{E+=z.x}var J=H;if(e){var m=this._getDataValueAsNumber(N,F.radiusDataField,d);if(typeof(m)!="number"){continue}J=h+(A-h)*(m-P)/Math.max(1,t-P);if(isNaN(J)){J=h}}var j=NaN,L=NaN;var n=0;if(C!=undefined&&this._elementRenderInfo&&this._elementRenderInfo.length>d){var c=this._elementRenderInfo[d].series[f][C];if(c&&!isNaN(c.to)){j=c.to;L=c.xoffset;n=H;if(p){var K=L;L=j;j=K+z.y}else{L+=z.x}if(e){n=h+(A-h)*(c.valueRadius-P)/Math.max(1,t-P);if(isNaN(n)){n=h}}}}q.items.push({from:n,to:J,itemIndex:N,x:E,y:D,xFrom:L,yFrom:j})}this._animR(q,0);var g=this;var M=undefined;this._enqueueAnimation("series",undefined,undefined,v,function(s,i,r){g._animR(i,r)},q)}},_animR:function(l,e){var f=l.items;for(var d=0;d=1){this._installHandlers(c,l.groupIndex,l.seriesIndex,k.itemIndex)}}},_showToolTip:function(m,k,E,z,c){var u=this._getCategoryAxis(E);if(this._toolTipElement&&E==this._toolTipElement.gidx&&z==this._toolTipElement.sidx&&c==this._toolTipElement.iidx){return}var j=this.seriesGroups[E];var n=j.series[z];var g=this.enableCrosshairs&&!(j.polar||j.spider);if(this._pointMarker){m=parseInt(this._pointMarker.x+5);k=parseInt(this._pointMarker.y-5)}else{g=false}var i=g&&this.showToolTips==false;m=a.jqx._ptrnd(m);k=a.jqx._ptrnd(k);var F=this._toolTipElement==undefined;if(j.showToolTips==false||n.showToolTips==false){return}var f=n.toolTipFormatSettings||j.toolTipFormatSettings;var t=n.toolTipFormatFunction||j.toolTipFormatFunction||this.toolTipFormatFunction;var l=this._getColors(E,z,c);var b=this._getDataValue(c,u.dataField,E);if(u.dataField==undefined||u.dataField==""){b=c}if(u.type=="date"){b=this._castAsDate(b)}var q="";if(a.isFunction(t)){var w={};if(j.type.indexOf("range")==-1){w=this._getDataValue(c,n.dataField,E)}else{w.from=this._getDataValue(c,n.dataFieldFrom,E);w.to=this._getDataValue(c,n.dataFieldTo,E)}q=t(w,c,n,j,b,u)}else{q=this._getFormattedValue(E,z,c,f,t);var J=u.toolTipFormatSettings||u.formatSettings;var d=u.toolTipFormatFunction||u.formatFunction;var I=this._formatValue(b,J,d);if(j.type!="pie"&&j.type!="donut"){q=(n.displayText||n.dataField||"")+", "+I+": "+q}else{b=this._getDataValue(c,n.displayText||n.dataField,E);I=this._formatValue(b,J,d);q=I+": "+q}}var D=n.toolTipClass||j.toolTipClass||this.toThemeProperty("jqx-chart-tooltip-text",null);var G=n.toolTipBackground||j.toolTipBackground||"#FFFFFF";var H=n.toolTipLineColor||j.toolTipLineColor||l.lineColor;if(!this._toolTipElement){this._toolTipElement={}}this._toolTipElement.sidx=z;this._toolTipElement.gidx=E;this._toolTipElement.iidx=c;rect=this.renderer.getRect();if(g){var C=a.jqx._ptrnd(this._pointMarker.x);var B=a.jqx._ptrnd(this._pointMarker.y);if(this._toolTipElement.vLine&&this._toolTipElement.hLine){this.renderer.attr(this._toolTipElement.vLine,{x1:C,x2:C});this.renderer.attr(this._toolTipElement.hLine,{y1:B,y2:B})}else{var A=this.crosshairsColor||"#888888";this._toolTipElement.vLine=this.renderer.line(C,this._plotRect.y,C,this._plotRect.y+this._plotRect.height,{stroke:A,"stroke-width":this.crosshairsLineWidth||1,"stroke-dasharray":this.crosshairsDashStyle||""});this._toolTipElement.hLine=this.renderer.line(this._plotRect.x,B,this._plotRect.x+this._plotRect.width,B,{stroke:A,"stroke-width":this.crosshairsLineWidth||1,"stroke-dasharray":this.crosshairsDashStyle||""})}}if(!i&&this.showToolTips!=false){var s=!F?this._toolTipElement.box:document.createElement("div");var e={left:0,top:0};if(F){s.style.position="absolute";s.style.cursor="default";s.style.overflow="hidden";a(s).addClass("jqx-rc-all jqx-button");a(document.body).append(s);var v=this}s.style.backgroundColor=G;s.style.borderColor=H;this._toolTipElement.box=s;this._toolTipElement.txt=q;var o=""+q+"";var h=this._toolTipElement.tmp;if(F){this._toolTipElement.tmp=h=document.createElement("div");h.style.position="absolute";h.style.cursor="default";h.style.overflow="hidden";h.style.display="none";h.style.zIndex=999999;h.style.backgroundColor=G;h.style.borderColor=H;a(h).addClass("jqx-rc-all jqx-button");this.host.append(h)}a(h).html(o);var r={width:a(h).width(),height:a(h).height()};r.width=r.width+5;r.height=r.height+6;m=Math.max(m,rect.x);k=Math.max(k-r.height,rect.y);if(r.width>rect.width||r.height>rect.height){return}if(m+e.left+r.width>rect.x+rect.width-5){m=rect.x+rect.width-r.width-e.left-5;s.style.left=e.left+m+"px"}if(k+e.top+r.height>rect.y+rect.height-5){k=rect.y+rect.height-r.height-5;s.style.top=e.top+k+"px"}var p=this.host.coord();if(F){a(s).fadeOut(0,0);s.style.left=e.left+m+p.left+"px";s.style.top=e.top+k+p.top+"px"}a(s).html(o);a(s).clearQueue();a(s).animate({left:e.left+m+p.left,top:e.top+k+p.top,opacity:1},300,"easeInOutCirc");a(s).fadeTo(400,1)}},_hideToolTip:function(b){if(!this._toolTipElement){return}if(this._toolTipElement.box){if(b==0){a(this._toolTipElement.box).hide()}else{a(this._toolTipElement.box).fadeOut()}}this._hideCrosshairs();this._toolTipElement.gidx=undefined},_hideCrosshairs:function(){if(!this._toolTipElement){return}if(this._toolTipElement.vLine){this.renderer.removeElement(this._toolTipElement.vLine);this._toolTipElement.vLine=undefined}if(this._toolTipElement.hLine){this.renderer.removeElement(this._toolTipElement.hLine);this._toolTipElement.hLine=undefined}},_showLabel:function(u,r,d,b,m,f,c){var g=this.seriesGroups[u];var k=g.series[r];var p={width:0,height:0};if(k.showLabels==false||(!k.showLabels&&!g.showLabels)){return c?p:undefined}if(b.width<0||b.height<0){return c?p:undefined}var e=k.labelAngle||k.labelsAngle||g.labelAngle||g.labelsAngle||0;var s=k.labelOffset||g.labelOffset||{x:0,y:0};var q=k.labelClass||g.labelClass||this.toThemeProperty("jqx-chart-label-text",null);m=m||"center";f=f||"center";var o=this._getFormattedValue(u,r,d);var l=b.width;var t=b.height;p=this.renderer.measureText(o,e,{"class":q});if(c){return p}var j=0;if(m==""||m=="center"){j+=(l-p.width)/2}else{if(m=="right"){j+=(l-p.width)}}var i=0;if(f==""||f=="center"){i+=(t-p.height)/2}else{if(f=="bottom"){i+=(t-p.height)}}var n=this.renderer.text(o,j+b.x+s.x,i+b.y+s.y,p.width,p.height,e,{},false,"center","center");this.renderer.attr(n,{"class":q});if(this._isVML){this.renderer.removeElement(n);this.renderer.getContainer()[0].appendChild(n)}return n},_getAnimProps:function(j,f){var e=this.seriesGroups[j];var c=!isNaN(f)?e.series[f]:undefined;var b=this.enableAnimations==true;if(e.enableAnimations){b=e.enableAnimations==true}if(c&&c.enableAnimations){b=c.enableAnimations==true}var i=this.animationDuration;if(isNaN(i)){i=1000}var d=e.animationDuration;if(!isNaN(d)){i=d}if(c){var h=c.animationDuration;if(!isNaN(h)){i=h}}if(i>5000){i=1000}return{enabled:b,duration:i}},_renderLineSeries:function(f,I){var B=this.seriesGroups[f];if(!B.series||B.series.length==0){return}var n=B.type.indexOf("area")!=-1;var E=B.type.indexOf("stacked")!=-1;var b=E&&B.type.indexOf("100")!=-1;var W=B.type.indexOf("spline")!=-1;var o=B.type.indexOf("step")!=-1;var G=B.type.indexOf("range")!=-1;var Y=B.polar==true||B.spider==true;if(Y){o=false}if(o&&W){return}var t=this._getDataLen(f);var U=I.width/t;var aa=B.orientation=="horizontal";var v=this._getCategoryAxis(f).flip==true;var r=I;if(aa){r={x:I.y,y:I.x,width:I.height,height:I.width}}var w=this._calcGroupOffsets(f,r);if(!w||w.xoffsets.length==0){return}for(var Q=B.series.length-1;Q>=0;Q--){var e=this._isSerieVisible(f,Q);if(!e){continue}var X=this._getSerieSettings(f,Q);var M=w.xoffsets.first;var A=M;do{var O=[];var L=[];var m=[];var H=-1;var k=0;var J=NaN;var z=NaN;var Z=NaN;if(w.xoffsets.length<1){continue}var K=this._getAnimProps(f,Q);var F=K.enabled&&!this._isToggleRefresh&&w.xoffsets.length<10000&&this._isVML!=true?K.duration:0;var q=M;var p=false;for(var V=M;V<=w.xoffsets.last;V++){M=V;var P=w.xoffsets.data[V];var N=w.xoffsets.xvalues[V];if(P==undefined){continue}P=Math.max(P,1);k=P;var j=w.offsets[Q][V].to;var T=w.offsets[Q][V].from;if(isNaN(j)||isNaN(T)){M++;p=true;break}var c=undefined;if(this._elementRenderInfo&&this._elementRenderInfo.length>f&&this._elementRenderInfo[f].series.length>Q){c=this._elementRenderInfo[f].series[Q][N];var Z=a.jqx._ptrnd(c?c.to:undefined);var D=a.jqx._ptrnd(r.x+(c?c.xoffset:undefined));m.push(aa?{y:D,x:Z,index:V}:{x:D,y:Z,index:V})}A=V;if(!n&&b){if(j<=r.y){j=r.y+1}if(j>=r.y+r.height){j=r.y+r.height-1}if(T<=r.y){T=r.y+1}if(T>=r.y+r.height){T=r.y+r.height-1}}P=Math.max(P,1);k=P+r.x;if(o&&!isNaN(J)&&!isNaN(z)){if(z!=j){O.push(aa?{y:k,x:a.jqx._ptrnd(z)}:{x:k,y:a.jqx._ptrnd(z)})}}O.push(aa?{y:k,x:a.jqx._ptrnd(j),index:V}:{x:k,y:a.jqx._ptrnd(j),index:V});L.push(aa?{y:k,x:a.jqx._ptrnd(T),index:V}:{x:k,y:a.jqx._ptrnd(T),index:V});J=k;z=j;if(isNaN(Z)){Z=j}}var g=r.x+w.xoffsets.data[q];var S=r.x+w.xoffsets.data[A];if(n&&B.alignEndPointsWithIntervals==true){var u=v?-1:1;if(g>r.x){g=r.x}if(S0?o[j-1]:o[j]).split(",");p={x:parseFloat(p[0]),y:parseFloat(p[1])};var r=(jf.y&&h.y>e.y){c={x:h.x,y:h.y+b.height}}else{c={x:h.x,y:h.y-b.height}}return c},_calculateLine:function(p,n,m,f,e,u,b){var t=this.seriesGroups[p.groupIndex];var l=undefined;if(t.polar==true||t.spider==true){l=this._getPolarAxisCoords(p.groupIndex,this._plotRect)}var q="";var r=n.length;if(!u&&m.length==0){r=Math.round(r*e)}var h=NaN;for(var s=0;s0){q+=" "}var j=n[s].y;var k=n[s].x;var c=!u?j:f;var d=k;if(m&&m.length>s){c=m[s].y;d=m[s].x;if(isNaN(c)||isNaN(d)){c=j;d=k}}h=d;if(r<=n.length&&s>0&&s==r){d=n[s-1].x;c=n[s-1].y}if(b){k=a.jqx._ptrnd((k-d)*e+d);j=a.jqx._ptrnd((j-c)*e+c)}else{k=a.jqx._ptrnd((k-d)*e+d);j=a.jqx._ptrnd((j-c)*e+c)}if(l){var o=this._toPolarCoord(l,this._plotRect,k,j);k=o.x;j=o.y}q+=k+","+j;if(n.length==1&&!u){q+=" "+(k+2)+","+(j+2)}}return q},_buildLineCmd:function(k,i,f,o,n,b,p,m,q,d,j){var e=k;if(m&&!q&&!i){var c=j?p+","+f:f+","+p;var h=j?p+","+o:o+","+p;e=c+" "+k+" "+h}if(d){e=this._getBezierPoints(e)}var l=e.split(" ");var g=l[0].replace("C","");if(m&&!q){if(!i){e="M "+c+" L "+g+" "+e+" Z"}else{e="M "+g+" L "+g+(d?"":(" L "+g+" "))+e+" Z"}}else{if(d){e="M "+g+" "+e}else{e="M "+g+" L "+g+" "+e}}if(q&&m){e+=" Z"}return e},_getSerieSettings:function(i,c){var h=this.seriesGroups[i];var g=h.type.indexOf("area")!=-1;var f=h.type.indexOf("line")!=-1;var b=this._getColors(i,c,undefined,this._getGroupGradientType(i));var d=h.series[c];var k=d.dashStyle||h.dashStyle||"";var e=d.opacity||h.opacity;if(isNaN(e)||e<0||e>1){e=1}var j=d.lineWidth;if(isNaN(j)&&j!="auto"){j=h.lineWidth}if(j=="auto"||isNaN(j)||j<0||j>15){if(g){j=2}else{if(f){j=3}else{j=1}}}return{colors:b,stroke:j,opacity:e,dashStyle:k}},getItemColor:function(f,d,c){var g=-1;for(var b=0;bq){b=q;o=t;v=u;f=d}}return{index:o,value:p.xoffsets.data[o],polarAxisCoords:l,x:v,y:f}},onmousemove:function(l,j){if(this._mouseX==l&&this._mouseY==j){return}this._mouseX=l;this._mouseY=j;if(!this._selected){return}var b=this._plotRect;var h=this._paddedRect;if(lh.x+h.width||jh.y+h.height){this._unselect();return}var w=this._selected.group;var t=this.seriesGroups[w];var o=t.series[this._selected.series];var d=t.orientation=="horizontal";var b=this._plotRect;if(t.type.indexOf("line")!=-1||t.type.indexOf("area")!=-1){var f=this._getHorizontalOffset(w,this._selected.series,l,j);var r=f.index;if(r==undefined){return}if(this._selected.item!=r){if(this._selected.item){this._raiseItemEvent("mouseout",t,o,this._selected.item)}this._selected.item=r;this._raiseItemEvent("mouseover",t,o,r)}var n=this._getSymbol(this._selected.group,this._selected.series);if(n=="none"){n="circle"}var p=this._calcGroupOffsets(w,b);var c=p.offsets[this._selected.series][r].to;var q=c;if(t.type.indexOf("range")!=-1){q=p.offsets[this._selected.series][r].from}var m=d?l:j;if(!isNaN(q)&&Math.abs(m-q)1){e=t.opacity}if(isNaN(e)||e<0||e>1){e=1}var v=o.symbolSizeSelected;if(isNaN(v)){v=o.symbolSize}if(isNaN(v)||v>10||v<0){v=t.symbolSize}if(isNaN(v)||v>10||v<0){v=6}this._pointMarker={type:n,x:l,y:j,gidx:w,sidx:this._selected.series,iidx:r};this._pointMarker.element=this._drawSymbol(n,l,j,k.fillColorSymbolSelected,k.lineColorSymbolSelected,1,e,v);this._startTooltipTimer(w,this._selected.series,r)}},_drawSymbol:function(g,i,h,j,k,d,e,m){var c;var f=m||6;var b=f/2;switch(g){case"none":return undefined;case"circle":c=this.renderer.circle(i,h,f/2);break;case"square":f=f-1;b=f/2;c=this.renderer.rect(i-b,h-b,f,f);break;case"diamond":var l="M "+(i-b)+","+(h)+" L"+(i)+","+(h-b)+" L"+(i+b)+","+(h)+" L"+(i)+","+(h+b)+" Z";c=this.renderer.path(l);break;case"triangle_up":var l="M "+(i-b)+","+(h+b)+" L "+(i+b)+","+(h+b)+" L "+(i)+","+(h-b)+" Z";c=this.renderer.path(l);break;case"triangle_down":var l="M "+(i-b)+","+(h-b)+" L "+(i)+","+(h+b)+" L "+(i+b)+","+(h-b)+" Z";c=this.renderer.path(l);break;case"triangle_left":var l="M "+(i-b)+","+(h)+" L "+(i+b)+","+(h+b)+" L "+(i+b)+","+(h-b)+" Z";c=this.renderer.path(l);break;case"triangle_right":var l="M "+(i-b)+","+(h-b)+" L "+(i-b)+","+(h+b)+" L "+(i+b)+","+(h)+" Z";c=this.renderer.path(l);break;default:c=this.renderer.circle(i,h,f)}this.renderer.attr(c,{fill:j,stroke:k,"stroke-width":d,"stroke-opacity":e,"fill-opacity":e});return c},_getSymbol:function(f,b){var c=["circle","square","diamond","triangle_up","triangle_down","triangle_left","triangle_right"];var e=this.seriesGroups[f];var d=e.series[b];var h=undefined;if(d.symbolType!=undefined){h=d.symbolType}if(h==undefined){h=e.symbolType}if(h=="default"){return c[b%c.length]}else{if(h!=undefined){return h}}return"none"},_startTooltipTimer:function(h,f,d){this._cancelTooltipTimer();var b=this;var e=b.seriesGroups[h];var c=this.toolTipShowDelay||this.toolTipDelay;if(isNaN(c)||c>10000||c<0){c=500}if(this._toolTipElement||(true==this.enableCrosshairs&&false==this.showToolTips)){c=0}clearTimeout(this._tttimerHide);this._tttimer=setTimeout(function(){b._showToolTip(b._mouseX,b._mouseY-3,h,f,d);var g=b.toolTipHideDelay;if(isNaN(g)){g=4000}b._tttimerHide=setTimeout(function(){b._hideToolTip()},g)},c)},_cancelTooltipTimer:function(){clearTimeout(this._tttimer)},_getGroupGradientType:function(c){var b=this.seriesGroups[c];if(b.type.indexOf("area")!=-1){return b.orientation=="horizontal"?"horizontalLinearGradient":"verticalLinearGradient"}else{if(b.type.indexOf("column")!=-1){if(b.polar){return"radialGradient"}return b.orientation=="horizontal"?"verticalLinearGradient":"horizontalLinearGradient"}else{if(b.type.indexOf("scatter")!=-1||b.type.indexOf("bubble")!=-1||b.type.indexOf("pie")!=-1||b.type.indexOf("donut")!=-1){return"radialGradient"}}}return undefined},_select:function(d,i,h,c){if(this._selected&&this._selected.element!=d){this._unselect()}this._selected={element:d,group:i,series:h,item:c};var f=this.seriesGroups[i];var b=this._getColors(i,h,c,this._getGroupGradientType(i));if(f.type.indexOf("line")!=-1&&f.type.indexOf("area")==-1){b.fillColorSelected="none"}var e=this._getSerieSettings(i,h,c);this.renderer.attr(d,{stroke:b.lineColorSelected,fill:b.fillColorSelected,"stroke-width":e.stroke+0})},_unselect:function(){if(this._selected){var i=this._selected.group;var h=this._selected.series;var c=this._selected.item;var f=this.seriesGroups[i];var e=f.series[h];var b=this._getColors(i,h,c,this._getGroupGradientType(i));if(f.type.indexOf("line")!=-1&&f.type.indexOf("area")==-1){b.fillColor="none"}var d=this._getSerieSettings(i,h,c);this.renderer.attr(this._selected.element,{stroke:b.lineColor,fill:b.fillColor,"stroke-width":d.stroke});if((f.type.indexOf("line")!=-1||f.type.indexOf("area")!=-1)&&!isNaN(c)){this._raiseItemEvent("mouseout",f,e,c)}this._selected=undefined}if(this._pointMarker){if(this._pointMarker.element){this.renderer.removeElement(this._pointMarker.element);this._pointMarker.element=undefined}this._pointMarker=undefined;this._hideCrosshairs()}},_raiseItemEvent:function(f,g,e,c){var d=e[f]||g[f];var h=0;for(;h=1){c*=10}else{c/=10}for(var e=1;eMath.abs(g[e]*c-k)){l=e}else{break}}}while(l==g.length-1);return g[l]*c},_renderDataDeepCopy:function(){if(!this._renderData||this._isToggleRefresh){return}var d=this._elementRenderInfo=[];for(var h=0;haa.max){n=aa.max}if(n=n)?ab:X;var Z=J*(G-n);if(H){Z=J*(G-af)}if(L){while(g.length<=W){g.push({p:{value:0,height:0},n:{value:0,height:0}})}var w=H?af:n;var U=G>w?g[W].p:g[W].n;U.value+=G;if(c){G=U.value/(aa.psums[W]+aa.nsums[W])*100;Z=(a.jqx.log(G,K)-aa.minPow)*J}else{Z=a.jqx.log(U.value,K)-a.jqx.log(w,K);Z*=J}Z-=U.height;U.height+=Z}var O=ac;if(H){var p=0;if(L){p=(a.jqx.log(af,K)-a.jqx.log(n,K))*J}else{p=(af-n)*J}O+=v?p:-p}if(C){if(c&&!L){var t=(aa.psums[W]-aa.nsums[W]);if(G>n){Z=(aa.psums[W]/t)*b;if(aa.psums[W]!=0){Z*=G/aa.psums[W]}}else{Z=(aa.nsums[W]/t)*b;if(aa.nsums[W]!=0){Z*=G/aa.nsums[W]}}}if(isNaN(F[W])){F[W]=O}O=F[W]}if(isNaN(P[W])){P[W]=0}var Y=P[W];Z=Math.abs(Z);var R=Z;h_new=this._isVML?Math.round(Z):a.jqx._ptrnd(Z)-1;if(Math.abs(Z-h_new)>0.5){Z=Math.round(Z)}else{Z=h_new}Y+=Z-R;if(!C){Y=0}if(Math.abs(Y)>0.5){if(Y>0){Z-=1;Y-=1}else{Z+=1;Y+=1}}P[W]=Y;if(V==u.series.length-1&&c){var s=0;for(var S=0;S0.5){Z=a.jqx._ptrnd(Z+b-s)}else{var S=V-1;while(S>=0){var D=Math.abs(Q[S][W].to-Q[S][W].from);if(D>1){if(Q[S][W].from>Q[S][W].to){Q[S][W].from+=b-s}break}S--}}}}if(v){Z*=-1}var N=GG}var l=isNaN(af)?G:{from:af,to:G};if(N){F[W]+=Z;Q[V].push({from:O,to:O+Z,value:l,valueFrom:af,valueRadius:d})}else{F[W]-=Z;Q[V].push({from:O,to:O-Z,value:l,valueFrom:af,valueRadius:d})}}}var q=this._renderData[f];q.baseOffset=ac;q.offsets=Q;q.bands=z;q.xoffsets=this._calculateXOffsets(f,I.width);return this._renderData[f]},_calcPieSeriesGroupOffsets:function(d,b){var k=this._getDataLen(d);var l=this.seriesGroups[d];var u=this._renderData[d]={};var A=u.offsets=[];for(var v=0;v=e){j=0}var c=q.centerOffset||0;var E=a.jqx.getNum([q.offsetX,l.offsetX,b.width/2]);var D=a.jqx.getNum([q.offsetY,l.offsetY,b.height/2]);A.push([]);var f=0;var g=0;for(var z=0;z0){f+=F}else{g+=F}}var p=f-g;if(p==0){p=1}for(var z=0;z11){l++;k=0}}}else{if(o=="day"){for(var g=0;gn||isNaN(n)){n=o}}}}if(m){h=new Date(h);n=new Date(n)}if(m&&!(this._isDate(h)&&this._isDate(n))){throw"Invalid Date values"}var g=!isNaN(c.maxValue)||!isNaN(c.minValue);if(g&&(isNaN(n)||isNaN(h))){g=false;throw"Invalid min/max category values"}if(!g&&!m){h=0;n=e-1}var f=c.baseUnit;var k=f=="hour"||f=="minute"||f=="second"||f=="millisecond";var d=c.unitInterval;if(isNaN(d)||d<=0){d=1}if(k){if(f=="second"){d*=1000}else{if(f=="minute"){d*=60*1000}else{if(f=="hour"){d*=3600*1000}}}}return{min:h,max:n,isRange:g,isDateTime:m,isTimeUnit:k,dateTimeUnit:f,interval:d}},_scaleDateTimeAxis:function(h,f){var g=h.min;var k=h.max;var e=h.dateTimeUnit;var i=h.isTimeUnit;var c=h.interval;var l=this._getAsDate(k,e);var j=this._getAsDate(g,e);if(!i&&!f){if(e=="month"){l.setMonth(l.getMonth()+1)}else{if(e=="year"){l.setYear(l.getFullYear()+1)}else{l.setDate(l.getDate()+1)}}}var b=0;var d=this._getDateDiff(j,l,i?"millisecond":e);while(l<=k){d=a.jqx._rnd(d,c,true);if(e=="month"){j=new Date(j.getFullYear(),j.getMonth(),1);l=new Date(j);l.setMonth(l.getMonth()+d)}else{if(e=="year"){j=new Date(j.getFullYear(),0,1);l=new Date(j);l.setYear(l.getFullYear()+d)}else{l=new Date(g);if(i){l.setTime(j.getTime()+d)}else{l.setDate(j.getDate()+d)}}}if(lE){C.push(-1);m.push(undefined);continue}var s=0;if(!b||(b&&K)){diffFromMin=w-G;s=(w-G)*H/M}else{s=this._getDateDiff(G,w,t,false)*h/I;if(t!="day"){var B=this._getDateDiff(this._getAsDate(w,t),w,q,false);s+=B/v*H}}s=a.jqx._ptrnd(r+s);C.push(s);m.push(w);if(j==-1){j=D}if(p==-1||pm.colors.length){t-=m.colors.length;if(++k>=this.colorSchemes.length){k=0}m=this.colorSchemes[k]}d=m.colors[t%m.colors.length]}}}}if(v.fillColorSelected){q=v.fillColorSelected}else{q=a.jqx._adjustColor(d,1.1)}if(v.lineColor){r=v.lineColor}else{r=a.jqx._adjustColor(d,0.9)}if(v.lineColorSelected){e=v.lineColorSelected}else{e=a.jqx._adjustColor(d,0.8)}if(v.lineColorSymbol){n=v.lineColorSymbol}else{n=r}if(v.lineColorSymbolSelected){b=v.lineColorSymbolSelected}else{b=e}if(v.fillColorSymbol){o=v.fillColorSymbol}else{o=d}if(v.fillColorSymbolSelected){c=v.fillColorSymbolSelected}else{c=q}return{lineColor:r,lineColorSelected:e,fillColor:d,fillColorSelected:q,lineColorSymbol:n,lineColorSymbolSelected:b,fillColorSymbol:o,fillColorSymbolSelected:c}},_getColor:function(d,f,k,h){if(d==undefined||d==""){d=this.colorSchemes[0].name}for(var g=0;g="0"&&c<="9")||c==","||c=="."){continue}if(c=="-"&&b==0){continue}if((c=="("&&b==0)||(c==")"&&b==d.length-1)){continue}return false}return true},_castAsDate:function(c){if(c instanceof Date&&!isNaN(c)){return c}if(typeof(c)=="string"){var b=new Date(c);if(isNaN(b)){b=this._parseISO8601Date(c)}if(b!=undefined&&!isNaN(b)){return b}}return undefined},_parseISO8601Date:function(g){var k=g.split(" ");if(k.length<0){return NaN}var b=k[0].split("-");var c=k.length==2?k[1].split(":"):"";var f=b[0];var h=b.length>1?b[1]-1:0;var i=b.length>2?b[2]:1;var d=c[1];var e=c.length>1?c[1]:0;var d=c.length>2?c[2]:0;var j=c.length>3?c[3]:0;return new Date(f,h,i,d,e,j)},_castAsNumber:function(c){if(c instanceof Date&&!isNaN(c)){return c.valueOf()}if(typeof(c)=="string"){if(this._isNumber(c)){c=parseFloat(c)}else{var b=new Date(c);if(b!=undefined){c=b.valueOf()}}}return c},_isNumber:function(b){if(typeof(b)=="string"){if(this._isNumberAsString(b)){b=parseFloat(b)}}return typeof b==="number"&&isFinite(b)},_isDate:function(b){return b instanceof Date},_isBoolean:function(b){return typeof b==="boolean"},_isObject:function(b){return(b&&(typeof b==="object"||a.isFunction(b)))||false},_formatDate:function(c,b){return c.toString()},_formatNumber:function(n,e){if(!this._isNumber(n)){return n}e=e||{};var q=e.decimalSeparator||".";var o=e.thousandsSeparator||"";var m=e.prefix||"";var p=e.sufix||"";var h=e.decimalPlaces;if(isNaN(h)){h=((n*100!=parseInt(n)*100)?2:0)}var l=e.negativeWithBrackets||false;var g=(n<0);if(g&&l){n*=-1}var d=n.toString();var b;var k=Math.pow(10,h);d=(Math.round(n*k)/k).toString();if(isNaN(d)){d=""}b=d.lastIndexOf(".");if(h>0){if(b<0){d+=q;b=d.length-1}else{if(q!=="."){d=d.replace(".",q)}}while((d.length-1-b)-1)?b:d.length;var f=d.substring(b);var c=0;for(var j=b;j>0;j--,c++){if((c%3===0)&&(j!==b)&&(!g||(j>1)||(g&&l))){f=o+f}f=d.charAt(j-1)+f}d=f;if(g&&l){d="("+d+")"}return m+d+p},_defaultNumberFormat:{prefix:"",sufix:"",decimalSeparator:".",thousandsSeparator:",",decimalPlaces:2,negativeWithBrackets:false},_getBezierPoints:function(h){var m=[];var j=h.split(" ");for(var g=0;g0?" ":"")+m[g].x+","+m[g].y}}else{for(var g=0;g3?9:5;var l=g==0?81:k;var f={x:((-c[0].x+l*c[1].x+c[2].x)/l),y:((-c[0].y+l*c[1].y+c[2].y)/l)};if(g==0){l=k}var d={x:((c[1].x+l*c[2].x-c[3].x)/l),y:((c[1].y+l*c[2].y-c[3].y)/l)};e.push({x:c[1].x,y:c[1].y});e.push(f);e.push(d);e.push({x:c[2].x,y:c[2].y});o+="C"+a.jqx._ptrnd(e[1].x)+","+a.jqx._ptrnd(e[1].y)+" "+a.jqx._ptrnd(e[2].x)+","+a.jqx._ptrnd(e[2].y)+" "+a.jqx._ptrnd(e[3].x)+","+a.jqx._ptrnd(e[3].y)+" "}}return o},_animTickInt:50,_createAnimationGroup:function(b){if(!this._animGroups){this._animGroups={}}this._animGroups[b]={animations:[],startTick:NaN}},_startAnimation:function(c){var e=new Date();var b=e.getTime();this._animGroups[c].startTick=b;this._runAnimation();this._enableAnimTimer()},_enqueueAnimation:function(e,d,c,g,f,b,h){if(g<0){g=0}if(h==undefined){h="easeInOutSine"}this._animGroups[e].animations.push({key:d,properties:c,duration:g,fn:f,context:b,easing:h})},_stopAnimations:function(){clearTimeout(this._animtimer);this._animtimer=undefined;this._animGroups=undefined},_enableAnimTimer:function(){if(!this._animtimer){var b=this;this._animtimer=setTimeout(function(){b._runAnimation()},this._animTickInt)}},_runAnimation:function(){if(this._animGroups){var s=new Date();var h=s.getTime();var o={};for(var l in this._animGroups){var r=this._animGroups[l].animations;var m=this._animGroups[l].startTick;var g=0;for(var n=0;ng){g=t.duration}var q=t.duration>0?b/t.duration:1;var k=q;if(t.easing&&t.duration!=0){k=jQuery.easing[t.easing](q,b,0,1,t.duration)}if(q>1){q=1;k=1}if(t.fn){t.fn(t.key,t.context,k);continue}var f={};for(var l=0;lh){o[l]=({startTick:m,animations:r})}}this._animGroups=o;if(this.renderer instanceof a.jqx.HTML5Renderer){this.renderer.refresh()}}this._animtimer=null;for(var l in this._animGroups){this._enableAnimTimer();break}}});a.jqx.toGreyScale=function(b){if(b.indexOf("#")==-1){return b}var c=a.jqx.cssToRgb(b);c[0]=c[1]=c[2]=Math.round(0.3*c[0]+0.59*c[1]+0.11*c[2]);var d=a.jqx.rgbToHex(c[0],c[1],c[2]);return"#"+d[0]+d[1]+d[2]},a.jqx._adjustColor=function(d,b){if(d.indexOf("#")==-1){return d}var e=a.jqx.cssToRgb(d);var d="#";for(var f=0;f<3;f++){var g=Math.round(b*e[f]);if(g>255){g=255}else{if(g<=0){g=0}}g=a.jqx.decToHex(g);if(g.toString().length==1){d+="0"}d+=g}return d.toUpperCase()};a.jqx.decToHex=function(b){return b.toString(16)},a.jqx.hexToDec=function(b){return parseInt(b,16)};a.jqx.rgbToHex=function(e,d,c){return[a.jqx.decToHex(e),a.jqx.decToHex(d),a.jqx.decToHex(c)]};a.jqx.hexToRgb=function(c,d,b){return[a.jqx.hexToDec(c),a.jqx.hexToDec(d),a.jqx.hexToDec(b)]};a.jqx.cssToRgb=function(b){if(b.indexOf("rgb")<=-1){return a.jqx.hexToRgb(b.substring(1,3),b.substring(3,5),b.substring(5,7))}return b.substring(4,b.length-1).split(",")};a.jqx.swap=function(b,d){var c=b;b=d;d=c};a.jqx.getNum=function(b){if(!a.isArray(b)){if(isNaN(b)){return 0}}else{for(var c=0;cc?b-0.5:b+0.5}return b};a.jqx._rup=function(c){var b=Math.round(c);if(c>b){b++}return b};a.jqx.log=function(c,b){return Math.log(c)/(b?Math.log(b):1)};a.jqx._mod=function(d,c){var e=Math.abs(d>c?c:d);var f=1;if(e!=0){while(e*f<100){f*=10}}d=d*f;c=c*f;return(d%c)/f};a.jqx._rnd=function(d,f,e,c){if(isNaN(d)){return d}var b=d-((c==true)?d%f:a.jqx._mod(d,f));if(d==b){return b}if(e){if(d>b){b+=f}}else{if(b>d){b-=f}}return b};a.jqx.commonRenderer={pieSlicePath:function(j,i,g,q,z,A,d){if(!q){q=1}var l=Math.abs(z-A);var o=l>180?1:0;if(l>=360){A=z+359.99}var p=z*Math.PI*2/360;var h=A*Math.PI*2/360;var v=j,u=j,f=i,e=i;var m=!isNaN(g)&&g>0;if(m){d=0}if(d+g>0){if(d>0){var k=l/2+z;var w=k*Math.PI*2/360;j+=d*Math.cos(w);i-=d*Math.sin(w)}if(m){var t=g;v=j+t*Math.cos(p);f=i-t*Math.sin(p);u=j+t*Math.cos(h);e=i-t*Math.sin(h)}}var s=j+q*Math.cos(p);var r=j+q*Math.cos(h);var c=i-q*Math.sin(p);var b=i-q*Math.sin(h);var n="";if(m){n="M "+u+","+e;n+=" a"+g+","+g;n+=" 0 "+o+",1 "+(v-u)+","+(f-e);n+=" L"+s+","+c;n+=" a"+q+","+q;n+=" 0 "+o+",0 "+(r-s)+","+(b-c)}else{n="M "+r+","+b;n+=" a"+q+","+q;n+=" 0 "+o+",1 "+(s-r)+","+(c-b);n+=" L"+j+","+i+" Z"}return n},measureText:function(o,f,g,n,l){var e=l._getTextParts(o,f,g);var i=e.width;var b=e.height;if(false==n){b/=0.6}var c={};if(isNaN(f)){f=0}if(f==0){c={width:a.jqx._rup(i),height:a.jqx._rup(b)}}else{var k=f*Math.PI*2/360;var d=Math.abs(Math.sin(k));var j=Math.abs(Math.cos(k));var h=Math.abs(i*d+b*j);var m=Math.abs(i*j+b*d);c={width:a.jqx._rup(m),height:a.jqx._rup(h)}}if(n){c.textPartsInfo=e}return c},alignTextInRect:function(q,n,b,r,m,o,i,p,e,d){var k=e*Math.PI*2/360;var c=Math.sin(k);var j=Math.cos(k);var l=m*c;var h=m*j;if(i=="center"||i==""||i=="undefined"){q=q+b/2}else{if(i=="right"){q=q+b}}if(p=="center"||p==""||p=="undefined"){n=n+r/2}else{if(p=="bottom"){n+=r-o/2}else{if(p=="top"){n+=o/2}}}d=d||"";var f="middle";if(d.indexOf("top")!=-1){f="top"}else{if(d.indexOf("bottom")!=-1){f="bottom"}}var g="center";if(d.indexOf("left")!=-1){g="left"}else{if(d.indexOf("right")!=-1){g="right"}}if(g=="center"){q-=h/2;n-=l/2}else{if(g=="right"){q-=h;n-=l}}if(f=="top"){q-=o*c;n+=o*j}else{if(f=="middle"){q-=o*c/2;n+=o*j/2}}q=a.jqx._rup(q);n=a.jqx._rup(n);return{x:q,y:n}}};a.jqx.svgRenderer=function(){};a.jqx.svgRenderer.prototype={_svgns:"http://www.w3.org/2000/svg",init:function(f){var d="
";f.append(d);this.host=f;var b=f.find(".chartContainer");b[0].style.width=f.width()+"px";b[0].style.height=f.height()+"px";var h;try{var c=document.createElementNS(this._svgns,"svg");c.setAttribute("id","svgChart");c.setAttribute("version","1.1");c.setAttribute("width","100%");c.setAttribute("height","100%");c.setAttribute("overflow","hidden");b[0].appendChild(c);this.canvas=c}catch(g){return false}this._id=new Date().getTime();this.clear();this._layout();this._runLayoutFix();return true},refresh:function(){},_runLayoutFix:function(){var b=this;this._fixLayout()},_fixLayout:function(){var g=a(this.canvas).position();var d=(parseFloat(g.left)==parseInt(g.left));var b=(parseFloat(g.top)==parseInt(g.top));if(a.jqx.browser.msie){var d=true,b=true;var e=this.host;var c=0,f=0;while(e&&e.position&&e[0].parentNode){var h=e.position();c+=parseFloat(h.left)-parseInt(h.left);f+=parseFloat(h.top)-parseInt(h.top);e=e.parent()}d=parseFloat(c)==parseInt(c);b=parseFloat(f)==parseInt(f)}if(!d){this.host.find("#tdLeft")[0].style.width="0.5px"}if(!b){this.host.find("#tdTop")[0].style.height="0.5px"}},_layout:function(){var c=a(this.canvas).offset();var b=this.host.find(".chartContainer");this._width=Math.max(a.jqx._rup(this.host.width())-1,0);this._height=Math.max(a.jqx._rup(this.host.height())-1,0);b[0].style.width=this._width;b[0].style.height=this._height;this._fixLayout()},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var b=this.host.find(".chartContainer");return b},clear:function(){while(this.canvas.childElementCount>0){this.canvas.removeChild(this.canvas.firstElementChild)}this._defaultParent=undefined;this._defs=document.createElementNS(this._svgns,"defs");this._gradients={};this.canvas.appendChild(this._defs)},removeElement:function(d){if(d!=undefined){try{while(d.firstChild){this.removeElement(d.firstChild)}if(d.parentNode){d.parentNode.removeChild(d)}else{this.canvas.removeChild(d)}}catch(c){var b=c}}},_openGroups:[],beginGroup:function(){var b=this._activeParent();var c=document.createElementNS(this._svgns,"g");b.appendChild(c);this._openGroups.push(c);return c},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(d){var e=document.createElementNS(this._svgns,"clipPath");var b=document.createElementNS(this._svgns,"rect");this.attr(b,{x:d.x,y:d.y,width:d.width,height:d.height,fill:"none"});this._clipId=this._clipId||0;e.id="cl"+this._id+"_"+(++this._clipId).toString();e.appendChild(b);this._defs.appendChild(e);return e},setClip:function(c,b){return this.attr(c,{"clip-path":"url(#"+b.id+")"})},_clipId:0,addHandler:function(b,d,c){b["on"+d]=c},shape:function(b,e){var c=document.createElementNS(this._svgns,b);if(!c){return undefined}for(var d in e){c.setAttribute(d,e[d])}this._activeParent().appendChild(c);return c},_getTextParts:function(q,g,h){var f={width:0,height:0,parts:[]};var m=0.6;var r=q.toString().split("
");var o=this._activeParent();var k=document.createElementNS(this._svgns,"text");this.attr(k,h);for(var j=0;j0?4:0);f.parts.push({width:l,height:b,text:c})}o.removeChild(k);return f},_measureText:function(e,d,c,b){return a.jqx.commonRenderer.measureText(e,d,c,b,this)},measureText:function(d,c,b){return this._measureText(d,c,b,false)},text:function(t,q,p,B,z,H,J,I,s,k,c){var v=this._measureText(t,H,J,true);var j=v.textPartsInfo;var f=j.parts;var A;if(!s){s="center"}if(!k){k="center"}if(f.length>1||I){A=this.beginGroup()}if(I){var g=this.createClipRect({x:a.jqx._rup(q)-1,y:a.jqx._rup(p)-1,width:a.jqx._rup(B)+2,height:a.jqx._rup(z)+2});this.setClip(A,g)}var o=this._activeParent();var L=0,l=0;var b=0.6;L=j.width;l=j.height;if(isNaN(B)||B<=0){B=L}if(isNaN(z)||z<=0){z=l}var r=B||0;var G=z||0;if(!H||H==0){p+=l;if(k=="center"){p+=(G-l)/2}else{if(k=="bottom"){p+=G-l}}if(!B){B=L}if(!z){z=l}var o=this._activeParent();var n=0;for(var F=f.length-1;F>=0;F--){var u=document.createElementNS(this._svgns,"text");this.attr(u,J);this.attr(u,{cursor:"default"});var E=u.ownerDocument.createTextNode(f[F].text);u.appendChild(E);var M=q;var m=f[F].width;var e=f[F].height;if(s=="center"){M+=(r-m)/2}else{if(s=="right"){M+=(r-m)}}this.attr(u,{x:a.jqx._rup(M),y:a.jqx._rup(p+n),width:a.jqx._rup(m),height:a.jqx._rup(e)});o.appendChild(u);n-=f[F].height+4}if(A){this.endGroup();return A}return u}var C=a.jqx.commonRenderer.alignTextInRect(q,p,B,z,L,l,s,k,H,c);q=C.x;p=C.y;var D=this.shape("g",{transform:"translate("+q+","+p+")"});var d=this.shape("g",{transform:"rotate("+H+")"});D.appendChild(d);var n=0;for(var F=f.length-1;F>=0;F--){var K=document.createElementNS(this._svgns,"text");this.attr(K,J);this.attr(K,{cursor:"default"});var E=K.ownerDocument.createTextNode(f[F].text);K.appendChild(E);var M=0;var m=f[F].width;var e=f[F].height;if(s=="center"){M+=(j.width-m)/2}else{if(s=="right"){M+=(j.width-m)}}this.attr(K,{x:a.jqx._rup(M),y:a.jqx._rup(n),width:a.jqx._rup(m),height:a.jqx._rup(e)});d.appendChild(K);n-=e+4}o.appendChild(D);if(A){this.endGroup()}return D},line:function(d,f,c,e,g){var b=this.shape("line",{x1:d,y1:f,x2:c,y2:e});this.attr(b,g);return b},path:function(c,d){var b=this.shape("path");b.setAttribute("d",c);if(d){this.attr(b,d)}return b},rect:function(b,g,c,e,f){b=a.jqx._ptrnd(b);g=a.jqx._ptrnd(g);c=a.jqx._rup(c);e=a.jqx._rup(e);var d=this.shape("rect",{x:b,y:g,width:c,height:e});if(f){this.attr(d,f)}return d},circle:function(b,f,d,e){var c=this.shape("circle",{cx:b,cy:f,r:d});if(e){this.attr(c,e)}return c},pieSlicePath:function(c,h,g,e,f,d,b){return a.jqx.commonRenderer.pieSlicePath(c,h,g,e,f,d,b)},pieslice:function(j,h,g,d,f,b,i,c){var e=this.pieSlicePath(j,h,g,d,f,b,i);var k=this.shape("path");k.setAttribute("d",e);if(c){this.attr(k,c)}return k},attr:function(b,d){if(!b||!d){return}for(var c in d){if(c=="textContent"){b.textContent=d[c]}else{b.setAttribute(c,d[c])}}},getAttr:function(c,b){return c.getAttribute(b)},_gradients:{},_toLinearGradient:function(e,g,h){var c="grd"+this._id+e.replace("#","")+(g?"v":"h");var b="url(#"+c+")";if(this._gradients[b]){return b}var d=document.createElementNS(this._svgns,"linearGradient");this.attr(d,{x1:"0%",y1:"0%",x2:g?"0%":"100%",y2:g?"100%":"0%",id:c});for(var f in h){var j=document.createElementNS(this._svgns,"stop");var i="stop-color:"+a.jqx._adjustColor(e,h[f][1]);this.attr(j,{offset:h[f][0]+"%",style:i});d.appendChild(j)}this._defs.appendChild(d);this._gradients[b]=true;return b},_toRadialGradient:function(e,h,g){var c="grd"+this._id+e.replace("#","")+"r"+(g!=undefined?g.key:"");var b="url(#"+c+")";if(this._gradients[b]){return b}var d=document.createElementNS(this._svgns,"radialGradient");if(g==undefined){this.attr(d,{cx:"50%",cy:"50%",r:"100%",fx:"50%",fy:"50%",id:c})}else{this.attr(d,{cx:g.x,cy:g.y,r:g.outerRadius,id:c,gradientUnits:"userSpaceOnUse"})}for(var f in h){var j=document.createElementNS(this._svgns,"stop");var i="stop-color:"+a.jqx._adjustColor(e,h[f][1]);this.attr(j,{offset:h[f][0]+"%",style:i});d.appendChild(j)}this._defs.appendChild(d);this._gradients[b]=true;return b}};a.jqx.vmlRenderer=function(){};a.jqx.vmlRenderer.prototype={init:function(g){var f="
";g.append(f);this.host=g;var b=g.find(".chartContainer");b[0].style.width=g.width()+"px";b[0].style.height=g.height()+"px";var d=true;try{for(var c=0;c0&&document.childNodes[0].data&&document.childNodes[0].data.indexOf("DOCTYPE")!=-1)){if(d){document.namespaces.add("v","urn:schemas-microsoft-com:vml")}this._ie8mode=true}else{if(d){document.namespaces.add("v","urn:schemas-microsoft-com:vml");document.createStyleSheet().cssText="v\\:* { behavior: url(#default#VML); display: inline-block; }"}}this.canvas=b[0];this._width=Math.max(a.jqx._rup(b.width()),0);this._height=Math.max(a.jqx._rup(b.height()),0);b[0].style.width=this._width+2;b[0].style.height=this._height+2;this._id=new Date().getTime();this.clear();return true},refresh:function(){},getRect:function(){return{x:0,y:0,width:this._width,height:this._height}},getContainer:function(){var b=this.host.find(".chartContainer");return b},clear:function(){while(this.canvas.childElementCount>0){this.canvas.removeChild(this.canvas.firstElementChild)}this._gradients={};this._defaultParent=undefined},removeElement:function(b){if(b!=null){b.parentNode.removeChild(b)}},_openGroups:[],beginGroup:function(){var b=this._activeParent();var c=document.createElement("v:group");c.style.position="absolute";c.coordorigin="0,0";c.coordsize=this._width+","+this._height;c.style.left=0;c.style.top=0;c.style.width=this._width;c.style.height=this._height;b.appendChild(c);this._openGroups.push(c);return c},endGroup:function(){if(this._openGroups.length==0){return}this._openGroups.pop()},_activeParent:function(){return this._openGroups.length==0?this.canvas:this._openGroups[this._openGroups.length-1]},createClipRect:function(b){var c=document.createElement("div");c.style.height=(b.height+1)+"px";c.style.width=(b.width+1)+"px";c.style.position="absolute";c.style.left=b.x+"px";c.style.top=b.y+"px";c.style.overflow="hidden";this._clipId=this._clipId||0;c.id="cl"+this._id+"_"+(++this._clipId).toString();this._activeParent().appendChild(c);return c},setClip:function(c,b){},_clipId:0,addHandler:function(b,d,c){if(a(b).on){a(b).on(d,c)}else{a(b).bind(d,c)}},_getTextParts:function(o,f,g){var e={width:0,height:0,parts:[]};var m=0.6;var p=o.toString().split("
");var n=this._activeParent();var j=document.createElement("v:textbox");this.attr(j,g);n.appendChild(j);for(var h=0;h0?2:0);e.parts.push({width:k,height:b,text:c})}n.removeChild(j);return e},_measureText:function(e,d,c,b){if(Math.abs(d)>45){d=90}else{d=0}return a.jqx.commonRenderer.measureText(e,d,c,b,this)},measureText:function(d,c,b){return this._measureText(d,c,b,false)},text:function(r,n,m,A,t,G,I,H,q,g){var B;if(I&&I.stroke){B=I.stroke}if(B==undefined){B="black"}var s=this._measureText(r,G,I,true);var e=s.textPartsInfo;var b=e.parts;var J=s.width;var j=s.height;if(isNaN(A)||A==0){A=J}if(isNaN(t)||t==0){t=j}var v;if(!q){q="center"}if(!g){g="center"}if(b.length>0||H){v=this.beginGroup()}if(H){var c=this.createClipRect({x:a.jqx._rup(n),y:a.jqx._rup(m),width:a.jqx._rup(A),height:a.jqx._rup(t)});this.setClip(v,c)}var l=this._activeParent();var p=A||0;var F=t||0;if(Math.abs(G)>45){G=90}else{G=0}var u=0,E=0;if(q=="center"){u+=(p-J)/2}else{if(q=="right"){u+=(p-J)}}if(g=="center"){E=(F-j)/2}else{if(g=="bottom"){E=F-j}}if(G==0){m+=j+E;n+=u}else{n+=J+u;m+=E}var k=0,K=0;var d;for(var D=b.length-1;D>=0;D--){var z=b[D];var o=(J-z.width)/2;if(G==0&&q=="left"){o=0}else{if(G==0&&q=="right"){o=J-z.width}else{if(G==90){o=(j-z.width)/2}}}var f=k-z.height;E=G==90?o:f;u=G==90?f:o;d=document.createElement("v:textbox");d.style.position="absolute";d.style.left=a.jqx._rup(n+u);d.style.top=a.jqx._rup(m+E);d.style.width=a.jqx._rup(z.width);d.style.height=a.jqx._rup(z.height);if(G==90){d.style.filter="progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"}var C=document.createElement("span");C.appendChild(document.createTextNode(z.text));if(I&&I["class"]){C.className=I["class"]}d.appendChild(C);l.appendChild(d);k-=z.height+(D>0?2:0)}if(v){this.endGroup();return l}return d},shape:function(b,e){var c=document.createElement(this._createElementMarkup(b));if(!c){return undefined}for(var d in e){c.setAttribute(d,e[d])}this._activeParent().appendChild(c);return c},line:function(e,g,d,f,h){var b="M "+e+","+g+" L "+d+","+f+" X E";var c=this.path(b);this.attr(c,h);return c},_createElementMarkup:function(b){var c="";if(this._ie8mode){c=c.replace('style=""','style="behavior: url(#default#VML);"')}return c},path:function(c,d){var b=document.createElement(this._createElementMarkup("shape"));b.style.position="absolute";b.coordsize=this._width+" "+this._height;b.coordorigin="0 0";b.style.width=parseInt(this._width);b.style.height=parseInt(this._height);b.style.left=0+"px";b.style.top=0+"px";b.setAttribute("path",c);this._activeParent().appendChild(b);if(d){this.attr(b,d)}return b},rect:function(b,g,c,d,f){b=a.jqx._ptrnd(b);g=a.jqx._ptrnd(g);c=a.jqx._rup(c);d=a.jqx._rup(d);var e=this.shape("rect",f);e.style.position="absolute";e.style.left=b;e.style.top=g;e.style.width=c;e.style.height=d;e.strokeweight=0;if(f){this.attr(e,f)}return e},circle:function(b,f,d,e){var c=this.shape("oval");b=a.jqx._ptrnd(b-d);f=a.jqx._ptrnd(f-d);d=a.jqx._rup(d);c.style.position="absolute";c.style.left=b;c.style.top=f;c.style.width=d*2;c.style.height=d*2;if(e){this.attr(c,e)}return c},updateCircle:function(d,b,e,c){if(b==undefined){b=parseFloat(d.style.left)+parseFloat(d.style.width)/2}if(e==undefined){e=parseFloat(d.style.top)+parseFloat(d.style.height)/2}if(c==undefined){c=parseFloat(d.width)/2}b=a.jqx._ptrnd(b-c);e=a.jqx._ptrnd(e-c);c=a.jqx._rup(c);d.style.left=b;d.style.top=e;d.style.width=c*2;d.style.height=c*2},pieSlicePath:function(k,j,h,r,B,C,d){if(!r){r=1}var m=Math.abs(B-C);var p=m>180?1:0;if(m>360){B=0;C=360}var q=B*Math.PI*2/360;var i=C*Math.PI*2/360;var w=k,v=k,f=j,e=j;var n=!isNaN(h)&&h>0;if(n){d=0}if(d>0){var l=m/2+B;var A=l*Math.PI*2/360;k+=d*Math.cos(A);j-=d*Math.sin(A)}if(n){var u=h;w=a.jqx._ptrnd(k+u*Math.cos(q));f=a.jqx._ptrnd(j-u*Math.sin(q));v=a.jqx._ptrnd(k+u*Math.cos(i));e=a.jqx._ptrnd(j-u*Math.sin(i))}var t=a.jqx._ptrnd(k+r*Math.cos(q));var s=a.jqx._ptrnd(k+r*Math.cos(i));var c=a.jqx._ptrnd(j-r*Math.sin(q));var b=a.jqx._ptrnd(j-r*Math.sin(i));r=a.jqx._ptrnd(r);h=a.jqx._ptrnd(h);k=a.jqx._ptrnd(k);j=a.jqx._ptrnd(j);var g=Math.round(B*65535);var z=Math.round((C-B)*65536);if(h<0){h=1}var o="";if(n){o="M"+w+" "+f;o+=" AE "+k+" "+j+" "+h+" "+h+" "+g+" "+z;o+=" L "+s+" "+b;g=Math.round((B-C)*65535);z=Math.round(C*65536);o+=" AE "+k+" "+j+" "+r+" "+r+" "+z+" "+g;o+=" L "+w+" "+f}else{o="M"+k+" "+j;o+=" AE "+k+" "+j+" "+r+" "+r+" "+g+" "+z}o+=" X E";return o},pieslice:function(k,i,h,e,g,b,j,d){var f=this.pieSlicePath(k,i,h,e,g,b,j);var c=this.path(f,d);if(d){this.attr(c,d)}return c},_keymap:[{svg:"fill",vml:"fillcolor"},{svg:"stroke",vml:"strokecolor"},{svg:"stroke-width",vml:"strokeweight"},{svg:"stroke-dasharray",vml:"dashstyle"},{svg:"fill-opacity",vml:"fillopacity"},{svg:"stroke-opacity",vml:"strokeopacity"},{svg:"opacity",vml:"opacity"},{svg:"cx",vml:"style.left"},{svg:"cy",vml:"style.top"},{svg:"height",vml:"style.height"},{svg:"width",vml:"style.width"},{svg:"x",vml:"style.left"},{svg:"y",vml:"style.top"},{svg:"d",vml:"v"},{svg:"display",vml:"style.display"}],_translateParam:function(b){for(var c in this._keymap){if(this._keymap[c].svg==b){return this._keymap[c].vml}}return b},attr:function(c,e){if(!c||!e){return}for(var d in e){var b=this._translateParam(d);if(b=="fillcolor"&&e[d].indexOf("grd")!=-1){c.type=e[d]}else{if(b=="opacity"||b=="fillopacity"){if(c.fill){c.fill.opacity=e[d]}}else{if(b=="textContent"){c.children[0].innerText=e[d]}else{if(b=="dashstyle"){c.dashstyle=e[d].replace(","," ")}else{if(b.indexOf("style.")==-1){c[b]=e[d]}else{c.style[b.replace("style.","")]=e[d]}}}}}}},getAttr:function(d,c){var b=this._translateParam(c);if(b=="opacity"||b=="fillopacity"){if(d.fill){return d.fill.opacity}else{return 1}}if(b.indexOf("style.")==-1){return d[b]}return d.style[b.replace("style.","")]},_gradients:{},_toRadialGradient:function(b,d,c){return b},_toLinearGradient:function(g,i,j){if(this._ie8mode){return g}var d="grd"+g.replace("#","")+(i?"v":"h");var e="#"+d+"";if(this._gradients[e]){return e}var f=document.createElement(this._createElementMarkup("fill"));f.type="gradient";f.method="linear";f.angle=i?0:90;var c="";for(var h in j){if(h>0){c+=", "}c+=j[h][0]+"% "+a.jqx._adjustColor(g,j[h][1])}f.colors=c;var b=document.createElement(this._createElementMarkup("shapetype"));b.appendChild(f);b.id=d;this.canvas.appendChild(b);return e}};a.jqx.HTML5Renderer=function(){};a.jqx.ptrnd=function(c){if(Math.abs(Math.round(c)-c)==0.5){return c}var b=Math.round(c);if(b");this.canvas=b.find("#__jqxCanvasWrap");this.canvas[0].width=b.width();this.canvas[0].height=b.height();this.ctx=this.canvas[0].getContext("2d")}catch(c){return false}return true},getContainer:function(){if(this.canvas&&this.canvas.length==1){return this.canvas}return undefined},getRect:function(){return{x:0,y:0,width:this.canvas[0].width-1,height:this.canvas[0].height-1}},beginGroup:function(){},endGroup:function(){},setClip:function(){},createClipRect:function(b){},addHandler:function(b,d,c){},clear:function(){this._elements={};this._maxId=0;this._renderers._gradients={};this._gradientId=0},removeElement:function(b){if(undefined==b){return}if(this._elements[b.id]){delete this._elements[b.id]}},_maxId:0,shape:function(b,e){var c={type:b,id:this._maxId++};for(var d in e){c[d]=e[d]}this._elements[c.id]=c;return c},attr:function(b,d){for(var c in d){b[c]=d[c]}},rect:function(b,g,c,e,f){if(isNaN(b)){throw'Invalid value for "x"'}if(isNaN(g)){throw'Invalid value for "y"'}if(isNaN(c)){throw'Invalid value for "width"'}if(isNaN(e)){throw'Invalid value for "height"'}var d=this.shape("rect",{x:b,y:g,width:c,height:e});if(f){this.attr(d,f)}return d},path:function(b,d){var c=this.shape("path",d);this.attr(c,{d:b});return c},line:function(c,e,b,d,f){return this.path("M "+c+","+e+" L "+b+","+d,f)},circle:function(b,f,d,e){var c=this.shape("circle",{x:b,y:f,r:d});if(e){this.attr(c,e)}return c},pieSlicePath:function(c,h,g,e,f,d,b){return a.jqx.commonRenderer.pieSlicePath(c,h,g,e,f,d,b)},pieslice:function(j,h,g,e,f,b,i,c){var d=this.path(this.pieSlicePath(j,h,g,e,f,b,i),c);this.attr(d,{x:j,y:h,innerRadius:g,outerRadius:e,angleFrom:f,angleTo:b});return d},_getCSSStyle:function(c){var g=document.styleSheets;try{for(var d=0;d");for(var h=0;h0?4:0);e.parts.push({width:j,height:c,text:d})}return e},_measureText:function(e,d,c,b){return a.jqx.commonRenderer.measureText(e,d,c,b,this)},measureText:function(d,c,b){return this._measureText(d,c,b,false)},text:function(m,l,j,c,n,f,g,d,h,k,e){var o=this.shape("text",{text:m,x:l,y:j,width:c,height:n,angle:f,clip:d,halign:h,valign:k,rotateAround:e});if(g){this.attr(o,g)}o.fontFamily="Arial";o.fontSize="10pt";o.fontWeight="";o.color="#000000";if(g&&g["class"]){var b=this._getCSSStyle(g["class"]);o.fontFamily=b.fontFamily||o.fontFamily;o.fontSize=b.fontSize||o.fontSize;o.fontWeight=b.fontWeight||o.fontWeight;o.color=b.color||o.color}var i=this._measureText(m,0,g,true);this.attr(o,{textPartsInfo:i.textPartsInfo,textWidth:i.width,textHeight:i.height});if(c<=0||isNaN(c)){this.attr(o,{width:i.width})}if(n<=0||isNaN(n)){this.attr(o,{height:i.height})}return o},_toLinearGradient:function(c,g,f){if(this._renderers._gradients[c]){return c}var b=[];for(var e=0;e="0"&&d[b]<="9")||d[b]=="."||(d[b]=="-"&&!e)){e=true;continue}if(!e&&(d[b]==" "||d[b]==",")){this._pos++;continue}break}var c=parseFloat(d.substring(this._pos,b));if(isNaN(c)){return undefined}this._pos=b;return c},_pos:0,_cmds:"mlcaz",_lastCmd:"",_isRelativeCmd:function(b){return a.jqx.string.contains(this._cmds,b)},_parseCmd:function(b){for(var c=this._pos;c="0"&&b[c]<="9"){this._pos=c;if(this._lastCmd==""){break}else{return this._lastCmd}}}return undefined},_toAbsolutePoint:function(b){return{x:this._currentPoint.x+b.x,y:this._currentPoint.y+b.y}},_currentPoint:{x:0,y:0},path:function(C,L){var z=L.d;this._pos=0;this._lastCmd="";var k=undefined;this._currentPoint={x:0,y:0};C.beginPath();var G=0;while(this._pos1){g*=Math.sqrt(j);f*=Math.sqrt(j)}var p=(N==e?-1:1)*Math.sqrt(((Math.pow(g,2)*Math.pow(f,2))-(Math.pow(g,2)*Math.pow(I.y,2))-(Math.pow(f,2)*Math.pow(I.x,2)))/(Math.pow(g,2)*Math.pow(I.y,2)+Math.pow(f,2)*Math.pow(I.x,2)));if(isNaN(p)){p=0}var H={x:p*g*I.y/f,y:p*-f*I.x/g};var B={x:(h.x+o.x)/2+Math.cos(J)*H.x-Math.sin(J)*H.y,y:(h.y+o.y)/2+Math.sin(J)*H.x+Math.cos(J)*H.y};var A=function(i){return Math.sqrt(Math.pow(i[0],2)+Math.pow(i[1],2))};var t=function(m,i){return(m[0]*i[0]+m[1]*i[1])/(A(m)*A(i))};var M=function(m,i){return(m[0]*i[1]=1){K=0}if(e==0&&K>0){K=K-2*Math.PI}if(e==1&&K<0){K=K+2*Math.PI}var t=(g>f)?g:f;var w=(g>f)?1:g/f;var q=(g>f)?f/g:1;C.translate(B.x,B.y);C.rotate(J);C.scale(w,q);C.arc(0,0,t,E,E+K,1-e);C.scale(1/w,1/q);C.rotate(-J);C.translate(-B.x,-B.y);continue}if((F=="Z"||F=="z")&&k!=undefined){C.lineTo(k.x,k.y);this._currentPoint=k;continue}if(F=="C"||F=="c"){var d=this._parsePoint(z);var c=this._parsePoint(z);var b=this._parsePoint(z);C.bezierCurveTo(d.x,d.y,c.x,c.y,b.x,b.y);this._currentPoint=b;continue}}C.fill();C.stroke();C.closePath()},text:function(u,D){var n=a.jqx.ptrnd(D.x);var m=a.jqx.ptrnd(D.y);var s=a.jqx.ptrnd(D.width);var q=a.jqx.ptrnd(D.height);var p=D.halign;var g=D.valign;var A=D.angle;var b=D.rotateAround;var e=D.textPartsInfo;var d=e.parts;var B=D.clip;if(B==undefined){B=true}u.save();if(!p){p="center"}if(!g){g="center"}if(B){u.rect(n,m,s,q);u.clip()}var E=D.textWidth;var j=D.textHeight;var o=s||0;var z=q||0;u.fillStyle=D.color;u.font=D.fontWeight+" "+D.fontSize+" "+D.fontFamily;if(!A||A==0){m+=j;if(g=="center"){m+=(z-j)/2}else{if(g=="bottom"){m+=z-j}}if(!s){s=E}if(!q){q=j}var l=0;for(var v=d.length-1;v>=0;v--){var r=d[v];var F=n;var k=d[v].width;var c=d[v].height;if(p=="center"){F+=(o-k)/2}else{if(p=="right"){F+=(o-k)}}u.fillText(r.text,F,m+l);l-=r.height+(v>0?4:0)}u.restore();return}var t=a.jqx.commonRenderer.alignTextInRect(n,m,s,q,E,j,p,g,A,b);n=t.x;m=t.y;var f=A*Math.PI*2/360;u.translate(n,m);u.rotate(f);var l=0;var C=e.width;for(var v=d.length-1;v>=0;v--){var F=0;if(p=="center"){F+=(C-d[v].width)/2}else{if(p=="right"){F+=(C-d[v].width)}}u.fillText(d[v].text,F,l);l-=d[v].height+4}u.restore()}},refresh:function(){this.ctx.clearRect(0,0,this.canvas[0].width,this.canvas[0].height);for(var b in this._elements){var c=this._elements[b];this._renderers.setFillStyle(this.ctx,c);this._renderers.setStroke(this.ctx,c);this._renderers[this._elements[b].type](this.ctx,c)}}}})(jQuery);