/*! * Chart.js * http://chartjs.org/ * * Copyright 2013 Nick Downie * Released under the MIT license * https://github.com/nnnick/Chart.js/blob/master/LICENSE.md */ ;window.Chart=function(d){var o=this;var a={linear:function(A){return A},easeInQuad:function(A){return A*A},easeOutQuad:function(A){return -1*A*(A-2)},easeInOutQuad:function(A){if((A/=1/2)<1){return 1/2*A*A}return -1/2*((--A)*(A-2)-1)},easeInCubic:function(A){return A*A*A},easeOutCubic:function(A){return 1*((A=A/1-1)*A*A+1)},easeInOutCubic:function(A){if((A/=1/2)<1){return 1/2*A*A*A}return 1/2*((A-=2)*A*A+2)},easeInQuart:function(A){return A*A*A*A},easeOutQuart:function(A){return -1*((A=A/1-1)*A*A*A-1)},easeInOutQuart:function(A){if((A/=1/2)<1){return 1/2*A*A*A*A}return -1/2*((A-=2)*A*A*A-2)},easeInQuint:function(A){return 1*(A/=1)*A*A*A*A},easeOutQuint:function(A){return 1*((A=A/1-1)*A*A*A*A+1)},easeInOutQuint:function(A){if((A/=1/2)<1){return 1/2*A*A*A*A*A}return 1/2*((A-=2)*A*A*A*A+2)},easeInSine:function(A){return -1*Math.cos(A/1*(Math.PI/2))+1},easeOutSine:function(A){return 1*Math.sin(A/1*(Math.PI/2))},easeInOutSine:function(A){return -1/2*(Math.cos(Math.PI*A/1)-1)},easeInExpo:function(A){return(A==0)?1:1*Math.pow(2,10*(A/1-1))},easeOutExpo:function(A){return(A==1)?1:1*(-Math.pow(2,-10*A/1)+1)},easeInOutExpo:function(A){if(A==0){return 0}if(A==1){return 1}if((A/=1/2)<1){return 1/2*Math.pow(2,10*(A-1))}return 1/2*(-Math.pow(2,-10*--A)+2)},easeInCirc:function(A){if(A>=1){return A}return -1*(Math.sqrt(1-(A/=1)*A)-1)},easeOutCirc:function(A){return 1*Math.sqrt(1-(A=A/1-1)*A)},easeInOutCirc:function(A){if((A/=1/2)<1){return -1/2*(Math.sqrt(1-A*A)-1)}return 1/2*(Math.sqrt(1-(A-=2)*A)+1)},easeInElastic:function(B){var C=1.70158;var D=0;var A=1;if(B==0){return 0}if((B/=1)==1){return 1}if(!D){D=1*0.3}if(A",scaleFontFamily:"'Arial'",scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowLabelBackdrop:true,scaleBackdropColor:"rgba(255,255,255,0.75)",scaleBackdropPaddingY:2,scaleBackdropPaddingX:2,segmentShowStroke:true,segmentStrokeColor:"#fff",segmentStrokeWidth:2,animation:true,animationSteps:100,animationEasing:"easeOutBounce",animateRotate:true,animateScale:false,onAnimationComplete:null};var A=(B)?v(o.PolarArea.defaults,B):o.PolarArea.defaults;return new e(C,A,d)};this.Radar=function(C,B){o.Radar.defaults={scaleOverlay:false,scaleOverride:false,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleShowLine:true,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:false,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowLabelBackdrop:true,scaleBackdropColor:"rgba(255,255,255,0.75)",scaleBackdropPaddingY:2,scaleBackdropPaddingX:2,angleShowLineOut:true,angleLineColor:"rgba(0,0,0,.1)",angleLineWidth:1,pointLabelFontFamily:"'Arial'",pointLabelFontStyle:"normal",pointLabelFontSize:12,pointLabelFontColor:"#666",pointDot:true,pointDotRadius:3,pointDotStrokeWidth:1,datasetStroke:true,datasetStrokeWidth:2,datasetFill:true,animation:true,animationSteps:60,animationEasing:"easeOutQuart",onAnimationComplete:null};var A=(B)?v(o.Radar.defaults,B):o.Radar.defaults;return new y(C,A,d)};this.Pie=function(C,B){o.Pie.defaults={segmentShowStroke:true,segmentStrokeColor:"#fff",segmentStrokeWidth:2,animation:true,animationSteps:100,animationEasing:"easeOutBounce",animateRotate:true,animateScale:false,onAnimationComplete:null};var A=(B)?v(o.Pie.defaults,B):o.Pie.defaults;return new u(C,A,d)};this.Doughnut=function(C,B){o.Doughnut.defaults={segmentShowStroke:true,segmentStrokeColor:"#fff",segmentStrokeWidth:2,percentageInnerCutout:50,animation:true,animationSteps:100,animationEasing:"easeOutBounce",animateRotate:true,animateScale:false,onAnimationComplete:null};var A=(B)?v(o.Doughnut.defaults,B):o.Doughnut.defaults;return new x(C,A,d)};this.Line=function(C,B){o.Line.defaults={scaleOverlay:false,scaleOverride:false,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:true,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowGridLines:true,scaleGridLineColor:"rgba(0,0,0,.05)",scaleGridLineWidth:1,bezierCurve:true,pointDot:true,pointDotRadius:4,pointDotStrokeWidth:2,datasetStroke:true,datasetStrokeWidth:2,datasetFill:true,animation:true,animationSteps:60,animationEasing:"easeOutQuart",onAnimationComplete:null};var A=(B)?v(o.Line.defaults,B):o.Line.defaults;return new t(C,A,d)};this.Bar=function(C,B){o.Bar.defaults={scaleOverlay:false,scaleOverride:false,scaleSteps:null,scaleStepWidth:null,scaleStartValue:null,scaleLineColor:"rgba(0,0,0,.1)",scaleLineWidth:1,scaleShowLabels:true,scaleLabel:"<%=value%>",scaleFontFamily:"'Arial'",scaleFontSize:12,scaleFontStyle:"normal",scaleFontColor:"#666",scaleShowGridLines:true,scaleGridLineColor:"rgba(0,0,0,.05)",scaleGridLineWidth:1,barShowStroke:true,barStrokeWidth:2,barValueSpacing:5,barDatasetSpacing:1,animation:true,animationSteps:60,animationEasing:"easeOutQuart",onAnimationComplete:null};var A=(B)?v(o.Bar.defaults,B):o.Bar.defaults;return new c(C,A,d)};var r=function(A){A.clearRect(0,0,s,q)};var e=function(G,E,M){var L,D,C,F,N,K,A;J();K=I();A=(E.scaleShowLabels)?E.scaleLabel:null;if(!E.scaleOverride){C=i(N,K.maxSteps,K.minSteps,K.maxValue,K.minValue,A)}else{C={steps:E.scaleSteps,stepValue:E.scaleStepWidth,graphMin:E.scaleStartValue,labels:[]};p(A,C.labels,C.steps,E.scaleStartValue,E.scaleStepWidth)}D=L/(C.steps);g(E,B,H,M);function J(){L=(z([s,q])/2);L-=b([E.scaleFontSize*0.5,E.scaleLineWidth*0.5]);F=E.scaleFontSize*2;if(E.scaleShowLabelBackdrop){F+=(2*E.scaleBackdropPaddingY);L-=E.scaleBackdropPaddingY*1.5}N=L;F=h(F,5)}function B(){for(var P=0;PS){S=G[R].value}if(G[R].valueMath.PI){M.textAlign="right"}else{M.textAlign="left"}}M.textBaseline="middle";M.fillText(H.labels[O],T,-R)}M.restore()}function J(){L=(z([s,q])/2);G=F.scaleFontSize*2;var Q=0;for(var P=0;PQ){Q=O}}L-=b([Q,((F.pointLabelFontSize/2)*1.5)]);L-=F.pointLabelFontSize;L=k(L,null,0);N=L;G=h(G,5)}function I(){var T=Number.MIN_VALUE;var O=Number.MAX_VALUE;for(var S=0;ST){T=H.datasets[S].data[R]}if(H.datasets[S].data[R]0){N.save();N.textAlign="right"}else{N.textAlign="center"}N.fillStyle=T.scaleFontColor;for(var W=0;W0){N.translate(I+W*J,R+T.scaleFontSize);N.rotate(-(E*(Math.PI/180)));N.fillText(U.labels[W],0,0);N.restore()}else{N.fillText(U.labels[W],I+W*J,R+T.scaleFontSize+3)}N.beginPath();N.moveTo(I+W*J,R+3);if(T.scaleShowGridLines&&W>0){N.lineWidth=T.scaleGridLineWidth;N.strokeStyle=T.scaleGridLineColor;N.lineTo(I+W*J,5)}else{N.lineTo(I+W*J,R+3)}N.stroke()}N.lineWidth=T.scaleLineWidth;N.strokeStyle=T.scaleLineColor;N.beginPath();N.moveTo(I,R+5);N.lineTo(I,5);N.stroke();N.textAlign="right";N.textBaseline="middle";for(var V=0;VV)?X:V}V+=10}K=s-V-H;J=Math.floor(K/(U.labels.length-1));I=s-H/2-K;R=C+T.scaleFontSize/2}function P(){D=q;N.font=T.scaleFontStyle+" "+T.scaleFontSize+"px "+T.scaleFontFamily;H=1;for(var W=0;WH)?V:H}if(s/U.labels.lengthaa){aa=U.datasets[Z].data[Y]}if(U.datasets[Z].data[Y]0){O.save();O.textAlign="right"}else{O.textAlign="center"}O.fillStyle=U.scaleFontColor;for(var X=0;X0){O.translate(H+X*I,S+U.scaleFontSize);O.rotate(-(E*(Math.PI/180)));O.fillText(V.labels[X],0,0);O.restore()}else{O.fillText(V.labels[X],H+X*I+I/2,S+U.scaleFontSize+3)}O.beginPath();O.moveTo(H+(X+1)*I,S+3);O.lineWidth=U.scaleGridLineWidth;O.strokeStyle=U.scaleGridLineColor;O.lineTo(H+(X+1)*I,5);O.stroke()}O.lineWidth=U.scaleLineWidth;O.strokeStyle=U.scaleLineColor;O.beginPath();O.moveTo(H,S+5);O.lineTo(H,5);O.stroke();O.textAlign="right";O.textBaseline="middle";for(var W=0;WW)?Y:W}W+=10}J=s-W-G;I=Math.floor(J/(V.labels.length));M=(I-U.scaleGridLineWidth*2-(U.barValueSpacing*2)-(U.barDatasetSpacing*V.datasets.length-1)-((U.barStrokeWidth/2)*V.datasets.length-1))/V.datasets.length;H=s-G/2-J;S=C+U.scaleFontSize/2}function Q(){D=q;O.font=U.scaleFontStyle+" "+U.scaleFontSize+"px "+U.scaleFontFamily;G=1;for(var X=0;XG)?W:G}if(s/V.labels.lengthab){ab=V.datasets[aa].data[Z]}if(V.datasets[aa].data[Z]G){if(PC){return C}}if(n(B)){if(A)[^\t]*)'/g,"$1\r").replace(/\t=(.*?)%>/g,"',$1,'").split("\t").join("');").split("%>").join("p.push('").split("\r").join("\\'")+"');}return p.join('');");return B?A(B):A}};