-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathharry.min.js
33 lines (33 loc) · 16.1 KB
/
harry.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
var harry=function(l){var qa="#88a4d7 #d685c9 #86d685 #ffc34f #93c2ea #f28989 #f9eb8a".split(" "),L=function(a,f,b){var c;a=a&&a.constructor==Array&&3==a.length?a:(c=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(a))?[parseInt(c[1],10),parseInt(c[2],10),parseInt(c[3],10)]:(c=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(a))?[2.55*parseFloat(c[1]),2.55*parseFloat(c[2]),2.55*parseFloat(c[3])]:(c=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(a))?
[parseInt(c[1],16),parseInt(c[2],16),parseInt(c[3],16)]:(c=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(a))?[parseInt(c[1]+c[1],16),parseInt(c[2]+c[2],16),parseInt(c[3]+c[3],16)]:[0,0,0];"array"!=typeof f&&(f=[f,f,f]);for(c=0;3>c;++c)a[c]=Math.max(Math.min(a[c]+f[c],255),0);return void 0!=b?"rgba("+a.join(",")+","+b+")":"rgb("+a.join(",")+")"},Y=function(a){var b=a.match(/\d+px/i);return b?parseInt(b,10):(b=a.match(/[0-9\.]+em/i))?Math.floor(16*parseFloat(b)):(b=a.match(/\d+pt/i))?Math.floor(1.3333*
parseInt(b,10)):10},da=function(a){return 1E6<a?Math.floor(a/1E5)/10+"M":1E3<a?Math.floor(a/100)/10+"K":a},ra=function(a){var b=Math.floor(a).toString(),d=parseInt(b.substr(0,1),10);return d*parseFloat("1E"+(b.length-1))==a?a:(d+1)*parseFloat("1E"+(b.length-1))},X=function(a,b){if("object"==typeof b)for(var d in b)a[d]=b[d];return a},sa=function(a){a=a||window.event;if("offsetX"in a)return{x:a.offsetX,y:a.offsetY};var b=a.target;for(a={x:a.pageX,y:a.pageY};b.offsetParent;)a.x-=b.offsetLeft,a.y-=b.offsetTop,
b=b.offsetParent;return a},Ia=function(a,b,d){var c=document.createElement("canvas");if(a=a?"string"==typeof a?document.getElementById(a):a:document.body)return c.setAttribute("width",(b||a.clientWidth)+"px"),c.setAttribute("height",(d||a.clientHeight)+"px"),a.appendChild(c),c},Ja=function(a,b,d){var c=Y(b.font);if(a.pie)return c=b.x?2*c:!1===d?0:15,[c,c,c,c];d=/l/i.test(b.ypos);var g=/r/i.test(b.ypos),e=Math.floor(c/2),k=b.marks;return a.vertical?[b.y&&d?c+4:b.x?c:0,b.y?c:1,b.y&&g?c+4:b.x?c:1,b.x?
4+b.xwidth:b.y?c:0]:[b.y?e:0,b.y&&g?4+b.ywidth:b.x?c:1,b.x?3+c+k:b.y?c:1,b.y&&d?4+b.ywidth:b.x?e:0]},ta=function(a){var b={};for(a=(a||"line").split(":");a.length;)b[a.pop()]=!0;return b},ja=function(a,b){return b?Math.round(1E3*a/b)/10+"%":"0%"},ua=function(a,b,d,c,g){var e;g||(g={});c||(c=0);var k=g,q,ea="";if(b&&(ea="function"==typeof b?b(d):b,d))for(q in d)ea=ea.replace("%"+q,d[q]);k.lines=ea.split(/\n|\\n/);g.lh=Y(a.font)+c;g.h=g.lines.length*g.lh;g.w=0;for(e in g.lines)if((b=a.measureText(g.lines[e]).width+
2*c)>g.w)g.w=b;return g},B=l.canvas?l.canvas.constructor==HTMLCanvasElement?l.canvas:document.getElementById(l.canvas):Ia(l.container,l.width,l.height),M=B.width,Z=B.height,b=B.getContext("2d"),ka,va=l.background,C=ta(l.mode),$=(l.mode||"line").split(":")[0],Ka=(l.fill||"s")[0].toLowerCase().replace(/[^nsvhrdl]/g,"s"),N=parseFloat(l.opacity)||1,la=void 0==l.linewidth?1:parseInt(l.linewidth,10),La=l.linejoin||"miter",wa=void 0==l.barspace?"a":parseInt(l.barspace,10),xa=parseInt(l.radiuspoint,10)||
0,I=l.scale||{},v=l.mirror||{},n=X({color:"#a0a0a0",font:"normal 9px Helvetica, Arial, Sans-Serif",marks:0,xwidth:0,ywidth:0,ypos:"right"},l.labels),h=!1===l.mouseover?!1:X({radius:5,linewidth:2*la,circle:"#888",font:"normal 10px Helvetica, Arial, Sans-Serif",color:"#fff",bullet:"rgba(99,99,99,0.8)",axis:!1,text:"%t: %v"},l.mouseover),J,u=[],aa=!1,ya,ma,na,Ma=l.margins?!1:!0,F=l.margins||[0,0,0,0],G=X({color:"#a0a0a0",linewidth:1,x:"lr",y:[0,25,50,75,100]},l.grid),w=l.title?X({font:"bold 12px Helvetica, Arial, Sans-Serif",
color:"rgba(4,4,4,0.5)",z:"top"},l.title):!1,A=!1===l.legends?!1:X({color:"#666",font:"normal 10px Helvetica, Arial, Sans-Serif",layout:"v"},l.legends),s=[],U,x,r=0,O,P,ba,y,K,D,E,V,t,fa,H=1,ca,Q=v.x?function(a){return M-a}:function(a){return a},R=v.y?function(a){return Z-a}:function(a){return a},za=v.x?function(a){return-a}:function(a){return a},Aa=v.y?function(a){return-a}:function(a){return a},ga=function(){var a,f,d,c;d=/auto/i.test(I.top);var g=/auto/i.test(I.bottom);r=s.length;U=x=!1;P=O=ba=
0;n.xwidth=0;b.font=n.font;if(r){for(a=0;a<r;a++)f=s[a],U=!1===U?f.min:Math.min(f.min,U),x=!1===x?f.max:Math.max(f.max,x),f.maxlab&&(n.xwidth=Math.max(n.xwidth,b.measureText(f.maxlab).width));d?x=ra(x):I.top&&(x=I.top);!g&&I.bottom&&(U=I.bottom);if(C.stack){a=0;for(d=s[0].len;a<d;++a){for(f=c=0;f<r;++f)c+=s[f].val[a]||0;c>O&&(O=scaletop?ra(c):I.top?I.top:c)}P=I.bottom?O-U:O}else O=x,P=g?x-U:x;ba=g?U:I.bottom||0;n.ywidth=b.measureText(O||"0").width}n.fontpx=Y(n.font);"auto"==n.x&&(n.x=1,n.xauto=!0);
/none|false/.test(G.y)&&(G.y=[]);Ma&&(F=Ja(C,n,h));y=F[3];K=F[0];D=Math.max(M-F[1]-F[3],0);E=Math.max(Z-F[0]-F[2],0);V=y+D;t=K+E;if(v.x||v.y){var e=CanvasRenderingContext2D.prototype;b.createLinearGradient=function(a,c,f,d){return e.createLinearGradient.call(b,Q(a),R(c),Q(f),R(d))};b.clearRect=function(a,c,f,d){return e.clearRect.call(b,Q(a),R(c),za(f),Aa(d))};b.fillRect=function(a,c,f,d){return e.fillRect.call(b,Q(a),R(c),za(f),Aa(d))};b.fillText=function(a,c,f){return e.fillText.call(b,a,Q(c),R(f))};
b.moveTo=function(a,c){return e.moveTo.call(b,Q(a),R(c))};b.lineTo=function(a,c){return e.lineTo.call(b,Q(a),R(c))};b.arc=function(a,c,f,d,g){return e.arc.call(b,Q(a),R(c),f,d,g)}}},Ba=function(a){var b,d=a.labels||[],c,g=a.values&&"function"!=typeof a.values?a.values:a,e={val:[],lab:[],len:0,sum:0,avg:0,max:0,min:0xffffffffffff,tit:a.title||"dataset#"+(s.length+1),maxlab:"",col:a.color||l.color||qa[s.length%qa.length]};for(b in g)a=parseFloat(g[b]),isNaN(a)&&(a=null),e.val.push(a),c=d[b]||b,c.length>
e.maxlab.length&&(e.maxlab=c),e.lab.push(c),e.sum+=a,a>e.max&&(e.max=a),a&&a<e.min&&(e.min=a);e.len=e.val.length;e.avg=e.len?e.sum/e.len:0;s.push(e)},Ca=function(a){if(a instanceof Array&&"object"==typeof a[0]&&null!=a[0])for(var b=0,d=a.length;b<d;++b)Ba(a[b]);else Ba(a);ga()},Da=function(a){var f;switch(Ka){case "s":f=L(a,0,N);break;case "l":f=L(a,21,N);break;case "d":f=L(a,-21,N);break;case "v":f=b.createLinearGradient(0,t,0,K);f.addColorStop(0,L(a,-48,N));f.addColorStop(1,L(a,48,N));break;case "h":f=
b.createLinearGradient(y,0,V,0);f.addColorStop(0,L(a,-48,N));f.addColorStop(1,L(a,48,N));break;case "r":f=y+D/2;var d=K+E/2;f=b.createRadialGradient(f,d,0,f,d,E/2);f.addColorStop(0,L(a,-48,N));f.addColorStop(1,L(a,48,N))}return f?b.fillStyle=f:!1},Ea=function(a){la&&(b.lineWidth=la,b.lineJoin=La,b.strokeStyle=a,b.stroke())},oa=function(a){b.closePath();Da(a)&&b.fill();Ea(a)},S=function(a){a&&b.hasOwnProperty("shadowBlur")&&(a=a.split(/[ ,;:-]/),b.shadowOffsetX=parseInt(a[0]||1,10),b.shadowOffsetY=
parseInt(a[1]||1,10),b.shadowBlur=parseInt(a[2]||1,10),b.shadowColor=a[3]||"#000")},T=function(){b.hasOwnProperty("clearShadow")?b.clearShadow():b.hasOwnProperty("shadowBlur")&&(b.shadowOffsetX=b.shadowOffsetY=b.shadowBlur=0)},Fa=function(){w&&(S(w.shadow),b.font=w.font,b.textAlign=v.x?"right":"left",b.textBaseline=v.y?"bottom":"top",b.fillStyle=w.color,b.fillText(w.text,void 0==w.x?F[3]+2:w.x,void 0==w.y?F[0]+2:w.y),T())},Na=function(){if(!C.pie&&G.y){var a,f,d;b.lineWidth=G.linewidth;b.strokeStyle=
G.color;a=0;for(f=G.y.length;a<f;++a)b.beginPath(),C.vertical?(d=y+Math.round(D*G.y[a]/100),b.moveTo(d,K),b.lineTo(d,t)):(d=t-Math.round(E*G.y[a]/100),b.moveTo(y,d),b.lineTo(V,d)),b.stroke()}},Ga=function(a){var f,d=a.length,c=G.x,g=/a/i.test(c),e=/l/i.test(c),k=/r/i.test(c),q=parseInt(c,10);if(c){b.lineWidth=G.linewidth;b.strokeStyle=G.color;for(f=0;c&&f<d;++f)if(g||q&&0==f%q||0==f&&e||f==d-1&&k)b.beginPath(),C.vertical?(b.moveTo(y,a[f]),b.lineTo(V,a[f])):(b.moveTo(a[f],K),b.lineTo(a[f],t)),b.stroke()}},
Oa=function(){if(r&&n.y&&!C.pie){var a,f,d,c,g,e=10>P?100:100>P?10:1;S(n.shadow);b.font=n.font;b.fillStyle=n.color;if(C.vertical){b.textAlign="center";a=0;for(f=n.y.length;a<f;++a)d=y+Math.round(D*n.y[a]/100),g=ba+P*n.y[a]/100,g=Math.round(e*g)/e,n.yabr&&(g=da(g)),/r/i.test(n.ypos)&&(c=t+1,b.textBaseline=v.y?"bottom":"top",b.fillText(g,d,c)),/l/i.test(n.ypos)&&(c=K-2,b.textBaseline=v.y?"top":"bottom",b.fillText(g,d,c))}else{b.textBaseline="middle";a=0;for(f=n.y.length;a<f;++a)c=t-Math.round(E*n.y[a]/
100),g=ba+P*n.y[a]/100,g=Math.round(e*g)/e,n.yabr&&(g=da(g)),/r/i.test(n.ypos)&&(d=V+1,b.textAlign=v.x?"right":"left",b.fillText(g,d,c)),/l/i.test(n.ypos)&&(d=y-2,b.textAlign=v.x?"left":"right",b.fillText(g,d,c))}T()}},ha=function(a,f,d,c,g,e){b.save();f=Math.round(f);d=Math.round(d);if(n.x&&0==a%n.x){var k=!0;a=s[0].lab[a]||a;var q=0;b.font=n.font;n.xauto&&e&&(q=b.measureText(a).width,k=!("h"==e&&"center"==c&&f-q/2<fa||"v"==e&&d<fa));k&&(S(n.shadow),b.fillStyle=n.color,b.textAlign=c,b.textBaseline=
g,b.fillText(a,f,d),T(),fa="center"==c?f+q/2:d+n.fontpx)}n.marks&&(b.lineWidth=1,b.beginPath(),b.moveTo(f,t),b.lineTo(f,t+n.marks),b.strokeStyle=n.color,b.stroke());b.restore()},Pa=function(){if(!1!==A&&1<r){b.save();b.font=A.font;var a,f,d,c,g,e=[],k="h"==A.layout,q=d=0,n=Y(A.font)+3,h=r,m=n-3,p=6+m;g=k?3+n:3+n*h;c=void 0!=A.x?A.x:F[3]+2;var l=void 0!=A.y?A.y:F[0]+2+(w&&!w.x?2+Y(w.font):0);for(a=0;a<h;++a)f=b.measureText(s[a].tit).width,f>d&&(d=f),e.push(f),q+=f;f=k?(p+6)*h+q:9+m+d;b.lineWidth=1;
if(d=A.background)S(A.shadowbox),b.fillStyle=d,b.fillRect(c,l,f,g),T();if(d=A.border)b.strokeStyle=d,b.strokeRect(c,l,f,g);a=0;f=l+3;for(c+=3;a<h;++a){g=s[a];S(A.shadow);b.fillStyle=g.col;b.fillRect(c,f,m,m);T();if(d=A.border2)b.strokeStyle=d,b.strokeRect(c,f,m,m);S(A.shadow);b.textAlign=v.x?"right":"left";b.textBaseline=v.y?"bottom":"top";b.fillStyle=A.color;b.fillText(g.tit,c+3+m,f);T();k?c+=12+m+e[a]:f+=n}b.restore()}},Ha=function(a,f){b.save();b.font=h.font;var d,c,g=a.length,e,k=d=0,q=Y(h.font),
n=Math.floor(q/2),l=q+3,m,p,z=M;p=0;m=Z;var u=0,r=0,y,W;h.sort&&a.sort(function(a,b){return parseFloat(b.v)-parseFloat(a.v)});for(c=0;c<g;c++)r+=a[c].v;for(c=0;c<g;c++)e=a[c],y={v:e.v,V:da(e.v),l:s[e.nds].lab[e.n],n:e.n,t:s[e.nds].tit,p:e.pct||ja(e.v,r),s:r,S:da(r)},e=ua(b,h.text,y,3,e),e.w&&(e.h2=Math.floor(e.h/2),e.w>k&&(k=e.w),d+=e.h,e.r++,z>e.x-e.r&&(z=e.x-e.r),p<e.x+e.r&&(p=e.x+e.r),m>e.y&&(m=e.y),u<e.y&&(u=e.y));1<g&&(k+=6+q);if(d){h.header&&(h.header.font&&(b.font=h.header.font),W=ua(b,h.header.text,
y,3),W.w>k&&(k=W.w),d+=W.h);d+=3;f?(p=z+(p-z)/2-k/2,p+k>M&&(p=M-1-k)):p+k>=M&&(p=z-k);1>p&&(p=1);p=Math.floor(p);c=p+k;e=m+d/2+d/2;e>t&&(e=t-1);e=Math.floor(e);d=e-d;b.beginPath();b.moveTo(p,e);b.lineTo(c,e);b.lineTo(c,d);b.lineTo(p,d);b.closePath();h.bullet&&(S(h.shadowbox),b.strokStyle="",b.fillStyle=h.bullet,b.fill(),T());h.border&&(b.lineWidth=1,b.lineJoin="round",b.strokeStyle=h.border,b.stroke());b.textAlign=v.x?"right":"left";b.textBaseline=v.y?"bottom":"top";k=d+3;if(W){m=p+3;S(h.header.shadow);
b.fillStyle=h.header.color||h.color;for(d=0;d<W.lines.length;++d,k+=W.lh)b.fillText(W.lines[d],m,k);T();b.font=h.font}for(c=0;c<g;c++){e=a[c];m=p+3;1<g&&(b.beginPath(),b.arc(m+n,k+n,n,0,2*Math.PI),b.fillStyle=s[e.nds].col,b.fill(),m+=q+3);S(h.shadow);b.fillStyle=h.color;for(d=0;d<e.lines.length;++d,k+=l)b.fillText(e.lines[d],m,k);T()}}b.restore()},pa={line:function(){var a=r,f=P?E/P:0,d,c,g,e,k,q="curve"==$,h=t+n.marks+2,l=function(a,b,c,e,d,f){for(var g,k,m,n,p,l;d<=f;)if(null===e[d])d++;else if(q){g=
b[d];k=c[d];for(d++;d<=f&&null===e[d];)d++;d>f?a.lineTo(g,k):(m=(g+b[d])/2,n=(k+c[d])/2,p=(g+m)/2,l=(k+n)/2,a.quadraticCurveTo(g,k,p,l),p=(m+b[d])/2,l=(n+c[d])/2,a.quadraticCurveTo(m,n,p,l))}else a.lineTo(b[d],c[d]),d++};for(u=[];d=s[--a];)if(1<(k=d.len)){var m=[],p=[];for(c=0;c<k;++c){e=0;if(C.stack)for(g=0;g<=a;g++)e+=s[g].val[c]-ba;else e=d.val[c]-ba;m.push(y+Math.round(c*(D/(k-1))));p.push(t-Math.round(f*e*H))}a+1==r&&Ga(m);u.push({x:m,y:p,v:s[a].val,nds:a});c--;m.push(y+Math.round(c*(D/(k-1))));
p.push(t-Math.round(f*e));for(c=0;null===d.val[c];)c++;for(g=k-1;null===d.val[g];)g--;c<=g&&Da(d.col)&&(b.beginPath(),b.moveTo(m[c],t),b.lineTo(m[c],p[c]),l(b,m,p,d.val,c,g),b.lineTo(m[g],t),b.closePath(),b.fill());b.beginPath();b.moveTo(m[c],p[c]);l(b,m,p,d.val,c,g);Ea(d.col);if(0==a)for(c=0;c<k;++c)ha(c,m[c],h,"center",v.y?"bottom":"top","h");if(xa){b.fillStyle=d.col;for(c=0;c<k;++c)void 0!=d.val[c]&&(b.beginPath(),b.arc(m[c],p[c],xa,0,2*Math.PI),b.closePath(),b.fill())}}},curve:function(){pa.line()},
chart:function(){u=[];if(r){var a,f,d=s[0].len,c="a"==wa?1<r?4:0:wa,g=C.stack,e=C.vertical,k=g?1:r,q=e?E:D,q=d&&r?(q-c*(d-1))/d/k-1:0,l,h,m,p,z;a=e?D:E;var A=t+n.marks+2;f=[];var w=g?O?a/O:0:x?a/x:0;0>q&&(q=0);h=e?K:y;l=(e?E:D)/(d||1);for(a=0;a<=d;a++)f.push(Math.round(h+a*l));Ga(f);for(f=0;f<r;f++)u.push({x:[],y:[],v:[],nds:f});if(e){h=K;for(a=0;a<d;a++){ha(a,y-n.marks-2,h,"right","top","v");m=y;for(f=0;f<r;f++)e=s[f],p=g?m:y,m=p+Math.round(w*e.val[a]*H),l=Math.round(h),k=Math.round(h+q),null!==
e.val[a]&&(b.beginPath(),b.moveTo(p,l),b.lineTo(p,k),b.lineTo(m,k),b.lineTo(m,l),oa(e.col)),u[f].x.push(m),u[f].y.push(Math.floor(h+q/2)),u[f].v.push(e.val[a]),g||(h+=q+1);h+=g?q+1+c:c}}else{m=y;for(a=0;a<d;a++){ha(a,m+(q+1)*k/2,A,"center",v.y?"bottom":"top","h");h=t;for(f=0;f<r;f++)e=s[f],l=g?h:t,h=l-Math.round(w*e.val[a]*H),p=Math.round(m),z=Math.round(m+q),null!==e.val[a]&&(b.beginPath(),b.moveTo(p,l),b.lineTo(p,h),b.lineTo(z,h),b.lineTo(z,l),oa(e.col)),u[f].x.push(Math.floor(m+q/2)),u[f].y.push(h),
u[f].v.push(e.val[a]),g||(m+=q+1);m+=g?q+1+c:c}}}},pie:function(){u=[];if(r){var a,f=0,d=[],c=[],g=2*Math.PI,e=[],k=[];if(1<r){var h=0;for(a=0;a<r;a++)h+=s[a].sum;if(h){a=0;for(f=r;a<r;a++)d[a]=H*s[a].sum/h*g,c[a]=s[a].col,e.push(s[a].sum),k.push(ja(s[a].sum,h))}}else if(h=s[0],h.sum){f=h.len;for(a=0;a<f;a++)d[a]=H*h.val[a]/h.sum*g,c[a]=h.col,e.push(h.val[a]),k.push(ja(h.val[a],h.sum))}var g=y+Math.round(D/2),h=K+Math.round(E/2),l=Math.min(E/2,D/2)-1,t=l+n.fontpx,m,p,z=1.5*Math.PI,v,w,A,B,x=aa;ya=
l;ma=g;na=h;aa=x;for(a=0;a<f;a++)v=z+d[a],w=(z+v)/2,u.push({a:z%(2*Math.PI),n:a}),a===x?(m=g+10*Math.cos(w),p=h+10*Math.sin(w)):(m=g,p=h),b.beginPath(),C.donut?(b.arc(m,p,l/2,z,v,!1),b.arc(m,p,l,v,z,!0),z=1.5):(b.moveTo(m,p),b.arc(m,p,l,z,v,!1),z=2),oa(c[a]),a===x?(A=m+t/z*Math.cos(w),B=p+t/z*Math.sin(w)):ha(e[a],m+t*Math.cos(w),p+t*Math.sin(w),"center","middle"),z=v;!1!==x&&Ha([{x:A,y:B,r:0,v:e[x],pct:k[x],n:x,nds:1<r?x:0}],!0);u.sort(function(a,b){return a.a-b.a})}}},ia={line:function(a,f){var d,
c,g=!1,e,k,l=h.linewidth||1,n=[];if(u.length){for(d=0;d<u[0].x.length;++d)for(c=0;c<u.length;++c)if(e=u[c],void 0!=e.v[d]){e=C.vertical?Math.abs(f-e.y[d]):Math.abs(a-e.x[d]);if(!1===g||e<k)k=e,g=d;break}if(!1!==g){for(d=0;d<u.length;++d)if(e=u[d],void 0!=e.v[g]){h.border2&&(b.beginPath(),b.lineWidth=l+2,b.arc(e.x[g],e.y[g],h.radius,0,2*Math.PI),0==h.linewidth?(b.fillStyle=h.border2,b.fill()):(b.strokeStyle=h.border2,b.stroke()));b.beginPath();b.lineWidth=l;b.arc(e.x[g],e.y[g],h.radius,0,2*Math.PI);
0==h.linewidth?(b.fillStyle=h.circle,b.fill()):(b.strokeStyle=h.circle,b.stroke());if(h.axis){b.lineWidth=1;if(/x/i.test(h.axis)){for(k=e.y[g]+h.radius;k<t;)b.moveTo(e.x[g],k),k+=2,k>t&&(k=t),b.lineTo(e.x[g],k),k+=2;b.stroke()}if(/y/i.test(h.axis)){for(a=e.x[g]+h.radius;a<V;)b.moveTo(a,e.y[g]),a+=2,a>V&&(a=V),b.lineTo(a,e.y[g]),a+=2;b.stroke()}}n.push({x:e.x[g],y:e.y[g],r:l/2+1+h.radius,v:e.v[g],n:g,nds:e.nds})}Ha(n)}}},chart:function(a,b){ia.line(a,b)},curve:function(a,b){ia.line(a,b)},pie:function(a,
b){var d,c=0;if(Math.sqrt(Math.pow(a-ma,2)+Math.pow(b-na,2))<=ya){d=Math.PI-Math.atan2(na-b,a-ma);for(d=(d+3*Math.PI)%(2*Math.PI);c<u.length&&d>u[c].a;)c++;0>--c&&(c=u.length-1);0<=c&&(aa=u[c].n);ca(!0)}else!1!==aa&&(aa=!1,ca(!0))}};ca=function(a){fa=-1;b.translate(0.5,0.5);b.clearRect(-1,-1,M+1,Z+1);va&&(b.fillStyle=va,b.fillRect(-1,-1,M+1,Z+1));Na();Oa();w&&"top"==w.z?(pa[$](),Fa()):(Fa(),pa[$]());Pa();if(!a)if(B.onmouseover=B.onmousemove=B.onmouseout=void 0,aa=!1,h){ka=b.getImageData(0,0,M,Z);
if(J)ia[$](J.x,J.y);B.onmouseover=function(a){J=sa(a)};B.onmousemove=function(a){J&&(C.pie||b.putImageData(ka,0,0),J=sa(a),ia[$](Q(J.x),R(J.y)))};B.onmouseout=function(){J=void 0;b.putImageData(ka,0,0)}}else J=void 0;b.translate(-0.5,-0.5)};X=function(a){var b=100/6,d=1/(a*b),c;c=function(){ca();1>H&&(H+=d,1<=H&&(H=1),setTimeout(c,b))};H=0;c()};l.datas?Ca(l.datas):ga();l.anim?X(l.anim):ca();return{canvas:B,data:s,clear:function(){B.onmouseover=B.onmousemove=B.onmouseout=void 0;s=[];r=0;ga();return this},
load:function(a){Ca(a);return this},cls:function(){return this},draw:function(a){a&&($=(a||"line").split(":")[0],C=ta(a),ga());ca();return this}}},plotter=harry;