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.
 
 
 
 

3 lines
68 KiB

!function(a){"use strict";function b(a){return a||0===a}function c(a){return"undefined"==typeof a}function d(a){return"undefined"!=typeof a}var e={version:"0.1.33"},f={target:"c3-target",chart:"c3-chart",chartLine:"c3-chart-line",chartLines:"c3-chart-lines",chartBar:"c3-chart-bar",chartBars:"c3-chart-bars",chartText:"c3-chart-text",chartTexts:"c3-chart-texts",chartArc:"c3-chart-arc",chartArcs:"c3-chart-arcs",chartArcsTitle:"c3-chart-arcs-title",selectedCircle:"c3-selected-circle",selectedCircles:"c3-selected-circles",eventRect:"c3-event-rect",eventRects:"c3-event-rects",eventRectsSingle:"c3-event-rects-single",eventRectsMultiple:"c3-event-rects-multiple",zoomRect:"c3-zoom-rect",brush:"c3-brush",focused:"c3-focused",region:"c3-region",regions:"c3-regions",tooltip:"c3-tooltip",tooltipName:"c3-tooltip-name",shape:"c3-shape",shapes:"c3-shapes",line:"c3-line",bar:"c3-bar",bars:"c3-bars",circle:"c3-circle",circles:"c3-circles",arc:"c3-arc",area:"c3-area",text:"c3-text",texts:"c3-texts",grid:"c3-grid",xgrid:"c3-xgrid",xgrids:"c3-xgrids",xgridLine:"c3-xgrid-line",xgridLines:"c3-xgrid-lines",xgridFocus:"c3-xgrid-focus",ygrid:"c3-ygrid",ygrids:"c3-ygrids",ygridLine:"c3-ygrid-line",ygridLines:"c3-ygrid-lines",axisX:"c3-axis-x",axisXLabel:"c3-axis-x-label",axisY:"c3-axis-y",axisYLabel:"c3-axis-y-label",axisY2:"c3-axis-y2",axisY2Label:"c3-axis-y2-label",legendItem:"c3-legend-item",legendItemEvent:"c3-legend-item-event",legendItemTile:"c3-legend-item-tile",legendItemHidden:"c3-legend-item-hidden",legendItemFocused:"c3-legend-item-focused",dragarea:"c3-dragarea",EXPANDED:"_expanded_",SELECTED:"_selected_",INCLUDED:"_included_"};e.generate=function(e){function g(a,b){if(!(a in e))throw Error(b)}function h(a,b){var c,d,f,g=e;for(c=0;c<a.length;c++){if("object"==typeof g&&!(a[c]in g))return b;if(d=c===a.length-1,f=g[a[c]],!d&&"object"!=typeof f)return b;g=f}return g}function i(a){return"url("+document.URL.split("#")[0]+"#"+a+")"}function j(a,b){var c,d,e;b&&b.axisX?c=b.axisX:(c=dj.select("."+f.axisX),a&&(c=c.transition())),b&&b.axisY?d=b.axisY:(d=dj.select("."+f.axisY),a&&(d=d.transition())),b&&b.axisY2?e=b.axisY2:(e=dj.select("."+f.axisY2),a&&(e=e.transition())),dj.attr("transform",Pi.main),c.attr("transform",Pi.x),d.attr("transform",Pi.y),e.attr("transform",Pi.y2),dj.select("."+f.chartArcs).attr("transform",Pi.arc)}function k(a,b){var c;b&&b.axisSubX?c=b.axisSubX:(c=ej.select("."+f.axisX),a&&(c=c.transition())),ej.attr("transform",Pi.context),c.attr("transform",Pi.subx)}function l(a){(a?fj.transition():fj).attr("transform",Pi.legend)}function m(a,b){j(a,b),Rg&&k(a,b),l(a)}function n(){var a=Q(),b=P(),c=Qi?0:a,d=$g?0:w("x"),e=Rg?Sg+d:0;Rf=r(),Sf=s(),$g?(Kf={top:w("y2"),right:u(),bottom:w("y")+c,left:e+t()},Lf={top:Kf.top,right:0/0,bottom:20+c,left:Vi}):(Kf={top:4,right:u(),bottom:d+e+c,left:t()},Lf={top:Sf-e-c,right:0/0,bottom:d+c,left:Kf.left}),Mf={top:Qi?0:Sf-a,right:0/0,bottom:0,left:Qi?Rf-b:0},Nf=Rf-Kf.left-Kf.right,Pf=Sf-Kf.top-Kf.bottom,0>Nf&&(Nf=0),0>Pf&&(Pf=0),Of=$g?Kf.left-Vi-Wi:Nf,Qf=$g?Pf:Sf-Lf.top-Lf.bottom,0>Of&&(Of=0),0>Qf&&(Qf=0),p(),Qi&&ee(vf.data.targets)&&(Mf.left=Nf/2+Uf)}function o(){dj.select("line."+f.xgridFocus).attr("x1",$g?0:-10).attr("x2",$g?Nf:-10).attr("y1",$g?-10:Kf.top).attr("y2",$g?-10:Pf)}function p(){Uf=Pf/2,Tf=.95*Uf,Vf=de(vf.data.targets)?.6*Tf:0}function q(){var a=$g?f.axisX:f.axisY,b=dj.select("."+a).node(),c=b?b.getBoundingClientRect():{right:0},d=uf.select(xf).node().getBoundingClientRect(),e=c.right-d.left-t();return e>0?e:0}function r(){return yf?yf:x()}function s(){var a=zf?zf:y();return a>0?a:320}function t(){return ee(vf.data.targets)?0:Af?Af:$g?_g?v("x"):1:!rh||wh?1:v("y")}function u(){var a=1;return ee(vf.data.targets)?0:Bf?Bf:Qi?P()+(Ah&&!$g?v("y2"):a):Ah?Fh||$g?a:v("y2"):a}function v(a){var b=jb(a);return b.isInner?20+Cb(a):40+Cb(a)}function w(a){return"x"!==a||_g?"x"===a&&oh?oh:"y"!==a||rh?"y2"!==a||Ah?(jb(a).isInner?30:40)+("y2"===a?-10:0):Xi:Ug&&!Qi?10:1:0}function x(){return+uf.select(xf).style("width").replace("px","")}function y(){return+uf.select(xf).style("height").replace("px","")}function z(a){return a?-5:-(Kf.left-1)}function A(a){return a?-20:-4}function B(){return z(!$g)}function C(){return A(!$g)}function D(){return z($g)}function E(){return A($g)}function F(a){return a?Nf+2+4:Kf.left+20}function G(a){return a?(oh?oh:0)+80:Pf+8}function H(){return F(!$g)}function I(){return G(!$g)}function J(){return F($g)}function K(){return G($g)}function L(){var a,b,c,d,e,f=Ac(vf.data.targets);return f?(a=f.values[0],b=f.values[f.values.length-1],c=gg(b.x)-gg(a.x),d=zc(),e=ae(vf.data.targets)?(d-(yi?.25:1))/d:1,d>1?c*e/(d-1):c):0}function M(a){Ri=a}function N(a){Si=a}function O(a){Ti=a}function P(){return Ug?Qi?Si*(Ri+1):Rf:0}function Q(){return Ug?Qi?Sf:Ti*(Ri+1):0}function R(){var a,b,c=!gg;$f=$g?1:0,_f=$g?Pf:Nf,ag=$g?0:Pf,bg=$g?Nf:1,cg=$f,dg=_f,eg=$g?0:Qf,fg=$g?Of:1,gg=T($f,_f,c?void 0:gg.domain(),function(){return mg.tickOffset()}),hg=U(ag,bg,c?void 0:hg.domain()),ig=U(ag,bg,c?void 0:ig.domain()),jg=T($f,_f,ij,function(a){return a%1?0:pg.tickOffset()}),kg=U(eg,fg,c?void 0:kg.domain()),lg=U(eg,fg,c?void 0:lg.domain()),a=$(),b=jh?jh:c?void 0:mg.tickValues(),mg=X(gg,Li,a,b),pg=X(jg,Oi,a,b),ng=Y(hg,Mi,xh,zh),og=Y(ig,Ni,Gh,Ih),c||(Yi.scale(jg),Cf&&aj.scale(gg)),S()}function S(){Wf=Gb(),Xf=Hb(),Yf=Hb(.98)}function T(a,b,d,e){var f=(xi?uf.time.scale():uf.scale.linear()).range([a,b]);if(f.orgDomain=function(){return f.domain()},d&&f.domain(d),c(e)&&(e=function(){return 0}),yi){var g,h=f;f=function(a){return h(a)+e(a)};for(g in h)f[g]=h[g];f.orgDomain=function(){return h.domain()},f.domain=function(a){return arguments.length?(h.domain(a),f):(a=h.domain(),[a[0],a[1]+1])}}return f}function U(a,b,c){var d=uf.scale.linear().range([a,b]);return c&&d.domain(c),d}function V(a){return"y2"===Z(a)?ig:hg}function W(a){return"y2"===Z(a)?lg:kg}function X(a,b,c,d){var e=(yi?Eb():uf.svg.axis()).scale(a).orient(b);return e.tickFormat(c).tickValues(d),yi?(e.tickCentered(dh),ve(fh)&&(fh=!1)):e.tickOffset=function(){var a=Bc(vf.data.targets),b=gg(a[1])-gg(a[0]);return b/zc()/2},yi&&e.categories(ch),e}function Y(a,b,c,d){return uf.svg.axis().scale(a).orient(b).tickFormat(c).ticks(d).outerTickSize(0)}function Z(a){return a in xg?xg[a]:"y"}function $(){var a=xi?Ii:yi?Tc:function(a){return 0>a?a.toFixed(0):a};return eh&&("function"==typeof eh?a=eh:xi&&(a=function(a){return a?Hi(eh)(a):""})),a}function _(a){var b;return"y"===a?b=vh:"y2"===a?b=Eh:"x"===a&&(b=qh),b}function ab(a){var b=_(a);return"string"==typeof b?b:b?b.text:null}function bb(a,b){var c=_(a);"string"==typeof c?"y"===a?vh=b:"y2"===a?Eh=b:"x"===a&&(qh=b):c&&(c.text=b)}function cb(a){return 10*Math.sin(Math.PI*(a/180))}function db(a){return 11.5-2.5*(a/15)}function eb(a,b,c){a.selectAll(".tick text").style("text-anchor","start"),b.selectAll(".tick text").attr("y",db(c)).attr("x",cb(c)).attr("transform","rotate("+c+")")}function fb(a,b){var c=_(a),d=c&&"object"==typeof c&&c.position?c.position:b;return{isInner:d.indexOf("inner")>=0,isOuter:d.indexOf("outer")>=0,isLeft:d.indexOf("left")>=0,isCenter:d.indexOf("center")>=0,isRight:d.indexOf("right")>=0,isTop:d.indexOf("top")>=0,isMiddle:d.indexOf("middle")>=0,isBottom:d.indexOf("bottom")>=0}}function gb(){return fb("x",$g?"inner-top":"inner-right")}function hb(){return fb("y",$g?"inner-right":"inner-top")}function ib(){return fb("y2",$g?"inner-right":"inner-top")}function jb(a){return"y2"===a?ib():"y"===a?hb():gb()}function kb(){return ab("x")}function lb(){return ab("y")}function mb(){return ab("y2")}function nb(a,b){return a?b.isLeft?0:b.isCenter?Nf/2:Nf:b.isBottom?-Pf:b.isMiddle?-Pf/2:0}function ob(a,b){return a?b.isLeft?"0.5em":b.isRight?"-0.5em":"0":b.isTop?"-0.5em":b.isBottom?"0.5em":"0"}function pb(a,b){return a?b.isLeft?"start":b.isCenter?"middle":"end":b.isBottom?"start":b.isMiddle?"middle":"end"}function qb(){return nb(!$g,gb())}function rb(){return nb($g,hb())}function sb(){return nb($g,ib())}function tb(){return ob(!$g,gb())}function ub(){return ob($g,hb())}function vb(){return ob($g,ib())}function wb(){var a=gb();return $g?a.isInner?"1.2em":-25-Cb("x"):a.isInner?"-0.5em":oh?oh-10:"3em"}function xb(){var a=hb();return $g?a.isInner?"-0.5em":"3em":a.isInner?"1.2em":-20-Cb("y")}function yb(){var a=ib();return $g?a.isInner?"1.2em":"-2.2em":a.isInner?"-0.5em":30+Cb("y2")}function zb(){return pb(!$g,gb())}function Ab(){return pb($g,hb())}function Bb(){return pb($g,ib())}function Cb(a){var b=0,c="x"===a?f.axisX:"y"===a?f.axisY:f.axisY2;return uf.selectAll("."+c+" .tick text").each(function(){var a=this.getBoundingClientRect();b<a.width&&(b=a.width)}),0>b?0:b}function Db(){dj.select("."+f.axisX+" ."+f.axisXLabel).transition().attr("x",qb).attr("dx",tb).attr("dy",wb).text(kb),dj.select("."+f.axisY+" ."+f.axisYLabel).transition().attr("x",rb).attr("dx",ub).attr("dy",xb).attr("dy",xb).text(lb),dj.select("."+f.axisY2+" ."+f.axisY2Label).transition().attr("x",sb).attr("dx",vb).attr("dy",yb).text(mb)}function Eb(){function a(a,b){a.attr("transform",function(a){return"translate("+(b(a)+p)+", 0)"})}function b(a,b){a.attr("transform",function(a){return"translate(0,"+b(a)+")"})}function c(a){var b=a[0],c=a[a.length-1];return c>b?[b,c]:[c,b]}function d(a){for(var b=[],c=Math.ceil(a[0]);c<a[1];c++)b.push(c);return b.length>0&&b[0]>0&&b.unshift(b[0]-(b[1]-b[0])),b}function e(a){return a<s.length?s[a]:a}function f(a){var b=e(a);return q?q(b):b}function g(){var a=i.copy(),b=i.domain();return a.domain([b[0],b[1]-1]),a}function h(e){e.each(function(){var e,h,o,q,r,s,t,u,v=uf.select(this),w=g(),x=this.__chart__||w,y=v.selectAll(".tick.major").data(d(w.domain()),String),z=y.enter().insert("g","path").attr("class","tick major").style("opacity",1e-6),A=uf.transition(y.exit()).style("opacity",1e-6).remove(),B=uf.transition(y).style("opacity",1),C=i.rangeExtent?i.rangeExtent():c(i.range()),D=v.selectAll(".domain").data([0]);switch(D.enter().append("path").attr("class","domain"),o=uf.transition(D),z.append("line"),z.append("text"),q=z.select("line"),r=B.select("line"),s=y.select("text"),t=z.select("text"),u=B.select("text"),p=(w(1)-w(0))/2,h=n?0:p,this.__chart__=w,j){case"bottom":e=a,q.attr("y2",k),t.attr("y",Math.max(k,0)+m),r.attr("x1",h).attr("x2",h).attr("y2",k),u.attr("x",0).attr("y",Math.max(k,0)+m),s.attr("dy",".71em").style("text-anchor","middle"),s.text(f),o.attr("d","M"+C[0]+","+l+"V0H"+C[1]+"V"+l);break;case"left":e=b,q.attr("x2",-k),t.attr("x",-(Math.max(k,0)+m)),r.attr("x2",-k).attr("y2",0),u.attr("x",-(Math.max(k,0)+m)).attr("y",p),s.attr("dy",".32em").style("text-anchor","end"),s.text(f),o.attr("d","M"+-l+","+C[0]+"H0V"+C[1]+"H"+-l)}if(i.ticks)z.call(e,x),B.call(e,w),A.call(e,w);else{var E=w.rangeBand()/2,F=function(a){return w(a)+E};z.call(e,F),B.call(e,F)}})}var i=uf.scale.linear(),j="bottom",k=6,l=6,m=3,n=!1,o=10,p=0,q=null,r=!0,s=[];return h.scale=function(a){return arguments.length?(i=a,h):i},h.orient=function(a){return arguments.length?(j=a in{top:1,right:1,bottom:1,left:1}?a+"":"bottom",h):j},h.categories=function(a){return arguments.length?(s=a,h):s},h.tickCentered=function(a){return arguments.length?(n=a,h):n},h.tickFormat=function(a){return arguments.length?(q=a,h):q},h.tickOffset=function(){return p},h.ticks=function(a){return arguments.length?(o=a,h):o},h.tickCulling=function(a){return arguments.length?(r=a,h):r},h.tickValues=function(){},h}function Fb(a){var b=!1;return Zf(Ic(vf.data.targets)).forEach(function(c){return b||c.data.id!==a.data.id?void 0:(b=!0,void(a=c))}),b?a:null}function Gb(){var a=uf.svg.arc().outerRadius(Tf).innerRadius(Vf),b=function(b,c){var d;return c?a(b):(d=Fb(b),d?a(d):"M 0 0")};return b.centroid=a.centroid,b}function Hb(a){var b=uf.svg.arc().outerRadius(Uf*(a?a:1)).innerRadius(Vf);return function(a){var c=Fb(a);return c?b(c):"M 0 0"}}function Ib(a,b){return le(a.data)?Wf(a,b):"M 0 0"}function Jb(a){var b,c,d,e,f=Fb(a),g="";return f&&(b=Wf.centroid(f),c=b[0],d=b[1],e=Math.sqrt(c*c+d*d),g="translate("+c/e*Tf*.8+","+d/e*Tf*.8+")"),g}function Kb(a){return a?(a.endAngle-a.startAngle)/(2*Math.PI):null}function Lb(a){return pc({id:a.data.id,value:a.value,ratio:Kb(a)})}function Mb(a){var b,c,d,e;return Pb()?(b=Fb(a),c=b?b.value:null,d=Kb(b),e=Qb(),e?e(c,d):Ad(c,d)):""}function Nb(a,b){var c=bj.selectAll("."+f.chartArc+md(a)),d=bj.selectAll("."+f.arc).filter(function(b){return b.data.id!==a});pe(a)&&c.selectAll("path").transition().duration(50).attr("d",Xf).transition().duration(100).attr("d",Yf).each(function(a){ke(a.data)}),b||d.style("opacity",.3)}function Ob(a){var b=bj.selectAll("."+f.chartArc+md(a));b.selectAll("path").transition().duration(50).attr("d",Wf),bj.selectAll("."+f.arc).style("opacity",1)}function Pb(){return de(vf.data.targets)?ci:Yh}function Qb(){return de(vf.data.targets)?di:Zh}function Rb(){return de(vf.data.targets)?fi:""}function Sb(){var a=de(vf.data.targets)?gi:_h;return"function"==typeof a?a:function(){}}function Tb(){var a=de(vf.data.targets)?hi:ai;return"function"==typeof a?a:function(){}}function Ub(){var a=de(vf.data.targets)?ii:bi;return"function"==typeof a?a:function(){}}function Vb(a){var b,c,d,e,f,g,h=Cc(a),i=Pc(a);if(wg.length>0)for(g=Rc(a),b=0;b<wg.length;b++)if(e=wg[b].filter(function(a){return h.indexOf(a)>=0}),0!==e.length)for(d=e[0],g&&i[d]&&i[d].forEach(function(a,b){i[d][b]=0>a?a:0}),c=1;c<e.length;c++)f=e[c],i[f]&&i[f].forEach(function(a,b){Z(f)!==Z(d)||!i[d]||g&&+a>0||(i[d][b]+=+a)});return uf.min(Object.keys(i).map(function(a){return uf.min(i[a])}))}function Wb(a){var b,c,d,e,f,g,h=Cc(a),i=Pc(a);if(wg.length>0)for(g=Sc(a),b=0;b<wg.length;b++)if(e=wg[b].filter(function(a){return h.indexOf(a)>=0}),0!==e.length)for(d=e[0],g&&i[d]&&i[d].forEach(function(a,b){i[d][b]=a>0?a:0}),c=1;c<e.length;c++)f=e[c],i[f]&&i[f].forEach(function(a,b){Z(f)!==Z(d)||!i[d]||g&&0>+a||(i[d][b]+=+a)});return uf.max(Object.keys(i).map(function(a){return uf.max(i[a])}))}function Xb(a,c){var d,e,f,g,h,i,j,k,l=a.filter(function(a){return Z(a.id)===c}),m="y2"===c?Ch:th,n="y2"===c?Bh:sh,o=b(m)?m:Vb(l),p=b(n)?n:Wb(l),q="y2"===c?Dh:uh,r=ud()&&$g;return 0===l.length?"y2"===c?ig.domain():hg.domain():(o===p&&(0>o?p=0:o=0),d=Math.abs(p-o),e=f=g=r?0:.1*d,q&&(h=Math.max(Math.abs(o),Math.abs(p)),p=h-q,o=q-h),r&&(i=vd(o,p),j=ac(hg.range()),k=[i[0]/j,i[1]/j],f+=d*(k[1]/(1-k[0]-k[1])),g+=d*(k[0]/(1-k[0]-k[1]))),"y"===c&&yh&&(f=b(yh.top)?yh.top:e,g=b(yh.bottom)?yh.bottom:e),"y2"===c&&Hh&&(f=b(Hh.top)?Hh.top:e,g=b(Hh.bottom)?Hh.bottom:e),ae(l)&&!Rc(l)&&(g=o),[o-g,p+f])}function Yb(a){return mh?xi?re(mh):mh:uf.min(a,function(a){return uf.min(a.values,function(a){return a.x})})}function Zb(a){return lh?xi?re(lh):lh:uf.max(a,function(a){return uf.max(a.values,function(a){return a.x})})}function $b(a){var c,d,e,f,g=Bc(a),h=g[1]-g[0];return yi?d=0:ae(a)?(c=zc(),d=c>1?h/(c-1)/2:.5):d=.01*h,"object"==typeof nh&&we(nh)?(e=b(nh.left)?nh.left:d,f=b(nh.right)?nh.right:d):e=f="number"==typeof nh?nh:d,{left:e,right:f}}function _b(a){var b=[Yb(a),Zb(a)],c=b[0],d=b[1],e=$b(a),f=0,g=0;return(c||0===c)&&(f=xi?new Date(c.getTime()-e.left):c-e.left),(d||0===d)&&(g=xi?new Date(d.getTime()+e.right):d+e.right),[f,g]}function ac(a){return a[1]-a[0]}function bc(a){for(var b=0;b<a.length;b++)if(!(a[b]in wf))return!1;return!0}function cc(a,b){wf[a]=wc(b)}function dc(a){for(var b=[],c=0;c<a.length;c++)a[c]in wf&&b.push(wc(wf[a[c]]));return b}function ec(a){var b,c="y"===a.axis?hg:ig;return b="y"===a.axis||"y2"===a.axis?$g?"start"in a?c(a.start):0:0:$g?0:"start"in a?gg(xi?re(a.start):a.start):0}function fc(a){var b,c="y"===a.axis?hg:ig;return b="y"===a.axis||"y2"===a.axis?$g?0:"end"in a?c(a.end):0:$g?"start"in a?gg(xi?re(a.start):a.start):0:0}function gc(a){var b,c=ec(a),d="y"===a.axis?hg:ig;return b="y"===a.axis||"y2"===a.axis?$g?"end"in a?d(a.end):Nf:Nf:$g?Nf:"end"in a?gg(xi?re(a.end):a.end):Nf,c>b?0:b-c}function hc(a){var b,c=fc(a),d="y"===a.axis?hg:ig;return b="y"===a.axis||"y2"===a.axis?$g?Pf:"start"in a?d(a.start):Pf:$g?"end"in a?gg(xi?re(a.end):a.end):Pf:Pf,c>b?0:b-c}function ic(a){return qg&&a===qg||we(rg)&&xe(rg,a)}function jc(a){return!ic(a)}function kc(a){return qg?qg:we(rg)?rg[a]:null}function lc(a,b){var c,d=b&&we(b)?Cc(b):[];return d.forEach(function(b){kc(b)===a&&(c=vf.data.xs[b])}),c}function mc(a,b){return a in vf.data.xs&&vf.data.xs[a]&&vf.data.xs[a][b]?vf.data.xs[a][b]:b}function nc(a){Object.keys(a).forEach(function(b){rg[b]=a[b]})}function oc(a){return 1===uf.set(Object.keys(a).map(function(b){return a[b]})).size()}function pc(a){var b;return a&&(b=ug[a.id],a.name=b?b:a.id),a}function qc(a,b){a.forEach(function(a){a.values.forEach(function(c,d){c.x=sc(b[d],a.id,d)}),vf.data.xs[a.id]=b})}function rc(a,b){a.forEach(function(a){b[a.id]&&qc([a],b[a.id])})}function sc(a,c,d){var e;return e=xi?a?a instanceof Date?a:re(a):re(mc(c,d)):zi&&!yi?b(a)?+a:mc(c,d):d}function tc(a){var b,c,d=a[0],e={},f=[];for(b=1;b<a.length;b++){for(e={},c=0;c<a[b].length;c++)e[d[c]]=a[b][c];f.push(e)}return f}function uc(a){var b,d,e,f=[];for(b=0;b<a.length;b++)for(e=a[b][0],d=1;d<a[b].length;d++)c(f[d-1])&&(f[d-1]={}),f[d-1][e]=a[b][d];return f}function vc(a){var c,d=uf.keys(a[0]).filter(jc),e=uf.keys(a[0]).filter(ic);return d.forEach(function(c){var d,f=kc(c);zi||xi?e.indexOf(f)>=0?vf.data.xs[c]=a.map(function(a){return a[f]}).filter(b):qg?(d=Object.keys(vf.data.xs),vf.data.xs[c]=d.length>0?vf.data.xs[d[0]]:void 0):we(rg)&&(vf.data.xs[c]=lc(f,vf.data.targets)):vf.data.xs[c]=a.map(function(a,b){return b})}),d.forEach(function(a){if(!vf.data.xs[a])throw new Error('x is not defined for id = "'+a+'".')}),c=d.map(function(b,c){var d=tg(b);return{id:d,id_org:b,values:a.map(function(a,e){var f=kc(b),g=a[f],h=sc(g,b,e);return zi&&yi&&0===c&&g&&(0===e&&(ch=[]),ch.push(g)),("undefined"==typeof a[b]||vf.data.xs[b].length<=e)&&(h=void 0),{x:h,value:null===a[b]||isNaN(a[b])?null:+a[b],id:d}}).filter(function(a){return"undefined"!=typeof a.x})}}),c.forEach(function(a){var b;a.values=a.values.sort(function(a,b){var c=a.x||0===a.x?a.x:1/0,d=b.x||0===b.x?b.x:1/0;return c-d}),b=0,a.values.forEach(function(a){a.index=b++})}),yg&&$d(Cc(c).filter(function(a){return!(a in zg)}),yg),c.forEach(function(a){cc(a.id_org,a)}),c}function wc(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 xc(a){return a>0&&vf.data.targets[0].values[a-1]?vf.data.targets[0].values[a-1].x:void 0}function yc(a){return a<zc()-1?vf.data.targets[0].values[a+1].x:void 0}function zc(){return uf.max(vf.data.targets,function(a){return a.values.length})}function Ac(a){var b,c=a.length,d=0;return c>1?a.forEach(function(a){a.values.length>d&&(b=a,d=a.values.length)}):b=c?a[0]:null,b}function Bc(a){var b,c,d=Ac(a);return d?(b=d.values[0],c=d.values[d.values.length-1],[b.x,c.x]):[0,0]}function Cc(a){return a.map(function(a){return a.id})}function Dc(a){return a?"string"==typeof a?[a]:a:Cc(vf.data.targets)}function Ec(a,b){var c,d=Cc(a);for(c=0;c<d.length;c++)if(d[c]===b)return!0;return!1}function Fc(a){return d(a)?vf.data.targets.filter(a):vf.data.targets}function Gc(a){return Ji.indexOf(a)<0}function Hc(a){return Ki.indexOf(a)<0}function Ic(a){return a.filter(function(a){return Gc(a.id)})}function Jc(a){var b=uf.set(uf.merge(a.map(function(a){return a.values.map(function(a){return a.x})}))).values();return b.map(xi?function(a){return new Date(a)}:function(a){return+a})}function Kc(a,b){var c,d,e,f,g,h,i,j=a;if(b)if(c="function"==typeof b?b():b,1===c)j=[a[0]];else if(2===c)j=[a[0],a[a.length-1]];else if(c>2){for(f=c-2,d=a[0],e=a[a.length-1],g=(e-d)/(f+1),j=[d],h=0;f>h;h++)i=+d+g*(h+1),j.push(xi?new Date(i):i);j.push(e)}return xi||(j=j.sort(function(a,b){return a-b})),j}function Lc(a){Ji=Ji.concat(a)}function Mc(a){Ji=Ji.filter(function(b){return a.indexOf(b)<0})}function Nc(a){Ki=Ki.concat(a)}function Oc(a){Ki=Ki.filter(function(b){return a.indexOf(b)<0})}function Pc(a){var b={};return a.forEach(function(a){b[a.id]=[],a.values.forEach(function(c){b[a.id].push(c.value)})}),b}function Qc(a,b){var c,d,e,f=Object.keys(a);for(c=0;c<f.length;c++)for(e=a[f[c]].values,d=0;d<e.length;d++)if(b(e[d].value))return!0;return!1}function Rc(a){return Qc(a,function(a){return 0>a})}function Sc(a){return Qc(a,function(a){return a>0})}function Tc(a){return a<ch.length?ch[a]:a}function Uc(a,b){return" "+a+" "+a+ld(b)}function Vc(a){return Uc(f.text,a.id)}function Wc(a){return Uc(f.texts,a.id)}function Xc(a,b){return Uc(f.shape,b)}function Yc(a){return Uc(f.shapes,a.id)}function Zc(a){return Yc(a)+Uc(f.line,a.id)}function $c(a,b){return Xc(a,b)+Uc(f.circle,b)}function _c(a){return Yc(a)+Uc(f.circles,a.id)}function ad(a,b){return Xc(a,b)+Uc(f.bar,b)}function bd(a){return Yc(a)+Uc(f.bars,a.id)}function cd(a){return Yc(a.data)+Uc(f.arc,a.data.id)}function dd(a){return Yc(a)+Uc(f.area,a.id)}function ed(a,b){return Uc(f.region,b)+" "+("class"in a?a.class:"")}function fd(a,b){return Uc(f.eventRect,b)}function gd(a){var b=vg[a],c="";return b&&(c=" "+f.target+"-"+b),Uc(f.target,a)+c}function hd(a){return f.chartText+gd(a.id)}function id(a){return f.chartLine+gd(a.id)}function jd(a){return f.chartBar+gd(a.id)}function kd(a){return f.chartArc+gd(a.data.id)}function ld(a){return a||0===a?"-"+(a.replace?a.replace(/([^a-zA-Z0-9-_])/g,"-"):a):""}function md(a){return"."+f.target+ld(a)}function nd(a){return a.length?a.map(function(a){return md(a)}):null}function od(a){return"."+f.legendItem+ld(a)}function pd(a){return a.length?a.map(function(a){return od(a)}):null}function qd(a){return null!==a.value&&kj[a.id]?1:0}function rd(a){var b=td(a);return qd(a)*b}function sd(a){return b(a.value)?ie(a)?.5:1:0}function td(){return ud()?1:0}function ud(){return"boolean"==typeof Ag&&Ag?!0:"object"==typeof Ag&&we(Ag)?!0:!1}function vd(a,b){var c=[],d=1.3;return uf.select("svg").selectAll(".dummy").data([a,b]).enter().append("text").text(function(a){return a}).each(function(a,b){c[b]=this.getBoundingClientRect().width*d}).remove(),c}function wd(a){var b=a?Ad:xd,c=a?Ad:yd;return function(a,d,e){var f="y2"===Z(e)?c:b;return f(a,d)}}function xd(a){var b=xh?xh:zd;return b(a)}function yd(a){var b=Gh?Gh:zd;return b(a)}function zd(a){return b(a)?+a:""}function Ad(a,b){return(100*b).toFixed(1)+"%"}function Bd(a){var c=function(a){return b(a)?+a:""},d=Z(a),e=c;return"function"==typeof Ag.format?e=Ag.format:"object"==typeof Ag.format&&"function"==typeof Ag.format[d]&&(e=Ag.format[d]),e}function Cd(a){return a?gg(a.x):null}function Dd(a){return gg(xi?re(a.value):a.value)}function Ed(a){var b=a.axis&&"y2"===a.axis?ig:hg;return b(a.value)}function Fd(a){return jg(a.x)}function Gd(a,b){var c,d=a[b].x,e=[];for(c=b-1;c>=0&&d===a[c].x;c--)e.push(a[c]);for(c=b;c<a.length&&d===a[c].x;c++)e.push(a[c]);return e}function Hd(a,b,c,d){var e,f=c?c:0,g=d?d:a.length-1,h=Math.floor((g-f)/2)+f,i=a[h],j=gg(i.x)-b[$g?1:0];return j>0?g=h:f=h,g-f===1||0===f&&0===g?(e=[],(a[f].x||0===a[f].x)&&(e=e.concat(Gd(a,f))),(a[g].x||0===a[g].x)&&(e=e.concat(Gd(a,g))),Jd(e,b)):Hd(a,b,f,g)}function Id(a,b){var c;return c=a.map(function(a){return Hd(a.values,b)}),Jd(c,b)}function Jd(a,b){var c,d;return a.forEach(function(a){var e=ye(a,b);(c>e||!c)&&(c=e,d=a)}),d}function Kd(a,b){return uf.merge(a.map(function(a){return a.values})).filter(function(a){return a.x===b})}function Ld(a){var b=a.getBoundingClientRect(),c=[a.pathSegList.getItem(0),a.pathSegList.getItem(1)],d=c[0].x,e=Math.min(c[0].y,c[1].y);return{x:d,y:e,width:b.width,height:b.height}}function Md(){return Bg&&"desc"===Bg.toLowerCase()}function Nd(){return Bg&&"asc"===Bg.toLowerCase()}function Od(a){var b=Nd(),c=Md();return b||c?a.sort(function(a,c){var d=function(a,b){return a+Math.abs(b.value)},e=a.values.reduce(d,0),f=c.values.reduce(d,0);return b?f-e:e-f}):"function"==typeof Bg&&a.sort(Bg),a}function Pd(a,c){var d,e,f,g,h,i,j,k=ee(vf.data.targets),l=a.filter(function(a){return a&&b(a.value)});0!==l.length&&ki&&(gj.html(ni(a,$(),wd(k),Gi)).style("display","block"),d=gj.property("offsetWidth"),e=gj.property("offsetHeight"),k?(g=Nf/2+c[0],i=Pf/2+c[1]+20):($g?(f=q(),g=f+c[0]+100,h=g+d,j=r()-u(),i=gg(l[0].x)+20):(f=q(),g=f+t()+gg(l[0].x)+20,h=g+d,j=f+r()-u(),i=c[1]+15),h>j&&(g-=d+60),i+e>s()&&(i-=e+30)),gj.style("top",i+"px").style("left",g+"px"))}function Qd(){gj.style("display","none")}function Rd(a){var c=a.filter(function(a){return a&&b(a.value)});ki&&(be(vf.data.targets)||ee(vf.data.targets)||dj.selectAll("line."+f.xgridFocus).style("visibility","visible").data([c[0]]).attr($g?"y1":"x1",Cd).attr($g?"y2":"x2",Cd))}function Sd(){dj.select("line."+f.xgridFocus).style("visibility","hidden")}function Td(a){return a.x||0===a.x?gg(a.x):null}function Ud(a){return V(a.id)(a.value)}function Vd(){var a,b,d={},e=0;return Ic(Fc(he)).forEach(function(f){for(a=0;a<wg.length;a++)if(!(wg[a].indexOf(f.id)<0))for(b=0;b<wg[a].length;b++)if(wg[a][b]in d){d[f.id]=d[wg[a][b]];break}c(d[f.id])&&(d[f.id]=e++)}),d.__max__=e-1,d}function Wd(a,b,c,d){var e=d?jg:gg;return function(d){var f=d.id in c?c[d.id]:0;return d.x||0===d.x?e(d.x)-a*(b/2-f):0}}function Xd(a){return function(b){var c=a?W(b.id):V(b.id);return c(b.value)}}function Yd(a,b){var c=Od(Ic(Fc(he))),d=c.map(function(a){return a.id});return function(e,f){var g=b?W(e.id):V(e.id),h=g(0),i=h;return c.forEach(function(b){b.id!==e.id&&a[b.id]===a[e.id]&&d.indexOf(b.id)<d.indexOf(e.id)&&b.values[f].value*e.value>0&&(i+=g(b.values[f].value)-h)}),i}}function Zd(a,b){return"number"==typeof Wh?Wh:b?2*a.tickOffset()*Xh/b:0}function $d(a,b){Dc(a).forEach(function(a){kj[a]=b===zg[a],zg[a]=b})}function _d(a,b){var c=!1;return a.forEach(function(a){zg[a.id]===b&&(c=!0),a.id in zg||"line"!==b||(c=!0)}),c}function ae(a){return _d(a,"bar")}function be(a){return _d(a,"scatter")}function ce(a){return _d(a,"pie")}function de(a){return _d(a,"donut")}function ee(a){return ce(a)||de(a)}function fe(a){var b="string"==typeof a?a:a.id;return!(b in zg)||"line"===zg[b]||"spline"===zg[b]||"area"===zg[b]||"area-spline"===zg[b]}function ge(a){var b="string"==typeof a?a:a.id;return"spline"===zg[b]||"area-spline"===zg[b]}function he(a){var b="string"==typeof a?a:a.id;return"bar"===zg[b]}function ie(a){var b="string"==typeof a?a:a.id;return"scatter"===zg[b]}function je(a){var b="string"==typeof a?a:a.id;return"pie"===zg[b]}function ke(a){var b="string"==typeof a?a:a.id;return"donut"===zg[b]}function le(a){return je(a)||ke(a)}function me(a){return he(a)?a.values:[]}function ne(a){return fe(a)||ie(a)?a.values:[]}function oe(a){return he(a)||fe(a)?a.values:[]}function pe(a){return ke(a)&&ei||je(a)&&$h}function qe(a,b,c){var d=[];return function(e){var f,g=e.id||e;return a[g]instanceof Function?f=a[g](e):g in a?f=a[g]:(d.indexOf(g)<0&&d.push(g),f=b[d.indexOf(g)%b.length]),c instanceof Function?c(f,e):f}}function re(b){var c;try{c=sg?uf.time.format(sg).parse(b):new Date(b)}catch(d){a.console.error("Failed to parse x '"+b+"' to Date with format "+sg)}return c}function se(a,b){var c=uf.mouse(a),d=uf.select(a),e=1*d.attr("cx"),f=1*d.attr("cy");return Math.sqrt(Math.pow(e-c[0],2)+Math.pow(f-c[1],2))<b}function te(a){var b=uf.mouse(a),c=a.getBoundingClientRect(),d=a.pathSegList.getItem(0),e=a.pathSegList.getItem(1),f=d.x,g=Math.min(d.y,e.y),h=c.width,i=c.height,j=2,k=f-j,l=f+h+j,m=g+i+j,n=g-j;return k<b[0]&&b[0]<l&&n<b[1]&&b[1]<m}function ue(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 ve(a){return!a||"string"==typeof a&&0===a.length||"object"==typeof a&&0===Object.keys(a).length}function we(a){return Object.keys(a).length>0}function xe(a,b){var c=!1;return Object.keys(a).forEach(function(d){a[d]===b&&(c=!0)}),c}function ye(a,b){var c="y"===Z(a.id)?hg:ig,d=$g?1:0,e=$g?0:1;return Math.pow(gg(a.x)-b[d],2)+Math.pow(c(a.value)-b[e],2)}function ze(a,b){var c=0;a.each(function(){++c}).each("end",function(){--c||b.apply(this,arguments)})}function Ae(a,b,c){Ng(b,a.node()),dj.select("."+f.selectedCircles+ld(b.id)).selectAll("."+f.selectedCircle+"-"+c).data([b]).enter().append("circle").attr("class",function(){return Uc(f.selectedCircle,c)}).attr("cx",$g?Ud:Td).attr("cy",$g?Td:Ud).attr("stroke",function(){return Gi(b)}).attr("r",1.4*Uh).transition().duration(100).attr("r",Uh)}function Be(a,b,c){Og(b,a.node()),dj.select("."+f.selectedCircles+ld(b.id)).selectAll("."+f.selectedCircle+"-"+c).transition().duration(100).attr("r",0).remove()}function Ce(a,b,c,d){a?Ae(b,c,d):Be(b,c,d)}function De(a,b){Ng(b,a.node()),a.transition().duration(100).style("fill",function(){return uf.rgb(Gi(b)).darker(1)})}function Ee(a,b){Og(b,a.node()),a.transition().duration(100).style("fill",function(){return Gi(b)})}function Fe(a,b,c,d){a?De(b,c,d):Ee(b,c,d)}function Ge(a){return a.filter(function(a){return b(a.value)})}function He(a,c){return(c?dj.selectAll("."+f.circles+ld(c)):dj).selectAll("."+f.circle+(b(a)?"-"+a:""))}function Ie(a,b){He(a,b).classed(f.EXPANDED,!0).attr("r",Th)}function Je(a){He(a).filter(function(){return uf.select(this).classed(f.EXPANDED)}).classed(f.EXPANDED,!1).attr("r",Qh)}function Ke(a){return dj.selectAll("."+f.bar+(b(a)?"-"+a:""))}function Le(a){Ke(a).classed(f.EXPANDED,!0)}function Me(a){Ke(a).classed(f.EXPANDED,!1)}function Ne(a,b){var c=Re(a,b);return function(a,b){var d=c(a,b),e=$g?1:0,f=$g?0:1,g="M "+d[0][e]+","+d[0][f]+" L"+d[1][e]+","+d[1][f]+" L"+d[2][e]+","+d[2][f]+" L"+d[3][e]+","+d[3][f]+" z";return g}}function Oe(a,b){var c=Re(a,!1),d=b?Pe:Qe;return function(a,b){return d(c(a,b),a,this)}}function Pe(a,b){var c;return $g?(c=he(b)?4:6,a[2][1]+c*(b.value<0?-1:1)):a[0][0]+(a[2][0]-a[0][0])/2}function Qe(a,b,c){var d=c.getBoundingClientRect();return $g?(a[0][0]+a[2][0]+.6*d.height)/2:a[2][1]+(b.value<0?d.height:he(b)?-3:-6)}function Re(a,b){var c=a.__max__+1,d=Zd(mg,c),e=Wd(d,c,a,!!b),f=Xd(!!b),g=Yd(a,!!b),h=b?W:V;return function(a,b){var c=h(a.id)(0),i=g(a,b)||c,j=e(a),k=f(a);return $g&&(a.value>0&&i>k||a.value<0&&k>i)&&(k=i),[[j,i],[j,k-(c-i)],[j+d,k-(c-i)],[j+d,i]]}}function Se(a,b,e,f){var g,h,i,j,k,l,m,n,o,p,q,r=-1,s="M",t=[];if(d(f))for(g=0;g<f.length;g++)t[g]={},t[g].start=c(f[g].start)?a[0].x:xi?re(f[g].start):f[g].start,t[g].end=c(f[g].end)?a[a.length-1].x:xi?re(f[g].end):f[g].end;for(p=$g?function(a){return e(a.value)}:function(a){return b(a.x)},q=$g?function(a){return b(a.x)}:function(a){return e(a.value)},i=xi?function(a,c,d,f){var g=a.x.getTime(),h=c.x-a.x,i=new Date(g+h*d),j=new Date(g+h*(d+f));return"M"+b(i)+" "+e(k(d))+" "+b(j)+" "+e(k(d+f))}:function(a,c,d,f){return"M"+b(j(d))+" "+e(k(d))+" "+b(j(d+f))+" "+e(k(d+f))},g=0;g<a.length;g++){if(c(t)||!ue(a[g].x,t))s+=" "+p(a[g])+" "+q(a[g]);else{j=T(a[g-1].x,a[g].x),k=U(a[g-1].value,a[g].value),l=b(a[g].x)-b(a[g-1].x),m=e(a[g].value)-e(a[g-1].value),n=Math.sqrt(Math.pow(l,2)+Math.pow(m,2)),o=2/n;var u=2*o;for(h=o;1>=h;h+=u)s+=i(a[g-1],a[g],h,o)}r=a[g].x}return s}function Te(b){var c,d,e;if(hj=uf.select(xf),hj.empty())throw new Error('Bind element not found. Check the selector specified by "bindto" and existance of that element. Default "bindto" is "#chart".');if(hj.html("").classed("c3",!0),vf.data.xs={},vf.data.targets=vc(b),Fg&&Lc(Fg===!0?Cc(vf.data.targets):Fg),n(),R(),gg.domain(uf.extent(_b(vf.data.targets))),hg.domain(Xb(vf.data.targets,"y")),ig.domain(Xb(vf.data.targets,"y2")),jg.domain(gg.domain()),kg.domain(hg.domain()),lg.domain(ig.domain()),ij=gg.domain(),Yi.scale(jg),Cf&&aj.scale(gg),bj=hj.append("svg").attr("width",Nf+Kf.left+Kf.right).attr("height",Pf+Kf.top+Kf.bottom).on("mouseenter",Ff).on("mouseleave",Gf),cj=bj.append("defs"),cj.append("clipPath").attr("id",ri).append("rect").attr("width",Nf).attr("height",Pf),cj.append("clipPath").attr("id",si).append("rect").attr("x",B).attr("y",C).attr("width",H).attr("height",I),cj.append("clipPath").attr("id",ti).append("rect").attr("x",D).attr("y",E).attr("width",J).attr("height",K),dj=bj.append("g").attr("transform",Pi.main),ej=bj.append("g").attr("transform",Pi.context),fj=bj.append("g").attr("transform",Pi.legend),Rg||ej.style("visibility","hidden"),Ug||(fj.style("visibility","hidden"),Ki=Cc(vf.data.targets)),gj=uf.select(xf).style("position","relative").append("div").style("position","absolute").style("pointer-events","none").style("z-index","10").style("display","none"),pf(Cc(vf.data.targets),{withTransform:!1,withTransitionForTransform:!1}),_g&&dj.append("g").attr("class",f.axisX).attr("clip-path",vi).attr("transform",Pi.x).append("text").attr("class",f.axisXLabel).attr("transform",$g?"rotate(-90)":"").style("text-anchor",zb),rh&&dj.append("g").attr("class",f.axisY).attr("clip-path",wi).attr("transform",Pi.y).append("text").attr("class",f.axisYLabel).attr("transform",$g?"":"rotate(-90)").style("text-anchor",Ab),Ah&&dj.append("g").attr("class",f.axisY2).attr("transform",Pi.y2).append("text").attr("class",f.axisY2Label).attr("transform",$g?"":"rotate(-90)").style("text-anchor",Bb),d=dj.append("g").attr("clip-path",ui).attr("class",f.grid),Jh&&d.append("g").attr("class",f.xgrids),we(Lh)&&d.append("g").attr("class",f.xgridLines),Rh&&d.append("g").attr("class",f.xgridFocus).append("line").attr("class",f.xgridFocus),Mh&&d.append("g").attr("class",f.ygrids),we(Nh)&&d.append("g").attr("class",f.ygridLines),dj.append("g").attr("clip-path",ui).attr("class",f.regions),dj.append("g").attr("clip-path",ui).attr("class",f.chart),c=dj.select("."+f.chart).append("g").attr("class",f.eventRects).style("fill-opacity",0).style("cursor",Cf?$g?"ns-resize":"ew-resize":null),dj.select("."+f.chart).append("g").attr("class",f.chartBars),dj.select("."+f.chart).append("g").attr("class",f.chartLines),dj.select("."+f.chart).append("g").attr("class",f.chartArcs).attr("transform",Pi.arc).append("text").attr("class",f.chartArcsTitle).style("text-anchor","middle").text(Rb()),dj.select("."+f.chart).append("g").attr("class",f.chartTexts),Cf&&dj.insert("rect",Ef?null:"g."+f.grid).attr("class",f.zoomRect).attr("width",Nf).attr("height",Pf).style("opacity",0).style("cursor",$g?"ns-resize":"ew-resize").call(aj).on("dblclick.zoom",null),ph&&Yi.extent("function"!=typeof ph?ph:ph(_b())),ej.append("g").attr("clip-path",ui).attr("class",f.chart),ej.select("."+f.chart).append("g").attr("class",f.chartBars),ej.select("."+f.chart).append("g").attr("class",f.chartLines),ej.append("g").attr("clip-path",ui).attr("class",f.brush).call(Yi).selectAll("rect").attr($g?"width":"height",$g?Of:Qf),ej.append("g").attr("class",f.axisX).attr("transform",Pi.subx).attr("clip-path",$g?"":vi),ef(vf.data.targets),$g?dj.select("."+f.axisX).style("opacity",0).call(mg):(dj.select("."+f.axisY).style("opacity",0).call(ng),dj.select("."+f.axisY2).style("opacity",0).call(og)),n(),R(),cf(),m(!1),$e({withTransform:!0,withUpdateXDomain:!0,withUpdateOrgXDomain:!0,withTransitionForAxis:!1}),oi){if(xi&&"string"==typeof pi){for(pi=re(pi),e=0;e<vf.data.targets[0].values.length&&vf.data.targets[0].values[e].x-pi!==0;e++);pi=e
}gj.html(ni(vf.data.targets.map(function(a){return pc(a.values[pi])}),$(),wd(ee(vf.data.targets)),Gi)),gj.style("top",qi.top).style("left",qi.left).style("display","block")}null==a.onresize&&(a.onresize=bf()),a.onresize.add&&(a.onresize.add(Hf),a.onresize.add(function(){df({withLegend:!0,withTransition:!1,withTransitionForTransform:!1})}),a.onresize.add(If))}function Ue(a){a.append("rect").attr("class",fd).style("cursor",Gg&&Hg?"pointer":null).on("mouseover",function(a,b){if(!Bi&&!ee(vf.data.targets)){var c,d,e=vf.data.targets.map(function(a){return pc(a.values[b])});if(Object.keys(ug).length>0){d=[];for(var g in ug)for(c=0;c<e.length;c++)if(e[c].id===g){d.push(e[c]),e.shift(c);break}e=d.concat(e)}Sh&&Ie(b),Le(b),dj.selectAll("."+f.shape+"-"+b).each(function(a){Lg(a)})}}).on("mouseout",function(a,b){ee(vf.data.targets)||(Sd(),Qd(),Je(b),Me(),dj.selectAll("."+f.shape+"-"+b).each(function(a){Mg(a)}))}).on("mousemove",function(a,b){var c;Bi||ee(vf.data.targets)||(c=Ic(vf.data.targets).map(function(a){return pc(a.values[b])}),Pd(c,uf.mouse(this)),Rd(c),Gg&&(Hg||dj.selectAll("."+f.shape+"-"+b).filter(function(a){return Ig(a)}).each(function(){var a=uf.select(this).classed(f.EXPANDED,!0);"circle"===this.nodeName&&a.attr("r",Th),bj.select("."+f.eventRect+"-"+b).style("cursor",null)}).filter(function(){return"circle"===this.nodeName?se(this,Uh):"path"===this.nodeName?te(this):void 0}).each(function(){var a=uf.select(this);a.classed(f.EXPANDED)||(a.classed(f.EXPANDED,!0),"circle"===this.nodeName&&a.attr("r",Uh)),bj.select("."+f.eventRect+"-"+b).style("cursor","pointer")})))}).on("click",function(a,b){return ee(vf.data.targets)?void 0:Ci?void(Ci=!1):void dj.selectAll("."+f.shape+"-"+b).each(function(a){We(this,a,b)})}).call(uf.behavior.drag().origin(Object).on("drag",function(){Xe(uf.mouse(this))}).on("dragstart",function(){Ye(uf.mouse(this))}).on("dragend",function(){Ze()})).call(aj).on("dblclick.zoom",null)}function Ve(a){a.append("rect").attr("x",0).attr("y",0).attr("width",Nf).attr("height",Pf).attr("class",f.eventRect).on("mouseout",function(){ee(vf.data.targets)||(Sd(),Qd(),Je())}).on("mousemove",function(){var a,b,c,d,e=Ic(vf.data.targets);Bi||ee(e)||(a=uf.mouse(this),b=Id(e,a),b&&(c=ie(b)?[b]:Kd(e,b.x),d=c.map(function(a){return pc(a)}),Pd(d,a),Sh&&(Je(),Ie(b.index,b.id)),Rd(d),ye(b,a)<100?(bj.select("."+f.eventRect).style("cursor","pointer"),Di||(Lg(b),Di=!0)):(bj.select("."+f.eventRect).style("cursor",null),Mg(b),Di=!1)))}).on("click",function(){var a,b,c=Ic(vf.data.targets);ee(c)||(a=uf.mouse(this),b=Id(c,a),b&&ye(b,a)<100&&dj.select("."+f.circles+"-"+ld(b.id)).select("."+f.circle+"-"+b.index).each(function(){We(this,b,b.index)}))}).call(uf.behavior.drag().origin(Object).on("drag",function(){Xe(uf.mouse(this))}).on("dragstart",function(){Ye(uf.mouse(this))}).on("dragend",function(){Ze()})).call(aj).on("dblclick.zoom",null)}function We(a,b,c){var d,e=uf.select(a),g=e.classed(f.SELECTED),h=!1;"circle"===a.nodeName?(h=se(a,1.5*Uh),d=Ce):"path"===a.nodeName&&(h=te(a),d=Fe),(Hg||h)&&(Gg&&Ig(b)&&(Jg||dj.selectAll("."+f.shapes+(Hg?ld(b.id):"")).selectAll("."+f.shape).each(function(a,b){var c=uf.select(this);c.classed(f.SELECTED)&&d(!1,c.classed(f.SELECTED,!1),a,b)}),e.classed(f.SELECTED,!g),d(!g,e,b,c)),Kg(b,a))}function Xe(a){var b,c,d,e,g,h,i,j;ee(vf.data.targets)||Gg&&(!Cf||aj.altDomain)&&Jg&&(b=Ai[0],c=Ai[1],d=a[0],e=a[1],g=Math.min(b,d),h=Math.max(b,d),i=Hg?Kf.top:Math.min(c,e),j=Hg?Pf:Math.max(c,e),dj.select("."+f.dragarea).attr("x",g).attr("y",i).attr("width",h-g).attr("height",j-i),dj.selectAll("."+f.shapes).selectAll("."+f.shape).filter(function(a){return Ig(a)}).each(function(a,b){var c,d,e,k,l,m,n=uf.select(this),o=n.classed(f.SELECTED),p=n.classed(f.INCLUDED),q=!1;"circle"===this.nodeName?(c=1*n.attr("cx"),d=1*n.attr("cy"),l=Ce,q=c>g&&h>c&&d>i&&j>d):"path"===this.nodeName&&(m=Ld(this),c=m.x,d=m.y,e=m.width,k=m.height,l=Fe,q=!(c>h||g>c+e||d>j||i>d+k)),q^p&&(n.classed(f.INCLUDED,!p),n.classed(f.SELECTED,!o),l(!o,n,a,b))}))}function Ye(a){ee(vf.data.targets)||Gg&&(Ai=a,dj.select("."+f.chart).append("rect").attr("class",f.dragarea).style("opacity",.1),Bi=!0,Pg())}function Ze(){ee(vf.data.targets)||Gg&&(dj.select("."+f.dragarea).transition().duration(100).style("opacity",0).remove(),dj.selectAll("."+f.shape).classed(f.INCLUDED,!1),Bi=!1,Qg())}function $e(a){var c,e,g,h,i,j,k,l,m,n,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,M,N,O,P,Q,R,S,T,U,V=Vd(),W=ee(vf.data.targets),X=Ic(vf.data.targets);if(a=d(a)?a:{},A=d(a.withY)?a.withY:!0,B=d(a.withSubchart)?a.withSubchart:!0,C=d(a.withTransition)?a.withTransition:!0,F=d(a.withTransform)?a.withTransform:!1,G=d(a.withUpdateXDomain)?a.withUpdateXDomain:!1,H=d(a.withUpdateOrgXDomain)?a.withUpdateOrgXDomain:!1,I=d(a.withLegend)?a.withLegend:!1,D=d(a.withTransitionForExit)?a.withTransitionForExit:C,E=d(a.withTransitionForAxis)?a.withTransitionForAxis:C,P=C?Jf:0,Q=D?P:0,R=E?P:0,c=dj.select("."+f.axisX).style("opacity",W?0:1),g=dj.select("."+f.axisY).style("opacity",W?0:1),h=dj.select("."+f.axisY2).style("opacity",W?0:1),e=ej.select("."+f.axisX).style("opacity",W?0:1),O={axisX:c.transition().duration(R),axisY:g.transition().duration(R),axisY2:h.transition().duration(R),axisSubX:e.transition().duration(R)},I&&Ug&&pf(Cc(vf.data.targets),a,O),yi&&(0!==X.length&&H&&G||gg.domain([0,c.selectAll(".tick").size()])),X.length&&(H&&(gg.domain(uf.extent(_b(X))),ij=gg.domain(),Cf&&aj.scale(gg).updateScaleExtent(),jg.domain(gg.domain()),Yi.scale(jg)),G&&(gg.domain(Yi.empty()?ij:Yi.extent()),Cf&&aj.scale(gg).updateScaleExtent()),jh||!ih&&!hh||(S=Kc(Jc(X),hh),mg.tickValues(S),pg.tickValues(S))),hg.domain(Xb(X,"y")),ig.domain(Xb(X,"y2")),O.axisX.call(mg),O.axisY.call(ng),O.axisY2.call(og),O.axisSubX.call(pg),G&&X.length)if(fh&&S){for(T=1;T<S.length;T++)if(S.length/T<gh){U=T;break}uf.selectAll("."+f.axisX+" .tick text").each(function(a){var b=S.indexOf(a);b>=0&&uf.select(this).style("display",b%U?"none":"block")})}else uf.selectAll("."+f.axisX+" .tick text").style("display","block");if(!$g&&kh&&eb(c,O.axisX,kh),J=Ne(V),M=Oe(V,!0),N=Oe(V,!1),Db(),kg.domain(hg.domain()),lg.domain(ig.domain()),gj.style("display","none"),o(),dj.select("line."+f.xgridFocus).style("visibility","hidden"),Jh){if("year"===Kh){j=[];for(var Y=_b(),Z=Y[0].getFullYear(),$=Y[1].getFullYear(),_=Z;$>=_;_++)j.push(new Date(_+"-01-01 00:00:00"))}else j=gg.ticks(10);i=dj.select("."+f.xgrids).selectAll("."+f.xgrid).data(j),i.enter().append("line").attr("class",f.xgrid),i.attr("x1",$g?0:function(a){return gg(a)-mg.tickOffset()}).attr("x2",$g?Nf:function(a){return gg(a)-mg.tickOffset()}).attr("y1",$g?function(a){return gg(a)-mg.tickOffset()}:Kf.top).attr("y2",$g?function(a){return gg(a)-mg.tickOffset()}:Pf).style("opacity",function(){return+uf.select(this).attr($g?"y1":"x1")===($g?Pf:0)?0:1}),i.exit().remove()}we(Lh)&&(k=dj.select("."+f.xgridLines).selectAll("."+f.xgridLine).data(Lh),l=k.enter().append("g").attr("class",function(a){return f.xgridLine+(a.class?a.class:"")}),l.append("line").style("opacity",0),l.append("text").attr("text-anchor","end").attr("transform",$g?"":"rotate(-90)").attr("dx",$g?0:-Kf.top).attr("dy",-5).style("opacity",0),k.select("line").transition().duration(P).attr("x1",$g?0:Dd).attr("x2",$g?Nf:Dd).attr("y1",$g?Dd:Kf.top).attr("y2",$g?Dd:Pf).style("opacity",1),k.select("text").transition().duration(P).attr("x",$g?Nf:0).attr("y",Dd).text(function(a){return a.text}).style("opacity",1),k.exit().transition().duration(P).style("opacity",0).remove()),A&&Mh&&(m=dj.select("."+f.ygrids).selectAll("."+f.ygrid).data(hg.ticks(Oh)),m.enter().append("line").attr("class",f.ygrid),m.attr("x1",$g?hg:0).attr("x2",$g?hg:Nf).attr("y1",$g?0:hg).attr("y2",$g?Pf:hg),m.exit().remove()),A&&we(Nh)&&(n=dj.select("."+f.ygridLines).selectAll("."+f.ygridLine).data(Nh),p=n.enter().append("g").attr("class",function(a){return f.ygridLine+(a.class?a.class:"")}),p.append("line").style("opacity",0),p.append("text").attr("text-anchor","end").attr("transform",$g?"rotate(-90)":"").attr("dx",$g?0:-Kf.top).attr("dy",-5).style("opacity",0),n.select("line").transition().duration(P).attr("x1",$g?Ed:0).attr("x2",$g?Ed:Nf).attr("y1",$g?0:Ed).attr("y2",$g?Pf:Ed).style("opacity",1),n.select("text").transition().duration(P).attr("x",$g?0:Nf).attr("y",Ed).text(function(a){return a.text}).style("opacity",1),n.exit().transition().duration(P).style("opacity",0).remove()),s=dj.select("."+f.regions).selectAll("rect."+f.region).data(ji),s.enter().append("rect").style("fill-opacity",0),s.attr("class",ed).attr("x",ec).attr("y",fc).attr("width",gc).attr("height",hc).transition().duration(P).style("fill-opacity",function(a){return b(a.opacity)?a.opacity:.1}),s.exit().transition().duration(P).style("fill-opacity",0).remove(),r=dj.selectAll("."+f.bars).selectAll("."+f.bar).data(me),r.enter().append("path").attr("d",J).style("stroke","none").style("opacity",0).style("fill",function(a){return Gi(a)}).attr("class",ad),r.style("opacity",qd).transition().duration(P).attr("d",J).style("opacity",1),r.exit().transition().duration(Q).style("opacity",0).remove(),t=dj.selectAll("."+f.texts).selectAll("."+f.text).data(oe),t.enter().append("text").attr("class",Vc).attr("text-anchor",function(a){return $g?a.value<0?"end":"start":"middle"}).style("stroke","none").style("fill-opacity",0),t.text(function(a){return Bd(a.id)(a.value)}).style("fill-opacity",rd).transition().duration(P).attr("x",M).attr("y",N).style("fill-opacity",td),t.exit().transition().duration(Q).style("fill-opacity",0).remove(),dj.selectAll("."+f.line).style("opacity",qd).transition().duration(P).attr("d",Zi).style("opacity",1),dj.selectAll("."+f.area).style("opacity",0).transition().duration(P).attr("d",$i).style("opacity",jj),q=dj.selectAll("."+f.circles).selectAll("."+f.circle).data(ne),q.enter().append("circle").attr("class",$c).style("opacity",0).attr("r",Qh),q.style("opacity",qd).transition().duration(P).style("opacity",sd).attr("cx",$g?Ud:Td).attr("cy",$g?Td:Ud),q.exit().remove(),dj.each(function(){Ei=!0}).selectAll("."+f.chartArc).select("."+f.arc).attr("transform",F?"scale(0)":"").style("opacity",function(a){return a===this._current?0:1}).transition().duration(P).attrTween("d",function(a){var b,c=Fb(a);return c?(b=uf.interpolate(this._current,c),this._current=b(0),function(a){return Ib(b(a),!0)}):function(){return"M 0 0"}}).attr("transform",F?"scale(1)":"").style("opacity",1).call(ze,function(){Ei=!1}),dj.selectAll("."+f.chartArc).select("text").attr("transform",Jb).style("opacity",0).transition().duration(P).text(Mb).style("opacity",function(a){return Gc(a.data.id)&&le(a.data)?1:0}),dj.select("."+f.chartArcsTitle).style("opacity",de(vf.data.targets)?1:0),Rg&&(null!==uf.event&&"zoom"===uf.event.type&&Yi.extent(gg.orgDomain()).update(),B&&(!$g&&kh&&eb(e,O.axisSubX,kh),Yi.empty()||Yi.extent(gg.orgDomain()).update(),K=Ne(V,!0),u=ej.selectAll("."+f.bars).selectAll("."+f.bar).data(me),u.enter().append("path").attr("d",K).style("stroke","none").style("fill",function(a){return Gi(a)}).attr("class",ad),u.style("opacity",qd).transition().duration(P).attr("d",K).style("opacity",1),u.exit().transition().duration(P).style("opacity",0).remove(),ej.selectAll("."+f.line).style("opacity",qd).transition().duration(P).attr("d",_i).style("opacity",1))),dj.selectAll("."+f.selectedCircles).filter(function(a){return he(a)}).selectAll("circle").remove(),dj.selectAll("."+f.selectedCircle).transition().duration(P).attr("cx",$g?Ud:Td).attr("cy",$g?Td:Ud),v=dj.select("."+f.eventRects),we(rg)&&!oc(rg)?(v.classed(f.eventRectsMultiple)||v.classed(f.eventRectsMultiple,!0).classed(f.eventRectsSingle,!1).selectAll("."+f.eventRect).remove(),w=dj.select("."+f.eventRects).selectAll("."+f.eventRect).data([0]),Ve(w.enter()),w.attr("x",0).attr("y",0).attr("width",Nf).attr("height",Pf)):(v.classed(f.eventRectsSingle)||v.classed(f.eventRectsMultiple,!1).classed(f.eventRectsSingle,!0).selectAll("."+f.eventRect).remove(),zi&&!yi?(z=function(a,b){var c=xc(b),d=yc(b),e=vf.data.xs[a.id][b];return(gg(d?d:e+50)-gg(c?c:e-50))/2},y=function(a,b){var c=xc(b),d=vf.data.xs[a.id][b];return(gg(d)+gg(c?c:d-50))/2}):(z=L(),y=function(a){return gg(a.x)-z/2}),x=Ac(vf.data.targets),dj.select("."+f.eventRects).datum(x?x.values:[]),w=dj.select("."+f.eventRects).selectAll("."+f.eventRect).data(function(a){return a}),Ue(w.enter()),w.attr("class",fd).attr("x",$g?0:y).attr("y",$g?y:0).attr("width",$g?Nf:z).attr("height",$g?z:Pf),w.exit().remove()),Cc(vf.data.targets).forEach(function(a){kj[a]=!0})}function _e(){$e({withTransition:!1,withY:!1,withSubchart:!1,withUpdateXDomain:!0})}function af(){return"mousemove"===uf.event.sourceEvent.type&&aj.altDomain?(gg.domain(aj.altDomain),void aj.scale(gg).updateScaleExtent()):(yi&&gg.orgDomain()[0]===ij[0]&&gg.domain([ij[0]-1e-10,gg.orgDomain()[1]]),$e({withTransition:!1,withY:!1,withSubchart:!1}),void("mousemove"===uf.event.sourceEvent.type&&(Ci=!0)))}function bf(){function a(){b.forEach(function(a){a()})}var b=[];return a.add=function(a){b.push(a)},a}function cf(){bj.attr("width",Rf).attr("height",Sf),bj.select("#"+ri).select("rect").attr("width",Nf).attr("height",Pf),bj.select("#"+si).select("rect").attr("x",B).attr("y",C).attr("width",H).attr("height",I),bj.select("#"+ti).select("rect").attr("x",D).attr("y",E).attr("width",J).attr("height",K),bj.select("."+f.zoomRect).attr("width",Nf).attr("height",Pf),hj.style("max-height",Sf+"px")}function df(a){a=a||{},a.withTransition=d(a.withTransition)?a.withTransition:!0,a.withTransform=d(a.withTransform)?a.withTransform:!1,a.withLegend=d(a.withLegend)?a.withLegend:!1,a.withUpdateXDomain=!0,a.withUpdateOrgXDomain=!0,a.withTransitionForExit=!1,n(),R(),cf(),m(a.withTransition),$e(a)}function ef(a){var b,c,d,e,g,h,i,j,k,l,m,n;i=dj.select("."+f.chartTexts).selectAll("."+f.chartText).data(a).attr("class",hd),j=i.enter().append("g").attr("class",hd).style("opacity",0).style("pointer-events","none"),j.append("g").attr("class",Wc).style("fill",function(a){return Gi(a)}),e=dj.select("."+f.chartBars).selectAll("."+f.chartBar).data(a).attr("class",jd),d=e.enter().append("g").attr("class",jd).style("opacity",0).style("pointer-events","none"),d.append("g").attr("class",bd).style("stroke","none").style("cursor",function(a){return Ig(a)?"pointer":null}),c=dj.select("."+f.chartLines).selectAll("."+f.chartLine).data(a).attr("class",id),b=c.enter().append("g").attr("class",id).style("opacity",0).style("pointer-events","none"),b.append("path").attr("class",Zc).style("opacity",0).style("stroke",function(a){return Gi(a)}),b.append("path").attr("class",dd).style("opacity",function(){return jj=+uf.select(this).style("opacity"),0}).style("fill",function(a){return Gi(a)}),b.append("g").attr("class",function(a){return Uc(f.selectedCircles,a.id)}),b.append("g").attr("class",_c).style("fill",function(a){return Gi(a)}).style("cursor",function(a){return Ig(a)?"pointer":null}),a.forEach(function(a){dj.selectAll("."+f.selectedCircles+ld(a.id)).selectAll("."+f.selectedCircle).each(function(b,c){b.value=a.values[c].value})}),h=dj.select("."+f.chartArcs).selectAll("."+f.chartArc).data(Zf(a)).attr("class",kd),g=h.enter().append("g").attr("class",kd),g.append("path").attr("class",cd).style("opacity",0).style("fill",function(a){return Gi(a.data)}).style("cursor",function(a){return Ig(a)?"pointer":null}).each(function(a){this._current=a}).on("mouseover",function(a,b){var c,d,e;Ei||(c=Fb(a),d=Lb(c),e=Tb(),Nb(c.data.id),lf(c.data.id,!0),e(d,b))}).on("mousemove",function(a){var b=Fb(a),c=Lb(b),d=[c];Pd(d,uf.mouse(this))}).on("mouseout",function(a,b){var c,d,e;Ei||(c=Fb(a),d=Lb(c),e=Ub(),Ob(c.data.id),mf(),Qd(),e(d,b))}).on("click",function(a,b){var c=Fb(a),d=Lb(c),e=Sb();e(d,b)}),g.append("text").attr("dy",".35em").style("opacity",0).style("text-anchor","middle").style("pointer-events","none"),Rg&&(n=ej.select("."+f.chartBars).selectAll("."+f.chartBar).data(a).attr("class",jd),m=n.enter().append("g").style("opacity",0).attr("class",jd),m.append("g").attr("class",bd).style("fill",function(a){return Gi(a)}),l=ej.select("."+f.chartLines).selectAll("."+f.chartLine).data(a).attr("class",id),k=l.enter().append("g").style("opacity",0).attr("class",id),k.append("path").attr("class",Zc).style("opacity",0).style("stroke",function(a){return Gi(a)})),bj.selectAll("."+f.target).filter(function(a){return Gc(a.id)}).transition().duration(Jf).style("opacity",1)}function ff(a,b){(b.type||b.types)&&a.forEach(function(a){b.types?$d(a.id,b.types[a.id]):$d(a.id,b.type)}),vf.data.targets.forEach(function(b){for(var c=0;c<a.length;c++)if(b.id===a[c].id){b.values=a[c].values,a.splice(c,1);break}}),vf.data.targets=vf.data.targets.concat(a),ef(vf.data.targets),$e({withUpdateOrgXDomain:!0,withUpdateXDomain:!0,withLegend:!0}),"function"==typeof b.done&&b.done()}function gf(a){if("data"in a)ff(vc(a.data),a);else if("url"in a)uf.csv(a.url,function(b,c){ff(vc(c),a)});else if("rows"in a)ff(vc(tc(a.rows)),a);else{if(!("columns"in a))throw Error("url or rows or columns is required.");ff(vc(uc(a.columns)),a)}}function hf(a,b){return"function"!=typeof b&&(b=function(){}),a=a.filter(function(a){return Ec(vf.data.targets,a)}),a&&0!==a.length?(bj.selectAll(a.map(function(a){return md(a)})).transition().style("opacity",0).remove().call(ze,b),void a.forEach(function(a){kj[a]=!1,fj.selectAll("."+f.legendItem+ld(a)).remove(),vf.data.targets=vf.data.targets.filter(function(b){return b.id!==a})})):void b()}function jf(a){return a.classed(f.legendItemHidden)?Ui:1}function kf(a){return a.classed(f.legendItemHidden)?Ui:.3}function lf(a,b){fj.selectAll("."+f.legendItem).transition().duration(100).style("opacity",function(c){var d=uf.select(this);return a&&c!==a?b?kf(d):jf(d):b?jf(d):kf(d)})}function mf(){fj.selectAll("."+f.legendItem).transition().duration(100).style("opacity",function(){return jf(uf.select(this))})}function nf(a){Ug||(Ug=!0,fj.style("visibility","visible")),Oc(a),fj.selectAll(pd(a)).style("visibility","visible").transition().style("opacity",function(){return jf(uf.select(this))})}function of(a){Ug&&ve(a)&&(Ug=!1,fj.style("visibility","hidden")),Nc(a),fj.selectAll(pd(a)).style("opacity",0).style("visibility","hidden")}function pf(a,b,c){function e(b,c,d){function e(a,b){b||(f=(l-w-k)/2,v>f&&(f=(l-k)/2,w=0,C++)),B[a]=C,A[C]=f,x[a]=w,w+=k}var f,g,h=b.getBoundingClientRect(),i=10*Math.ceil((h.width+s)/10),j=10*Math.ceil((h.height+r)/10),k=Qi?j:i,l=Qi?Q():P();return d&&(w=0,C=0,t=0,u=0),Ug&&!Hc(c)?void(y[c]=z[c]=B[c]=x[c]=0):(y[c]=i,z[c]=j,(!t||i>=t)&&(t=i),(!u||j>=u)&&(u=j),g=Qi?u:t,void(Zg?(Object.keys(y).forEach(function(a){y[a]=t}),Object.keys(z).forEach(function(a){z[a]=u}),f=(l-g*a.length)/2,v>f?(w=0,C=0,a.forEach(function(a){e(a)})):e(c,!0)):e(c)))}var g,h,i,j,k,l,o,p,q,r=4,s=26,t=0,u=0,v=10,w=0,x={},y={},z={},A=[0],B={},C=0,D=fj.selectAll("."+f.legendItemFocused).size();b=b||{},p=d(b.withTransition)?b.withTransition:!0,q=d(b.withTransitionForTransform)?b.withTransitionForTransform:!0,Qi?(g=function(a){return t*(.2+B[a])},j=function(a){return A[B[a]]+x[a]}):(g=function(a){return A[B[a]]+x[a]},j=function(a){return u*(.2+B[a])}),h=function(a,b){return g(a,b)+14},k=function(a,b){return j(a,b)+9},i=function(a,b){return g(a,b)-4},l=function(a,b){return j(a,b)-7},o=fj.selectAll("."+f.legendItem).data(a).enter().append("g").attr("class",function(a){return Uc(f.legendItem,a)}).style("visibility",function(a){return Hc(a)?"visible":"hidden"}).style("cursor","pointer").on("click",function(a){"function"==typeof Wg?Wg(a):vf.toggle(a)}).on("mouseover",function(a){uf.select(this).classed(f.legendItemFocused,!0),Ei||vf.focus(a),"function"==typeof Xg&&Xg(a)}).on("mouseout",function(a){uf.select(this).classed(f.legendItemFocused,!1),Ei||vf.revert(),"function"==typeof Yg&&Yg(a)}),o.append("text").text(function(a){return d(ug[a])?ug[a]:a}).each(function(a,b){e(this,a,0===b)}).style("pointer-events","none").attr("x",Qi?h:-200).attr("y",Qi?-200:k),o.append("rect").attr("class",f.legendItemEvent).style("fill-opacity",0).attr("x",Qi?i:-200).attr("y",Qi?-200:l).attr("width",function(a){return y[a]}).attr("height",function(a){return z[a]}),o.append("rect").attr("class",f.legendItemTile).style("pointer-events","none").style("fill",function(a){return Gi(a)}).attr("x",Qi?h:-200).attr("y",Qi?-200:j).attr("width",10).attr("height",10),fj.selectAll("text").data(a).text(function(a){return d(ug[a])?ug[a]:a}).each(function(a,b){e(this,a,0===b)}).transition().duration(p?250:0).attr("x",h).attr("y",k),fj.selectAll("rect."+f.legendItemEvent).data(a).transition().duration(p?250:0).attr("x",i).attr("y",l),fj.selectAll("rect."+f.legendItemTile).data(a).transition().duration(p?250:0).attr("x",g).attr("y",j),fj.selectAll("."+f.legendItem).classed(f.legendItemHidden,function(a){return!Gc(a)}).transition().style("opacity",function(a){var b=uf.select(this);return Gc(a)?!D||b.classed(f.legendItemFocused)?jf(b):kf(b):Ui}),N(t),O(u),M(C),n(),R(),cf(),m(q,c)}function qf(a){return Ec(vf.data.targets,a.id)}function rf(a){return"data"in a&&Ec(vf.data.targets,a.data.id)}function sf(a){var b=a&&a.value?a.value:null,c=a&&a["class"]?a["class"]:null;return b?function(a){return a.value!==b}:c?function(a){return a["class"]!==c}:function(){return!0}}function tf(a,b,c){var d=!ee(vf.data.targets);Ei=!1,$d(a,b),df(c||{withTransitionForAxis:d})}var uf=a.d3?a.d3:a.require?a.require("d3"):void 0,vf={data:{},axis:{},legend:{}},wf={},xf=h(["bindto"],"#chart"),yf=h(["size","width"]),zf=h(["size","height"]),Af=h(["padding","left"],50),Bf=h(["padding","right"]),Cf=h(["zoom","enabled"],!1),Df=h(["zoom","extent"]),Ef=h(["zoom","privileged"],!1),Ff=h(["onenter"],function(){}),Gf=h(["onleave"],function(){}),Hf=h(["onresize"],function(){}),If=h(["onresized"],function(){}),Jf=h(["transition","duration"],350);g("data","data is required in config");var Kf,Lf,Mf,Nf,Of,Pf,Qf,Rf,Sf,Tf,Uf,Vf,Wf,Xf,Yf,Zf,$f,_f,ag,bg,cg,dg,eg,fg,gg,hg,ig,jg,kg,lg,mg,ng,og,pg,qg=h(["data","x"]),rg=h(["data","xs"],{}),sg=h(["data","x_format"]),tg=h(["data","id_converter"],function(a){return a}),ug=h(["data","names"],{}),vg=h(["data","classes"],{}),wg=h(["data","groups"],[]),xg=h(["data","axes"],{}),yg=h(["data","type"]),zg=h(["data","types"],{}),Ag=h(["data","labels"],{}),Bg=h(["data","order"]),Cg=h(["data","regions"],{}),Dg=h(["data","color"]),Eg=h(["data","colors"],{}),Fg=h(["data","hide"],!1),Gg=h(["data","selection","enabled"],!1),Hg=h(["data","selection","grouped"],!1),Ig=h(["data","selection","isselectable"],function(){return!0}),Jg=h(["data","selection","multiple"],!0),Kg=h(["data","onclick"],function(){}),Lg=h(["data","onenter"],function(){}),Mg=h(["data","onleave"],function(){}),Ng=h(["data","onselected"],function(){}),Og=h(["data","onunselected"],function(){}),Pg=h(["data","ondragstart"],function(){}),Qg=h(["data","ondragend"],function(){}),Rg=h(["subchart","show"],!1),Sg=h(["subchart","size","height"],60),Tg=h(["color","pattern"],[]),Ug=h(["legend","show"],!0),Vg=h(["legend","position"],"bottom"),Wg=h(["legend","item","onclick"]),Xg=h(["legend","item","onmouseover"]),Yg=h(["legend","item","onmouseout"]),Zg=h(["legend","equally"],!1),$g=h(["axis","rotated"],!1),_g=h(["axis","x","show"],!0),ah=h(["axis","x","type"],"indexed"),bh=h(["axis","x","localtime"],!0),ch=h(["axis","x","categories"],[]),dh=h(["axis","x","tick","centered"],!1),eh=h(["axis","x","tick","format"]),fh=h(["axis","x","tick","culling"],{}),gh=h(["axis","x","tick","culling","max"],10),hh=h(["axis","x","tick","count"]),ih=h(["axis","x","tick","fit"],!0),jh=h(["axis","x","tick","values"],null),kh=h(["axis","x","tick","rotate"]),lh=h(["axis","x","max"],null),mh=h(["axis","x","min"],null),nh=h(["axis","x","padding"],{}),oh=h(["axis","x","height"]),ph=h(["axis","x","default"]),qh=h(["axis","x","label"],{}),rh=h(["axis","y","show"],!0),sh=h(["axis","y","max"]),th=h(["axis","y","min"]),uh=h(["axis","y","center"]),vh=h(["axis","y","label"],{}),wh=h(["axis","y","inner"],!1),xh=h(["axis","y","tick","format"]),yh=h(["axis","y","padding"],{}),zh=h(["axis","y","ticks"],10),Ah=h(["axis","y2","show"],!1),Bh=h(["axis","y2","max"]),Ch=h(["axis","y2","min"]),Dh=h(["axis","y2","center"]),Eh=h(["axis","y2","label"],{}),Fh=h(["axis","y2","inner"],!1),Gh=h(["axis","y2","tick","format"]),Hh=h(["axis","y2","padding"],{}),Ih=h(["axis","y2","ticks"],10),Jh=h(["grid","x","show"],!1),Kh=h(["grid","x","type"],"tick"),Lh=h(["grid","x","lines"],[]),Mh=h(["grid","y","show"],!1),Nh=h(["grid","y","lines"],[]),Oh=h(["grid","y","ticks"],10),Ph=h(["point","show"],!0),Qh=Ph?h(["point","r"],2.5):0,Rh=h(["point","focus","line","enabled"],!0),Sh=h(["point","focus","expand","enabled"],!0),Th=h(["point","focus","expand","r"],Sh?4:Qh),Uh=h(["point","focus","select","r"],8),Vh=h(["line","connect_null"],!1),Wh=h(["bar","width"]),Xh=h(["bar","width","ratio"],.6),Yh=h(["pie","label","show"],!0),Zh=h(["pie","label","format"]),$h=h(["pie","expand"],!0),_h=h(["pie","onclick"],function(){}),ai=h(["pie","onmouseover"],function(){}),bi=h(["pie","onmouseout"],function(){}),ci=h(["donut","label","show"],!0),di=h(["donut","label","format"]),ei=h(["donut","expand"],!0),fi=h(["donut","title"],""),gi=h(["donut","onclick"],function(){}),hi=h(["donut","onmouseover"],function(){}),ii=h(["donut","onmouseout"],function(){}),ji=h(["regions"],[]),ki=h(["tooltip","show"],!0),li=h(["tooltip","format","title"]),mi=h(["tooltip","format","value"]),ni=h(["tooltip","contents"],function(a,b,c,d){var e,g,h,i,j,k=li?li:b,l=mi?mi:c;for(g=0;g<a.length;g++)a[g]&&(a[g].value||0===a[g].value)&&(e||(h=k?k(a[g].x):a[g].x,e="<table class='"+f.tooltip+"'>"+(h||0===h?"<tr><th colspan='2'>"+h+"</th></tr>":"")),j=a[g].name,i=l(a[g].value,a[g].ratio,a[g].id),e+="<tr class='"+f.tooltipName+"-"+a[g].id+"'>",e+="<td class='name'><span style='background-color:"+d(a[g].id)+"'></span>"+j+"</td>",e+="<td class='value'>"+i+"</td>",e+="</tr>");return e+"</table>"}),oi=h(["tooltip","init","show"],!1),pi=h(["tooltip","init","x"],0),qi=h(["tooltip","init","position"],{top:"0px",left:"50px"}),ri=("string"==typeof xf?xf.replace("#",""):xf.id)+"-clip",si=ri+"-xaxis",ti=ri+"-yaxis",ui=i(ri),vi=i(si),wi=i(ti),xi="timeseries"===ah,yi="categorized"===ah,zi=!xi&&(qg||we(rg)),Ai=null,Bi=!1,Ci=!1,Di=!1,Ei=!1,Fi=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],Gi=qe(Eg,we(Tg)?Tg:Fi,Dg),Hi=bh?uf.time.format:uf.time.format.utc,Ii=function(){var a=[[Hi("%Y/%-m/%-d"),function(){return!0}],[Hi("%-m/%-d"),function(a){return a.getMonth()}],[Hi("%-m/%-d"),function(a){return 1!==a.getDate()}],[Hi("%-m/%-d"),function(a){return a.getDay()&&1!==a.getDate()}],[Hi("%I %p"),function(a){return a.getHours()}],[Hi("%I:%M"),function(a){return a.getMinutes()}],[Hi(":%S"),function(a){return a.getSeconds()}],[Hi(".%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)}}(),Ji=[],Ki=[],Li=$g?"left":"bottom",Mi=$g?wh?"top":"bottom":wh?"right":"left",Ni=$g?Fh?"bottom":"top":Fh?"left":"right",Oi=$g?"left":"bottom",Pi={main:function(){return"translate("+Kf.left+","+Kf.top+")"},context:function(){return"translate("+Lf.left+","+Lf.top+")"},legend:function(){return"translate("+Mf.left+","+Mf.top+")"},x:function(){return"translate(0,"+($g?0:Pf)+")"},y:function(){return"translate(0,"+($g?Pf:0)+")"},y2:function(){return"translate("+($g?0:Nf)+","+($g?1:0)+")"},subx:function(){return"translate(0,"+($g?0:Qf)+")"},arc:function(){return"translate("+Nf/2+","+Pf/2+")"}},Qi="right"===Vg,Ri=0,Si=0,Ti=0,Ui=.15,Vi=30,Wi=$g&&!_g?0:30,Xi=5;Zf=uf.layout.pie().value(function(a){return a.values.reduce(function(a,b){return a+b.value},0)});var Yi,Zi=function(){var a=uf.svg.line().x($g?function(a){return V(a.id)(a.value)}:Cd).y($g?Cd:function(a){return V(a.id)(a.value)});return Vh||(a=a.defined(function(a){return null!=a.value})),function(b){var c,d,e=Vh?Ge(b.values):b.values;return fe(b)?(a.interpolate(ge(b)?"cardinal":"linear"),Cg[b.id]?Se(e,gg,V(b.id),Cg[b.id]):a(e)):(c=e[0]?gg(e[0].x):0,d=e[0]?V(b.id)(e[0].value):0,$g?"M "+d+" "+c:"M "+c+" "+d)}}(),$i=function(){var a;return a=$g?uf.svg.area().x0(function(a){return V(a.id)(0)}).x1(function(a){return V(a.id)(a.value)}).y(Cd):uf.svg.area().x(Cd).y0(function(a){return V(a.id)(0)}).y1(function(a){return V(a.id)(a.value)}),function(b){var c,d,e=Ge(b.values);return _d([b],"area")||_d([b],"area-spline")?(a.interpolate(ge(b)?"cardinal":"linear"),a(e)):(c=e[0]?gg(e[0].x):0,d=e[0]?V(b.id)(e[0].value):0,$g?"M "+d+" "+c:"M "+c+" "+d)}}(),_i=function(){var a=uf.svg.line().x($g?function(a){return W(a.id)(a.value)}:Fd).y($g?Fd:function(a){return W(a.id)(a.value)});return function(b){var c=Ge(b.values);return fe(b)?a(c):"M "+jg(c[0].x)+" "+W(b.id)(c[0].value)}}(),aj=function(){};Yi=uf.svg.brush().on("brush",_e),Yi.update=function(){return ej&&ej.select("."+f.brush).call(this),this},Yi.scale=function(a){return $g?this.y(a):this.x(a)},Cf&&(aj=uf.behavior.zoom().on("zoomstart",function(){aj.altDomain=uf.event.sourceEvent.altKey?gg.orgDomain():null}).on("zoom",Cf?af:null),aj.scale=function(a){return $g?this.y(a):this.x(a)},aj.orgScaleExtent=function(){var a=Df?Df:[1,10];return[a[0],Math.max(zc()/a[1],a[1])]},aj.updateScaleExtent=function(){var a=ac(gg.orgDomain())/ac(ij),b=this.orgScaleExtent();return this.scaleExtent([b[0]*a,b[1]*a]),this});var bj,cj,dj,ej,fj,gj,hj,ij,jj,kj={};if(vf.focus=function(a){function b(a){Ic(a).transition().duration(100).style("opacity",1)}var c=bj.selectAll(md(a)),d=c.filter(qf),e=c.filter(rf);vf.revert(),vf.defocus(),b(d.classed(f.focused,!0)),b(e),ee(vf.data.targets)&&Nb(a,!0),lf(a,!0)},vf.defocus=function(a){function b(a){Ic(a).transition().duration(100).style("opacity",.3)}var c=bj.selectAll(md(a)),d=c.filter(qf),e=c.filter(rf);vf.revert(),b(d.classed(f.focused,!1)),b(e),ee(vf.data.targets)&&Ob(a),lf(a,!1)},vf.revert=function(a){function b(a){Ic(a).transition().duration(100).style("opacity",1)}var c=bj.selectAll(md(a)),d=c.filter(qf),e=c.filter(rf);b(d.classed(f.focused,!1)),b(e),ee(vf.data.targets)&&Ob(a),mf()},vf.show=function(a,b){a=Dc(a),b=b||{},Mc(a),bj.selectAll(nd(a)).transition().style("opacity",1),b.withLegend&&nf(a),$e({withUpdateOrgXDomain:!0,withUpdateXDomain:!0,withLegend:!0})},vf.hide=function(a,b){a=Dc(a),b=b||{},Lc(a),bj.selectAll(nd(a)).transition().style("opacity",0),b.withLegend&&of(a),$e({withUpdateOrgXDomain:!0,withUpdateXDomain:!0,withLegend:!0})},vf.toggle=function(a){Gc(a)?vf.hide(a):vf.show(a)},vf.unzoom=function(){Yi.clear().update(),$e({withUpdateXDomain:!0})},vf.load=function(a){return a.xs&&nc(a.xs),"classes"in a&&Object.keys(a.classes).forEach(function(b){vg[b]=a.classes[b]}),"categories"in a&&yi&&(ch=a.categories,mg.categories(ch)),"cacheIds"in a&&bc(a.cacheIds)?void ff(dc(a.cacheIds),a.done):void("unload"in a?hf(Dc("boolean"==typeof a.unload&&a.unload?null:a.unload),function(){gf(a)}):gf(a))},vf.unload=function(a,b){hf(Dc(a),function(){$e({withUpdateOrgXDomain:!0,withUpdateXDomain:!0,withLegend:!0}),"function"==typeof b&&b()})},vf.selected=function(a){return uf.merge(dj.selectAll("."+f.shapes+ld(a)).selectAll("."+f.shape).filter(function(){return uf.select(this).classed(f.SELECTED)}).map(function(a){return a.map(function(a){return a.__data__})}))},vf.select=function(a,b,c){Gg&&dj.selectAll("."+f.shapes).selectAll("."+f.shape).each(function(e,g){var h=uf.select(this),i="circle"===this.nodeName?Ae:De,j="circle"===this.nodeName?Be:Ee,k=Hg||!a||a.indexOf(e.id)>=0,l=!b||b.indexOf(g)>=0,m=h.classed(f.SELECTED);k&&l?Ig(e)&&!m&&i(h.classed(f.SELECTED,!0),e,g):d(c)&&c&&m&&j(h.classed(f.SELECTED,!1),e,g)})},vf.unselect=function(a,b){Gg&&dj.selectAll("."+f.shapes).selectAll("."+f.shape).each(function(c,d){var e=uf.select(this),g="circle"===this.nodeName?Be:Ee,h=Hg||!a||a.indexOf(c.id)>=0,i=!b||b.indexOf(d)>=0,j=e.classed(f.SELECTED);h&&i&&Ig(c)&&j&&g(e.classed(f.SELECTED,!1),c,d)})},vf.toLine=function(a){tf(a,"line")},vf.toSpline=function(a){tf(a,"spline")},vf.toBar=function(a){tf(a,"bar")},vf.toScatter=function(a){tf(a,"scatter")},vf.toArea=function(a){tf(a,"area")},vf.toAreaSpline=function(a){tf(a,"area-spline")
},vf.toPie=function(a){tf(a,"pie",{withTransform:!0})},vf.toDonut=function(a){tf(a,"donut",{withTransform:!0})},vf.groups=function(a){return c(a)?wg:(wg=a,$e(),wg)},vf.xgrids=function(a){return a?(Lh=a,$e(),Lh):Lh},vf.xgrids.add=function(a){return a?vf.xgrids(Lh.concat(a)):void 0},vf.xgrids.remove=function(a){var b=sf(a);return vf.xgrids(Lh.filter(b))},vf.ygrids=function(a){return a?(Nh=a,$e(),Nh):Nh},vf.ygrids.add=function(a){return a?vf.ygrids(Nh.concat(a)):void 0},vf.ygrids.remove=function(a){var b=sf(a);return vf.ygrids(Nh.filter(b))},vf.regions=function(a){return c(a)?ji:(ji=a,$e(),ji)},vf.regions.add=function(a){return c(a)?ji:(ji=ji.concat(a),$e(),ji)},vf.regions.remove=function(a,c){var e=[].concat(a);return c=d(c)?c:{},e.forEach(function(a){var d=b(c.duration)?c.duration:0;bj.selectAll("."+a).transition().duration(d).style("fill-opacity",0).remove(),ji=ji.filter(function(b){return b.classes.indexOf(a)<0})}),ji},vf.data.get=function(a){var b=vf.data.getAsTarget(a);return d(b)?b.values.map(function(a){return a.value}):void 0},vf.data.getAsTarget=function(a){var b=Fc(function(b){return b.id===a});return b.length>0?b[0]:void 0},vf.data.names=function(a){return arguments.length?(Object.keys(a).forEach(function(b){ug[b]=a[b]}),pf(Cc(vf.data.targets),{withTransition:!0}),ug):ug},vf.x=function(a){return arguments.length&&(qc(vf.data.targets,a),$e({withUpdateOrgXDomain:!0,withUpdateXDomain:!0})),vf.data.xs},vf.xs=function(a){return arguments.length&&(rc(vf.data.targets,a),$e({withUpdateOrgXDomain:!0,withUpdateXDomain:!0})),vf.data.xs},vf.axis.labels=function(a){arguments.length&&(Object.keys(a).forEach(function(b){bb(b,a[b])}),Db())},vf.axis.max=function(a){arguments.length&&("object"==typeof a?(b(a.y)&&(sh=+a.y),b(a.y2)&&(Bh=+a.y2)):sh=Bh=+a,$e())},vf.axis.min=function(a){arguments.length&&("object"==typeof a?(b(a.y)&&(th=+a.y),b(a.y2)&&(Ch=+a.y2)):th=Ch=+a,$e())},vf.axis.range=function(a){arguments.length&&("undefined"!=typeof a.max&&vf.axis.max(a.max),"undefined"!=typeof a.min&&vf.axis.min(a.min))},vf.legend.show=function(a){nf(Dc(a)),$e({withLegend:!0})},vf.legend.hide=function(a){of(Dc(a)),$e({withLegend:!0})},vf.resize=function(a){yf=a?a.width:null,zf=a?a.height:null,df({withLegend:!0,withTransition:!1,withTransitionForTransform:!1})},vf.destroy=function(){vf.data.targets=void 0,vf.data.xs={},hj.html(""),a.onresize=null},"url"in e.data)uf.xhr(e.data.url,function(a,b){var c,d=uf.csv.parseRows(b.response);1===d.length?(c=[{}],d[0].forEach(function(a){c[0][a]=null})):c=uf.csv.parse(b.response),Te(c)});else if("rows"in e.data)Te(tc(e.data.rows));else{if(!("columns"in e.data))throw Error("url or rows or columns is required.");Te(uc(e.data.columns))}return vf},"function"==typeof a.define&&a.define.amd?a.define("c3",["d3"],e):a.c3=e}(window);