mirror of https://github.com/masayuki0812/c3.git
Quite good looking graph derived from d3.js
http://c3js.org
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
85 lines
43 KiB
85 lines
43 KiB
(function(P){function jd(){function r(d,f){d.attr("transform",function(d){return"translate("+(f(d)+ba)+", 0)"})}function x(d,f){d.attr("transform",function(d){return"translate(0,"+f(d)+")"})}function P(d){var f=d[0];d=d[d.length-1];return f<d?[f,d]:[d,f]}function Da(d){for(var f=[],r=Math.ceil(d[0]);r<d[1];r++)f.push(r);0<f.length&&0<f[0]&&f.unshift(f[0]-(f[1]-f[0]));return f}function Ea(d){d=d<ca.length?ca[d]:d;return N?N(d):d}function n(n){n.each(function(){var n=d.select(this),ka=Da(u.domain()), |
|
R=n.selectAll(".tick.major").data(ka,String),S=R.enter().insert("g","path").attr("class","tick major").style("opacity",1E-6),T=d.transition(R.exit()).style("opacity",1E-6).remove(),v=d.transition(R).style("opacity",1),H,N=u.rangeExtent?u.rangeExtent():P(u.range()),n=n.selectAll(".domain").data([0]);n.enter().append("path").attr("class","domain");var n=d.transition(n),y=u.copy(),ca=this.__chart__||y;this.__chart__=y;S.append("line");S.append("text");var la=S.select("line"),Ua=v.select("line"),ma=R.select("text"), |
|
Va=S.select("text"),Wa=v.select("text");ba=(y(1)-y(0))/2;R=ta?0:ba;switch(da){case "bottom":H=r;la.attr("y2",O);Va.attr("y",Math.max(O,0)+f);Ua.attr("x1",R).attr("x2",R).attr("y2",O);Wa.attr("x",0).attr("y",Math.max(O,0)+f);ma.attr("dy",".71em").style("text-anchor","middle");ma.text(function(d){return ka.length<X||0===d%Math.ceil(ka.length/X)?Ea(d):""});n.attr("d","M"+N[0]+","+I+"V0H"+N[1]+"V"+I);break;case "left":H=x,la.attr("x2",-O),Va.attr("x",-(Math.max(O,0)+f)),Ua.attr("x2",-O).attr("y2",0), |
|
Wa.attr("x",-(Math.max(O,0)+f)).attr("y",ba),ma.attr("dy",".32em").style("text-anchor","end"),ma.text(function(d){return ka.length<X||0===d%Math.ceil(ka.length/X)?Ea(d):""}),n.attr("d","M"+-I+","+N[0]+"H0V"+N[1]+"H"+-I)}if(u.ticks)S.call(H,ca),v.call(H,y),T.call(H,y);else{var Xa=y.rangeBand()/2,T=function(d){return y(d)+Xa};S.call(H,T);v.call(H,T)}})}var u=d.scale.linear(),da="bottom",O=6,I=6,f=3,ta=!1,X=10,ba=0,N=null,ca=[];n.scale=function(d){if(!arguments.length)return u;u=d;return n};n.orient= |
|
function(d){if(!arguments.length)return da;da=d in{top:1,right:1,bottom:1,left:1}?d+"":"bottom";return n};n.categories=function(d){if(!arguments.length)return ca;ca=d;return n};n.tickCentered=function(d){if(!arguments.length)return ta;ta=d;return n};n.tickTextNum=function(d){if(!arguments.length)return X;X=d;return n};n.tickFormat=function(d){if(!arguments.length)return N;N=d;return n};n.tickOffset=function(){return ba};n.ticks=function(){};return n}function x(d){return"undefined"===typeof d}function r(d){return"undefined"!== |
|
typeof d}var xb=P.c3={},d=P.d3;xb.generate=function(aa){var Zb,$b,Da,Ea,n,u,da,O,I;function f(a,b){for(var c=aa,e=0;e<a.length;e++){if(!(a[e]in c))return b;c=c[a[e]]}return c}function ta(){yb=null===Ya?ba():Ya;ua=X();cc=20+dc+na;ec=Za?Za:zb?$a||l?1:40:20;ab=bb?bb:cb?1:40;fc=ua-dc-na;gc=20+na;hc=ua-na;u=0;da=ec;O=cc;I=ab;Da=fc;Ea=gc;n=ab;Zb=hc;$b=ab;q=yb-I-da;t=ua-u-O;va=ua-Da-Ea;Ab=t/2;db=0.95*Ab}function X(){var a=null===ic?+d.select(wa).style("height").replace("px",""):ic;return 0<a?a:320}function ba(){return+d.select(wa).style("width").replace("px", |
|
"")}function N(){return q+2+I+da}function ca(){return 40}function ka(){return I+20}function xb(){return t-u+42}function kd(){var a=l?t:q,b=jc(),c=eb();return 1<c?a*b/(c-1):a}function R(){kc=l?10:0;lc=l?t:q;Bb=l?0:t;Cb=l?q:1;m=S(kc,lc,r(m)?m.domain():void 0,function(){return J.tickOffset()});z=T(Bb,Cb,r(z)?z.domain():void 0);Y=T(Bb,Cb,r(Y)?Y.domain():void 0);U=S(0,q,r(V)?V:void 0,function(a){return 0===a%1?fb.tickOffset():0});gb=T(va,10);hb=T(va,10);J=ac(m,ld);oa=d.svg.axis().scale(z).orient(md);ib= |
|
d.svg.axis().scale(Y).orient(nd);fb=ac(U,od);jb=Ua();mc=ma();nc=ma(0.98)}function S(a,b,c,e){var k=(B?d.time.scale():d.scale.linear()).range([a,b]);k.orgDomain=function(){return k.domain()};r(c)&&k.domain(c);x(e)&&(e=function(){return 0});if(ea){var D=k,f,k=function(a){return D(a)+e(a)};for(f in D)k[f]=D[f];k.orgDomain=function(){return D.domain()};k.domain=function(a){if(!arguments.length)return a=D.domain(),[a[0],a[1]+1];D.domain(a);return k}}return k}function T(a,b){return d.scale.linear().range([a, |
|
b])}function v(a){return"y2"===y(a)?Y:z}function H(a){return"y2"===y(a)?hb:gb}function ac(a,b){var c=(ea?jd():d.svg.axis()).scale(a).orient(b);c.tickFormat(bc());ea?c.categories(Fa).tickCentered(pd):c.tickOffset=function(){return 0};return c}function y(a){return a in oc?oc[a]:"y"}function bc(){var a=B?qd:ea?rd:function(a){return a};kb&&(a="function"===typeof kb?kb:B?function(a){return d.time.format(kb)(a)}:a);return a}function la(a){var b=!1;Db(g.data.targets).forEach(function(c){b||c.data.id!==a.data.id|| |
|
(b=!0,a=c)});return b?a:null}function Ua(){var a=d.svg.arc().outerRadius(db).innerRadius(0),b=function(b,e){var k;return e?a(b):(k=la(b))?a(k):"M 0 0"};b.centroid=a.centroid;return b}function ma(a){var b=d.svg.arc().outerRadius(Ab*(a?a:1)).innerRadius(0);return function(a){return(a=la(a))?b(a):"M 0 0"}}function Va(a){a=la(a);var b,c;b="";a&&(b=jb.centroid(a),a=b[0],b=b[1],c=Math.sqrt(a*a+b*b),b="translate("+0.8*(a/c)*db+","+0.8*(b/c)*db+")");return b}function Wa(a){return(100*(a.endAngle-a.startAngle)/ |
|
(2*Math.PI)).toFixed(1)+"%"}function Xa(a,b){var c=p.selectAll(".chart-arc.target"+(a?"-"+a:"")),e=p.selectAll(".-arc").filter(function(b){return b.data.id!==a});c.selectAll("path").transition().duration(50).attr("d",mc).transition().duration(100).attr("d",nc);b||e.style("opacity",0.3)}function wb(a){p.selectAll(".chart-arc.target"+(a?"-"+a:"")).selectAll("path").transition().duration(50).attr("d",jb);p.selectAll(".-arc").style("opacity",1)}function sd(a){var b=pc(a),c,e,k,D;if(0<s.length)for(D=qc(a), |
|
c=0;c<s.length;c++)for(D&&b[s[c][0]].forEach(function(a,e){b[s[c][0]][e]=0>a?a:0}),e=s[c][0],a=1;a<s[c].length;a++)k=s[c][a],b[k]&&b[k].forEach(function(a,c){y(k)!==y(e)||!b[e]||D&&0<+a||(b[e][c]+=+a)});return d.min(Object.keys(b).map(function(a){return d.min(b[a])}))}function td(a){var b=pc(a),c,e,k,D;if(0<s.length)for(D=ud(a),c=0;c<s.length;c++)for(D&&b[s[c][0]].forEach(function(a,e){b[s[c][0]][e]=0<a?a:0}),e=s[c][0],a=1;a<s[c].length;a++)k=s[c][a],b[k]&&b[k].forEach(function(a,c){y(k)!==y(e)|| |
|
!b[e]||D&&0>+a||(b[e][c]+=+a)});return d.max(Object.keys(b).map(function(a){return d.max(b[a])}))}function lb(a){var b=mb(function(b){return y(b.id)===a}),c="y2"===a?vd:wd,e="y2"===a?xd:yd,c=c?c:sd(b),e=e?e:td(b),k=0.1*Math.abs(e-c),d=k,f=k,g="y2"===a?zd:Ad;g&&(c=Math.max(Math.abs(c),Math.abs(e)),e=c-g,c=g-c);"y"===a&&Ga&&(d=Ga.top?Ga.top:k,f=Ga.bottom?Ga.bottom:k);"y2"===a&&Ha&&(d=Ha.top?Ha.top:k,f=Ha.bottom?Ha.bottom:k);Ia(b,"bar")&&!qc(b)&&(f=c);return[c-f,e+d]}function jc(a){var b;a?(a=m.domain(), |
|
b=K.extent()):(a=V,b=m.domain());return(a[1]-a[0])/(b[1]-b[0])}function Bd(a){return d.min(a,function(a){return d.min(a.values,function(a){return a.x})})}function Cd(a){return d.max(a,function(a){return d.max(a.values,function(a){return a.x})})}function nb(a){var b=[Bd(a),Cd(a)];a=b[0];var b=b[1],c=ea?0:0.01*Math.abs(a-b);a=B?new Date(a.getTime()-c):a-c;b=B?new Date(b.getTime()+c):b+c;return[a,b]}function Dd(a){for(var b=0;b<a.length;b++)if(!(a[b]in ob))return!1;return!0}function Ed(a){for(var b= |
|
[],c=0;c<a.length;c++)a[c]in ob&&b.push(rc(ob[a[c]]));return b}function Eb(a){return"start"in a?m(B?pa(a.start):a.start):0}function sc(a){var b=Eb(a);a=("end"in a?m(B?pa(a.end):a.end):q)-b;return 0>a?0:a}function tc(a){return qa&&a===qa||Z&&Fd(Z,a)}function Gd(a){return!tc(a)}function Hd(a){Object.keys(a).forEach(function(b){Z[b]=a[b]})}function pb(a){var b;a&&(b=Ja[a.id],a.name=b?b:a.id);return a}function uc(a){var b=a[0],c={},e=[],k,d;for(k=1;k<a.length;k++){c={};for(d=0;d<a[k].length;d++)c[b[d]]= |
|
a[k][d];e.push(c)}return e}function vc(a){var b=[],c,e,k;for(c=0;c<a.length;c++)for(k=a[c][0],e=1;e<a[c].length;e++)x(b[e-1])&&(b[e-1]={}),b[e-1][k]=a[c][e];return b}function Ka(a){var b=d.keys(a[0]).filter(Gd),c=d.keys(a[0]).filter(tc);if(B&&0===c.length)return P.alert('data.x or data.xs must be specified when axis.x.type == "timeseries"'),[];Fb&&b.forEach(function(b){var k=qa?qa:Z?Z[b]:null;0<=c.indexOf(k)?g.data.x[b]=a.map(function(a){return a[k]}):g.data.x[b]=g.data.x[Object.keys(g.data.x)[0]]}); |
|
b=b.map(function(b){var c=Id(b);return{id:c,id_org:b,values:a.map(function(a,d){var f;f=qa?qa:Z?Z[b]:null;f=B?pa(a[f]):Fb?a[f]?a[f]:b in g.data.x&&g.data.x[b]&&g.data.x[b][d]?g.data.x[b][d]:d:d;a.x=f;return{x:f,value:null===a[b]||isNaN(a[b])?null:+a[b],id:c}})}});b.forEach(function(a){var b;a.values=a.values.sort(function(a,b){return(a.x||0===a.x?a.x:Infinity)-(b.x||0===b.x?b.x:Infinity)});b=0;a.values.forEach(function(a){a.index=b++})});b.forEach(function(a){ob[a.id_org]=rc(a)});return b}function rc(a){return{id:a.id, |
|
id_org:a.id_org,values:a.values.map(function(a){return{x:a.x,value:a.value,id:a.id}})}}function wc(a){return 0<a&&g.data.targets[0].values[a-1]?g.data.targets[0].values[a-1].x:void 0}function eb(){return d.max(g.data.targets,function(a){return a.values.length})}function Jd(){var a=g.data.targets.length,b=0,c;1<a?g.data.targets.forEach(function(a){a.values.length>b&&(c=a,b=a.values.length)}):c=a?g.data.targets[0]:null;return c}function qb(a){a=x(a)?g.data.targets:a;return a.map(function(a){return a.id})} |
|
function xc(a){var b=qb(),c;for(c=0;c<b.length;c++)if(b[c]===a)return!0;return!1}function mb(a){return r(a)?g.data.targets.filter(a):g.data.targets}function pc(a){var b={};a.forEach(function(a){b[a.id]=[];a.values.forEach(function(e){b[a.id].push(e.value)})});return b}function yc(a,b){var c=Object.keys(a),e,k,d;for(e=0;e<c.length;e++)for(d=a[c[e]].values,k=0;k<d.length;k++)if(b(d[k].value))return!0;return!1}function qc(a){return yc(a,function(a){return 0>a})}function ud(a){return yc(a,function(a){return 0< |
|
a})}function rd(a){return a<Fa.length?Fa[a]:a}function La(a){return"-shapes -shapes-"+a.id}function zc(a){return La(a)+" -line -line-"+a.id}function Kd(a){return La(a)+" -circles -circles-"+a.id}function Ac(a){return La(a)+" -bars -bars-"+a.id}function Ld(a){return La(a.data)+" -arc -arc-"+a.data.id}function Md(a){return La(a)+" -area -area-"+a.id}function Nd(a,b){return"-shape -shape-"+b+" -circle -circle-"+b}function Bc(a,b){return"-shape -shape-"+b+" -bar -bar-"+b}function Od(a,b){return"region region-"+ |
|
b+" "+("classes"in a?[].concat(a.classes).join(" "):"")}function Cc(a,b){return"event-rect event-rect-"+b}function xa(a){return m(a.x)}function Ma(a){return m(B?pa(a.value):a.value)}function Dc(a){return z(a.value)}function Ec(a,b){var c,e=a[b].x,k=[];for(c=b-1;0<=c&&e===a[c].x;c--)k.push(a[c]);for(c=b;c<a.length&&e===a[c].x;c++)k.push(a[c]);return k}function Fc(a,b,c,e){c=c?c:0;e=e?e:a.length-1;var k=Math.floor((e-c)/2)+c;0<m(a[k].x)-b[0]?e=k:c=k;return 1===e-c?(k=[],a[c].x&&(k=k.concat(Ec(a,c))), |
|
a[e].x&&(k=k.concat(Ec(a,e))),Gc(k,b)):Fc(a,b,c,e)}function Hc(a,b){var c;c=a.map(function(a){return Fc(a.values,b)});return Gc(c,b)}function Gc(a,b){var c,e;a.forEach(function(a){var d=Gb(a,b);if(d<c||!c)c=d,e=a});return e}function Ic(a,b){var c,e,k,d,f;W.html(Jc(a)).style("visibility","hidden").style("display","block");c=W.property("offsetWidth");e=W.property("offsetHeight");l?d=b[0]:(k=p.property("offsetLeft"),d=k+(bb?bb:cb?1:40)+m(a[0].x)+20,f=d+c,k=k+(null===Ya?ba():Ya)-(Za?Za:zb?$a||l?1:40: |
|
20),f>k&&(d-=c+30));c=b[1]+15+e<X()?b[1]+15:b[1]-e;W.style("top",c+"px").style("left",d+"px").style("visibility","visible")}function Kc(a){Ia(g.data.targets,"scatter")||C(g.data.targets)||h.selectAll("line.xgrid-focus").style("visibility","visible").data([a]).attr(l?"y1":"x1",xa).attr(l?"y2":"x2",xa)}function Lc(){h.select("line.xgrid-focus").style("visibility","hidden")}function fa(a){return a.x||0===a.x?m(a.x):null}function ga(a){return v(a.id)(a.value)}function Pd(){var a={},b=0,c,e;mb(rb).forEach(function(k){for(c= |
|
0;c<s.length;c++)if(!(0>s[c].indexOf(k.id)))for(e=0;e<s[c].length;e++)if(s[c][e]in a){a[k.id]=a[s[c][e]];break}x(a[k.id])&&(a[k.id]=b++)});a.__max__=b-1;return a}function Qd(a,b,c,e){var k=e?U:m;return b?function(e){var d=e.id in c?c[e.id]:0;return e.x||0===e.x?k(e.x)-a*(b/2-d):0}:function(){return 0}}function Rd(a){return function(b){return(a?H(b.id):v(b.id))(b.value)}}function Sd(a,b){var c=Object.keys(a);return function(e,k){var d=b?H(e.id):v(e.id),f=d(0),g=f;mb(rb).forEach(function(b){b.id!== |
|
e.id&&a[b.id]===a[e.id]&&c.indexOf(b.id)<c.indexOf(e.id)&&0<b.values[k].value*e.value&&(g+=d(b.values[k].value)-f)});return g}}function Na(a,b){var c=x(a)?qb():a;"string"===typeof c&&(c=[c]);for(var e=0;e<c.length;e++)E[c[e]]=b}function Ia(a,b){var c=!1;a.forEach(function(a){E[a.id]===b&&(c=!0);a.id in E||"line"!==b||(c=!0)});return c}function C(a){return Ia(a,"pie")}function Hb(a){a="string"===typeof a?a:a.id;return!(a in E)||"line"===E[a]||"spline"===E[a]||"area"===E[a]||"area-spline"===E[a]}function Mc(a){a= |
|
"string"===typeof a?a:a.id;return"spline"===E[a]||"area-spline"===E[a]}function rb(a){return"bar"===E["string"===typeof a?a:a.id]}function Nc(a){return"pie"===E["string"===typeof a?a:a.id]}function Oc(a){return rb(a)?a.values:[]}function Td(a){var b;(b=Hb(a))||(b="scatter"===E["string"===typeof a?a:a.id]);return b?a.values:[]}function pa(a){var b;if(!a)throw Error(a+" can not be parsed as d3.time with format "+Ib+". Maybe 'x' of this data is not defined. See data.x or data.xs option.");b=d.time.format(Ib).parse(a); |
|
if(!b)throw Error("Failed to parse '"+a+"' with format "+Ib);return b}function Pc(a,b){var c=d.mouse(a),e=d.select(a),k=1*e.attr("cx"),e=1*e.attr("cy");return Math.sqrt(Math.pow(k-c[0],2)+Math.pow(e-c[1],2))<b}function Qc(a){var b=d.mouse(a),c=d.select(a);a=1*c.attr("x");var e=1*c.attr("y"),c=1*c.attr("width");return a-10<b[0]&&b[0]<a+c+10&&e-10<b[1]}function Ud(a,b){var c;for(c=0;c<b.length;c++)if(b[c].start<a&&a<=b[c].end)return!0;return!1}function Fd(a,b){var c=!1;Object.keys(a).forEach(function(e){a[e]=== |
|
b&&(c=!0)});return c}function Gb(a,b){return Math.pow(m(a.x)-b[0],2)+Math.pow(z(a.value)-b[1],2)}function Rc(a,b,c){Vd(a,b);h.select(".selected-circles-"+b.id).selectAll(".selected-circle-"+c).data([b]).enter().append("circle").attr("class",function(){return"selected-circle selected-circle-"+c}).attr("cx",l?ga:fa).attr("cy",l?fa:ga).attr("stroke",function(){return L(b.id)}).attr("r",1.4*Oa).transition().duration(100).attr("r",Oa)}function Jb(a,b,c){Wd(a,b);h.select(".selected-circles-"+b.id).selectAll(".selected-circle-"+ |
|
c).transition().duration(100).attr("r",0).remove()}function Sc(a,b,c,e){a?Rc(b,c,e):Jb(b,c,e)}function Xd(){}function Tc(){}function Uc(a,b,c,e){}function Kb(a){return a.filter(function(a){return null!==a.value})}function Lb(a,b){return(b?h.selectAll(".-circles-"+b):h).selectAll(".-circle"+(a||0===a?"-"+a:""))}function Mb(a){Lb(a).filter(function(){return d.select(this).classed($)}).classed($,!1).attr("r",Nb)}function Vc(a){return h.selectAll(".-bar"+(a||0===a?"-"+a:""))}function Yd(a,b,c,e){var d, |
|
f,g="M",h,m,ya,n,p,q=[];if(r(e))for(d=0;d<e.length;d++)q[d]={},x(e[d].start)?q[d].start=a[0].x:q[d].start=B?pa(e[d].start):e[d].start,x(e[d].end)?q[d].end=a[a.length-1].x:q[d].end=B?pa(e[d].end):e[d].end;n=l?function(a){return c(a.value)}:function(a){return b(a.x)};p=l?function(a){return b(a.x)}:function(a){return c(a.value)};e=B?function(a,e,d,k){var f=a.x.getTime();a=e.x-a.x;e=new Date(f+a*(d+k));return"M"+b(new Date(f+a*d))+" "+c(m(d))+" "+b(e)+" "+c(m(d+k))}:function(a,e,d,k){return"M"+b(h(d))+ |
|
" "+c(m(d))+" "+b(h(d+k))+" "+c(m(d+k))};for(d=0;d<a.length;d++)if(x(q)||!Ud(a[d].x,q))g+=" "+n(a[d])+" "+p(a[d]);else{h=S(a[d-1].x,a[d].x);m=T(a[d-1].value,a[d].value);f=b(a[d].x)-b(a[d-1].x);ya=c(a[d].value)-c(a[d-1].value);f=Math.sqrt(Math.pow(f,2)+Math.pow(ya,2));ya=2/f;var t=2*ya;for(f=ya;1>=f;f+=t)g+=e(a[d-1],a[d],f,ya)}return g}function Ob(a){var b;sb=d.select(wa);if(sb.empty())P.alert('No bind element found. Check the selector specified by "bindto" and existance of that element. Default "bindto" is "#chart".'); |
|
else{sb.html("");g.data.x={};g.data.targets=Ka(a);ta();R();m.domain(d.extent(nb(g.data.targets)));z.domain(lb("y"));Y.domain(lb("y2"));U.domain(m.domain());gb.domain(z.domain());hb.domain(Y.domain());J.ticks(10>a.length?a.length:10);oa.ticks(Zd).outerTickSize(0).tickFormat($d);ib.ticks(ae).outerTickSize(0).tickFormat(be);V=m.domain();K.x(U);ra&&F.x(m);p=d.select(wa).append("svg").attr("width",q+I+da).attr("height",t+u+O).on("mouseenter",ce).on("mouseleave",de);tb=p.append("defs");tb.append("clipPath").attr("id", |
|
Pb).append("rect").attr("y",u).attr("width",q).attr("height",t-u);tb.append("clipPath").attr("id","xaxis-clip").append("rect").attr("x",-1-I).attr("y",-20).attr("width",N).attr("height",ca);tb.append("clipPath").attr("id","yaxis-clip").append("rect").attr("x",-I+1).attr("y",u-1).attr("width",ka).attr("height",xb);h=p.append("g").attr("transform",M.main);A=za?p.append("g").attr("transform",M.context):null;Aa=Ba?p.append("g").attr("transform",M.legend):null;W=d.select(wa).style("position","relative").append("div").style("position", |
|
"absolute").style("z-index","10").style("display","none");h.append("g").attr("class","x axis").attr("clip-path",l?"":"url(#xaxis-clip)").attr("transform",M.x).call(l?oa:J).append("text").attr("class","-axis-x-label").attr("x",q).attr("dy","-.5em").style("text-anchor","end").text(ee);h.append("g").attr("class","y axis").attr("clip-path",l?"url(#yaxis-clip)":"").call(l?J:oa).append("text").attr("transform","rotate(-90)").attr("dy","1.2em").attr("dx","-.5em").style("text-anchor","end").text(fe);zb&& |
|
h.append("g").attr("class","y2 axis").attr("transform",M.y2).call(ib);a=h.append("g").attr("clip-path",Pa).attr("class","grid");Wc&&a.append("g").attr("class","xgrids");Qb&&(b=a.append("g").attr("class","xgrid-lines").selectAll(".xgrid-line").data(Qb).enter().append("g").attr("class","xgrid-line"),b.append("line").attr("class",function(a){return""+a["class"]}),b.append("text").attr("class",function(a){return""+a["class"]}).attr("text-anchor","end").attr("transform",l?"":"rotate(-90)").attr("dx",l? |
|
0:-u).attr("dy",-6).text(function(a){return a.text}));ge&&a.append("g").attr("class","xgrid-focus").append("line").attr("class","xgrid-focus").attr("x1",l?0:-10).attr("x2",l?q:-10).attr("y1",l?-10:u).attr("y2",l?-10:t);Xc&&a.append("g").attr("class","ygrids");Rb&&a.append("g").attr("class","ygrid-lines").selectAll("ygrid-line").data(Rb).enter().append("line").attr("class",function(a){return"ygrid-line "+a["class"]});h.append("g").attr("clip-path",Pa).attr("class","regions");h.append("g").attr("clip-path", |
|
Pa).attr("class","chart");h.select(".chart").append("g").attr("class","event-rects").style("fill-opacity",0).style("cursor",ra?"ew-resize":null);h.select(".chart").append("g").attr("class","chart-bars");h.select(".chart").append("g").attr("class","chart-lines");h.select(".chart").append("g").attr("class","chart-arcs").attr("transform",M.arc);if(ra)h.insert("rect",he?null:"g.grid").attr("class","zoom-rect").attr("width",q).attr("height",t).style("opacity",0).style("cursor","ew-resize").call(F).on("dblclick.zoom", |
|
null);null!==ub&&K.extent("function"!==typeof ub?ub:ub(nb()));za&&(A.append("g").attr("clip-path",Pa).attr("class","chart"),A.select(".chart").append("g").attr("class","chart-bars"),A.select(".chart").append("g").attr("class","chart-lines"),A.append("g").attr("clip-path",Pa).attr("class","x brush").call(K).selectAll("rect").attr("height",va),A.append("g").attr("class","x axis").attr("transform",M.subx).call(fb));Ba&&vb(g.data.targets);Yc(g.data.targets);G({withTransition:!1,withUpdateXDomain:!0}); |
|
if(ie){if(B&&"string"===typeof Ca){Ca=pa(Ca);for(a=0;a<g.data.targets[0].values.length&&0!==g.data.targets[0].values[a].x-Ca;a++);Ca=a}W.html(Jc(g.data.targets.map(function(a){return pb(a.values[Ca])})));W.style("top",Zc.top).style("left",Zc.left).style("display","block")}null==P.onresize&&(P.onresize=je());P.onresize.add&&P.onresize.add(ke)}}function le(a){a.append("rect").attr("class",Cc).style("cursor",ha&&sa?"pointer":null).on("mouseover",function(a,c){if(!Qa&&!C(g.data.targets)){var e=g.data.targets.map(function(a){return pb(a.values[c])}), |
|
d,f;if(0<Object.keys(Ja).length){f=[];for(var l in Ja)for(d=0;d<e.length;d++)if(e[d].id===l){f.push(e[d]);e.shift(d);break}e=f.concat(e)}Sb&&Lb(c,void 0).classed($,!0).attr("r",Tb);Vc(c).classed($,!1);Kc(e[0])}}).on("mouseout",function(a,c){C(g.data.targets)||(Lc(),W.style("display","none"),Mb(c),Vc(void 0).classed($,!1))}).on("mousemove",function(a,c){var e;Qa||C(g.data.targets)||(e=g.data.targets.map(function(a){return pb(a.values[c])}),Ic(e,d.mouse(this)),ha&&(sa||h.selectAll(".-shape-"+c).filter(function(a){return ia(a)}).each(function(){var a= |
|
d.select(this).classed($,!0);"circle"===this.nodeName&&a.attr("r",Tb);p.select(".event-rect-"+c).style("cursor",null)}).filter(function(){var a=d.select(this);if("circle"===this.nodeName)return Pc(this,Oa);if("rect"===this.nodeName)return Qc(this,a.attr("x"),a.attr("y"))}).each(function(){var a=d.select(this);a.classed($)||(a.classed($,!0),"circle"===this.nodeName&&a.attr("r",Oa));p.select(".event-rect-"+c).style("cursor","pointer")})))}).on("click",function(a,c){C(g.data.targets)||(Ub?Ub=!1:h.selectAll(".-shape-"+ |
|
c).each(function(a){$c(this,a,c)}))}).call(d.behavior.drag().origin(Object).on("drag",function(){ad(d.mouse(this))}).on("dragstart",function(){bd(d.mouse(this))}).on("dragend",function(){cd()})).call(F).on("dblclick.zoom",null)}function me(a){a.append("rect").attr("x",0).attr("y",0).attr("width",q).attr("height",t).attr("class","event-rect").on("mouseout",function(){C(g.data.targets)||(Lc(),W.style("display","none"),Mb())}).on("mousemove",function(){var a,c,e;Qa||C(g.data.targets)||(a=d.mouse(this), |
|
c=Hc(g.data.targets,a),e=[pb(c)],Ic(e,a),Sb&&(Mb(),Lb(c.index,c.id).classed($,!0).attr("r",Tb)),Kc(e[0]),100>Gb(c,a)?p.select(".event-rect").style("cursor","pointer"):p.select(".event-rect").style("cursor",null))}).on("click",function(){var a,c;C(g.data.targets)||(a=d.mouse(this),c=Hc(g.data.targets,a),100>Gb(c,a)&&h.select(".-circles-"+c.id).select(".-circle-"+c.index).each(function(){$c(this,c,c.index)}))}).call(d.behavior.drag().origin(Object).on("drag",function(){ad(d.mouse(this))}).on("dragstart", |
|
function(){bd(d.mouse(this))}).on("dragend",function(){cd()})).call(F).on("dblclick.zoom",null)}function $c(a,b,c){var e=d.select(a),f=e.classed(ja),g=!1,l;"circle"===a.nodeName?(g=Pc(a,1.5*Oa),l=Sc):"rect"===a.nodeName&&(g=Qc(a),l=Uc);if(sa||g)ha&&ia(b)&&(e.classed(ja,!f),l(!f,e,b,c)),ne(b,e)}function ad(a){var b,c,e,f,l,m,q;C(g.data.targets)||!ha||ra&&!F.altDomain||(b=Vb[0],c=Vb[1],e=a[0],a=a[1],f=Math.min(b,e),l=Math.max(b,e),m=sa?u:Math.min(c,a),q=sa?t:Math.max(c,a),h.select(".dragarea").attr("x", |
|
f).attr("y",m).attr("width",l-f).attr("height",q-m),h.selectAll(".-shapes").selectAll(".-shape").filter(function(a){return ia(a)}).each(function(a,b){var c=d.select(this),e=c.classed(ja),g=c.classed(Wb),h,n,p,r;h=!1;"circle"===this.nodeName?(h=1*c.attr("cx"),n=1*c.attr("cy"),r=Sc,h=f<h&&h<l&&m<n&&n<q):"rect"===this.nodeName&&(h=1*c.attr("x"),n=1*c.attr("y"),p=1*c.attr("width"),r=Uc,h=f<h+p&&h<l&&n<q);h^g&&(c.classed(Wb,!g),c.classed(ja,!e),r(!e,c,a,b))}))}function bd(a){!C(g.data.targets)&&ha&&(Vb= |
|
a,h.select(".chart").append("rect").attr("class","dragarea").style("opacity",0.1),Qa=!0)}function cd(){!C(g.data.targets)&&ha&&(h.select(".dragarea").transition().duration(100).style("opacity",0).remove(),h.selectAll(".-shape").classed(Wb,!1),Qa=!1)}function G(a){var b,c,e,f=Pd(),n=f.__max__+1,p,w,s;a=r(a)?a:{};e=r(a.withY)?a.withY:!0;c=r(a.withSubchart)?a.withSubchart:!0;w=r(a.withTransition)?a.withTransition:!0;b=r(a.withUpdateXDomain)?a.withUpdateXDomain:!1;a=r(a.withUpdateOrgXDomain)?a.withUpdateOrgXDomain: |
|
!1;s=C(g.data.targets);w=w?250:0;a&&(m.domain(d.extent(nb(g.data.targets))),V=m.domain(),F.x(m).updateScaleExtent(),U.domain(m.domain()),K.x(U));b&&(m.domain(K.empty()?V:K.extent()),ra&&F.x(m).updateScaleExtent());z.domain(lb("y"));Y.domain(lb("y2"));h.select(".x.axis").transition().duration(l?w:0).call(l?oa:J).style("opacity",s?0:1);h.select(".y.axis").transition().duration(l?0:w).call(l?J:oa).style("opacity",s?0:1);h.select(".y2.axis").transition().call(ib).style("opacity",s?0:1);h.select(".x.axis .-axis-x-label").attr("x", |
|
q);gb.domain(z.domain());hb.domain(Y.domain());W.style("display","none");h.select("line.xgrid-focus").style("visibility","hidden").attr("y2",t);if(Wc){if("year"===oe)for(b=[],s=nb(),a=s[0].getFullYear(),s=s[1].getFullYear();a<=s;a++)b.push(new Date(a+"-01-01 00:00:00"));else b=m.ticks(10);b=h.select(".xgrids").selectAll(".xgrid").data(b);b.enter().append("line").attr("class","xgrid");b.attr("x1",l?0:function(a){return m(a)-J.tickOffset()}).attr("x2",l?q:function(a){return m(a)-J.tickOffset()}).attr("y1", |
|
l?function(a){return m(a)-J.tickOffset()}:u).attr("y2",l?function(a){return m(a)-J.tickOffset()}:t).style("opacity",function(){return+d.select(this).attr(l?"y1":"x1")===(l?t:0)?0:1});b.exit().remove()}Qb&&(b=h.selectAll(".xgrid-lines"),b.selectAll("line").attr("x1",l?0:Ma).attr("x2",l?q:Ma).attr("y1",l?Ma:u).attr("y2",l?Ma:t),b.selectAll("text").attr("x",l?q:0).attr("y",Ma));e&&Xc&&(b=h.select(".ygrids").selectAll(".ygrid").data(z.ticks(10)),b.enter().append("line").attr("class","ygrid"),b.attr("x1", |
|
l?z:0).attr("x2",l?z:q).attr("y1",l?0:z).attr("y2",l?t:z),b.exit().remove());e&&Rb&&h.select(".ygrid-lines").selectAll(".ygrid-line").attr("y1",Dc).attr("y2",Dc);e=function(a){var b=ea?n?1.2*J.tickOffset()/n:0:0.6*((l?t:q)*jc(!!a)/(eb()-1)),c=Qd(b,n,f,!!a),e=Rd(!!a),d=Sd(f,!!a),g=a?H:v;return function(f,k){var h=g(f.id)(0),m=d(f,k)||h,h=[[c(f),m],[c(f),e(f)-(h-m)],[c(f)+b,e(f)-(h-m)],[c(f)+b,m]],m=a||!l?0:1,n=a||!l?1:0;return"M "+h[0][m]+","+h[0][n]+" L"+h[1][m]+","+h[1][n]+" L"+h[2][m]+","+h[2][n]+ |
|
" L"+h[3][m]+","+h[3][n]+" z"}};b=h.selectAll(".-bars").selectAll(".-bar").data(Oc);b.enter().append("path").attr("d",e(!1)).style("stroke","none").style("opacity",0).style("fill",function(a){return L(a.id)}).attr("class",Bc);b.transition().duration(w).attr("d",e(!1)).style("opacity",1);b.exit().transition().duration(w).style("opacity",0).remove();h.selectAll(".chart-line").select(".-line").transition().duration(w).attr("d",pe);h.selectAll(".-area").transition().duration(w).attr("d",qe);b=h.selectAll(".-circles").selectAll(".-circle").data(Td); |
|
b.transition().duration(w).style("opacity",function(a){return null===a.value?0:1}).attr("cx",l?ga:fa).attr("cy",l?fa:ga);b.enter().append("circle").style("opacity",function(a){return null===a.value?0:1}).attr("class",Nd).attr("cx",l?ga:fa).attr("cy",l?fa:ga).attr("r",Nb);b.exit().remove();h.selectAll(".chart-arc").select(".-arc").style("opacity",function(a){return a===this._current?0:1}).transition().duration(w).attrTween("d",function(a){a=la(a);if(!a)return function(){return"M 0 0"};var b=d.interpolate(this._current, |
|
a);this._current=b(0);return function(a){a=b(a);return Nc(a.data)?jb(a,!0):"M 0 0"}}).style("opacity",1);h.selectAll(".chart-arc").select("text").attr("transform",Va).attr("opacity",0).transition().duration(w).text(Wa).attr("opacity",function(a){return Nc(a.data)?1:0});za&&(null!==d.event&&"zoom"===d.event.type&&K.extent(m.orgDomain()).update(),c&&(A.select(".x.axis").transition().duration(l?w:0).call(l?oa:fb),K.empty()||K.extent(m.orgDomain()).update(),c=A.selectAll(".-bars").selectAll(".-bar").data(Oc), |
|
c.enter().append("path").attr("d",e(!0)).style("stroke","none").style("fill",function(a){return L(a.id)}).attr("class",Bc),c.style("opacity",0).transition().duration(w).attr("d",e(!0)).style("opacity",1),c.exit().transition().duration(w).style("opacity",0).remove(),A.selectAll(".-line").transition().duration(w).attr("d",re)));h.selectAll(".selected-circles").filter(function(a){return rb(a)}).selectAll("circle").remove();h.selectAll(".selected-circle").transition().duration(w).attr("cx",l?ga:fa).attr("cy", |
|
l?fa:ga);Z?(e=h.select(".event-rects").selectAll(".event-rect").data([0]),me(e.enter()),e.attr("x",0).attr("y",0).attr("width",q).attr("height",t)):(Fb?(p=function(a,b){var c=wc(b),e=b<eb()-1?g.data.targets[0].values[b+1].x:void 0;return(m(e?e:a.x+50)-m(c?c:a.x-50))/2},c=function(a,b){var c=wc(b);return(m(a.x)+m(c?c:a.x-50))/2}):(p=kd(),c=function(a){return m(a.x)-p/2}),e=Jd(),h.select(".event-rects").datum(e?e.values:[]),e=h.select(".event-rects").selectAll(".event-rect").data(function(a){return a}), |
|
le(e.enter()),e.attr("class",Cc).attr("x",l?0:c).attr("y",l?c:0).attr("width",l?q:p).attr("height",l?p:t),e.exit().remove());c=h.select(".regions").selectAll("rect.region").data(Q);c.enter().append("rect");c.attr("class",Od).attr("x",l?0:Eb).attr("y",l?Eb:u).attr("width",l?q:sc).attr("height",l?sc:t).style("fill-opacity",function(a){return r(a.opacity)?a.opacity:0.1});c.exit().transition().duration(w).style("fill-opacity",0).remove()}function se(){"mousemove"===d.event.sourceEvent.type&&F.altDomain? |
|
(m.domain(F.altDomain),F.x(m).updateScaleExtent()):(ea&&m.orgDomain()[0]===V[0]&&m.domain([V[0]-1E-10,m.orgDomain()[1]]),G({withTransition:!1,withY:!1,withSubchart:!1}),"mousemove"===d.event.sourceEvent.type&&(Ub=!0))}function je(){function a(){b.forEach(function(a){a()})}var b=[];a.add=function(a){b.push(a)};return a}function ke(){ta();R();K.x(U);ra&&F.x(m);p.attr("width",yb).attr("height",ua);p.select("#"+Pb).select("rect").attr("width",q).attr("height",t);p.select("#xaxis-clip").select("rect").attr("width", |
|
N);p.select(".zoom-rect").attr("width",q).attr("height",t);h.select(".x.axis").attr("transform",M.x);h.select(".y2.axis").attr("transform",M.y2);h.select(".chart-arcs").attr("transform",M.arc);za&&(A.select(".x.brush").selectAll("rect").attr("height",va),A.attr("transform",M.context),A.select(".x.axis").attr("transform",M.subx));Ba&&(Aa.attr("transform",M.legend),vb(g.data.targets,{withTransition:!1}));G({withTransition:!1,withUpdateXDomain:!0})}function Yc(a){var b;dd&&Na(qb(a).filter(function(a){return!(a in |
|
E)}),dd);h.select(".chart-bars").selectAll(".chart-bar").data(a).enter().append("g").attr("class",function(a){return"chart-bar target target-"+a.id}).style("pointer-events","none").style("opacity",0).append("g").attr("class",Ac).style("fill",function(a){return L(a.id)}).style("stroke",function(a){return L(a.id)}).style("stroke-width",0).style("cursor",function(a){return ia(a)?"pointer":null});b=h.select(".chart-lines").selectAll(".chart-line").data(a).enter().append("g").attr("class",function(a){return"chart-line target target-"+ |
|
a.id}).style("pointer-events","none").style("opacity",0);b.append("path").attr("class",zc).style("stroke",function(a){return L(a.id)});b.append("path").attr("class",Md).style("fill",function(a){return L(a.id)});b.append("g").attr("class",function(a){return"selected-circles selected-circles-"+a.id});b.append("g").attr("class",Kd).style("fill",function(a){return L(a.id)}).style("cursor",function(a){return ia(a)?"pointer":null});a.forEach(function(a){h.selectAll(".selected-circles-"+a.id).selectAll(".selected-circle").each(function(b){b.value= |
|
a.values[b.x].value})});b=h.select(".chart-arcs").selectAll(".chart-arc").data(Db(a)).enter().append("g").attr("class",function(a){return"chart-arc target target-"+a.data.id}).style("opacity",0);b.append("path").attr("class",Ld).style("fill",function(a){return L(a.data.id)}).style("cursor",function(a){return ia(a)?"pointer":null}).each(function(a){this._current=a}).on("mouseover",function(a){Xa(a.data.id);ed(a.data.id)}).on("mouseout",function(a){wb(a.data.id);fd()});b.append("text").attr("dy",".35em").style("text-anchor", |
|
"middle").style("pointer-events","none");za&&(b=A.select(".chart-bars").selectAll(".chart-bar").data(a),b=b.enter().append("g").attr("class",function(a){return"chart-bar target target-"+a.id}).style("opacity",0),b.append("g").attr("class",Ac).style("fill",function(a){return L(a.id)}),b=A.select(".chart-lines").selectAll(".chart-line").data(a),b=b.enter().append("g").attr("class",function(a){return"chart-line target target-"+a.id}).style("opacity",0),b.append("path").attr("class",zc).style("stroke", |
|
function(a){return L(a.id)}));Ba&&vb(a);p.selectAll(".target").transition().style("opacity",1)}function Ra(a,b){g.data.targets.forEach(function(b){for(var e=0;e<a.length;e++)if(b.id===a[e].id){b.values=a[e].values;a.splice(e,1);break}});g.data.targets=g.data.targets.concat(a);Yc(g.data.targets);G({withUpdateOrgXDomain:!0,withUpdateXDomain:!0});b()}function ed(a){p.selectAll(".legend-item").filter(function(b){return b!==a}).transition().duration(100).style("opacity",0.3)}function fd(){p.selectAll(".legend-item").transition().duration(100).style("opacity", |
|
1)}function vb(a,b){var c=qb(a),e,d=q/2-Sa*Object.keys(a).length/2,f;b=x(b)?{}:b;f=r(b.withTransition)?b.withTransition:!0;e=Aa.selectAll(".legend-item").data(c).enter().append("g").attr("class",function(a){return"legend-item legend-item-"+a}).style("cursor","pointer").on("click",function(a){te(a)}).on("mouseover",function(a){ed(a);g.focus(a)}).on("mouseout",function(){fd();g.revert()});e.append("rect").attr("class","legend-item-event").style("fill-opacity",0).attr("x",-200).attr("y",function(){return na/ |
|
2-16}).attr("width",Sa).attr("height",24);e.append("rect").attr("class","legend-item-tile").style("pointer-events","none").style("fill",function(a){return L(a)}).attr("x",-200).attr("y",function(){return na/2-9}).attr("width",10).attr("height",10);e.append("text").text(function(a){return r(Ja[a])?Ja[a]:a}).style("pointer-events","none").attr("x",-200).attr("y",function(){return na/2});Aa.selectAll("rect.legend-item-event").data(c).transition().duration(f?250:0).attr("x",function(a,b){return d+Sa* |
|
b});Aa.selectAll("rect.legend-item-tile").data(c).transition().duration(f?250:0).attr("x",function(a,b){return d+Sa*b});Aa.selectAll("text").data(c).transition().duration(f?250:0).attr("x",function(a,b){return d+Sa*b+14})}function Ta(a){return r(a)?".target-"+a:".target"}function Xb(a){return xc(a.id)}function Yb(a){return"data"in a&&xc(a.data.id)}var g={data:{}},ob={},$="_expanded_",ja="_selected_",Wb="_included_",wa=f(["bindto"],"#chart"),Ya=f(["size","width"],null),ic=f(["size","height"],null), |
|
bb=f(["padding","left"],null),Za=f(["padding","right"],null),ra=f(["zoom","enabled"],!1),gd=f(["zoom","extent"],null),he=f(["zoom","privileged"],!1),ce=f(["onenter"],function(){}),de=f(["onleave"],function(){});if(!("data"in aa))throw Error("data is required in config");var qa=f(["data","x"],null),Z=f(["data","xs"],null),Ib=f(["data","x_format"],"%Y-%m-%d"),Id=f(["data","id_converter"],function(a){return a}),Ja=f(["data","names"],{}),s=f(["data","groups"],[]),oc=f(["data","axes"],{}),dd=f(["data", |
|
"type"],null),E=f(["data","types"],{}),hd=f(["data","regions"],{}),ue=f(["data","colors"],{}),ha=f(["data","selection","enabled"],!1),sa=f(["data","selection","grouped"],!1),ia=f(["data","selection","isselectable"],function(){return!0}),za=f(["subchart","show"],!1),dc=za?f(["subchart","size","height"],60):0,ve=f(["color","pattern"],null),Ba=f(["legend","show"],!0),Sa=f(["legend","item","width"],80),te=f(["legend","item","onclick"],function(){}),id=f(["axis","x","type"],"indexed"),Fa=f(["axis","x", |
|
"categories"],[]),pd=f(["axis","x","tick","centered"],!1),kb=f(["axis","x","tick","format"],null),ub=f(["axis","x","default"],null),ee=f(["axis","x","label"],null),yd=f(["axis","y","max"],null),wd=f(["axis","y","min"],null),Ad=f(["axis","y","center"],null),fe=f(["axis","y","label"],null),cb=f(["axis","y","inner"],!1),$d=f(["axis","y","tick","format"],function(a){return a}),Ga=f(["axis","y","padding"],null),Zd=f(["axis","y","ticks"],10),zb=f(["axis","y2","show"],!1),xd=f(["axis","y2","max"],null), |
|
vd=f(["axis","y2","min"],null),zd=f(["axis","y2","center"],null),$a=f(["axis","y2","inner"],!1),be=f(["axis","y2","tick","format"],function(a){return a}),Ha=f(["axis","y2","padding"],null),ae=f(["axis","y2","ticks"],10),l=f(["axis","rotated"],!1),Wc=f(["grid","x","show"],!1),oe=f(["grid","x","type"],"tick"),Qb=f(["grid","x","lines"],null),Xc=f(["grid","y","show"],!1),Rb=f(["grid","y","lines"],null),Nb=f(["point","show"],!0)?f(["point","r"],2.5):0,ge=f(["point","focus","line","enabled"],!0),Sb=f(["point", |
|
"focus","expand","enabled"],!0),Tb=f(["point","focus","expand","r"],Sb?4:Nb),Oa=f(["point","focus","select","r"],8),ne=f(["point","onclick"],function(){}),Vd=f(["point","onselected"],function(){}),Wd=f(["point","onunselected"],function(){}),Q=f(["regions"],[]),Jc=f(["tooltip","contents"],function(a){var b="<table class='-tooltip'><tr><th colspan='2'>"+bc()(a[0].x)+"</th></tr>",c,d,f;for(c=0;c<a.length;c++)a[c]&&(a[c].value||0===a[c].value)&&(d=r(a[c].value)?(Math.round(100*a[c].value)/100).toFixed(2): |
|
"-",f=a[c].name,b+="<tr class='-tooltip-name-"+a[c].id+"'><td class='name'><span style='background-color:"+L(a[c].id)+"'></span>"+f+"</td><td class='value'>"+d+"</td></tr>");return b+"</table>"}),ie=f(["tooltip","init","show"],!1),Ca=f(["tooltip","init","x"],0),Zc=f(["tooltip","init","position"],{top:"0px",left:"50px"}),Pb=wa.replace("#","")+"-clip",Pa="url(#"+Pb+")",B="timeseries"===id,ea="categorized"===id,Fb=!B&&(qa||Z),Vb=null,Qa=!1,Ub=!1,na=Ba?40:0,L=function(a,b){var c=[],d=null!==b?b:"#1f77b4 #ff7f0e #2ca02c #d62728 #9467bd #8c564b #e377c2 #7f7f7f #bcbd22 #17becf".split(" "); |
|
return function(b){if(b in a)return a[b];-1===c.indexOf(b)&&c.push(b);return d[c.indexOf(b)%d.length]}}(ue,ve),qd=function(){var a=[[d.time.format("%Y/%-m/%-d"),function(){return!0}],[d.time.format("%-m/%-d"),function(a){return a.getMonth()}],[d.time.format("%-m/%-d"),function(a){return 1!==a.getDate()}],[d.time.format("%-m/%-d"),function(a){return a.getDay()&&1!==a.getDate()}],[d.time.format("%I %p"),function(a){return a.getHours()}],[d.time.format("%I:%M"),function(a){return a.getMinutes()}],[d.time.format(":%S"), |
|
function(a){return a.getSeconds()}],[d.time.format(".%L"),function(a){return a.getMilliseconds()}]];return function(b){for(var c=a.length-1,d=a[c];!d[1](b);)d=a[--c];return d[0](b)}}(),cc,gc,ec,ab,fc,hc,q,t,va,yb,ua,db,Ab,jb,mc,nc,Db,kc,lc,Bb,Cb,m,z,Y,U,gb,hb,J,oa,ib,fb,ld=l?"left":"bottom",md=l?cb?"top":"bottom":cb?"right":"left",nd=l?$a?"bottom":"top":$a?"left":"right",od="bottom",M={main:function(){return"translate("+I+","+u+")"},context:function(){return"translate("+n+","+Da+")"},legend:function(){return"translate("+ |
|
$b+","+Zb+")"},y2:function(){return"translate("+(l?0:q)+","+(l?10:0)+")"},x:function(){return"translate(0,"+t+")"},subx:function(){return"translate(0,"+va+")"},arc:function(){return"translate("+q/2+","+t/2+")"}};Db=d.layout.pie().value(function(a){return a.values.reduce(function(a,c){return a+c.value},0)});var pe=function(){var a=d.svg.line().x(l?function(a){return v(a.id)(a.value)}:xa).y(l?xa:function(a){return v(a.id)(a.value)});return function(b){var c=Kb(b.values),d;if(Hb(b))return Mc(b)?a.interpolate("cardinal"): |
|
a.interpolate("linear"),hd[b.id]?Yd(c,m,v(b.id),hd[b.id]):a(c);d=m(c[0].x);b=v(b.id)(c[0].value);return l?"M "+b+" "+d:"M "+d+" "+b}}(),qe=function(){var a;a=l?d.svg.area().x0(function(a){return v(a.id)(0)}).x1(function(a){return v(a.id)(a.value)}).y(xa):d.svg.area().x(xa).y0(function(a){return v(a.id)(0)}).y1(function(a){return v(a.id)(a.value)});return function(b){var c=Kb(b.values),d;if(Ia([b],"area")||Ia([b],"area-spline"))return Mc(b)?a.interpolate("cardinal"):a.interpolate("linear"),a(c);d= |
|
m(c[0].x);b=v(b.id)(c[0].value);return l?"M "+b+" "+d:"M "+d+" "+b}}(),re=function(){var a=d.svg.line().x(function(a){return U(a.x)}).y(function(a){return H(a.id)(a.value)});return function(b){var c=Kb(b.values);return Hb(b)?a(c):"M "+U(c[0].x)+" "+H(b.id)(c[0].value)}}(),K=d.svg.brush().on("brush",function(){G({withTransition:!1,withY:!1,withSubchart:!1,withUpdateXDomain:!0})}),F=d.behavior.zoom().on("zoomstart",function(){F.altDomain=d.event.sourceEvent.altKey?m.orgDomain():null}).on("zoom",ra? |
|
se:null);K.update=function(){A&&A.select(".x.brush").call(this);return this};F.orgScaleExtent=function(){var a=gd?gd:[1,10];return[a[0],Math.max(eb()/a[1],a[1])]};F.updateScaleExtent=function(){var a=m.orgDomain(),a=(a[1]-a[0])/(V[1]-V[0]),b=this.orgScaleExtent();this.scaleExtent([b[0]*a,b[1]*a]);return this};var p,tb,h,A,Aa,W,sb,V;g.focus=function(a){var b=p.selectAll(Ta(a)),c=b.filter(Xb),b=b.filter(Yb);g.defocus();c.classed("focused",!0).transition().duration(100).style("opacity",1);b.transition().duration(100).style("opacity", |
|
1);C(g.data.targets)&&Xa(a,!0)};g.defocus=function(a){var b=p.selectAll(Ta(a)),c=b.filter(Xb),b=b.filter(Yb);c.classed("focused",!1).transition().duration(100).style("opacity",0.3);b.transition().duration(100).style("opacity",0.3);C(g.data.targets)&&wb(a)};g.revert=function(a){var b=p.selectAll(Ta(a)),c=b.filter(Xb),b=b.filter(Yb);c.classed("focused",!1).transition().duration(100).style("opacity",1);b.transition().duration(100).style("opacity",1);C(g.data.targets)&&wb(a)};g.show=function(a){p.selectAll(Ta(a)).transition().style("opacity", |
|
1)};g.hide=function(a){p.selectAll(Ta(a)).transition().style("opacity",0)};g.unzoom=function(){K.clear().update();G({withUpdateXDomain:!0})};g.load=function(a){"function"!==typeof a.done&&(a.done=function(){});a.xs&&Hd(a.xs);"categories"in a&&ea&&(Fa=a.categories,J.categories(Fa));if("cacheIds"in a&&Dd(a.cacheIds))Ra(Ed(a.cacheIds),a.done);else if("data"in a)Ra(Ka(a.data),a.done);else if("url"in a)d.csv(a.url,function(b,c){Ra(Ka(c),a.done)});else if("rows"in a)Ra(Ka(uc(a.rows)),a.done);else if("columns"in |
|
a)Ra(Ka(vc(a.columns)),a.done);else throw Error("url or rows or columns is required.");};g.unload=function(a){g.data.targets=g.data.targets.filter(function(b){return b.id!==a});p.selectAll(".target-"+a).transition().style("opacity",0).remove();Ba&&(p.selectAll(".legend-item-"+a).remove(),vb(g.data.targets));0<g.data.targets.length&&G({withUpdateOrgXDomain:!0,withUpdateXDomain:!0})};g.selected=function(a){a=r(a)?"-"+a:"";return d.merge(h.selectAll(".-shapes"+a).selectAll(".-shape").filter(function(){return d.select(this).classed(ja)}).map(function(a){return a.map(function(a){return a.__data__})}))}; |
|
g.select=function(a,b,c){ha&&h.selectAll(".-shapes").selectAll(".-shape").each(function(e,f){var g="circle"===this.nodeName?Rc:Xd,h="circle"===this.nodeName?Jb:Tc;0<=b.indexOf(f)?ia(e)&&(sa||x(a)||0<=a.indexOf(e.id))&&g(d.select(this).classed(ja,!0),e,f):r(c)&&c&&h(d.select(this).classed(ja,!1),e,f)})};g.unselect=function(a,b){ha&&h.selectAll(".-shapes").selectAll(".-shape").each(function(c,e){var f="circle"===this.nodeName?Jb:Tc;(x(b)||0<=b.indexOf(e))&&ia(c)&&(sa||x(a)||0<=a.indexOf(c.id))&&f(d.select(this).classed(ja, |
|
!1),c,e)})};g.toLine=function(a){Na(a,"line");G()};g.toSpline=function(a){Na(a,"spline");G()};g.toBar=function(a){Na(a,"bar");G()};g.toScatter=function(a){Na(a,"scatter");G()};g.groups=function(a){if(x(a))return s;s=a;G();return s};g.regions=function(a){if(x(a))return Q;Q=a;G();return Q};g.regions.add=function(a){if(x(a))return Q;Q=Q.concat(a);G();return Q};g.regions.remove=function(a,b){var c=[].concat(a);b=r(b)?b:{};c.forEach(function(a){var c=p.selectAll("."+a);r(b.duration)&&(c=c.transition().duration(b.duration).style("fill-opacity", |
|
0));c.remove();Q=Q.filter(function(b){return 0>b.classes.indexOf(a)})});return Q};g.data.get=function(a){a=g.data.getAsTarget(a);return r(a)?a.values.map(function(a){return a.value}):void 0};g.data.getAsTarget=function(a){var b=mb(function(b){return b.id===a});return 0<b.length?b[0]:void 0};g.destroy=function(){g.data.targets=void 0;g.data.x={};sb.html("");P.onresize=null};if("url"in aa.data)d.csv(aa.data.url,function(a,b){Ob(b)});else if("rows"in aa.data)Ob(uc(aa.data.rows));else if("columns"in aa.data)Ob(vc(aa.data.columns)); |
|
else throw Error("url or rows or columns is required.");return g}})(window);
|
|
|