From a9f80c4bb09ff1f09b9b57905e085768e6041c8f Mon Sep 17 00:00:00 2001 From: Masayuki Tanaka Date: Mon, 9 Jun 2014 13:51:07 +0900 Subject: [PATCH] Calculate tick width before update scales - #295 --- c3.js | 40 +++++----- c3.min.js | 6 +- htdocs/samples/api_xgrid_lines.html | 115 +++++++++++++++++++++------- 3 files changed, 111 insertions(+), 50 deletions(-) diff --git a/c3.js b/c3.js index 05c4bae..75ac6f1 100644 --- a/c3.js +++ b/c3.js @@ -975,12 +975,25 @@ return textAnchorForAxisLabel(__axis_rotated, getY2AxisLabelPosition()); } function getMaxTickWidth(id) { - var maxWidth = 0, axisClass = id === 'x' ? CLASS.axisX : id === 'y' ? CLASS.axisY : CLASS.axisY2; + var maxWidth = 0, targetsToShow, scale, axis; if (svg) { - svg.selectAll('.' + axisClass + ' .tick text').each(function () { - var box = this.getBoundingClientRect(); - if (maxWidth < box.width) { maxWidth = box.width; } - }); + targetsToShow = filterTargetsToShow(c3.data.targets); + if (id === 'y') { + scale = y.copy().domain(getYDomain(targetsToShow, 'y')); + axis = getYAxis(scale, yOrient, __axis_y_tick_format, __axis_y_ticks); + } else if (id === 'y2') { + scale = y2.copy().domain(getYDomain(targetsToShow, 'y2')); + axis = getYAxis(scale, y2Orient, __axis_y2_tick_format, __axis_y2_ticks); + } else { + scale = x.copy().domain(getXDomain(targetsToShow)); + axis = getXAxis(scale, xOrient, getXAxisTickFormat(), __axis_x_tick_values ? __axis_x_tick_values : xAxis.tickValues()); + } + main.append("g").call(axis).each(function () { + d3.select(this).selectAll('text').each(function () { + var box = this.getBoundingClientRect(); + if (maxWidth < box.width) { maxWidth = box.width; } + }); + }).remove(); } currentMaxTickWidth = maxWidth <= 0 ? currentMaxTickWidth : maxWidth; return currentMaxTickWidth; @@ -3571,21 +3584,6 @@ transitions.axisY2.call(y2Axis); transitions.axisSubX.call(subXAxis); - if (targetsToShow.length) { - // Update dimensions according to the width of ticks, etc - updateSizes(); - updateScales(); - updateSvgSize(); - transformAll(true, transitions); - // x changes above, so need to update domain too - updateXDomain(targetsToShow, withUpdateXDomain, withUpdateOrgXDomain); - // Update axis again because the length can be updated because of update of max tick width and generate tickOffset - transitions.axisX.call(xAxis); - transitions.axisSubX.call(subXAxis); - transitions.axisY.call(yAxis); - transitions.axisY2.call(y2Axis); - } - // Update axis label updateAxisLabels(withTransition); @@ -5116,7 +5114,7 @@ c3.groups = function (groups) { if (isUndefined(groups)) { return __data_groups; } __data_groups = groups; - redraw({withUpdateOrgXDomain: true, withUpdateXDomain: true}); + redraw(); return __data_groups; }; diff --git a/c3.min.js b/c3.min.js index 5933e2e..e4cde70 100644 --- a/c3.min.js +++ b/c3.min.js @@ -1,3 +1,3 @@ -!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}function e(a,b){function c(a,b){a.attr("transform",function(a){return"translate("+Math.ceil(b(a)+s)+", 0)"})}function d(a,b){a.attr("transform",function(a){return"translate(0,"+Math.ceil(b(a))+")"})}function e(a){var b=a[0],c=a[a.length-1];return c>b?[b,c]:[c,b]}function f(a){var b,c,d=[];if(a.ticks)return a.ticks.apply(a,k);for(c=a.domain(),b=Math.ceil(c[0]);b0&&d[0]>0&&d.unshift(d[0]-(d[1]-d[0])),d}function g(){var a,c=m.copy();return b&&(a=m.domain(),c.domain([a[0],a[1]-1])),c}function h(a){return j?j(a):a}function i(i){i.each(function(){function i(a){var b=m(a)+s;return B[0]=0;return"url("+(c?"":document.URL.split("#")[0])+"#"+b+")"}function k(a){return Math.ceil(a)+.5}function l(a,b){var c,d,e;b&&b.axisX?c=b.axisX:(c=Ak.select("."+g.axisX),a&&(c=c.transition())),b&&b.axisY?d=b.axisY:(d=Ak.select("."+g.axisY),a&&(d=d.transition())),b&&b.axisY2?e=b.axisY2:(e=Ak.select("."+g.axisY2),a&&(e=e.transition())),(a?Ak.transition():Ak).attr("transform",jk.main),c.attr("transform",jk.x),d.attr("transform",jk.y),e.attr("transform",jk.y2),Ak.select("."+g.chartArcs).attr("transform",jk.arc)}function m(a,b){var c;b&&b.axisSubX?c=b.axisSubX:(c=Bk.select("."+g.axisX),a&&(c=c.transition())),Bk.attr("transform",jk.context),c.attr("transform",jk.subx)}function n(a){(a?Ck.transition():Ck).attr("transform",jk.legend)}function o(a,b){l(a,b),Qh&&m(a,b),n(a)}function p(){var a=V(),b=U(),c=kk||lk?0:a,d=we(ng.data.targets),e=ci||d?0:A("x"),f=Qh&&!d?Rh+e:0;Mg=t(),Ng=u(),ci?(Fg={top:A("y2")+v(),right:d?0:y(),bottom:A("y")+c+w(),left:f+(d?0:x())},Gg={top:Fg.top,right:0/0,bottom:20+c,left:tk}):(Fg={top:4+v(),right:d?0:y(),bottom:e+f+c+w(),left:d?0:x()},Gg={top:Ng-f-c,right:0/0,bottom:e+c,left:Fg.left});var g={top:mk?v()+Yh+5.5:Ng-a-w()-Yh,left:nk?x()+Xh+.5:Mg-b-y()-Xh+.5};Hg={top:kk?0:lk?g.top:Ng-a,right:0/0,bottom:0,left:kk?Mg-b:lk?g.left:0},Ig=Mg-Fg.left-Fg.right,Kg=Ng-Fg.top-Fg.bottom,0>Ig&&(Ig=0),0>Kg&&(Kg=0),Jg=ci?Fg.left-tk-uk:Ig,Lg=ci?Kg:Ng-Gg.top-Gg.bottom,0>Jg&&(Jg=0),0>Lg&&(Lg=0),Rg=Ig-(kk?b+10:0),Sg=Kg-(kk?0:10),r(),kk&&d&&(Hg.left=Rg/2+1.1*Pg)}function q(){Ak.select("line."+g.xgridFocus).attr("x1",ci?0:-10).attr("x2",ci?Ig:-10).attr("y1",ci?-10:Fg.top).attr("y2",ci?-10:Kg)}function r(){var a;Pg=Math.min(Rg,Sg)/2,Og=.95*Pg,a=rj?(Og-rj)/Og:.6,Qg=ve(ng.data.targets)||ue(ng.data.targets)?Og*a:0}function s(){var a=ci?g.axisX:g.axisY,b=Ak.select("."+a).node(),c=b?b.getBoundingClientRect():{right:0},d=Ek.node().getBoundingClientRect(),e=we(ng.data.targets),f=c.right-d.left-(e?0:x());return f>0?f:0}function t(){return qg?qg:C()}function u(){var a=rg?rg:D();return a>0?a:320}function v(){return ug?ug:0}function w(){return vg?vg:0}function x(){return sg?sg:ci?di?Math.max($e(z("x")),40):1:!vi||Ai?1:$e(z("y"))}function y(){var a=10,b=kk?U()+20:0;return tg?tg:ci?a+b:(!Ei||Ji?a:$e(z("y2")))+b}function z(a){var b=pb(a);return b.isInner?20+Ib(a):40+Ib(a)}function A(a){return"x"!==a||di?"x"===a&&si?si:"y"!==a||vi?"y2"!==a||Ei?(pb(a).isInner?30:40)+("y2"===a?-10:0):vk:!Uh||kk||lk?1:10:0}function B(a){for(var b,c=Ek.node();c&&"BODY"!==c.tagName&&!(b=c.getBoundingClientRect()[a]);)c=c.parentNode;return b}function C(){return B("width")}function D(){var a=Ek.style("height");return a.indexOf("px")>0?+a.replace("px",""):0}function E(a){return a?-31:-(Fg.left-1)}function F(a){return a?-20:-4}function G(){return E(!ci)}function H(){return F(!ci)}function I(){return E(ci)}function J(){return F(ci)}function K(a){return a?Ig+2+30+30:Fg.left+20}function L(a){return a?(si?si:0)+80:Kg+8}function M(){return K(!ci)}function N(){return L(!ci)}function O(){return K(ci)}function P(){return L(ci)}function Q(){var a,b,c,d,e,f,g=Oc(ng.data.targets);return g?(a=g.values[0],b=g.values[g.values.length-1],c=dh(b.x)-dh(a.x),0===c?ci?Kg:Ig:(d=Nc(),e=re(ng.data.targets)?(d-(Sj?.25:1))/d:1,f=d>1?c*e/(d-1):c,1>f?1:f)):0}function R(a){ok=a}function S(a){pk=a}function T(a){qk=a}function U(){return Uh?kk||lk?pk*(ok+1):Mg:0}function V(){var a=0;return Uh&&(a=kk?Ng:lk?Zh?Math.max(20,qk)*(Zh+1):Kg:Math.max(20,qk)*(ok+1)),a}function W(){var a,b,c=!dh;Xg=ci?1:0,Yg=ci?Kg:Ig,Zg=ci?0:Kg,$g=ci?Ig:1,_g=Xg,ah=Yg,bh=ci?0:Lg,ch=ci?Jg:1,dh=Z(Xg,Yg,c?void 0:dh.domain(),function(){return jh.tickOffset()}),eh=$(Zg,$g,c?void 0:eh.domain()),fh=$(Zg,$g,c?void 0:fh.domain()),gh=Z(Xg,Yg,Fk,function(a){return a%1?0:mh.tickOffset()}),hh=$(bh,ch,c?void 0:hh.domain()),ih=$(bh,ch,c?void 0:ih.domain()),a=eb(),b=ni?ni:c?void 0:jh.tickValues(),jh=bb(dh,fk,a,b),mh=bb(gh,ik,a,b),kh=cb(eh,gk,Bi,Di),lh=cb(fh,hk,Ki,Mi),c||(wk.scale(gh),wg&&xk.scale(dh)),X()}function X(){Tg=Lb(),Ug=Mb(),Vg=Mb(.98)}function Y(a,b,c){return(c?mg.time.scale():mg.scale.linear()).range([a,b])}function Z(a,b,c,d){var e,f=Y(a,b,Rj),g=c?f.domain(c):f;Sj?(d=d||function(){return 0},f=function(a,b){var c=g(a)+d(a);return b?c:Math.ceil(c)}):f=function(a,b){var c=g(a);return b?c:Math.ceil(c)};for(e in g)f[e]=g[e];return f.orgDomain=function(){var a=g.domain();return Fk&&Fk[0]===a[0]&&Fk[1]a?a.toFixed(0):a};return ii&&("function"==typeof ii?a=ii:Rj&&(a=function(a){return a?ak(ii)(a):""})),a}function fb(a){var b;return"y"===a?b=zi:"y2"===a?b=Ii:"x"===a&&(b=ui),b}function gb(a){var b=fb(a);return"string"==typeof b?b:b?b.text:null}function hb(a,b){var c=fb(a);"string"==typeof c?"y"===a?zi=b:"y2"===a?Ii=b:"x"===a&&(ui=b):c&&(c.text=b)}function ib(a){return 10*Math.sin(Math.PI*(a/180))}function jb(a){return 11.5-2.5*(a/15)}function kb(a,b,c){a.selectAll(".tick text").style("text-anchor","start"),b.selectAll(".tick text").attr("y",jb(c)).attr("x",ib(c)).attr("transform","rotate("+c+")")}function lb(a,b){var c=fb(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 mb(){return lb("x",ci?"inner-top":"inner-right")}function nb(){return lb("y",ci?"inner-right":"inner-top")}function ob(){return lb("y2",ci?"inner-right":"inner-top")}function pb(a){return"y2"===a?ob():"y"===a?nb():mb()}function qb(){return gb("x")}function rb(){return gb("y")}function sb(){return gb("y2")}function tb(a,b){return a?b.isLeft?0:b.isCenter?Ig/2:Ig:b.isBottom?-Kg:b.isMiddle?-Kg/2:0}function ub(a,b){return a?b.isLeft?"0.5em":b.isRight?"-0.5em":"0":b.isTop?"-0.5em":b.isBottom?"0.5em":"0"}function vb(a,b){return a?b.isLeft?"start":b.isCenter?"middle":"end":b.isBottom?"start":b.isMiddle?"middle":"end"}function wb(){return tb(!ci,mb())}function xb(){return tb(ci,nb())}function yb(){return tb(ci,ob())}function zb(){return ub(!ci,mb())}function Ab(){return ub(ci,nb())}function Bb(){return ub(ci,ob())}function Cb(){var a=mb();return ci?a.isInner?"1.2em":-25-Ib("x"):a.isInner?"-0.5em":si?si-10:"3em"}function Db(){var a=nb();return ci?a.isInner?"-0.5em":"3em":a.isInner?"1.2em":-20-Ib("y")}function Eb(){var a=ob();return ci?a.isInner?"1.2em":"-2.2em":a.isInner?"-0.5em":30+Ib("y2")}function Fb(){return vb(!ci,mb())}function Gb(){return vb(ci,nb())}function Hb(){return vb(ci,ob())}function Ib(a){var b=0,c="x"===a?g.axisX:"y"===a?g.axisY:g.axisY2;return yk&&yk.selectAll("."+c+" .tick text").each(function(){var a=this.getBoundingClientRect();b=b?sk:b}function Jb(a){var b=Ak.select("."+g.axisX+" ."+g.axisXLabel),c=Ak.select("."+g.axisY+" ."+g.axisYLabel),d=Ak.select("."+g.axisY2+" ."+g.axisY2Label);(a?b.transition():b).attr("x",wb).attr("dx",zb).attr("dy",Cb).text(qb),(a?c.transition():c).attr("x",xb).attr("dx",Ab).attr("dy",Db).attr("dy",Db).text(rb),(a?d.transition():d).attr("x",yb).attr("dx",Bb).attr("dy",Eb).text(sb)}function Kb(a){var b=!1;if(Wg(Vc(ng.data.targets)).forEach(function(c){b||c.data.id!==a.data.id||(b=!0,a=c)}),isNaN(a.endAngle)&&(a.endAngle=a.startAngle),Ee(a.data)){var c=lj,d=mj,e=Math.abs(c)+d,f=Math.PI/e;a.startAngle=-1*(Math.PI/2)+f*Math.abs(c),a.endAngle=a.startAngle+f*(a.value>d?d:a.value)}return b?a:null}function Lb(){var a=mg.svg.arc().outerRadius(Og).innerRadius(Qg),b=function(b,c){var d;return c?a(b):(d=Kb(b),d?a(d):"M 0 0")};return b.centroid=a.centroid,b}function Mb(a){var b=mg.svg.arc().outerRadius(Pg*(a?a:1)).innerRadius(Qg);return function(a){var c=Kb(a);return c?b(c):"M 0 0"}}function Nb(a,b,c){return c||Ge(a.data)?Tg(a,b):"M 0 0"}function Ob(a){var b,c,d,e,f,g=Kb(a),h="";return g&&!ue(ng.data.targets)&&(b=Tg.centroid(g),c=isNaN(b[0])?0:b[0],d=isNaN(b[1])?0:b[1],e=Math.sqrt(c*c+d*d),f=Og&&e?(36/Og>.375?1.175-36/Og:.8)*Og/e:0,h="translate("+c*f+","+d*f+")"),h}function Pb(a){var b=ue(ng.data.targets)?Math.PI:2*Math.PI;return a?(a.endAngle-a.startAngle)/b:null}function Qb(a){return Ac({id:a.data.id,value:a.value,ratio:Pb(a)})}function Rb(a){var b,c,d,e;return Ub()?(b=Kb(a),c=b?b.value:null,d=Pb(b),ue(ng.data.targets)||Vb(d)?(e=Wb(),e?e(c,d):Pd(c,d)):""):""}function Sb(a,b){var c=yk.selectAll("."+g.chartArc+Cd(a)),d=yk.selectAll("."+g.arc).filter(function(b){return b.data.id!==a});Me(a)&&c.selectAll("path").transition().duration(50).attr("d",Ug).transition().duration(100).attr("d",Vg).each(function(a){Fe(a.data)}),b||d.style("opacity",.3)}function Tb(a){var b=yk.selectAll("."+g.chartArc+Cd(a));b.selectAll("path."+g.arc).transition().duration(50).attr("d",Tg),yk.selectAll("."+g.arc).style("opacity",1)}function Ub(){var a=!0;return ve(ng.data.targets)?a=sj:te(ng.data.targets)&&(a=aj),a}function Vb(a){var b=ve(ng.data.targets)?uj:cj;return a>=b}function Wb(){var a=bj;return ue(ng.data.targets)?a=jj:ve(ng.data.targets)&&(a=tj),a}function Xb(){return ve(ng.data.targets)?xj:""}function Yb(){var a=fj;return ue(ng.data.targets)?a=nj:ve(ng.data.targets)&&(a=yj),"function"==typeof a?a:function(){}}function Zb(){var a=gj;return ue(ng.data.targets)?a=oj:ve(ng.data.targets)&&(a=zj),"function"==typeof a?a:function(){}}function $b(){var a=hj;return ue(ng.data.targets)?a=pj:ve(ng.data.targets)&&(a=Aj),"function"==typeof a?a:function(){}}function _b(a,c,d,e){var f="ratio"===a.unit?e:1;return b(a[c])?a[c]*f:d}function ac(a){var b,c,d,e,f,g,h=Qc(a),i=ad(a);if(th.length>0)for(g=cd(a),b=0;b=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;c0||(i[d][b]+=+a)});return mg.min(Object.keys(i).map(function(a){return mg.min(i[a])}))}function bc(a){var b,c,d,e,f,g,h=Qc(a),i=ad(a);if(th.length>0)for(g=dd(a),b=0;b=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+a||(i[d][b]+=+a)});return mg.max(Object.keys(i).map(function(a){return mg.max(i[a])}))}function cc(a,c){var d,e,f,g,h,i,j,k,l,m,n=a.filter(function(a){return db(a.id)===c}),o="y2"===c?Gi:xi,p="y2"===c?Fi:wi,q=b(o)?o:ac(n),r=b(p)?p:bc(n),s="y2"===c?Hi:yi,t=Jd()&&ci,u=Jd()&&!ci;return 0===n.length?"y2"===c?fh.domain():eh.domain():(q===r&&(0>q?r=0:q=0),l=q>=0&&r>=0,m=0>=q&&0>=r,(re(n)||qe(n))&&(l&&(q=0),m&&(r=0)),d=Math.abs(r-q),e=f=g=.1*d,s&&(h=Math.max(Math.abs(q),Math.abs(r)),r=h-s,q=s-h),t?(i=Kd(q,r,c,"width"),j=ic(eh.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]))):u&&(i=Kd(q,r,c,"height"),f+=i[1],g+=i[0]),"y"===c&&Ci&&(f=_b(Ci,"top",e,d),g=_b(Ci,"bottom",e,d)),"y2"===c&&Li&&(f=_b(Li,"top",e,d),g=_b(Li,"bottom",e,d)),(re(n)||qe(n))&&(l&&(g=q),m&&(f=-r)),[q-g,r+f])}function dc(a){return qi?Rj?Pe(qi):qi:mg.min(a,function(a){return mg.min(a.values,function(a){return a.x})})}function ec(a){return pi?Rj?Pe(pi):pi:mg.max(a,function(a){return mg.max(a.values,function(a){return a.x})})}function fc(a){var c,d,e,f,g=Pc(a),h=g[1]-g[0];return Sj?d=0:re(a)?(c=Nc(),d=c>1?h/(c-1)/2:.5):d=.01*h,"object"==typeof ri&&Ue(ri)?(e=b(ri.left)?ri.left:d,f=b(ri.right)?ri.right:d):e=f="number"==typeof ri?ri:d,{left:e,right:f}}function gc(a){var b=[dc(a),ec(a)],c=b[0],d=b[1],e=fc(a),f=0,g=0;return c-d!==0||Sj||(c=Rj?new Date(.5*c.getTime()):-.5,d=Rj?new Date(1.5*d.getTime()):.5),(c||0===c)&&(f=Rj?new Date(c.getTime()-e.left):c-e.left),(d||0===d)&&(g=Rj?new Date(d.getTime()+e.right):d+e.right),[f,g]}function hc(a,b,c,d){return c&&(dh.domain(d?d:mg.extent(gc(a))),Fk=dh.domain(),wg&&xk.scale(dh).updateScaleExtent(),gh.domain(dh.domain()),wk.scale(gh)),b&&(dh.domain(d?d:wk.empty()?Fk:wk.extent()),wg&&xk.scale(dh).updateScaleExtent()),dh.domain()}function ic(a){return a[1]-a[0]}function jc(a){for(var b=0;bb?0:b-c}function pc(a){var b,c=nc(a),d="y"===a.axis?eh:fh;return b="y"===a.axis||"y2"===a.axis?ci?Kg:"start"in a?d(a.start):Kg:ci?"end"in a?dh(Rj?Pe(a.end):a.end):Kg:Kg,c>b?0:b-c}function qc(a){return!a.axis||"x"===a.axis}function rc(a){return nh&&a===nh||Ue(oh)&&Ve(oh,a)}function sc(a){return!rc(a)}function tc(a){return nh?nh:Ue(oh)?oh[a]:null}function uc(a,b){var c,d=b&&Ue(b)?Qc(b):[];return d.forEach(function(b){tc(b)===a&&(c=ng.data.xs[b])}),c}function vc(a,c){return a in ng.data.xs&&ng.data.xs[a]&&b(ng.data.xs[a][c])?ng.data.xs[a][c]:c}function wc(){var a=Object.keys(ng.data.xs);return a.length?ng.data.xs[a[0]]:null}function xc(a){var b=wc();return b&&a=0?ng.data.xs[d]=(c&&ng.data.xs[d]?ng.data.xs[d]:[]).concat(a.map(function(a){return a[e]}).filter(b).map(function(a,b){return Ec(a,d,b)})):nh?ng.data.xs[d]=wc():Ue(oh)&&(ng.data.xs[d]=uc(e,ng.data.targets)):ng.data.xs[d]=a.map(function(a,b){return b})}),e.forEach(function(a){if(!ng.data.xs[a])throw new Error('x is not defined for id = "'+a+'".')}),d=e.map(function(b,c){var d=qh(b);return{id:d,id_org:b,values:a.map(function(a,e){var f=tc(b),g=a[f],h=Ec(g,b,e);return Tj()&&Sj&&0===c&&g&&(0===e&&(gi=[]),gi.push(g)),("undefined"==typeof a[b]||ng.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})}}),d.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++}),ng.data.xs[a.id].sort(function(a,b){return a-b})}),vh&&oe(Qc(d).filter(function(a){return!(a in wh)}),vh),d.forEach(function(a){kc(a.id_org,a)}),d}function Kc(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 Lc(a){var b=Bc(ng.data.targets[0].values,a-1);return b?b.x:null}function Mc(a){var b=Bc(ng.data.targets[0].values,a+1);return b?b.x:null}function Nc(){return mg.max(ng.data.targets,function(a){return a.values.length})}function Oc(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 Pc(a){var b,c,d=Oc(a);return d?(b=d.values[0],c=d.values[d.values.length-1],[b.x,c.x]):[0,0]}function Qc(a){return a.map(function(a){return a.id})}function Rc(a){return a?"string"==typeof a?[a]:a:Qc(ng.data.targets)}function Sc(a,b){var c,d=Qc(a);for(c=0;c2){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(Rj?new Date(i):i);j.push(e)}return Rj||(j=j.sort(function(a,b){return a-b})),j}function Yc(a){ck=ck.concat(a)}function Zc(a){ck=ck.filter(function(b){return a.indexOf(b)<0})}function $c(a){dk=dk.concat(a)}function _c(a){dk=dk.filter(function(b){return a.indexOf(b)<0})}function ad(a){var b={};return a.forEach(function(a){b[a.id]=[],a.values.forEach(function(c){b[a.id].push(c.value)})}),b}function bd(a,b){var c,d,e,f=Object.keys(a);for(c=0;ca})}function dd(a){return bd(a,function(a){return a>0})}function ed(a){return a=0&&d===a[c].x;c--)e.push(a[c]);for(c=b;c0?g=h:f=h,g-f===1||0===f&&0===g?(e=[],(a[f].x||0===a[f].x)&&(e=e.concat(Vd(a,f))),(a[g].x||0===a[g].x)&&(e=e.concat(Vd(a,g))),Yd(e,b)):Wd(a,b,f,g)}function Xd(a,b){var c;return c=a.map(function(a){return Wd(a.values,b)}),Yd(c,b)}function Yd(a,b){var c,d;return a.forEach(function(a){var e=We(a,b);(c>e||!c)&&(c=e,d=a)}),d}function Zd(a,b){return mg.merge(a.map(function(a){return a.values})).filter(function(a){return a.x-b===0})}function $d(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 _d(){return yh&&"desc"===yh.toLowerCase()}function ae(){return yh&&"asc"===yh.toLowerCase()}function be(a){var b=ae(),c=_d();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 yh&&a.sort(yh),a}function ce(a,c){var d,e,f,g,h,i,j,k=we(ng.data.targets),l=a.filter(function(a){return a&&b(a.value)});0!==l.length&&Cj&&(Dk.html(Hj(a,eb(),Ld(k),$j)).style("display","block"),d=Dk.property("offsetWidth"),e=Dk.property("offsetHeight"),k?(g=Ig/2+c[0],i=Kg/2+c[1]+20):(ci?(f=s(),g=f+c[0]+100,h=g+d,j=t()-y(),i=dh(l[0].x)+20):(f=s(),g=f+x()+dh(l[0].x)+20,h=g+d,j=f+t()-y(),i=c[1]+15),h>j&&(g-=h-j),i+e>u()&&(i-=e+30)),Dk.style("top",i+"px").style("left",g+"px"))}function de(){Dk.style("display","none")}function ee(a){var c=a.filter(function(a){return a&&b(a.value)});if(Cj&&!se(ng.data.targets)&&!we(ng.data.targets)){var d=Ak.selectAll("line."+g.xgridFocus);d.style("visibility","visible").data([c[0]]).attr(ci?"y1":"x1",Rd).attr(ci?"y2":"x2",Rd),Pf(d,"grid")}}function fe(){Ak.select("line."+g.xgridFocus).style("visibility","hidden")}function ge(a,b){var c,d,e,f,h=[],i=Ak.select("."+g.axisX).selectAll(".tick").size();if("year"===a)for(c=gc(),d=c[0].getFullYear(),e=c[1].getFullYear(),f=d;e>=f;f++)h.push(new Date(f+"-01-01 00:00:00"));else h=b.ticks(10),h.length>i&&(h=h.filter(function(a){return(""+a).indexOf(".")<0}));return h}function he(a){var b,d,e={},f=0;return Vc(ng.data.targets.filter(a)).forEach(function(a){for(b=0;b=0&&(i+=g(c.values[f].value)-h)}),i}}function le(a){return a.x||0===a.x?dh(a.x):null}function me(a,b){var c=he(xe),d=Df(c);return th.length>0?d(a,b)[0][1]:_(a.id)(a.value)}function ne(a,b){return"number"==typeof $i?$i:b?2*a.tickOffset()*_i/b:0}function oe(a,b){Rc(a).forEach(function(a){Hk[a]=b===wh[a],wh[a]=b}),a||(vh=b)}function pe(a,b){var c=!1;return a.forEach(function(a){wh[a.id]===b&&(c=!0),a.id in wh||"line"!==b||(c=!0)}),c}function qe(a){return pe(a,"area")||pe(a,"area-spline")||pe(a,"area-step")}function re(a){return pe(a,"bar")}function se(a){return pe(a,"scatter")}function te(a){return"pie"===vh||pe(a,"pie")}function ue(a){return pe(a,"gauge")}function ve(a){return"donut"===vh||pe(a,"donut")}function we(a){return te(a)||ve(a)||ue(a)}function xe(a){var b="string"==typeof a?a:a.id;return!wh[b]||["line","spline","area","area-spline","step","area-step"].indexOf(wh[b])>=0}function ye(a){var b="string"==typeof a?a:a.id;return["step","area-step"].indexOf(wh[b])>=0}function ze(a){var b="string"==typeof a?a:a.id;return["spline","area-spline"].indexOf(wh[b])>=0}function Ae(a){var b="string"==typeof a?a:a.id;return["area","area-spline","area-step"].indexOf(wh[b])>=0}function Be(a){var b="string"==typeof a?a:a.id;return"bar"===wh[b]}function Ce(a){var b="string"==typeof a?a:a.id;return"scatter"===wh[b]}function De(a){var b="string"==typeof a?a:a.id;return"pie"===wh[b]}function Ee(a){var b="string"==typeof a?a:a.id;return"gauge"===wh[b]}function Fe(a){var b="string"==typeof a?a:a.id;return"donut"===wh[b]}function Ge(a){return De(a)||Fe(a)||Ee(a)}function He(a){return xe(a)?[a]:[]}function Ie(a){return Ge(a.data)?[a]:[]}function Je(a){return Be(a)?a.values:[]}function Ke(a){return xe(a)||Ce(a)?a.values:[]}function Le(a){return Be(a)||xe(a)?a.values:[]}function Me(a){return Fe(a)&&wj||Ee(a)&&kj||De(a)&&ej}function Ne(a,b,c){var d=[];return function(e){var f,g=e.id||e;return a[g]instanceof Function?f=a[g](e):a[g]?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 Oe(a,b){var c="value"===b.unit,d=b.values&&b.values.length?b.values:[],e=b.max||100;return function(b){var f,g,h=a[a.length-1];for(f=0;f0}function Ve(a,b){var c=!1;return Object.keys(a).forEach(function(d){a[d]===b&&(c=!0)}),c}function We(a,b){var c="y"===db(a.id)?eh:fh,d=ci?1:0,e=ci?0:1;return Math.pow(dh(a.x)-b[d],2)+Math.pow(c(a.value)-b[e],2)}function Xe(a,b){var c=0;a.each(function(){++c}).each("end",function(){--c||b.apply(this,arguments)})}function Ye(){var a=[],b=function(b,c){var d=setInterval(function(){var b=0;a.forEach(function(a){if(a.empty())return void(b+=1);try{a.transition()}catch(c){b+=1}}),b===a.length&&(clearInterval(d),c&&c())},10)};return b.add=function(b){a.push(b)},b}function Ze(a,b,c){return d(a[b])?a[b]:c}function $e(a){return 10*Math.ceil(a/10)}function _e(a,b){var c;return mg.select("body").selectAll(".dummy").data([a]).enter().append("text").classed(b?b:"",!0).text(a).each(function(){c=this.getBoundingClientRect()}).remove(),c}function af(a){return ze(a)?"cardinal":ye(a)?"step-after":"linear"}function bf(){return mg.selectAll([])}function cf(a,b,c){Lh(b,a.node()),Ak.select("."+g.selectedCircles+Bd(b.id)).selectAll("."+g.selectedCircle+"-"+c).data([b]).enter().append("circle").attr("class",function(){return fd(g.selectedCircle,c)}).attr("cx",ci?me:le).attr("cy",ci?le:me).attr("stroke",function(){return $j(b)}).attr("r",1.4*of(b)).transition().duration(100).attr("r",of)}function df(a,b,c){Mh(b,a.node()),Ak.select("."+g.selectedCircles+Bd(b.id)).selectAll("."+g.selectedCircle+"-"+c).transition().duration(100).attr("r",0).remove()}function ef(a,b,c,d){a?cf(b,c,d):df(b,c,d)}function ff(a,b){Lh(b,a.node()),a.transition().duration(100).style("fill",function(){return mg.rgb($j(b)).brighter(.75)})}function gf(a,b){Mh(b,a.node()),a.transition().duration(100).style("fill",function(){return $j(b)})}function hf(a,b,c,d){a?ff(b,c,d):gf(b,c,d)}function jf(a,b,c,d){hf(a,b,c.data,d)}function kf(a){return"circle"===a.nodeName?ef:mg.select(a).classed(g.bar)?hf:jf}function lf(a){return a.filter(function(a){return b(a.value)})}function mf(a){return Ui&&!ye(a)?"function"==typeof Vi?Vi(a):Vi:0}function nf(a){return Wi?Xi?Xi:1.75*mf(a):mf(a)}function of(a){return Yi?Yi:4*mf(a)}function pf(a,c){return(c?Ak.selectAll("."+g.circles+Bd(c)):Ak).selectAll("."+g.circle+(b(a)?"-"+a:""))}function qf(a,b){pf(a,b).classed(g.EXPANDED,!0).attr("r",nf)}function rf(a){pf(a).filter(function(){return mg.select(this).classed(g.EXPANDED)}).classed(g.EXPANDED,!1).attr("r",mf)}function sf(a){return Ak.selectAll("."+g.bar+(b(a)?"-"+a:""))}function tf(a){sf(a).classed(g.EXPANDED,!0)}function uf(a){sf(a).classed(g.EXPANDED,!1)}function vf(a,b){var c=mg.svg.area(),d=Bf(a,b),e=b?ab:_,f=function(a,b){return th.length>0?d(a,b)[0][1]:e(a.id)(0)},g=function(a,b){return th.length>0?d(a,b)[1][1]:e(a.id)(a.value)};return c=ci?c.x0(f).x1(g).y(Rd):c.x(Rd).y0(f).y1(g),function(a){var b,d=lf(a.values),e=0,f=0;return Ae(a)?b=c.interpolate(af(a))(d):(d[0]&&(e=dh(d[0].x),f=_(a.id)(d[0].value)),b=ci?"M "+f+" "+e:"M "+e+" "+f),b?b:"M 0 0"}}function wf(a,b){var c=mg.svg.line(),d=Df(a,b),e=b?ab:_,f=b?Ud:Rd,g=function(a,b){return th.length>0?d(a,b)[0][1]:e(a.id)(a.value)};return c=ci?c.x(g).y(f):c.x(f).y(g),Zi||(c=c.defined(function(a){return null!=a.value})),function(a){var d,f=Zi?lf(a.values):a.values,g=b?g:gh,h=e(a.id),i=0,j=0;return xe(a)?d=zh[a.id]?Ef(f,g,h,zh[a.id]):c.interpolate(af(a))(f):(f[0]&&(i=g(f[0].x),j=h(f[0].value)),d=ci?"M "+j+" "+i:"M "+i+" "+j),d?d:"M 0 0"}}function xf(a,b){var c=Cf(a,b);return function(a,b){var d=c(a,b),e=ci?1:0,f=ci?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 yf(a,b){var c=Cf(a,!1),d=b?zf:Af;return function(a,b){return d(c(a,b),a,this)}}function zf(a,b,c){var d,e,f=c.getBoundingClientRect();return ci?(e=Be(b)?4:6,d=a[2][1]+e*(b.value<0?-1:1)):d=a[0][0]+(a[2][0]-a[0][0])/2,d>Ig?Ig-f.width:d}function Af(a,b,c){var d,e=c.getBoundingClientRect();return d=ci?(a[0][0]+a[2][0]+.6*e.height)/2:a[2][1]+(b.value<0?e.height:Be(b)?-3:-6),dj||a.value<0&&j>c)&&(j=c),[[i,h],[i,j-(c-h)]]}}function Cf(a,b){var c=a.__max__+1,d=ne(jh,c),e=ie(d,c,a,!!b),f=je(!!b),g=ke(Be,a,!!b),h=b?ab:_;return function(a,b){var c=h(a.id)(0),i=g(a,b)||c,j=e(a),k=f(a);return ci&&(0k||a.value<0&&k>c)&&(k=c),[[j,i],[j,k-(c-i)],[j+d,k-(c-i)],[j+d,i]]}}function Df(a,b){var c=a.__max__+1,d=ie(0,c,a,!!b),e=je(!!b),f=ke(xe,a,!!b),g=b?ab:_;return function(a,b){var c=g(a.id)(0),h=f(a,b)||c,i=d(a),j=e(a);return ci&&(0j||a.value<0&&j>c)&&(j=c),[[i,j-(c-h)]]}}function Ef(a,b,e,f){var g,h,i,j,k,l,m,n,o,p,q,r,s=-1,t="M",u=[];if(d(f))for(g=0;g=h;h+=p)t+=i(a[g-1],a[g],h,o);s=a[g].x}return t}function Ff(){var a=wg?xk:function(){};Ak.select("."+g.zoomRect).call(a),Ak.selectAll("."+g.eventRect).call(a)}function Gf(){ci?(ek.x.call(jh),ek.subx.call(mh)):(ek.y.call(kh),ek.y2.call(lh)),p(),W(),Uf(),o(!1)}function Hf(b){var c=new MutationObserver(function(d){d.forEach(function(d){if("childList"===d.type&&d.previousSibling){c.disconnect();var e=a.setInterval(function(){b.node().parentNode&&(a.clearInterval(e),Gf(),Qf({withTransform:!0,withUpdateXDomain:!0,withUpdateOrgXDomain:!0,withTransition:!1,withTransitionForTransform:!1,withLegend:!0}),b.transition().style("opacity",1))},10)}})});c.observe(b.node(),{attributes:!0,childList:!0,characterData:!0})}function If(b){var c,d,e,f,h=!0;if(Ek=mg.select(pg),Ek.empty()&&(Ek=mg.select(document.createElement("div")).style("opacity",0),Hf(Ek),h=!1),Ek.html("").classed("c3",!0),ng.data.xs={},ng.data.targets=Jc(b),Dh&&(ng.data.targets=ng.data.targets.filter(Dh)),Ch&&Yc(Ch===!0?Qc(ng.data.targets):Ch),ue(ng.data.targets)&&(Uh=!1),p(),W(),dh.domain(mg.extent(gc(ng.data.targets))),eh.domain(cc(ng.data.targets,"y")),fh.domain(cc(ng.data.targets,"y2")),gh.domain(dh.domain()),hh.domain(eh.domain()),ih.domain(fh.domain()),Fk=dh.domain(),wk.scale(gh),wg&&xk.scale(dh),yk=Ek.append("svg").style("overflow","hidden").on("mouseenter",Ag).on("mouseleave",Bg),zk=yk.append("defs"),zk.append("clipPath").attr("id",Lj).append("rect"),zk.append("clipPath").attr("id",Mj).append("rect"),zk.append("clipPath").attr("id",Nj).append("rect"),Uf(),Ak=yk.append("g").attr("transform",jk.main),Bk=yk.append("g").attr("transform",jk.context),Ck=yk.append("g").attr("transform",jk.legend),Qh||Bk.style("visibility","hidden"),Uh||(Ck.style("visibility","hidden"),dk=Qc(ng.data.targets)),Dk=Ek.style("position","relative").append("div").style("position","absolute").style("pointer-events","none").style("z-index","10").style("display","none"),fg(Qc(ng.data.targets),{withTransform:!1,withTransitionForTransform:!1}),Ak.append("text").attr("class",g.text+" "+g.empty).attr("text-anchor","middle").attr("dominant-baseline","middle"),e=Ak.append("g").attr("clip-path",Oj).attr("class",g.grid),Ni&&e.append("g").attr("class",g.xgrids),Ti&&e.append("g").attr("class",g.xgridFocus).append("line").attr("class",g.xgridFocus),e.append("g").attr("class",g.xgridLines),Qi&&e.append("g").attr("class",g.ygrids),e.append("g").attr("class",g.ygridLines),Ak.append("g").attr("clip-path",Oj).attr("class",g.regions),Ak.append("g").attr("clip-path",Oj).attr("class",g.chart),d=Ak.select("."+g.chart).append("g").attr("class",g.eventRects).style("fill-opacity",0),Ak.select("."+g.chart).append("g").attr("class",g.chartBars),Ak.select("."+g.chart).append("g").attr("class",g.chartLines),c=Ak.select("."+g.chart).append("g").attr("class",g.chartArcs).attr("transform",jk.arc),c.append("text").attr("class",g.chartArcsTitle).style("text-anchor","middle").text(Xb()),ue(ng.data.targets)&&(c.append("path").attr("class",g.chartArcsBackground).attr("d",function(){var a={data:[{value:mj}],startAngle:-1*(Math.PI/2),endAngle:Math.PI/2};return Nb(a,!0,!0)}),c.append("text").attr("dy",".75em").attr("class",g.chartArcsGaugeUnit).style("text-anchor","middle").style("pointer-events","none").text(ij?qj:""),c.append("text").attr("dx",-1*(Qg+(Og-Qg)/2)+"px").attr("dy","1.2em").attr("class",g.chartArcsGaugeMin).style("text-anchor","middle").style("pointer-events","none").text(ij?lj:""),c.append("text").attr("dx",Qg+(Og-Qg)/2+"px").attr("dy","1.2em").attr("class",g.chartArcsGaugeMax).style("text-anchor","middle").style("pointer-events","none").text(ij?mj:"")),Ak.select("."+g.chart).append("g").attr("class",g.chartTexts),Ak.insert("rect",yg?null:"g."+g.grid).attr("class",g.zoomRect).attr("width",Ig).attr("height",Kg).style("opacity",0).style("cursor",ci?"ns-resize":"ew-resize").on("dblclick.zoom",null),ti&&wk.extent("function"!=typeof ti?ti:ti(gc())),ek.x=Ak.append("g").attr("class",g.axis+" "+g.axisX).attr("clip-path",Pj).attr("transform",jk.x).style("visibility",di?"visible":"hidden"),ek.x.append("text").attr("class",g.axisXLabel).attr("transform",ci?"rotate(-90)":"").style("text-anchor",Fb),ek.y=Ak.append("g").attr("class",g.axis+" "+g.axisY).attr("clip-path",Qj).attr("transform",jk.y).style("visibility",vi?"visible":"hidden"),ek.y.append("text").attr("class",g.axisYLabel).attr("transform",ci?"":"rotate(-90)").style("text-anchor",Gb),ek.y2=Ak.append("g").attr("class",g.axis+" "+g.axisY2).attr("transform",jk.y2).style("visibility",Ei?"visible":"hidden"),ek.y2.append("text").attr("class",g.axisY2Label).attr("transform",ci?"":"rotate(-90)").style("text-anchor",Hb),Bk.append("g").attr("clip-path",Oj).attr("class",g.chart),Bk.select("."+g.chart).append("g").attr("class",g.chartBars),Bk.select("."+g.chart).append("g").attr("class",g.chartLines),Bk.append("g").attr("clip-path",Oj).attr("class",g.brush).call(wk).selectAll("rect").attr(ci?"width":"height",ci?Jg:Lg),ek.subx=Bk.append("g").attr("class",g.axisX).attr("transform",jk.subx).attr("clip-path",ci?"":Pj),Xf(ng.data.targets),h&&(Gf(),Qf({withTransform:!0,withUpdateXDomain:!0,withUpdateOrgXDomain:!0,withTransitionForAxis:!1})),Ij){if(Rj&&"string"==typeof Jj){for(Jj=Pe(Jj),f=0;ff&&h>c&&d>i&&j>d;else{if(!n.classed(g.bar))return;m=$d(this),c=m.x,d=m.y,e=m.width,k=m.height,l=hf,q=!(c>h||f>c+e||d>j||i>d+k)}q^p&&(n.classed(g.INCLUDED,!p),n.classed(g.SELECTED,!o),l(!o,n,a,b))}))}function Nf(a){we(ng.data.targets)||Eh&&(Uj=a,Ak.select("."+g.chart).append("rect").attr("class",g.dragarea).style("opacity",.1),Vj=!0,Nh())}function Of(){we(ng.data.targets)||Eh&&(Ak.select("."+g.dragarea).transition().duration(100).style("opacity",0).remove(),Ak.selectAll("."+g.shape).classed(g.INCLUDED,!1),Vj=!1,Oh())}function Pf(a,b){"grid"===b&&a.each(function(){var a=mg.select(this),b=a.attr("x1"),c=a.attr("x2"),d=a.attr("y1"),e=a.attr("y2");a.attr({x1:Math.ceil(b),x2:Math.ceil(c),y1:Math.ceil(d),y2:Math.ceil(e)})})}function Qf(a,c){var d,e,f,h,i,j,k,l,m,n,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,R,S,T,U,V,X,Y,Z,$,_,ab,bb,cb,eb=he(Ae),fb=he(Be),gb=he(xe),hb=we(ng.data.targets),ib=Ye(),jb=Vc(ng.data.targets);if(d=h=s=w=bf(),a=a||{},G=Ze(a,"withY",!0),H=Ze(a,"withSubchart",!0),I=Ze(a,"withTransition",!0),L=Ze(a,"withTransform",!1),M=Ze(a,"withUpdateXDomain",!1),N=Ze(a,"withUpdateOrgXDomain",!1),O=Ze(a,"withLegend",!1),J=Ze(a,"withTransitionForExit",I),K=Ze(a,"withTransitionForAxis",I),Z=I?Eg:0,$=J?Z:0,_=K?Z:0,c=c||Vf(_),O&&Uh&&fg(Qc(ng.data.targets),a,c),Sj&&0===jb.length&&dh.domain([0,ek.x.selectAll(".tick").size()]),jb.length?(hc(jb,M,N),ni||!mi&&!li||(ab=Xc(Wc(jb),li),jh.tickValues(ab),mh.tickValues(ab))):(jh.tickValues([]),mh.tickValues([])),eh.domain(cc(jb,"y")),fh.domain(cc(jb,"y2")),ek.x.style("opacity",hb?0:1),ek.y.style("opacity",hb?0:1),ek.y2.style("opacity",hb?0:1),ek.subx.style("opacity",hb?0:1),c.axisX.call(jh),c.axisY.call(kh),c.axisY2.call(lh),c.axisSubX.call(mh),jb.length&&(p(),W(),Uf(),o(!0,c),hc(jb,M,N),c.axisX.call(jh),c.axisSubX.call(mh),c.axisY.call(kh),c.axisY2.call(lh)),Jb(I),M&&jb.length)if(ji&&ab){for(bb=1;bb=0&&mg.select(this).style("display",b%cb?"none":"block")})}else yk.selectAll("."+g.axisX+" .tick text").style("display","block");!ci&&oi&&kb(ek.x,c.axisX,oi),P=vf(eb,!1),S=xf(fb),U=wf(gb,!1),X=yf(fb,!0),Y=yf(fb,!1),hh.domain(eh.domain()),ih.domain(fh.domain()),Dk.style("display","none"),q(),Ak.select("text."+g.text+"."+g.empty).attr("x",Ig/2).attr("y",Kg/2).text(Ph).transition().style("opacity",jb.length?0:1),Ak.select("line."+g.xgridFocus).style("visibility","hidden"),Ni&&(e=ci?{x1:0,x2:Ig,y1:function(a){return dh(a)-D},y2:function(a){return dh(a)-D}}:{x1:function(a){return dh(a)+D},x2:function(a){return dh(a)+D},y1:Fg.top,y2:Kg},(m=function(a){f=ge(Oi,dh),D=Sj?jh.tickOffset():0,d=Ak.select("."+g.xgrids).selectAll("."+g.xgrid).data(f),d.enter().append("line").attr("class",g.xgrid),a||d.attr(e).style("opacity",function(){return+mg.select(this).attr(ci?"y1":"x1")===(ci?Kg:0)?0:1}),d.exit().remove()})()),h=Ak.select("."+g.xgridLines).selectAll("."+g.xgridLine).data(Pi),i=h.enter().append("g").attr("class",function(a){return g.xgridLine+(a.class?" "+a.class:"")}),i.append("line").style("opacity",0),i.append("text").attr("text-anchor","end").attr("transform",ci?"":"rotate(-90)").attr("dx",ci?0:-Fg.top).attr("dy",-5).style("opacity",0),h.exit().transition().duration(Z).style("opacity",0).remove(),G&&Qi&&(j=Ak.select("."+g.ygrids).selectAll("."+g.ygrid).data(eh.ticks(Si)),j.enter().append("line").attr("class",g.ygrid),j.attr("x1",ci?eh:0).attr("x2",ci?eh:Ig).attr("y1",ci?0:eh).attr("y2",ci?Kg:eh),j.exit().remove(),Pf(j,"grid")),G&&(k=Ak.select("."+g.ygridLines).selectAll("."+g.ygridLine).data(Ri),l=k.enter().append("g").attr("class",function(a){return g.ygridLine+(a.class?" "+a.class:"")}),l.append("line").style("opacity",0),l.append("text").attr("text-anchor","end").attr("transform",ci?"rotate(-90)":"").attr("dx",ci?0:-Fg.top).attr("dy",-5).style("opacity",0),k.select("line").transition().duration(Z).attr("x1",ci?Td:0).attr("x2",ci?Td:Ig).attr("y1",ci?0:Td).attr("y2",ci?Kg:Td).style("opacity",1),k.select("text").transition().duration(Z).attr("x",ci?0:Ig).attr("y",Td).text(function(a){return a.text}).style("opacity",1),k.exit().transition().duration(Z).style("opacity",0).remove()),v=Ak.select("."+g.regions).selectAll("."+g.region).data(Bj),v.enter().append("g").attr("class",ud).append("rect").style("fill-opacity",0),v.exit().transition().duration(Z).style("opacity",0).remove(),t=Ak.selectAll("."+g.bars).selectAll("."+g.bar).data(Je),t.enter().append("path").attr("class",od).style("stroke",function(a){return $j(a.id)}).style("fill",function(a){return $j(a.id)}),t.style("opacity",Gd),t.exit().transition().duration($).style("opacity",0).remove(),n=Ak.selectAll("."+g.lines).selectAll("."+g.line).data(He),n.enter().append("path").attr("class",kd).style("stroke",$j),n.style("opacity",Gd).attr("transform",null),n.exit().transition().duration($).style("opacity",0).remove(),r=Ak.selectAll("."+g.areas).selectAll("."+g.area).data(He),r.enter().append("path").attr("class",sd).style("fill",$j).style("opacity",function(){return Gk=+mg.select(this).style("opacity"),0}),r.style("opacity",Gk),r.exit().transition().duration($).style("opacity",0).remove(),Ui&&(s=Ak.selectAll("."+g.circles).selectAll("."+g.circle).data(Ke),s.enter().append("circle").attr("class",md).attr("r",mf).style("fill",$j),s.style("opacity",Gd),s.exit().remove()),Jd()&&(w=Ak.selectAll("."+g.texts).selectAll("."+g.text).data(Le),w.enter().append("text").attr("class",gd).attr("text-anchor",function(a){return ci?a.value<0?"end":"start":"middle"}).style("stroke","none").style("fill",$j).style("fill-opacity",0),w.text(function(a){return Qd(db(a.id))(a.value,a.id)}),w.exit().transition().duration($).style("fill-opacity",0).remove()),u=Ak.selectAll("."+g.arcs).selectAll("."+g.arc).data(Ie),u.enter().append("path").attr("class",qd).style("fill",function(a){return $j(a.data)}).style("cursor",function(a){return Gh(a)?"pointer":null}).style("opacity",0).each(function(a){Ee(a.data)&&(a.startAngle=a.endAngle=-1*(Math.PI/2)),this._current=a}).on("mouseover",function(a,b){var c,d,e;Yj||(c=Kb(a),d=Qb(c),e=Zb(),Sb(c.data.id),bg(c.data.id,!0),e(d,b))}).on("mousemove",function(a){var b=Kb(a),c=Qb(b),d=[c];ce(d,mg.mouse(this))}).on("mouseout",function(a,b){var c,d,e;Yj||(c=Kb(a),d=Qb(c),e=$b(),Tb(c.data.id),cg(),de(),e(d,b))}).on("click",function(a,b){var c=Kb(a),d=Qb(c),e=Yb();Lf(this,a,b),e(d,b)}),u.attr("transform",function(a){return!Ee(a.data)&&L?"scale(0)":""}).style("opacity",function(a){return a===this._current?0:1}).each(function(){Yj=!0}).transition().duration(Z).attrTween("d",function(a){var b,c=Kb(a);return c?(isNaN(this._current.endAngle)&&(this._current.endAngle=this._current.startAngle),b=mg.interpolate(this._current,c),this._current=b(0),function(a){return Nb(b(a),!0)}):function(){return"M 0 0"}}).attr("transform",L?"scale(1)":"").style("fill",function(a){return _j?_j(a.data.values[0].value):$j(a.data.id)}).style("opacity",1).call(Xe,function(){Yj=!1}),u.exit().transition().duration($).style("opacity",0).remove(),Ak.selectAll("."+g.chartArc).select("text").style("opacity",0).attr("class",function(a){return Ee(a.data)?g.gaugeValue:""}).text(Rb).attr("transform",Ob).transition().duration(Z).style("opacity",function(a){return Tc(a.data.id)&&Ge(a.data)?1:0}),Ak.select("."+g.chartArcsTitle).style("opacity",ve(ng.data.targets)||ue(ng.data.targets)?1:0),Qh&&(mg.event&&"zoom"===mg.event.type&&wk.extent(dh.orgDomain()).update(),H&&(!ci&&oi&&kb(ek.subx,c.axisSubX,oi),wk.empty()||wk.extent(dh.orgDomain()).update(),R=vf(eb,!0),T=xf(fb,!0),V=wf(gb,!0),z=Bk.selectAll("."+g.bars).selectAll("."+g.bar).data(Je),z.enter().append("path").attr("class",od).style("stroke","none").style("fill",$j),z.style("opacity",Gd).transition().duration(Z).attr("d",T).style("opacity",1),z.exit().transition().duration(Z).style("opacity",0).remove(),x=Bk.selectAll("."+g.lines).selectAll("."+g.line).data(He),x.enter().append("path").attr("class",kd).style("stroke",$j),x.style("opacity",Gd).transition().duration(Z).attr("d",V).style("opacity",1),x.exit().transition().duration(Z).style("opacity",0).remove(),y=Bk.selectAll("."+g.areas).selectAll("."+g.area).data(He),y.enter().append("path").attr("class",sd).style("fill",$j).style("opacity",function(){return Gk=+mg.select(this).style("opacity"),0}),y.style("opacity",0).transition().duration(Z).attr("d",R).style("fill",$j).style("opacity",Gk),y.exit().transition().duration($).style("opacity",0).remove())),Ak.selectAll("."+g.selectedCircles).filter(function(a){return Be(a)}).selectAll("circle").remove(),zg&&(A=Ak.select("."+g.eventRects).style("cursor",wg?ci?"ns-resize":"ew-resize":null),Ue(oh)&&!zc(oh)?(A.classed(g.eventRectsMultiple)||A.classed(g.eventRectsMultiple,!0).classed(g.eventRectsSingle,!1).selectAll("."+g.eventRect).remove(),B=Ak.select("."+g.eventRects).selectAll("."+g.eventRect).data([0]),Kf(B.enter()),B.attr("x",0).attr("y",0).attr("width",Ig).attr("height",Kg)):(A.classed(g.eventRectsSingle)||A.classed(g.eventRectsMultiple,!1).classed(g.eventRectsSingle,!0).selectAll("."+g.eventRect).remove(),!Tj()&&!Rj||Sj?(F=Q(),E=function(a){return dh(a.x)-F/2}):(F=function(a){var b=Lc(a.index),c=Mc(a.index),d=ng.data.xs[a.id][a.index],e=(dh(c?c:d)-dh(b?b:d))/2;return 0>e?0:e},E=function(a){var b=Lc(a.index),c=ng.data.xs[a.id][a.index];return(dh(c)+dh(b?b:c))/2}),C=Oc(ng.data.targets),Ak.select("."+g.eventRects).datum(C?C.values:[]),B=Ak.select("."+g.eventRects).selectAll("."+g.eventRect).data(function(a){return a}),Jf(B.enter()),B.attr("class",vd).attr("x",ci?0:E).attr("y",ci?E:0).attr("width",ci?Ig:F).attr("height",ci?F:Kg),B.exit().remove())),mg.transition().duration(Z).each(function(){ib.add(t.transition().attr("d",S).style("fill",$j).style("opacity",1)),ib.add(n.transition().attr("d",U).style("stroke",$j).style("opacity",1)),ib.add(r.transition().attr("d",P).style("fill",$j).style("opacity",Gk)),ib.add(s.transition().style("opacity",Hd).style("fill",$j).attr("cx",ci?me:le).attr("cy",ci?le:me)),ib.add(Ak.selectAll("."+g.selectedCircle).transition().attr("cx",ci?me:le).attr("cy",ci?le:me)),ib.add(w.transition().attr("x",X).attr("y",Y).style("fill",$j).style("fill-opacity",a.flow?0:Id)),ib.add(v.selectAll("rect").transition().attr("x",mc).attr("y",nc).attr("width",oc).attr("height",pc).style("fill-opacity",function(a){return b(a.opacity)?a.opacity:.1})),ib.add(h.select("line").transition().attr("x1",ci?0:Sd).attr("x2",ci?Ig:Sd).attr("y1",ci?Sd:Fg.top).attr("y2",ci?Sd:Kg).style("opacity",1)),ib.add(h.select("text").transition().attr("x",ci?Ig:0).attr("y",Sd).text(function(a){return a.text}).style("opacity",1))}).call(ib,a.flow?function(){var b,c,f,i=1,j=a.flow.index,k=a.flow.length,l=Bc(ng.data.targets[0].values,j),o=Bc(ng.data.targets[0].values,j+k),p=dh.domain(),q=a.flow.duration||Z,u=a.flow.done||function(){},x=Ye();ng.data.targets.forEach(function(a){a.values.splice(0,k)}),f=hc(jb,!0,!0),m&&m(!0),a.flow.orgDataCount?b=1===a.flow.orgDataCount||l.x===o.x?dh(p[0])-dh(f[0]):Rj?dh(p[0])-dh(f[0]):dh(l.x)-dh(o.x):1!==ng.data.targets[0].values.length?b=dh(p[0])-dh(f[0]):Rj?(l=Bc(ng.data.targets[0].values,0),o=Bc(ng.data.targets[0].values,ng.data.targets[0].values.length-1),b=dh(l.x)-dh(o.x)):b=ic(f)/2,i=ic(p)/ic(f),c="translate("+b+",0) scale("+i+",1)",mg.transition().ease("linear").duration(q).each(function(){x.add(ek.x.transition().call(jh)),x.add(t.transition().attr("transform",c)),x.add(n.transition().attr("transform",c)),x.add(r.transition().attr("transform",c)),x.add(s.transition().attr("transform",c)),x.add(w.transition().attr("transform",c)),x.add(v.filter(qc).transition().attr("transform",c)),x.add(d.transition().attr("transform",c)),x.add(h.transition().attr("transform",c))}).call(x,function(){var a,b=[],c=[],f=[];if(k){for(a=0;k>a;a++)b.push("."+g.shape+"-"+(j+a)),c.push("."+g.text+"-"+(j+a)),f.push("."+g.eventRect+"-"+(j+a));yk.selectAll("."+g.shapes).selectAll(b).remove(),yk.selectAll("."+g.texts).selectAll(c).remove(),yk.selectAll("."+g.eventRects).selectAll(f).remove(),yk.select("."+g.xgrid).remove()}d.attr("transform",null).attr(e),h.attr("transform",null),h.select("line").attr("x1",ci?0:Sd).attr("x2",ci?Ig:Sd),h.select("text").attr("x",ci?Ig:0).attr("y",Sd),t.attr("transform",null).attr("d",S),n.attr("transform",null).attr("d",U),r.attr("transform",null).attr("d",P),s.attr("transform",null).attr("cx",ci?me:le).attr("cy",ci?le:me),w.attr("transform",null).attr("x",X).attr("y",Y).style("fill-opacity",Id),v.attr("transform",null),v.select("rect").filter(qc).attr("x",mc).attr("width",oc),B.attr("x",ci?0:E).attr("y",ci?E:0).attr("width",ci?Ig:F).attr("height",ci?F:Kg),u()})}:null),Qc(ng.data.targets).forEach(function(a){Hk[a]=!0}),Ff()}function Rf(){Qf({withTransition:!1,withY:!1,withSubchart:!1,withUpdateXDomain:!0})}function Sf(){if(wg&&0!==Vc(ng.data.targets).length){if("mousemove"===mg.event.sourceEvent.type&&xk.altDomain)return dh.domain(xk.altDomain),void xk.scale(dh).updateScaleExtent();Sj&&dh.orgDomain()[0]===Fk[0]&&dh.domain([Fk[0]-1e-10,dh.orgDomain()[1]]),Qf({withTransition:!1,withY:!1,withSubchart:!1}),"mousemove"===mg.event.sourceEvent.type&&(Wj=!0)}}function Tf(){function a(){b.forEach(function(a){a()})}var b=[];return a.add=function(a){b.push(a)},a}function Uf(){yk.attr("width",Mg).attr("height",Ng),yk.select("#"+Lj).select("rect").attr("width",Ig).attr("height",Kg),yk.select("#"+Mj).select("rect").attr("x",G).attr("y",H).attr("width",M).attr("height",N),yk.select("#"+Nj).select("rect").attr("x",I).attr("y",J).attr("width",O).attr("height",P),yk.select("."+g.zoomRect).attr("width",Ig).attr("height",Kg),Ek.style("max-height",Ng+"px")}function Vf(a){return{axisX:a?ek.x.transition().duration(a):ek.x,axisY:a?ek.y.transition().duration(a):ek.y,axisY2:a?ek.y2.transition().duration(a):ek.y2,axisSubX:a?ek.subx.transition().duration(a):ek.subx}}function Wf(a){var b;a=a||{},a.withTransition=Ze(a,"withTransition",!0),a.withTransform=Ze(a,"withTransform",!1),a.withLegend=Ze(a,"withLegend",!1),a.withUpdateXDomain=!0,a.withUpdateOrgXDomain=!0,a.withTransitionForExit=!1,p(),a.withLegend&&Uh||(b=Vf(a.withTransitionForAxis?Eg:0),W(),Uf(),o(a.withTransition,b)),Qf(a,b)}function Xf(a){var b,c,d,e,f,h,i,j,k,l,m,n;i=Ak.select("."+g.chartTexts).selectAll("."+g.chartText).data(a).attr("class",xd),j=i.enter().append("g").attr("class",xd).style("opacity",0).style("pointer-events","none"),j.append("g").attr("class",hd),e=Ak.select("."+g.chartBars).selectAll("."+g.chartBar).data(a).attr("class",zd),d=e.enter().append("g").attr("class",zd).style("opacity",0).style("pointer-events","none"),d.append("g").attr("class",pd).style("cursor",function(a){return Gh(a)?"pointer":null}),c=Ak.select("."+g.chartLines).selectAll("."+g.chartLine).data(a).attr("class",yd),b=c.enter().append("g").attr("class",yd).style("opacity",0).style("pointer-events","none"),b.append("g").attr("class",ld),b.append("g").attr("class",td),b.append("g").attr("class",function(a){return fd(g.selectedCircles,a.id)}),b.append("g").attr("class",nd).style("cursor",function(a){return Gh(a)?"pointer":null}),a.forEach(function(a){Ak.selectAll("."+g.selectedCircles+Bd(a.id)).selectAll("."+g.selectedCircle).each(function(b){b.value=a.values[b.index].value})}),h=Ak.select("."+g.chartArcs).selectAll("."+g.chartArc).data(Wg(a)).attr("class",Ad),f=h.enter().append("g").attr("class",Ad),f.append("g").attr("class",rd),f.append("text").attr("dy",ue(ng.data.targets)?"-0.35em":".35em").style("opacity",0).style("text-anchor","middle").style("pointer-events","none"),Qh&&(n=Bk.select("."+g.chartBars).selectAll("."+g.chartBar).data(a).attr("class",zd),m=n.enter().append("g").style("opacity",0).attr("class",zd),m.append("g").attr("class",pd),l=Bk.select("."+g.chartLines).selectAll("."+g.chartLine).data(a).attr("class",yd),k=l.enter().append("g").style("opacity",0).attr("class",yd),k.append("g").attr("class",ld),k.append("g").attr("class",td)),yk.selectAll("."+g.target).filter(function(a){return Tc(a.id)}).transition().duration(Eg).style("opacity",1)}function Yf(a,b){b.filter&&(a=a.filter(b.filter)),(b.type||b.types)&&a.forEach(function(a){b.types?oe(a.id,b.types[a.id]):oe(a.id,b.type)}),ng.data.targets.forEach(function(b){for(var c=0;cf&&(f=(m-l)/2,z=0,F++)),E[a]=F,D[F]=lk?10:f,A[a]=z,z+=l}var f,h,i=_e(b.textContent,g.legendItem),j=10*Math.ceil((i.width+v)/10),k=10*Math.ceil((i.height+u)/10),l=kk||lk?k:j,m=kk||lk?V():U();return d&&(z=0,F=0,w=0,x=0),Uh&&!Uc(c)?void(B[c]=C[c]=E[c]=A[c]=0):(B[c]=j,C[c]=k,(!w||j>=w)&&(w=j),(!x||k>=x)&&(x=k),h=kk||lk?x:w,void(bi?(Object.keys(B).forEach(function(a){B[a]=w}),Object.keys(C).forEach(function(a){C[a]=x}),f=(m-h*a.length)/2,y>f?(z=0,F=0,a.forEach(function(a){e(a)})):e(c,!0)):e(c)))}var f,h,i,j,k,l,m,n,q,r,s,t,u=4,v=36,w=0,x=0,y=10,z=0,A={},B={},C={},D=[0],E={},F=0,G=Ck.selectAll("."+g.legendItemFocused).size();b=b||{},n=Ze(b,"withTransition",!0),q=Ze(b,"withTransitionForTransform",!0),kk?(f=function(a){return w*E[a]},j=function(a){return D[E[a]]+A[a]}):lk?(f=function(a){return w*E[a]+10},j=function(a){return D[E[a]]+A[a]}):(f=function(a){return D[E[a]]+A[a]},j=function(a){return x*E[a]}),h=function(a,b){return f(a,b)+14},k=function(a,b){return j(a,b)+9},i=function(a,b){return f(a,b)-4},l=function(a,b){return j(a,b)-7},m=Ck.selectAll("."+g.legendItem).data(a).enter().append("g").attr("class",function(a){return fd(g.legendItem,a)}).style("visibility",function(a){return Uc(a)?"visible":"hidden"}).style("cursor","pointer").on("click",function(a){"function"==typeof $h?$h(a):ng.toggle(a)}).on("mouseover",function(a){mg.select(this).classed(g.legendItemFocused,!0),Yj||ng.focus(a),"function"==typeof _h&&_h(a)}).on("mouseout",function(a){mg.select(this).classed(g.legendItemFocused,!1),Yj||ng.revert(),"function"==typeof ai&&ai(a)}),m.append("text").text(function(a){return d(rh[a])?rh[a]:a}).each(function(a,b){e(this,a,0===b)}).style("pointer-events","none").attr("x",kk||lk?h:-200).attr("y",kk||lk?-200:k),m.append("rect").attr("class",g.legendItemEvent).style("fill-opacity",0).attr("x",kk||lk?i:-200).attr("y",kk||lk?-200:l),m.append("rect").attr("class",g.legendItemTile).style("pointer-events","none").style("fill",$j).attr("x",kk||lk?h:-200).attr("y",kk||lk?-200:j).attr("width",10).attr("height",10),lk&&0!==w&&Ck.insert("g","."+g.legendItem).attr("class",g.legendBackground).append("rect").attr("height",V()-10).attr("width",w*(F+1)+10),r=Ck.selectAll("text").data(a).text(function(a){return d(rh[a])?rh[a]:a}).each(function(a,b){e(this,a,0===b)}),(n?r.transition():r).attr("x",h).attr("y",k),s=Ck.selectAll("rect."+g.legendItemEvent).data(a),(n?s.transition():s).attr("width",function(a){return B[a]}).attr("height",function(a){return C[a]}).attr("x",i).attr("y",l),t=Ck.selectAll("rect."+g.legendItemTile).data(a),(n?t.transition():t).style("fill",$j).attr("x",f).attr("y",j),Ck.selectAll("."+g.legendItem).classed(g.legendItemHidden,function(a){return!Tc(a)}).transition().style("opacity",function(a){var b=mg.select(this);return Tc(a)?!G||b.classed(g.legendItemFocused)?_f(b):ag(b):rk}),S(w),T(x),R(F),p(),W(),Uf(),o(q,c)}function gg(a){return Sc(ng.data.targets,a.id)}function hg(a){return"data"in a&&Sc(ng.data.targets,a.data.id)}function ig(a){return a?function(b){var c=!1;return[].concat(a).forEach(function(d){("value"in d&&b.value===a.value||"class"in d&&b.class===a.class)&&(c=!0)}),c}:function(){return!0}}function jg(a,b){var c=ig(a),d=function(a){return!c(a)},e=b?g.xgridLines:g.ygridLines,f=b?g.xgridLine:g.ygridLine;Ak.select("."+e).selectAll("."+f).filter(c).transition().duration(Eg).style("opacity",0).remove(),b?Pi=Pi.filter(d):Ri=Ri.filter(d)}function kg(a,b,c){var d=!we(ng.data.targets);Yj=!1,oe(a,b),Wf(c||{withTransitionForAxis:d})}function lg(a){var b=a.mimeType?a.mimeType:"csv";mg.xhr(a.url,function(c,d){var e;e="json"===b?Gc(JSON.parse(d.response),a.keys):Fc(d.response),If(e)})}var mg=a.d3?a.d3:"undefined"!=typeof require?require("d3"):void 0,ng={data:{},axis:{},legend:{}},og={},pg=i(["bindto"],"#chart"),qg=i(["size","width"]),rg=i(["size","height"]),sg=i(["padding","left"]),tg=i(["padding","right"]),ug=i(["padding","top"]),vg=i(["padding","bottom"]),wg=i(["zoom","enabled"],!1),xg=i(["zoom","extent"]),yg=i(["zoom","privileged"],!1),zg=i(["interaction","enabled"],!0),Ag=i(["onmouseover"],function(){}),Bg=i(["onmouseout"],function(){}),Cg=i(["onresize"],function(){}),Dg=i(["onresized"],function(){}),Eg=i(["transition","duration"],350);h("data","data is required in config");var Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Wg,Xg,Yg,Zg,$g,_g,ah,bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh=i(["data","x"]),oh=i(["data","xs"],{}),ph=i(["data","x_format"],"%Y-%m-%d"),qh=i(["data","id_converter"],function(a){return a}),rh=i(["data","names"],{}),sh=i(["data","classes"],{}),th=i(["data","groups"],[]),uh=i(["data","axes"],{}),vh=i(["data","type"]),wh=i(["data","types"],{}),xh=i(["data","labels"],{}),yh=i(["data","order"]),zh=i(["data","regions"],{}),Ah=i(["data","color"]),Bh=i(["data","colors"],{}),Ch=i(["data","hide"],!1),Dh=i(["data","filter"]),Eh=i(["data","selection","enabled"],!1),Fh=i(["data","selection","grouped"],!1),Gh=i(["data","selection","isselectable"],function(){return!0}),Hh=i(["data","selection","multiple"],!0),Ih=i(["data","onclick"],function(){}),Jh=i(["data","onmouseover"],function(){}),Kh=i(["data","onmouseout"],function(){}),Lh=i(["data","onselected"],function(){}),Mh=i(["data","onunselected"],function(){}),Nh=i(["data","ondragstart"],function(){}),Oh=i(["data","ondragend"],function(){}),Ph=i(["data","empty","label","text"],""),Qh=i(["subchart","show"],!1),Rh=i(["subchart","size","height"],60),Sh=i(["color","pattern"],[]),Th=i(["color","threshold"],{}),Uh=i(["legend","show"],!0),Vh=i(["legend","position"],"bottom"),Wh=i(["legend","inset","anchor"],"top-left"),Xh=i(["legend","inset","x"],10),Yh=i(["legend","inset","y"],0),Zh=i(["legend","inset","step"]),$h=i(["legend","item","onclick"]),_h=i(["legend","item","onmouseover"]),ai=i(["legend","item","onmouseout"]),bi=i(["legend","equally"],!1),ci=i(["axis","rotated"],!1),di=i(["axis","x","show"],!0),ei=i(["axis","x","type"],"indexed"),fi=i(["axis","x","localtime"],!0),gi=i(["axis","x","categories"],[]),hi=i(["axis","x","tick","centered"],!1),ii=i(["axis","x","tick","format"]),ji=i(["axis","x","tick","culling"],{}),ki=i(["axis","x","tick","culling","max"],10),li=i(["axis","x","tick","count"]),mi=i(["axis","x","tick","fit"],!0),ni=i(["axis","x","tick","values"],null),oi=i(["axis","x","tick","rotate"]),pi=i(["axis","x","max"],null),qi=i(["axis","x","min"],null),ri=i(["axis","x","padding"],{}),si=i(["axis","x","height"]),ti=i(["axis","x","default"]),ui=i(["axis","x","label"],{}),vi=i(["axis","y","show"],!0),wi=i(["axis","y","max"]),xi=i(["axis","y","min"]),yi=i(["axis","y","center"]),zi=i(["axis","y","label"],{}),Ai=i(["axis","y","inner"],!1),Bi=i(["axis","y","tick","format"]),Ci=i(["axis","y","padding"]),Di=i(["axis","y","ticks"],10),Ei=i(["axis","y2","show"],!1),Fi=i(["axis","y2","max"]),Gi=i(["axis","y2","min"]),Hi=i(["axis","y2","center"]),Ii=i(["axis","y2","label"],{}),Ji=i(["axis","y2","inner"],!1),Ki=i(["axis","y2","tick","format"]),Li=i(["axis","y2","padding"]),Mi=i(["axis","y2","ticks"],10),Ni=i(["grid","x","show"],!1),Oi=i(["grid","x","type"],"tick"),Pi=i(["grid","x","lines"],[]),Qi=i(["grid","y","show"],!1),Ri=i(["grid","y","lines"],[]),Si=i(["grid","y","ticks"],10),Ti=i(["grid","focus","show"],!0),Ui=i(["point","show"],!0),Vi=i(["point","r"],2.5),Wi=i(["point","focus","expand","enabled"],!0),Xi=i(["point","focus","expand","r"]),Yi=i(["point","focus","select","r"]),Zi=i(["line","connect_null"],!1),$i=i(["bar","width"]),_i=i(["bar","width","ratio"],.6),aj=i(["pie","label","show"],!0),bj=i(["pie","label","format"]),cj=i(["pie","label","threshold"],.05),dj=i(["pie","sort"],!0),ej=i(["pie","expand"],!0),fj=i(["pie","onclick"],function(){}),gj=i(["pie","onmouseover"],function(){}),hj=i(["pie","onmouseout"],function(){}),ij=i(["gauge","label","show"],!0),jj=i(["gauge","label","format"]),kj=i(["gauge","expand"],!0),lj=i(["gauge","min"],0),mj=i(["gauge","max"],100),nj=i(["gauge","onclick"],function(){}),oj=i(["gauge","onmouseover"],function(){}),pj=i(["gauge","onmouseout"],function(){}),qj=i(["gauge","units"]),rj=i(["gauge","width"]),sj=i(["donut","label","show"],!0),tj=i(["donut","label","format"]),uj=i(["donut","label","threshold"],.05),vj=i(["donut","sort"],!0),wj=i(["donut","expand"],!0),xj=i(["donut","title"],""),yj=i(["donut","onclick"],function(){}),zj=i(["donut","onmouseover"],function(){}),Aj=i(["donut","onmouseout"],function(){}),Bj=i(["regions"],[]),Cj=i(["tooltip","show"],!0),Dj=i(["tooltip","grouped"],!0),Ej=i(["tooltip","format","title"]),Fj=i(["tooltip","format","name"]),Gj=i(["tooltip","format","value"]),Hj=i(["tooltip","contents"],function(a,b,c,d){var e,f,h,i,j,k,l=Ej?Ej:b,m=Fj?Fj:function(a){return a},n=Gj?Gj:c;for(f=0;f"+(h||0===h?""+h+"":"")),j=m(a[f].name),i=n(a[f].value,a[f].ratio,a[f].id,a[f].index),k=_j?_j(a[f].value):d(a[f].id),e+="",e+=""+j+"",e+=""+i+"",e+="");return e+""}),Ij=i(["tooltip","init","show"],!1),Jj=i(["tooltip","init","x"],0),Kj=i(["tooltip","init","position"],{top:"0px",left:"50px"}),Lj="c3-"+ +new Date+"-clip",Mj=Lj+"-xaxis",Nj=Lj+"-yaxis",Oj=j(Lj),Pj=j(Mj),Qj=j(Nj),Rj="timeseries"===ei,Sj=ei.indexOf("categor")>=0,Tj=function(){return!Rj&&(nh||Ue(oh))},Uj=null,Vj=!1,Wj=!1,Xj=!1,Yj=!1,Zj=mg.scale.category10().range(),$j=Ne(Bh,Ue(Sh)?Sh:Zj,Ah),_j=Ue(Th)?Oe(Sh,Th):null,ak=fi?mg.time.format:mg.time.format.utc,bk=ak.multi([[".%L",function(a){return a.getMilliseconds()}],[":%S",function(a){return a.getSeconds()}],["%I:%M",function(a){return a.getMinutes()}],["%I %p",function(a){return a.getHours()}],["%-m/%-d",function(a){return a.getDay()&&1!==a.getDate()}],["%-m/%-d",function(a){return 1!==a.getDate()}],["%-m/%-d",function(a){return a.getMonth()}],["%Y/%-m/%-d",function(){return!0}]]),ck=[],dk=[],ek={},fk=ci?"left":"bottom",gk=ci?Ai?"top":"bottom":Ai?"right":"left",hk=ci?Ji?"bottom":"top":Ji?"left":"right",ik=ci?"left":"bottom",jk={main:function(){return"translate("+k(Fg.left)+","+k(Fg.top)+")"},context:function(){return"translate("+k(Gg.left)+","+k(Gg.top)+")"},legend:function(){return"translate("+Hg.left+","+Hg.top+")"},x:function(){return"translate(0,"+(ci?0:Kg)+")"},y:function(){return"translate(0,"+(ci?Kg:0)+")"},y2:function(){return"translate("+(ci?0:Ig)+","+(ci?1:0)+")"},subx:function(){return"translate(0,"+(ci?0:Lg)+")"},arc:function(){return"translate("+Rg/2+","+Sg/2+")"}},kk="right"===Vh,lk="inset"===Vh,mk="top-left"===Wh||"top-right"===Wh,nk="top-left"===Wh||"bottom-left"===Wh,ok=0,pk=0,qk=0,rk=.15,sk=0,tk=30,uk=ci&&!di?0:30,vk=5;Wg=mg.layout.pie().value(function(a){return a.values.reduce(function(a,b){return a+b.value},0)}),dj&&vj||Wg.sort(null);var wk,xk=function(){};wk=mg.svg.brush().on("brush",Rf),wk.update=function(){return Bk&&Bk.select("."+g.brush).call(this),this},wk.scale=function(a){return ci?this.y(a):this.x(a)},xk=mg.behavior.zoom().on("zoomstart",function(){xk.altDomain=mg.event.sourceEvent.altKey?dh.orgDomain():null}).on("zoom",Sf),xk.scale=function(a){return ci?this.y(a):this.x(a)},xk.orgScaleExtent=function(){var a=xg?xg:[1,10];return[a[0],Math.max(Nc()/a[1],a[1])]},xk.updateScaleExtent=function(){var a=ic(dh.orgDomain())/ic(Fk),b=this.orgScaleExtent();return this.scaleExtent([b[0]*a,b[1]*a]),this};var yk,zk,Ak,Bk,Ck,Dk,Ek,Fk,Gk,Hk={};if(ng.focus=function(a){function b(a){Vc(a).transition().duration(100).style("opacity",1)}var c=yk.selectAll(Cd(a)),d=c.filter(gg),e=c.filter(hg);ng.revert(),ng.defocus(),b(d.classed(g.focused,!0)),b(e),we(ng.data.targets)&&Sb(a,!0),bg(a,!0)},ng.defocus=function(a){function b(a){Vc(a).transition().duration(100).style("opacity",.3)}var c=yk.selectAll(Cd(a)),d=c.filter(gg),e=c.filter(hg);ng.revert(),b(d.classed(g.focused,!1)),b(e),we(ng.data.targets)&&Tb(a),bg(a,!1)},ng.revert=function(a){function b(a){Vc(a).transition().duration(100).style("opacity",1)}var c=yk.selectAll(Cd(a)),d=c.filter(gg),e=c.filter(hg);b(d.classed(g.focused,!1)),b(e),we(ng.data.targets)&&Tb(a),cg()},ng.show=function(a,b){a=Rc(a),b=b||{},Zc(a),yk.selectAll(Dd(a)).transition().style("opacity",1),b.withLegend&&dg(a),Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0,withLegend:!0})},ng.hide=function(a,b){a=Rc(a),b=b||{},Yc(a),yk.selectAll(Dd(a)).transition().style("opacity",0),b.withLegend&&eg(a),Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0,withLegend:!0})},ng.toggle=function(a){Tc(a)?ng.hide(a):ng.show(a)},ng.unzoom=function(){wk.clear().update(),Qf({withUpdateXDomain:!0})},ng.zoom=function(){},ng.zoom.enable=function(a){wg=a,Wf()},ng.load=function(a){return a.xs&&yc(a.xs),"classes"in a&&Object.keys(a.classes).forEach(function(b){sh[b]=a.classes[b]}),"categories"in a&&Sj&&(gi=a.categories),"cacheIds"in a&&jc(a.cacheIds)?void Yf(lc(a.cacheIds),a.done):void("unload"in a?$f(Rc("boolean"==typeof a.unload&&a.unload?null:a.unload),function(){Zf(a)}):Zf(a))},ng.unload=function(a,b){$f(Rc(a),function(){Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0,withLegend:!0}),"function"==typeof b&&b()})},ng.flow=function(a){var c,e,f,g,h,i,j=Jc(Ic(a.columns),!0),k=[],l=Nc(),m=0,n=0;ng.data.targets.forEach(function(a){var b,c,d=!1;for(b=0;bc;c++)j[b].values[c].index=n+c,Rj||(j[b].values[c].x=n+c);a.values=a.values.concat(j[b].values),j.splice(b,1);break}d||k.push(a.id)}),ng.data.targets.forEach(function(a){var b,c;for(b=0;bc;c++)a.values.push({id:a.id,index:n+c,x:Rj?xc(n+c):n+c,value:null})}),ng.data.targets.length&&j.forEach(function(a){var b,c=[];for(b=ng.data.targets[0].values[0].index;n>b;b++)c.push({id:a.id,index:b,x:Rj?xc(b):b,value:null});a.values.forEach(function(a){a.index+=n,Rj||(a.x+=n)}),a.values=c.concat(a.values)}),ng.data.targets=ng.data.targets.concat(j),c=Nc(),f=ng.data.targets[0],g=f.values[0],d(a.to)?(m=0,i=Rj?Pe(a.to):a.to,f.values.forEach(function(a){a.x1?f.values[f.values.length-1].x-g.x:g.x-gc(ng.data.targets)[0]:1,e=[g.x-h,g.x],hc(null,!0,!0,e)),Xf(ng.data.targets),Qf({flow:{index:g.index,length:m,duration:b(a.duration)?a.duration:Eg,done:a.done,orgDataCount:l},withLegend:!0,withTransition:l>1})},ng.selected=function(a){return mg.merge(Ak.selectAll("."+g.shapes+Bd(a)).selectAll("."+g.shape).filter(function(){return mg.select(this).classed(g.SELECTED)}).map(function(a){return a.map(function(a){var b=a.__data__;return b.data?b.data:b})}))},ng.select=function(a,b,c){Eh&&Ak.selectAll("."+g.shapes).selectAll("."+g.shape).each(function(e,f){var h=mg.select(this),i=e.data?e.data.id:e.id,j=kf(this),k=Fh||!a||a.indexOf(i)>=0,l=!b||b.indexOf(f)>=0,m=h.classed(g.SELECTED);h.classed(g.line)||h.classed(g.area)||(k&&l?Gh(e)&&!m&&j(!0,h.classed(g.SELECTED,!0),e,f):d(c)&&c&&m&&j(!1,h.classed(g.SELECTED,!1),e,f))})},ng.unselect=function(a,b){Eh&&Ak.selectAll("."+g.shapes).selectAll("."+g.shape).each(function(c,d){var e=mg.select(this),f=c.data?c.data.id:c.id,h=kf(this),i=Fh||!a||a.indexOf(f)>=0,j=!b||b.indexOf(d)>=0,k=e.classed(g.SELECTED);e.classed(g.line)||e.classed(g.area)||i&&j&&Gh(c)&&k&&h(!1,e.classed(g.SELECTED,!1),c,d)})},ng.transform=function(a,b){var c=["pie","donut"].indexOf(a)>=0?{withTransform:!0}:null;kg(b,a,c)},ng.groups=function(a){return c(a)?th:(th=a,Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0}),th)},ng.xgrids=function(a){return a?(Pi=a,Qf(),Pi):Pi},ng.xgrids.add=function(a){return a?ng.xgrids(Pi.concat(a)):void 0},ng.xgrids.remove=function(a){jg(a,!0)},ng.ygrids=function(a){return a?(Ri=a,Qf(),Ri):Ri},ng.ygrids.add=function(a){return a?ng.ygrids(Ri.concat(a)):void 0},ng.ygrids.remove=function(a){jg(a,!1)},ng.regions=function(a){return a?(Bj=a,Qf(),Bj):Bj},ng.regions.add=function(a){return a?(Bj=Bj.concat(a),Qf(),Bj):Bj},ng.regions.remove=function(a){var b,c,d;return a=a||{},b=Ze(a,"duration",Eg),c=Ze(a,"classes",[g.region]),d=Ak.select("."+g.regions).selectAll(c.map(function(a){return"."+a})),(b?d.transition().duration(b):d).style("opacity",0).remove(),Bj=Bj.filter(function(a){var b=!1;return a.class?(a.class.split(" ").forEach(function(a){c.indexOf(a)>=0&&(b=!0)}),!b):!0})},ng.data.get=function(a){var b=ng.data.getAsTarget(a);return d(b)?b.values.map(function(a){return a.value}):void 0},ng.data.getAsTarget=function(a){var b=ng.data.targets.filter(function(b){return b.id===a});return b.length>0?b[0]:void 0},ng.data.names=function(a){return arguments.length?(Object.keys(a).forEach(function(b){rh[b]=a[b]}),Qf({withLegend:!0}),rh):rh},ng.data.colors=function(a){return arguments.length?(Object.keys(a).forEach(function(b){Bh[b]=a[b]}),Qf({withLegend:!0}),Bh):Bh},ng.color=$j,ng.x=function(a){return arguments.length&&(Cc(ng.data.targets,a),Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0})),ng.data.xs},ng.xs=function(a){return arguments.length&&(Dc(ng.data.targets,a),Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0})),ng.data.xs},ng.axis.labels=function(a){arguments.length&&(Object.keys(a).forEach(function(b){hb(b,a[b])}),Jb())},ng.axis.max=function(a){arguments.length&&("object"==typeof a?(b(a.x)&&(pi=a.x),b(a.y)&&(wi=a.y),b(a.y2)&&(Fi=a.y2)):wi=Fi=a,Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0}))},ng.axis.min=function(a){arguments.length&&("object"==typeof a?(b(a.x)&&(qi=a.x),b(a.y)&&(xi=a.y),b(a.y2)&&(Gi=a.y2)):xi=Gi=a,Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0}))},ng.axis.range=function(a){arguments.length&&("undefined"!=typeof a.max&&ng.axis.max(a.max),"undefined"!=typeof a.min&&ng.axis.min(a.min))},ng.legend.show=function(a){dg(Rc(a)),Wf({withLegend:!0})},ng.legend.hide=function(a){eg(Rc(a)),Wf({withLegend:!0})},ng.resize=function(a){qg=a?a.width:null,rg=a?a.height:null,ng.flush()},ng.flush=function(){Wf({withLegend:!0,withTransition:!1,withTransitionForTransform:!1})},ng.destroy=function(){ng.data.targets=void 0,ng.data.xs={},Ek.classed("c3",!1).html(""),a.onresize=null},f.data.url)lg(f.data);else if(f.data.json)If(Gc(f.data.json,f.data.keys));else if(f.data.rows)If(Hc(f.data.rows));else{if(!f.data.columns)throw Error("url or json or rows or columns is required.");If(Ic(f.data.columns))}return ng},"function"==typeof define&&define.amd?define("c3",["d3"],f):"undefined"!=typeof exports&&"undefined"!=typeof module?module.exports=f:a.c3=f}(window); \ No newline at end of file +!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}function e(a,b){function c(a,b){a.attr("transform",function(a){return"translate("+Math.ceil(b(a)+s)+", 0)"})}function d(a,b){a.attr("transform",function(a){return"translate(0,"+Math.ceil(b(a))+")"})}function e(a){var b=a[0],c=a[a.length-1];return c>b?[b,c]:[c,b]}function f(a){var b,c,d=[];if(a.ticks)return a.ticks.apply(a,k);for(c=a.domain(),b=Math.ceil(c[0]);b0&&d[0]>0&&d.unshift(d[0]-(d[1]-d[0])),d}function g(){var a,c=m.copy();return b&&(a=m.domain(),c.domain([a[0],a[1]-1])),c}function h(a){return j?j(a):a}function i(i){i.each(function(){function i(a){var b=m(a)+s;return B[0]=0;return"url("+(c?"":document.URL.split("#")[0])+"#"+b+")"}function k(a){return Math.ceil(a)+.5}function l(a,b){var c,d,e;b&&b.axisX?c=b.axisX:(c=Ak.select("."+g.axisX),a&&(c=c.transition())),b&&b.axisY?d=b.axisY:(d=Ak.select("."+g.axisY),a&&(d=d.transition())),b&&b.axisY2?e=b.axisY2:(e=Ak.select("."+g.axisY2),a&&(e=e.transition())),(a?Ak.transition():Ak).attr("transform",jk.main),c.attr("transform",jk.x),d.attr("transform",jk.y),e.attr("transform",jk.y2),Ak.select("."+g.chartArcs).attr("transform",jk.arc)}function m(a,b){var c;b&&b.axisSubX?c=b.axisSubX:(c=Bk.select("."+g.axisX),a&&(c=c.transition())),Bk.attr("transform",jk.context),c.attr("transform",jk.subx)}function n(a){(a?Ck.transition():Ck).attr("transform",jk.legend)}function o(a,b){l(a,b),Qh&&m(a,b),n(a)}function p(){var a=V(),b=U(),c=kk||lk?0:a,d=we(ng.data.targets),e=ci||d?0:A("x"),f=Qh&&!d?Rh+e:0;Mg=t(),Ng=u(),ci?(Fg={top:A("y2")+v(),right:d?0:y(),bottom:A("y")+c+w(),left:f+(d?0:x())},Gg={top:Fg.top,right:0/0,bottom:20+c,left:tk}):(Fg={top:4+v(),right:d?0:y(),bottom:e+f+c+w(),left:d?0:x()},Gg={top:Ng-f-c,right:0/0,bottom:e+c,left:Fg.left});var g={top:mk?v()+Yh+5.5:Ng-a-w()-Yh,left:nk?x()+Xh+.5:Mg-b-y()-Xh+.5};Hg={top:kk?0:lk?g.top:Ng-a,right:0/0,bottom:0,left:kk?Mg-b:lk?g.left:0},Ig=Mg-Fg.left-Fg.right,Kg=Ng-Fg.top-Fg.bottom,0>Ig&&(Ig=0),0>Kg&&(Kg=0),Jg=ci?Fg.left-tk-uk:Ig,Lg=ci?Kg:Ng-Gg.top-Gg.bottom,0>Jg&&(Jg=0),0>Lg&&(Lg=0),Rg=Ig-(kk?b+10:0),Sg=Kg-(kk?0:10),r(),kk&&d&&(Hg.left=Rg/2+1.1*Pg)}function q(){Ak.select("line."+g.xgridFocus).attr("x1",ci?0:-10).attr("x2",ci?Ig:-10).attr("y1",ci?-10:Fg.top).attr("y2",ci?-10:Kg)}function r(){var a;Pg=Math.min(Rg,Sg)/2,Og=.95*Pg,a=rj?(Og-rj)/Og:.6,Qg=ve(ng.data.targets)||ue(ng.data.targets)?Og*a:0}function s(){var a=ci?g.axisX:g.axisY,b=Ak.select("."+a).node(),c=b?b.getBoundingClientRect():{right:0},d=Ek.node().getBoundingClientRect(),e=we(ng.data.targets),f=c.right-d.left-(e?0:x());return f>0?f:0}function t(){return qg?qg:C()}function u(){var a=rg?rg:D();return a>0?a:320}function v(){return ug?ug:0}function w(){return vg?vg:0}function x(){return sg?sg:ci?di?Math.max($e(z("x")),40):1:!vi||Ai?1:$e(z("y"))}function y(){var a=10,b=kk?U()+20:0;return tg?tg:ci?a+b:(!Ei||Ji?a:$e(z("y2")))+b}function z(a){var b=pb(a);return b.isInner?20+Ib(a):40+Ib(a)}function A(a){return"x"!==a||di?"x"===a&&si?si:"y"!==a||vi?"y2"!==a||Ei?(pb(a).isInner?30:40)+("y2"===a?-10:0):vk:!Uh||kk||lk?1:10:0}function B(a){for(var b,c=Ek.node();c&&"BODY"!==c.tagName&&!(b=c.getBoundingClientRect()[a]);)c=c.parentNode;return b}function C(){return B("width")}function D(){var a=Ek.style("height");return a.indexOf("px")>0?+a.replace("px",""):0}function E(a){return a?-31:-(Fg.left-1)}function F(a){return a?-20:-4}function G(){return E(!ci)}function H(){return F(!ci)}function I(){return E(ci)}function J(){return F(ci)}function K(a){return a?Ig+2+30+30:Fg.left+20}function L(a){return a?(si?si:0)+80:Kg+8}function M(){return K(!ci)}function N(){return L(!ci)}function O(){return K(ci)}function P(){return L(ci)}function Q(){var a,b,c,d,e,f,g=Oc(ng.data.targets);return g?(a=g.values[0],b=g.values[g.values.length-1],c=dh(b.x)-dh(a.x),0===c?ci?Kg:Ig:(d=Nc(),e=re(ng.data.targets)?(d-(Sj?.25:1))/d:1,f=d>1?c*e/(d-1):c,1>f?1:f)):0}function R(a){ok=a}function S(a){pk=a}function T(a){qk=a}function U(){return Uh?kk||lk?pk*(ok+1):Mg:0}function V(){var a=0;return Uh&&(a=kk?Ng:lk?Zh?Math.max(20,qk)*(Zh+1):Kg:Math.max(20,qk)*(ok+1)),a}function W(){var a,b,c=!dh;Xg=ci?1:0,Yg=ci?Kg:Ig,Zg=ci?0:Kg,$g=ci?Ig:1,_g=Xg,ah=Yg,bh=ci?0:Lg,ch=ci?Jg:1,dh=Z(Xg,Yg,c?void 0:dh.domain(),function(){return jh.tickOffset()}),eh=$(Zg,$g,c?void 0:eh.domain()),fh=$(Zg,$g,c?void 0:fh.domain()),gh=Z(Xg,Yg,Fk,function(a){return a%1?0:mh.tickOffset()}),hh=$(bh,ch,c?void 0:hh.domain()),ih=$(bh,ch,c?void 0:ih.domain()),a=eb(),b=ni?ni:c?void 0:jh.tickValues(),jh=bb(dh,fk,a,b),mh=bb(gh,ik,a,b),kh=cb(eh,gk,Bi,Di),lh=cb(fh,hk,Ki,Mi),c||(wk.scale(gh),wg&&xk.scale(dh)),X()}function X(){Tg=Lb(),Ug=Mb(),Vg=Mb(.98)}function Y(a,b,c){return(c?mg.time.scale():mg.scale.linear()).range([a,b])}function Z(a,b,c,d){var e,f=Y(a,b,Rj),g=c?f.domain(c):f;Sj?(d=d||function(){return 0},f=function(a,b){var c=g(a)+d(a);return b?c:Math.ceil(c)}):f=function(a,b){var c=g(a);return b?c:Math.ceil(c)};for(e in g)f[e]=g[e];return f.orgDomain=function(){var a=g.domain();return Fk&&Fk[0]===a[0]&&Fk[1]a?a.toFixed(0):a};return ii&&("function"==typeof ii?a=ii:Rj&&(a=function(a){return a?ak(ii)(a):""})),a}function fb(a){var b;return"y"===a?b=zi:"y2"===a?b=Ii:"x"===a&&(b=ui),b}function gb(a){var b=fb(a);return"string"==typeof b?b:b?b.text:null}function hb(a,b){var c=fb(a);"string"==typeof c?"y"===a?zi=b:"y2"===a?Ii=b:"x"===a&&(ui=b):c&&(c.text=b)}function ib(a){return 10*Math.sin(Math.PI*(a/180))}function jb(a){return 11.5-2.5*(a/15)}function kb(a,b,c){a.selectAll(".tick text").style("text-anchor","start"),b.selectAll(".tick text").attr("y",jb(c)).attr("x",ib(c)).attr("transform","rotate("+c+")")}function lb(a,b){var c=fb(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 mb(){return lb("x",ci?"inner-top":"inner-right")}function nb(){return lb("y",ci?"inner-right":"inner-top")}function ob(){return lb("y2",ci?"inner-right":"inner-top")}function pb(a){return"y2"===a?ob():"y"===a?nb():mb()}function qb(){return gb("x")}function rb(){return gb("y")}function sb(){return gb("y2")}function tb(a,b){return a?b.isLeft?0:b.isCenter?Ig/2:Ig:b.isBottom?-Kg:b.isMiddle?-Kg/2:0}function ub(a,b){return a?b.isLeft?"0.5em":b.isRight?"-0.5em":"0":b.isTop?"-0.5em":b.isBottom?"0.5em":"0"}function vb(a,b){return a?b.isLeft?"start":b.isCenter?"middle":"end":b.isBottom?"start":b.isMiddle?"middle":"end"}function wb(){return tb(!ci,mb())}function xb(){return tb(ci,nb())}function yb(){return tb(ci,ob())}function zb(){return ub(!ci,mb())}function Ab(){return ub(ci,nb())}function Bb(){return ub(ci,ob())}function Cb(){var a=mb();return ci?a.isInner?"1.2em":-25-Ib("x"):a.isInner?"-0.5em":si?si-10:"3em"}function Db(){var a=nb();return ci?a.isInner?"-0.5em":"3em":a.isInner?"1.2em":-20-Ib("y")}function Eb(){var a=ob();return ci?a.isInner?"1.2em":"-2.2em":a.isInner?"-0.5em":30+Ib("y2")}function Fb(){return vb(!ci,mb())}function Gb(){return vb(ci,nb())}function Hb(){return vb(ci,ob())}function Ib(a){var b,c,d,e=0;return yk&&(b=Vc(ng.data.targets),"y"===a?(c=eh.copy().domain(cc(b,"y")),d=cb(c,gk,Bi,Di)):"y2"===a?(c=fh.copy().domain(cc(b,"y2")),d=cb(c,hk,Ki,Mi)):(c=dh.copy().domain(gc(b)),d=bb(c,fk,eb(),ni?ni:jh.tickValues())),Ak.append("g").call(d).each(function(){mg.select(this).selectAll("text").each(function(){var a=this.getBoundingClientRect();e=e?sk:e}function Jb(a){var b=Ak.select("."+g.axisX+" ."+g.axisXLabel),c=Ak.select("."+g.axisY+" ."+g.axisYLabel),d=Ak.select("."+g.axisY2+" ."+g.axisY2Label);(a?b.transition():b).attr("x",wb).attr("dx",zb).attr("dy",Cb).text(qb),(a?c.transition():c).attr("x",xb).attr("dx",Ab).attr("dy",Db).attr("dy",Db).text(rb),(a?d.transition():d).attr("x",yb).attr("dx",Bb).attr("dy",Eb).text(sb)}function Kb(a){var b=!1;if(Wg(Vc(ng.data.targets)).forEach(function(c){b||c.data.id!==a.data.id||(b=!0,a=c)}),isNaN(a.endAngle)&&(a.endAngle=a.startAngle),Ee(a.data)){var c=lj,d=mj,e=Math.abs(c)+d,f=Math.PI/e;a.startAngle=-1*(Math.PI/2)+f*Math.abs(c),a.endAngle=a.startAngle+f*(a.value>d?d:a.value)}return b?a:null}function Lb(){var a=mg.svg.arc().outerRadius(Og).innerRadius(Qg),b=function(b,c){var d;return c?a(b):(d=Kb(b),d?a(d):"M 0 0")};return b.centroid=a.centroid,b}function Mb(a){var b=mg.svg.arc().outerRadius(Pg*(a?a:1)).innerRadius(Qg);return function(a){var c=Kb(a);return c?b(c):"M 0 0"}}function Nb(a,b,c){return c||Ge(a.data)?Tg(a,b):"M 0 0"}function Ob(a){var b,c,d,e,f,g=Kb(a),h="";return g&&!ue(ng.data.targets)&&(b=Tg.centroid(g),c=isNaN(b[0])?0:b[0],d=isNaN(b[1])?0:b[1],e=Math.sqrt(c*c+d*d),f=Og&&e?(36/Og>.375?1.175-36/Og:.8)*Og/e:0,h="translate("+c*f+","+d*f+")"),h}function Pb(a){var b=ue(ng.data.targets)?Math.PI:2*Math.PI;return a?(a.endAngle-a.startAngle)/b:null}function Qb(a){return Ac({id:a.data.id,value:a.value,ratio:Pb(a)})}function Rb(a){var b,c,d,e;return Ub()?(b=Kb(a),c=b?b.value:null,d=Pb(b),ue(ng.data.targets)||Vb(d)?(e=Wb(),e?e(c,d):Pd(c,d)):""):""}function Sb(a,b){var c=yk.selectAll("."+g.chartArc+Cd(a)),d=yk.selectAll("."+g.arc).filter(function(b){return b.data.id!==a});Me(a)&&c.selectAll("path").transition().duration(50).attr("d",Ug).transition().duration(100).attr("d",Vg).each(function(a){Fe(a.data)}),b||d.style("opacity",.3)}function Tb(a){var b=yk.selectAll("."+g.chartArc+Cd(a));b.selectAll("path."+g.arc).transition().duration(50).attr("d",Tg),yk.selectAll("."+g.arc).style("opacity",1)}function Ub(){var a=!0;return ve(ng.data.targets)?a=sj:te(ng.data.targets)&&(a=aj),a}function Vb(a){var b=ve(ng.data.targets)?uj:cj;return a>=b}function Wb(){var a=bj;return ue(ng.data.targets)?a=jj:ve(ng.data.targets)&&(a=tj),a}function Xb(){return ve(ng.data.targets)?xj:""}function Yb(){var a=fj;return ue(ng.data.targets)?a=nj:ve(ng.data.targets)&&(a=yj),"function"==typeof a?a:function(){}}function Zb(){var a=gj;return ue(ng.data.targets)?a=oj:ve(ng.data.targets)&&(a=zj),"function"==typeof a?a:function(){}}function $b(){var a=hj;return ue(ng.data.targets)?a=pj:ve(ng.data.targets)&&(a=Aj),"function"==typeof a?a:function(){}}function _b(a,c,d,e){var f="ratio"===a.unit?e:1;return b(a[c])?a[c]*f:d}function ac(a){var b,c,d,e,f,g,h=Qc(a),i=ad(a);if(th.length>0)for(g=cd(a),b=0;b=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;c0||(i[d][b]+=+a)});return mg.min(Object.keys(i).map(function(a){return mg.min(i[a])}))}function bc(a){var b,c,d,e,f,g,h=Qc(a),i=ad(a);if(th.length>0)for(g=dd(a),b=0;b=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+a||(i[d][b]+=+a)});return mg.max(Object.keys(i).map(function(a){return mg.max(i[a])}))}function cc(a,c){var d,e,f,g,h,i,j,k,l,m,n=a.filter(function(a){return db(a.id)===c}),o="y2"===c?Gi:xi,p="y2"===c?Fi:wi,q=b(o)?o:ac(n),r=b(p)?p:bc(n),s="y2"===c?Hi:yi,t=Jd()&&ci,u=Jd()&&!ci;return 0===n.length?"y2"===c?fh.domain():eh.domain():(q===r&&(0>q?r=0:q=0),l=q>=0&&r>=0,m=0>=q&&0>=r,(re(n)||qe(n))&&(l&&(q=0),m&&(r=0)),d=Math.abs(r-q),e=f=g=.1*d,s&&(h=Math.max(Math.abs(q),Math.abs(r)),r=h-s,q=s-h),t?(i=Kd(q,r,c,"width"),j=ic(eh.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]))):u&&(i=Kd(q,r,c,"height"),f+=i[1],g+=i[0]),"y"===c&&Ci&&(f=_b(Ci,"top",e,d),g=_b(Ci,"bottom",e,d)),"y2"===c&&Li&&(f=_b(Li,"top",e,d),g=_b(Li,"bottom",e,d)),(re(n)||qe(n))&&(l&&(g=q),m&&(f=-r)),[q-g,r+f])}function dc(a){return qi?Rj?Pe(qi):qi:mg.min(a,function(a){return mg.min(a.values,function(a){return a.x})})}function ec(a){return pi?Rj?Pe(pi):pi:mg.max(a,function(a){return mg.max(a.values,function(a){return a.x})})}function fc(a){var c,d,e,f,g=Pc(a),h=g[1]-g[0];return Sj?d=0:re(a)?(c=Nc(),d=c>1?h/(c-1)/2:.5):d=.01*h,"object"==typeof ri&&Ue(ri)?(e=b(ri.left)?ri.left:d,f=b(ri.right)?ri.right:d):e=f="number"==typeof ri?ri:d,{left:e,right:f}}function gc(a){var b=[dc(a),ec(a)],c=b[0],d=b[1],e=fc(a),f=0,g=0;return c-d!==0||Sj||(c=Rj?new Date(.5*c.getTime()):-.5,d=Rj?new Date(1.5*d.getTime()):.5),(c||0===c)&&(f=Rj?new Date(c.getTime()-e.left):c-e.left),(d||0===d)&&(g=Rj?new Date(d.getTime()+e.right):d+e.right),[f,g]}function hc(a,b,c,d){return c&&(dh.domain(d?d:mg.extent(gc(a))),Fk=dh.domain(),wg&&xk.scale(dh).updateScaleExtent(),gh.domain(dh.domain()),wk.scale(gh)),b&&(dh.domain(d?d:wk.empty()?Fk:wk.extent()),wg&&xk.scale(dh).updateScaleExtent()),dh.domain()}function ic(a){return a[1]-a[0]}function jc(a){for(var b=0;bb?0:b-c}function pc(a){var b,c=nc(a),d="y"===a.axis?eh:fh;return b="y"===a.axis||"y2"===a.axis?ci?Kg:"start"in a?d(a.start):Kg:ci?"end"in a?dh(Rj?Pe(a.end):a.end):Kg:Kg,c>b?0:b-c}function qc(a){return!a.axis||"x"===a.axis}function rc(a){return nh&&a===nh||Ue(oh)&&Ve(oh,a)}function sc(a){return!rc(a)}function tc(a){return nh?nh:Ue(oh)?oh[a]:null}function uc(a,b){var c,d=b&&Ue(b)?Qc(b):[];return d.forEach(function(b){tc(b)===a&&(c=ng.data.xs[b])}),c}function vc(a,c){return a in ng.data.xs&&ng.data.xs[a]&&b(ng.data.xs[a][c])?ng.data.xs[a][c]:c}function wc(){var a=Object.keys(ng.data.xs);return a.length?ng.data.xs[a[0]]:null}function xc(a){var b=wc();return b&&a=0?ng.data.xs[d]=(c&&ng.data.xs[d]?ng.data.xs[d]:[]).concat(a.map(function(a){return a[e]}).filter(b).map(function(a,b){return Ec(a,d,b)})):nh?ng.data.xs[d]=wc():Ue(oh)&&(ng.data.xs[d]=uc(e,ng.data.targets)):ng.data.xs[d]=a.map(function(a,b){return b})}),e.forEach(function(a){if(!ng.data.xs[a])throw new Error('x is not defined for id = "'+a+'".')}),d=e.map(function(b,c){var d=qh(b);return{id:d,id_org:b,values:a.map(function(a,e){var f=tc(b),g=a[f],h=Ec(g,b,e);return Tj()&&Sj&&0===c&&g&&(0===e&&(gi=[]),gi.push(g)),("undefined"==typeof a[b]||ng.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})}}),d.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++}),ng.data.xs[a.id].sort(function(a,b){return a-b})}),vh&&oe(Qc(d).filter(function(a){return!(a in wh)}),vh),d.forEach(function(a){kc(a.id_org,a)}),d}function Kc(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 Lc(a){var b=Bc(ng.data.targets[0].values,a-1);return b?b.x:null}function Mc(a){var b=Bc(ng.data.targets[0].values,a+1);return b?b.x:null}function Nc(){return mg.max(ng.data.targets,function(a){return a.values.length})}function Oc(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 Pc(a){var b,c,d=Oc(a);return d?(b=d.values[0],c=d.values[d.values.length-1],[b.x,c.x]):[0,0]}function Qc(a){return a.map(function(a){return a.id})}function Rc(a){return a?"string"==typeof a?[a]:a:Qc(ng.data.targets)}function Sc(a,b){var c,d=Qc(a);for(c=0;c2){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(Rj?new Date(i):i);j.push(e)}return Rj||(j=j.sort(function(a,b){return a-b})),j}function Yc(a){ck=ck.concat(a)}function Zc(a){ck=ck.filter(function(b){return a.indexOf(b)<0})}function $c(a){dk=dk.concat(a)}function _c(a){dk=dk.filter(function(b){return a.indexOf(b)<0})}function ad(a){var b={};return a.forEach(function(a){b[a.id]=[],a.values.forEach(function(c){b[a.id].push(c.value)})}),b}function bd(a,b){var c,d,e,f=Object.keys(a);for(c=0;ca})}function dd(a){return bd(a,function(a){return a>0})}function ed(a){return a=0&&d===a[c].x;c--)e.push(a[c]);for(c=b;c0?g=h:f=h,g-f===1||0===f&&0===g?(e=[],(a[f].x||0===a[f].x)&&(e=e.concat(Vd(a,f))),(a[g].x||0===a[g].x)&&(e=e.concat(Vd(a,g))),Yd(e,b)):Wd(a,b,f,g)}function Xd(a,b){var c;return c=a.map(function(a){return Wd(a.values,b)}),Yd(c,b)}function Yd(a,b){var c,d;return a.forEach(function(a){var e=We(a,b);(c>e||!c)&&(c=e,d=a)}),d}function Zd(a,b){return mg.merge(a.map(function(a){return a.values})).filter(function(a){return a.x-b===0})}function $d(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 _d(){return yh&&"desc"===yh.toLowerCase()}function ae(){return yh&&"asc"===yh.toLowerCase()}function be(a){var b=ae(),c=_d();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 yh&&a.sort(yh),a}function ce(a,c){var d,e,f,g,h,i,j,k=we(ng.data.targets),l=a.filter(function(a){return a&&b(a.value)});0!==l.length&&Cj&&(Dk.html(Hj(a,eb(),Ld(k),$j)).style("display","block"),d=Dk.property("offsetWidth"),e=Dk.property("offsetHeight"),k?(g=Ig/2+c[0],i=Kg/2+c[1]+20):(ci?(f=s(),g=f+c[0]+100,h=g+d,j=t()-y(),i=dh(l[0].x)+20):(f=s(),g=f+x()+dh(l[0].x)+20,h=g+d,j=f+t()-y(),i=c[1]+15),h>j&&(g-=h-j),i+e>u()&&(i-=e+30)),Dk.style("top",i+"px").style("left",g+"px"))}function de(){Dk.style("display","none")}function ee(a){var c=a.filter(function(a){return a&&b(a.value)});if(Cj&&!se(ng.data.targets)&&!we(ng.data.targets)){var d=Ak.selectAll("line."+g.xgridFocus);d.style("visibility","visible").data([c[0]]).attr(ci?"y1":"x1",Rd).attr(ci?"y2":"x2",Rd),Pf(d,"grid")}}function fe(){Ak.select("line."+g.xgridFocus).style("visibility","hidden")}function ge(a,b){var c,d,e,f,h=[],i=Ak.select("."+g.axisX).selectAll(".tick").size();if("year"===a)for(c=gc(),d=c[0].getFullYear(),e=c[1].getFullYear(),f=d;e>=f;f++)h.push(new Date(f+"-01-01 00:00:00"));else h=b.ticks(10),h.length>i&&(h=h.filter(function(a){return(""+a).indexOf(".")<0}));return h}function he(a){var b,d,e={},f=0;return Vc(ng.data.targets.filter(a)).forEach(function(a){for(b=0;b=0&&(i+=g(c.values[f].value)-h)}),i}}function le(a){return a.x||0===a.x?dh(a.x):null}function me(a,b){var c=he(xe),d=Df(c);return th.length>0?d(a,b)[0][1]:_(a.id)(a.value)}function ne(a,b){return"number"==typeof $i?$i:b?2*a.tickOffset()*_i/b:0}function oe(a,b){Rc(a).forEach(function(a){Hk[a]=b===wh[a],wh[a]=b}),a||(vh=b)}function pe(a,b){var c=!1;return a.forEach(function(a){wh[a.id]===b&&(c=!0),a.id in wh||"line"!==b||(c=!0)}),c}function qe(a){return pe(a,"area")||pe(a,"area-spline")||pe(a,"area-step")}function re(a){return pe(a,"bar")}function se(a){return pe(a,"scatter")}function te(a){return"pie"===vh||pe(a,"pie")}function ue(a){return pe(a,"gauge")}function ve(a){return"donut"===vh||pe(a,"donut")}function we(a){return te(a)||ve(a)||ue(a)}function xe(a){var b="string"==typeof a?a:a.id;return!wh[b]||["line","spline","area","area-spline","step","area-step"].indexOf(wh[b])>=0}function ye(a){var b="string"==typeof a?a:a.id;return["step","area-step"].indexOf(wh[b])>=0}function ze(a){var b="string"==typeof a?a:a.id;return["spline","area-spline"].indexOf(wh[b])>=0}function Ae(a){var b="string"==typeof a?a:a.id;return["area","area-spline","area-step"].indexOf(wh[b])>=0}function Be(a){var b="string"==typeof a?a:a.id;return"bar"===wh[b]}function Ce(a){var b="string"==typeof a?a:a.id;return"scatter"===wh[b]}function De(a){var b="string"==typeof a?a:a.id;return"pie"===wh[b]}function Ee(a){var b="string"==typeof a?a:a.id;return"gauge"===wh[b]}function Fe(a){var b="string"==typeof a?a:a.id;return"donut"===wh[b]}function Ge(a){return De(a)||Fe(a)||Ee(a)}function He(a){return xe(a)?[a]:[]}function Ie(a){return Ge(a.data)?[a]:[]}function Je(a){return Be(a)?a.values:[]}function Ke(a){return xe(a)||Ce(a)?a.values:[]}function Le(a){return Be(a)||xe(a)?a.values:[]}function Me(a){return Fe(a)&&wj||Ee(a)&&kj||De(a)&&ej}function Ne(a,b,c){var d=[];return function(e){var f,g=e.id||e;return a[g]instanceof Function?f=a[g](e):a[g]?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 Oe(a,b){var c="value"===b.unit,d=b.values&&b.values.length?b.values:[],e=b.max||100;return function(b){var f,g,h=a[a.length-1];for(f=0;f0}function Ve(a,b){var c=!1;return Object.keys(a).forEach(function(d){a[d]===b&&(c=!0)}),c}function We(a,b){var c="y"===db(a.id)?eh:fh,d=ci?1:0,e=ci?0:1;return Math.pow(dh(a.x)-b[d],2)+Math.pow(c(a.value)-b[e],2)}function Xe(a,b){var c=0;a.each(function(){++c}).each("end",function(){--c||b.apply(this,arguments)})}function Ye(){var a=[],b=function(b,c){var d=setInterval(function(){var b=0;a.forEach(function(a){if(a.empty())return void(b+=1);try{a.transition()}catch(c){b+=1}}),b===a.length&&(clearInterval(d),c&&c())},10)};return b.add=function(b){a.push(b)},b}function Ze(a,b,c){return d(a[b])?a[b]:c}function $e(a){return 10*Math.ceil(a/10)}function _e(a,b){var c;return mg.select("body").selectAll(".dummy").data([a]).enter().append("text").classed(b?b:"",!0).text(a).each(function(){c=this.getBoundingClientRect()}).remove(),c}function af(a){return ze(a)?"cardinal":ye(a)?"step-after":"linear"}function bf(){return mg.selectAll([])}function cf(a,b,c){Lh(b,a.node()),Ak.select("."+g.selectedCircles+Bd(b.id)).selectAll("."+g.selectedCircle+"-"+c).data([b]).enter().append("circle").attr("class",function(){return fd(g.selectedCircle,c)}).attr("cx",ci?me:le).attr("cy",ci?le:me).attr("stroke",function(){return $j(b)}).attr("r",1.4*of(b)).transition().duration(100).attr("r",of)}function df(a,b,c){Mh(b,a.node()),Ak.select("."+g.selectedCircles+Bd(b.id)).selectAll("."+g.selectedCircle+"-"+c).transition().duration(100).attr("r",0).remove()}function ef(a,b,c,d){a?cf(b,c,d):df(b,c,d)}function ff(a,b){Lh(b,a.node()),a.transition().duration(100).style("fill",function(){return mg.rgb($j(b)).brighter(.75)})}function gf(a,b){Mh(b,a.node()),a.transition().duration(100).style("fill",function(){return $j(b)})}function hf(a,b,c,d){a?ff(b,c,d):gf(b,c,d)}function jf(a,b,c,d){hf(a,b,c.data,d)}function kf(a){return"circle"===a.nodeName?ef:mg.select(a).classed(g.bar)?hf:jf}function lf(a){return a.filter(function(a){return b(a.value)})}function mf(a){return Ui&&!ye(a)?"function"==typeof Vi?Vi(a):Vi:0}function nf(a){return Wi?Xi?Xi:1.75*mf(a):mf(a)}function of(a){return Yi?Yi:4*mf(a)}function pf(a,c){return(c?Ak.selectAll("."+g.circles+Bd(c)):Ak).selectAll("."+g.circle+(b(a)?"-"+a:""))}function qf(a,b){pf(a,b).classed(g.EXPANDED,!0).attr("r",nf)}function rf(a){pf(a).filter(function(){return mg.select(this).classed(g.EXPANDED)}).classed(g.EXPANDED,!1).attr("r",mf)}function sf(a){return Ak.selectAll("."+g.bar+(b(a)?"-"+a:""))}function tf(a){sf(a).classed(g.EXPANDED,!0)}function uf(a){sf(a).classed(g.EXPANDED,!1)}function vf(a,b){var c=mg.svg.area(),d=Bf(a,b),e=b?ab:_,f=function(a,b){return th.length>0?d(a,b)[0][1]:e(a.id)(0)},g=function(a,b){return th.length>0?d(a,b)[1][1]:e(a.id)(a.value)};return c=ci?c.x0(f).x1(g).y(Rd):c.x(Rd).y0(f).y1(g),function(a){var b,d=lf(a.values),e=0,f=0;return Ae(a)?b=c.interpolate(af(a))(d):(d[0]&&(e=dh(d[0].x),f=_(a.id)(d[0].value)),b=ci?"M "+f+" "+e:"M "+e+" "+f),b?b:"M 0 0"}}function wf(a,b){var c=mg.svg.line(),d=Df(a,b),e=b?ab:_,f=b?Ud:Rd,g=function(a,b){return th.length>0?d(a,b)[0][1]:e(a.id)(a.value)};return c=ci?c.x(g).y(f):c.x(f).y(g),Zi||(c=c.defined(function(a){return null!=a.value})),function(a){var d,f=Zi?lf(a.values):a.values,g=b?g:gh,h=e(a.id),i=0,j=0;return xe(a)?d=zh[a.id]?Ef(f,g,h,zh[a.id]):c.interpolate(af(a))(f):(f[0]&&(i=g(f[0].x),j=h(f[0].value)),d=ci?"M "+j+" "+i:"M "+i+" "+j),d?d:"M 0 0"}}function xf(a,b){var c=Cf(a,b);return function(a,b){var d=c(a,b),e=ci?1:0,f=ci?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 yf(a,b){var c=Cf(a,!1),d=b?zf:Af;return function(a,b){return d(c(a,b),a,this)}}function zf(a,b,c){var d,e,f=c.getBoundingClientRect();return ci?(e=Be(b)?4:6,d=a[2][1]+e*(b.value<0?-1:1)):d=a[0][0]+(a[2][0]-a[0][0])/2,d>Ig?Ig-f.width:d}function Af(a,b,c){var d,e=c.getBoundingClientRect();return d=ci?(a[0][0]+a[2][0]+.6*e.height)/2:a[2][1]+(b.value<0?e.height:Be(b)?-3:-6),dj||a.value<0&&j>c)&&(j=c),[[i,h],[i,j-(c-h)]]}}function Cf(a,b){var c=a.__max__+1,d=ne(jh,c),e=ie(d,c,a,!!b),f=je(!!b),g=ke(Be,a,!!b),h=b?ab:_;return function(a,b){var c=h(a.id)(0),i=g(a,b)||c,j=e(a),k=f(a);return ci&&(0k||a.value<0&&k>c)&&(k=c),[[j,i],[j,k-(c-i)],[j+d,k-(c-i)],[j+d,i]]}}function Df(a,b){var c=a.__max__+1,d=ie(0,c,a,!!b),e=je(!!b),f=ke(xe,a,!!b),g=b?ab:_;return function(a,b){var c=g(a.id)(0),h=f(a,b)||c,i=d(a),j=e(a);return ci&&(0j||a.value<0&&j>c)&&(j=c),[[i,j-(c-h)]]}}function Ef(a,b,e,f){var g,h,i,j,k,l,m,n,o,p,q,r,s=-1,t="M",u=[];if(d(f))for(g=0;g=h;h+=p)t+=i(a[g-1],a[g],h,o);s=a[g].x}return t}function Ff(){var a=wg?xk:function(){};Ak.select("."+g.zoomRect).call(a),Ak.selectAll("."+g.eventRect).call(a)}function Gf(){ci?(ek.x.call(jh),ek.subx.call(mh)):(ek.y.call(kh),ek.y2.call(lh)),p(),W(),Uf(),o(!1)}function Hf(b){var c=new MutationObserver(function(d){d.forEach(function(d){if("childList"===d.type&&d.previousSibling){c.disconnect();var e=a.setInterval(function(){b.node().parentNode&&(a.clearInterval(e),Gf(),Qf({withTransform:!0,withUpdateXDomain:!0,withUpdateOrgXDomain:!0,withTransition:!1,withTransitionForTransform:!1,withLegend:!0}),b.transition().style("opacity",1))},10)}})});c.observe(b.node(),{attributes:!0,childList:!0,characterData:!0})}function If(b){var c,d,e,f,h=!0;if(Ek=mg.select(pg),Ek.empty()&&(Ek=mg.select(document.createElement("div")).style("opacity",0),Hf(Ek),h=!1),Ek.html("").classed("c3",!0),ng.data.xs={},ng.data.targets=Jc(b),Dh&&(ng.data.targets=ng.data.targets.filter(Dh)),Ch&&Yc(Ch===!0?Qc(ng.data.targets):Ch),ue(ng.data.targets)&&(Uh=!1),p(),W(),dh.domain(mg.extent(gc(ng.data.targets))),eh.domain(cc(ng.data.targets,"y")),fh.domain(cc(ng.data.targets,"y2")),gh.domain(dh.domain()),hh.domain(eh.domain()),ih.domain(fh.domain()),Fk=dh.domain(),wk.scale(gh),wg&&xk.scale(dh),yk=Ek.append("svg").style("overflow","hidden").on("mouseenter",Ag).on("mouseleave",Bg),zk=yk.append("defs"),zk.append("clipPath").attr("id",Lj).append("rect"),zk.append("clipPath").attr("id",Mj).append("rect"),zk.append("clipPath").attr("id",Nj).append("rect"),Uf(),Ak=yk.append("g").attr("transform",jk.main),Bk=yk.append("g").attr("transform",jk.context),Ck=yk.append("g").attr("transform",jk.legend),Qh||Bk.style("visibility","hidden"),Uh||(Ck.style("visibility","hidden"),dk=Qc(ng.data.targets)),Dk=Ek.style("position","relative").append("div").style("position","absolute").style("pointer-events","none").style("z-index","10").style("display","none"),fg(Qc(ng.data.targets),{withTransform:!1,withTransitionForTransform:!1}),Ak.append("text").attr("class",g.text+" "+g.empty).attr("text-anchor","middle").attr("dominant-baseline","middle"),e=Ak.append("g").attr("clip-path",Oj).attr("class",g.grid),Ni&&e.append("g").attr("class",g.xgrids),Ti&&e.append("g").attr("class",g.xgridFocus).append("line").attr("class",g.xgridFocus),e.append("g").attr("class",g.xgridLines),Qi&&e.append("g").attr("class",g.ygrids),e.append("g").attr("class",g.ygridLines),Ak.append("g").attr("clip-path",Oj).attr("class",g.regions),Ak.append("g").attr("clip-path",Oj).attr("class",g.chart),d=Ak.select("."+g.chart).append("g").attr("class",g.eventRects).style("fill-opacity",0),Ak.select("."+g.chart).append("g").attr("class",g.chartBars),Ak.select("."+g.chart).append("g").attr("class",g.chartLines),c=Ak.select("."+g.chart).append("g").attr("class",g.chartArcs).attr("transform",jk.arc),c.append("text").attr("class",g.chartArcsTitle).style("text-anchor","middle").text(Xb()),ue(ng.data.targets)&&(c.append("path").attr("class",g.chartArcsBackground).attr("d",function(){var a={data:[{value:mj}],startAngle:-1*(Math.PI/2),endAngle:Math.PI/2};return Nb(a,!0,!0)}),c.append("text").attr("dy",".75em").attr("class",g.chartArcsGaugeUnit).style("text-anchor","middle").style("pointer-events","none").text(ij?qj:""),c.append("text").attr("dx",-1*(Qg+(Og-Qg)/2)+"px").attr("dy","1.2em").attr("class",g.chartArcsGaugeMin).style("text-anchor","middle").style("pointer-events","none").text(ij?lj:""),c.append("text").attr("dx",Qg+(Og-Qg)/2+"px").attr("dy","1.2em").attr("class",g.chartArcsGaugeMax).style("text-anchor","middle").style("pointer-events","none").text(ij?mj:"")),Ak.select("."+g.chart).append("g").attr("class",g.chartTexts),Ak.insert("rect",yg?null:"g."+g.grid).attr("class",g.zoomRect).attr("width",Ig).attr("height",Kg).style("opacity",0).style("cursor",ci?"ns-resize":"ew-resize").on("dblclick.zoom",null),ti&&wk.extent("function"!=typeof ti?ti:ti(gc())),ek.x=Ak.append("g").attr("class",g.axis+" "+g.axisX).attr("clip-path",Pj).attr("transform",jk.x).style("visibility",di?"visible":"hidden"),ek.x.append("text").attr("class",g.axisXLabel).attr("transform",ci?"rotate(-90)":"").style("text-anchor",Fb),ek.y=Ak.append("g").attr("class",g.axis+" "+g.axisY).attr("clip-path",Qj).attr("transform",jk.y).style("visibility",vi?"visible":"hidden"),ek.y.append("text").attr("class",g.axisYLabel).attr("transform",ci?"":"rotate(-90)").style("text-anchor",Gb),ek.y2=Ak.append("g").attr("class",g.axis+" "+g.axisY2).attr("transform",jk.y2).style("visibility",Ei?"visible":"hidden"),ek.y2.append("text").attr("class",g.axisY2Label).attr("transform",ci?"":"rotate(-90)").style("text-anchor",Hb),Bk.append("g").attr("clip-path",Oj).attr("class",g.chart),Bk.select("."+g.chart).append("g").attr("class",g.chartBars),Bk.select("."+g.chart).append("g").attr("class",g.chartLines),Bk.append("g").attr("clip-path",Oj).attr("class",g.brush).call(wk).selectAll("rect").attr(ci?"width":"height",ci?Jg:Lg),ek.subx=Bk.append("g").attr("class",g.axisX).attr("transform",jk.subx).attr("clip-path",ci?"":Pj),Xf(ng.data.targets),h&&(Gf(),Qf({withTransform:!0,withUpdateXDomain:!0,withUpdateOrgXDomain:!0,withTransitionForAxis:!1})),Ij){if(Rj&&"string"==typeof Jj){for(Jj=Pe(Jj),f=0;ff&&h>c&&d>i&&j>d;else{if(!n.classed(g.bar))return;m=$d(this),c=m.x,d=m.y,e=m.width,k=m.height,l=hf,q=!(c>h||f>c+e||d>j||i>d+k)}q^p&&(n.classed(g.INCLUDED,!p),n.classed(g.SELECTED,!o),l(!o,n,a,b))}))}function Nf(a){we(ng.data.targets)||Eh&&(Uj=a,Ak.select("."+g.chart).append("rect").attr("class",g.dragarea).style("opacity",.1),Vj=!0,Nh())}function Of(){we(ng.data.targets)||Eh&&(Ak.select("."+g.dragarea).transition().duration(100).style("opacity",0).remove(),Ak.selectAll("."+g.shape).classed(g.INCLUDED,!1),Vj=!1,Oh())}function Pf(a,b){"grid"===b&&a.each(function(){var a=mg.select(this),b=a.attr("x1"),c=a.attr("x2"),d=a.attr("y1"),e=a.attr("y2");a.attr({x1:Math.ceil(b),x2:Math.ceil(c),y1:Math.ceil(d),y2:Math.ceil(e)})})}function Qf(a,c){var d,e,f,h,i,j,k,l,m,n,o,p,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,R,S,T,U,V,W,X,Y,Z,$,_,ab=he(Ae),bb=he(Be),cb=he(xe),eb=we(ng.data.targets),fb=Ye(),gb=Vc(ng.data.targets);if(d=h=p=u=bf(),a=a||{},E=Ze(a,"withY",!0),F=Ze(a,"withSubchart",!0),G=Ze(a,"withTransition",!0),J=Ze(a,"withTransform",!1),K=Ze(a,"withUpdateXDomain",!1),L=Ze(a,"withUpdateOrgXDomain",!1),M=Ze(a,"withLegend",!1),H=Ze(a,"withTransitionForExit",G),I=Ze(a,"withTransitionForAxis",G),W=G?Eg:0,X=H?W:0,Y=I?W:0,c=c||Vf(Y),M&&Uh&&fg(Qc(ng.data.targets),a,c),Sj&&0===gb.length&&dh.domain([0,ek.x.selectAll(".tick").size()]),gb.length?(hc(gb,K,L),ni||!mi&&!li||(Z=Xc(Wc(gb),li),jh.tickValues(Z),mh.tickValues(Z))):(jh.tickValues([]),mh.tickValues([])),eh.domain(cc(gb,"y")),fh.domain(cc(gb,"y2")),ek.x.style("opacity",eb?0:1),ek.y.style("opacity",eb?0:1),ek.y2.style("opacity",eb?0:1),ek.subx.style("opacity",eb?0:1),c.axisX.call(jh),c.axisY.call(kh),c.axisY2.call(lh),c.axisSubX.call(mh),Jb(G),K&&gb.length)if(ji&&Z){for($=1;$=0&&mg.select(this).style("display",b%_?"none":"block")})}else yk.selectAll("."+g.axisX+" .tick text").style("display","block");!ci&&oi&&kb(ek.x,c.axisX,oi),N=vf(ab,!1),P=xf(bb),S=wf(cb,!1),U=yf(bb,!0),V=yf(bb,!1),hh.domain(eh.domain()),ih.domain(fh.domain()),Dk.style("display","none"),q(),Ak.select("text."+g.text+"."+g.empty).attr("x",Ig/2).attr("y",Kg/2).text(Ph).transition().style("opacity",gb.length?0:1),Ak.select("line."+g.xgridFocus).style("visibility","hidden"),Ni&&(e=ci?{x1:0,x2:Ig,y1:function(a){return dh(a)-B},y2:function(a){return dh(a)-B}}:{x1:function(a){return dh(a)+B},x2:function(a){return dh(a)+B},y1:Fg.top,y2:Kg},(m=function(a){f=ge(Oi,dh),B=Sj?jh.tickOffset():0,d=Ak.select("."+g.xgrids).selectAll("."+g.xgrid).data(f),d.enter().append("line").attr("class",g.xgrid),a||d.attr(e).style("opacity",function(){return+mg.select(this).attr(ci?"y1":"x1")===(ci?Kg:0)?0:1}),d.exit().remove()})()),h=Ak.select("."+g.xgridLines).selectAll("."+g.xgridLine).data(Pi),i=h.enter().append("g").attr("class",function(a){return g.xgridLine+(a.class?" "+a.class:"")}),i.append("line").style("opacity",0),i.append("text").attr("text-anchor","end").attr("transform",ci?"":"rotate(-90)").attr("dx",ci?0:-Fg.top).attr("dy",-5).style("opacity",0),h.exit().transition().duration(W).style("opacity",0).remove(),E&&Qi&&(j=Ak.select("."+g.ygrids).selectAll("."+g.ygrid).data(eh.ticks(Si)),j.enter().append("line").attr("class",g.ygrid),j.attr("x1",ci?eh:0).attr("x2",ci?eh:Ig).attr("y1",ci?0:eh).attr("y2",ci?Kg:eh),j.exit().remove(),Pf(j,"grid")),E&&(k=Ak.select("."+g.ygridLines).selectAll("."+g.ygridLine).data(Ri),l=k.enter().append("g").attr("class",function(a){return g.ygridLine+(a.class?" "+a.class:"")}),l.append("line").style("opacity",0),l.append("text").attr("text-anchor","end").attr("transform",ci?"rotate(-90)":"").attr("dx",ci?0:-Fg.top).attr("dy",-5).style("opacity",0),k.select("line").transition().duration(W).attr("x1",ci?Td:0).attr("x2",ci?Td:Ig).attr("y1",ci?0:Td).attr("y2",ci?Kg:Td).style("opacity",1),k.select("text").transition().duration(W).attr("x",ci?0:Ig).attr("y",Td).text(function(a){return a.text}).style("opacity",1),k.exit().transition().duration(W).style("opacity",0).remove()),t=Ak.select("."+g.regions).selectAll("."+g.region).data(Bj),t.enter().append("g").attr("class",ud).append("rect").style("fill-opacity",0),t.exit().transition().duration(W).style("opacity",0).remove(),r=Ak.selectAll("."+g.bars).selectAll("."+g.bar).data(Je),r.enter().append("path").attr("class",od).style("stroke",function(a){return $j(a.id)}).style("fill",function(a){return $j(a.id)}),r.style("opacity",Gd),r.exit().transition().duration(X).style("opacity",0).remove(),n=Ak.selectAll("."+g.lines).selectAll("."+g.line).data(He),n.enter().append("path").attr("class",kd).style("stroke",$j),n.style("opacity",Gd).attr("transform",null),n.exit().transition().duration(X).style("opacity",0).remove(),o=Ak.selectAll("."+g.areas).selectAll("."+g.area).data(He),o.enter().append("path").attr("class",sd).style("fill",$j).style("opacity",function(){return Gk=+mg.select(this).style("opacity"),0}),o.style("opacity",Gk),o.exit().transition().duration(X).style("opacity",0).remove(),Ui&&(p=Ak.selectAll("."+g.circles).selectAll("."+g.circle).data(Ke),p.enter().append("circle").attr("class",md).attr("r",mf).style("fill",$j),p.style("opacity",Gd),p.exit().remove()),Jd()&&(u=Ak.selectAll("."+g.texts).selectAll("."+g.text).data(Le),u.enter().append("text").attr("class",gd).attr("text-anchor",function(a){return ci?a.value<0?"end":"start":"middle"}).style("stroke","none").style("fill",$j).style("fill-opacity",0),u.text(function(a){return Qd(db(a.id))(a.value,a.id)}),u.exit().transition().duration(X).style("fill-opacity",0).remove()),s=Ak.selectAll("."+g.arcs).selectAll("."+g.arc).data(Ie),s.enter().append("path").attr("class",qd).style("fill",function(a){return $j(a.data)}).style("cursor",function(a){return Gh(a)?"pointer":null}).style("opacity",0).each(function(a){Ee(a.data)&&(a.startAngle=a.endAngle=-1*(Math.PI/2)),this._current=a}).on("mouseover",function(a,b){var c,d,e;Yj||(c=Kb(a),d=Qb(c),e=Zb(),Sb(c.data.id),bg(c.data.id,!0),e(d,b))}).on("mousemove",function(a){var b=Kb(a),c=Qb(b),d=[c];ce(d,mg.mouse(this))}).on("mouseout",function(a,b){var c,d,e;Yj||(c=Kb(a),d=Qb(c),e=$b(),Tb(c.data.id),cg(),de(),e(d,b))}).on("click",function(a,b){var c=Kb(a),d=Qb(c),e=Yb();Lf(this,a,b),e(d,b)}),s.attr("transform",function(a){return!Ee(a.data)&&J?"scale(0)":""}).style("opacity",function(a){return a===this._current?0:1}).each(function(){Yj=!0}).transition().duration(W).attrTween("d",function(a){var b,c=Kb(a);return c?(isNaN(this._current.endAngle)&&(this._current.endAngle=this._current.startAngle),b=mg.interpolate(this._current,c),this._current=b(0),function(a){return Nb(b(a),!0)}):function(){return"M 0 0"}}).attr("transform",J?"scale(1)":"").style("fill",function(a){return _j?_j(a.data.values[0].value):$j(a.data.id)}).style("opacity",1).call(Xe,function(){Yj=!1}),s.exit().transition().duration(X).style("opacity",0).remove(),Ak.selectAll("."+g.chartArc).select("text").style("opacity",0).attr("class",function(a){return Ee(a.data)?g.gaugeValue:""}).text(Rb).attr("transform",Ob).transition().duration(W).style("opacity",function(a){return Tc(a.data.id)&&Ge(a.data)?1:0}),Ak.select("."+g.chartArcsTitle).style("opacity",ve(ng.data.targets)||ue(ng.data.targets)?1:0),Qh&&(mg.event&&"zoom"===mg.event.type&&wk.extent(dh.orgDomain()).update(),F&&(!ci&&oi&&kb(ek.subx,c.axisSubX,oi),wk.empty()||wk.extent(dh.orgDomain()).update(),O=vf(ab,!0),R=xf(bb,!0),T=wf(cb,!0),x=Bk.selectAll("."+g.bars).selectAll("."+g.bar).data(Je),x.enter().append("path").attr("class",od).style("stroke","none").style("fill",$j),x.style("opacity",Gd).transition().duration(W).attr("d",R).style("opacity",1),x.exit().transition().duration(W).style("opacity",0).remove(),v=Bk.selectAll("."+g.lines).selectAll("."+g.line).data(He),v.enter().append("path").attr("class",kd).style("stroke",$j),v.style("opacity",Gd).transition().duration(W).attr("d",T).style("opacity",1),v.exit().transition().duration(W).style("opacity",0).remove(),w=Bk.selectAll("."+g.areas).selectAll("."+g.area).data(He),w.enter().append("path").attr("class",sd).style("fill",$j).style("opacity",function(){return Gk=+mg.select(this).style("opacity"),0}),w.style("opacity",0).transition().duration(W).attr("d",O).style("fill",$j).style("opacity",Gk),w.exit().transition().duration(X).style("opacity",0).remove())),Ak.selectAll("."+g.selectedCircles).filter(function(a){return Be(a)}).selectAll("circle").remove(),zg&&(y=Ak.select("."+g.eventRects).style("cursor",wg?ci?"ns-resize":"ew-resize":null),Ue(oh)&&!zc(oh)?(y.classed(g.eventRectsMultiple)||y.classed(g.eventRectsMultiple,!0).classed(g.eventRectsSingle,!1).selectAll("."+g.eventRect).remove(),z=Ak.select("."+g.eventRects).selectAll("."+g.eventRect).data([0]),Kf(z.enter()),z.attr("x",0).attr("y",0).attr("width",Ig).attr("height",Kg)):(y.classed(g.eventRectsSingle)||y.classed(g.eventRectsMultiple,!1).classed(g.eventRectsSingle,!0).selectAll("."+g.eventRect).remove(),!Tj()&&!Rj||Sj?(D=Q(),C=function(a){return dh(a.x)-D/2}):(D=function(a){var b=Lc(a.index),c=Mc(a.index),d=ng.data.xs[a.id][a.index],e=(dh(c?c:d)-dh(b?b:d))/2;return 0>e?0:e},C=function(a){var b=Lc(a.index),c=ng.data.xs[a.id][a.index];return(dh(c)+dh(b?b:c))/2}),A=Oc(ng.data.targets),Ak.select("."+g.eventRects).datum(A?A.values:[]),z=Ak.select("."+g.eventRects).selectAll("."+g.eventRect).data(function(a){return a}),Jf(z.enter()),z.attr("class",vd).attr("x",ci?0:C).attr("y",ci?C:0).attr("width",ci?Ig:D).attr("height",ci?D:Kg),z.exit().remove())),mg.transition().duration(W).each(function(){fb.add(r.transition().attr("d",P).style("fill",$j).style("opacity",1)),fb.add(n.transition().attr("d",S).style("stroke",$j).style("opacity",1)),fb.add(o.transition().attr("d",N).style("fill",$j).style("opacity",Gk)),fb.add(p.transition().style("opacity",Hd).style("fill",$j).attr("cx",ci?me:le).attr("cy",ci?le:me)),fb.add(Ak.selectAll("."+g.selectedCircle).transition().attr("cx",ci?me:le).attr("cy",ci?le:me)),fb.add(u.transition().attr("x",U).attr("y",V).style("fill",$j).style("fill-opacity",a.flow?0:Id)),fb.add(t.selectAll("rect").transition().attr("x",mc).attr("y",nc).attr("width",oc).attr("height",pc).style("fill-opacity",function(a){return b(a.opacity)?a.opacity:.1})),fb.add(h.select("line").transition().attr("x1",ci?0:Sd).attr("x2",ci?Ig:Sd).attr("y1",ci?Sd:Fg.top).attr("y2",ci?Sd:Kg).style("opacity",1)),fb.add(h.select("text").transition().attr("x",ci?Ig:0).attr("y",Sd).text(function(a){return a.text}).style("opacity",1))}).call(fb,a.flow?function(){var b,c,f,i=1,j=a.flow.index,k=a.flow.length,l=Bc(ng.data.targets[0].values,j),q=Bc(ng.data.targets[0].values,j+k),s=dh.domain(),v=a.flow.duration||W,w=a.flow.done||function(){},x=Ye();ng.data.targets.forEach(function(a){a.values.splice(0,k)}),f=hc(gb,!0,!0),m&&m(!0),a.flow.orgDataCount?b=1===a.flow.orgDataCount||l.x===q.x?dh(s[0])-dh(f[0]):Rj?dh(s[0])-dh(f[0]):dh(l.x)-dh(q.x):1!==ng.data.targets[0].values.length?b=dh(s[0])-dh(f[0]):Rj?(l=Bc(ng.data.targets[0].values,0),q=Bc(ng.data.targets[0].values,ng.data.targets[0].values.length-1),b=dh(l.x)-dh(q.x)):b=ic(f)/2,i=ic(s)/ic(f),c="translate("+b+",0) scale("+i+",1)",mg.transition().ease("linear").duration(v).each(function(){x.add(ek.x.transition().call(jh)),x.add(r.transition().attr("transform",c)),x.add(n.transition().attr("transform",c)),x.add(o.transition().attr("transform",c)),x.add(p.transition().attr("transform",c)),x.add(u.transition().attr("transform",c)),x.add(t.filter(qc).transition().attr("transform",c)),x.add(d.transition().attr("transform",c)),x.add(h.transition().attr("transform",c))}).call(x,function(){var a,b=[],c=[],f=[];if(k){for(a=0;k>a;a++)b.push("."+g.shape+"-"+(j+a)),c.push("."+g.text+"-"+(j+a)),f.push("."+g.eventRect+"-"+(j+a));yk.selectAll("."+g.shapes).selectAll(b).remove(),yk.selectAll("."+g.texts).selectAll(c).remove(),yk.selectAll("."+g.eventRects).selectAll(f).remove(),yk.select("."+g.xgrid).remove()}d.attr("transform",null).attr(e),h.attr("transform",null),h.select("line").attr("x1",ci?0:Sd).attr("x2",ci?Ig:Sd),h.select("text").attr("x",ci?Ig:0).attr("y",Sd),r.attr("transform",null).attr("d",P),n.attr("transform",null).attr("d",S),o.attr("transform",null).attr("d",N),p.attr("transform",null).attr("cx",ci?me:le).attr("cy",ci?le:me),u.attr("transform",null).attr("x",U).attr("y",V).style("fill-opacity",Id),t.attr("transform",null),t.select("rect").filter(qc).attr("x",mc).attr("width",oc),z.attr("x",ci?0:C).attr("y",ci?C:0).attr("width",ci?Ig:D).attr("height",ci?D:Kg),w()})}:null),Qc(ng.data.targets).forEach(function(a){Hk[a]=!0}),Ff()}function Rf(){Qf({withTransition:!1,withY:!1,withSubchart:!1,withUpdateXDomain:!0})}function Sf(){if(wg&&0!==Vc(ng.data.targets).length){if("mousemove"===mg.event.sourceEvent.type&&xk.altDomain)return dh.domain(xk.altDomain),void xk.scale(dh).updateScaleExtent();Sj&&dh.orgDomain()[0]===Fk[0]&&dh.domain([Fk[0]-1e-10,dh.orgDomain()[1]]),Qf({withTransition:!1,withY:!1,withSubchart:!1}),"mousemove"===mg.event.sourceEvent.type&&(Wj=!0)}}function Tf(){function a(){b.forEach(function(a){a()})}var b=[];return a.add=function(a){b.push(a)},a}function Uf(){yk.attr("width",Mg).attr("height",Ng),yk.select("#"+Lj).select("rect").attr("width",Ig).attr("height",Kg),yk.select("#"+Mj).select("rect").attr("x",G).attr("y",H).attr("width",M).attr("height",N),yk.select("#"+Nj).select("rect").attr("x",I).attr("y",J).attr("width",O).attr("height",P),yk.select("."+g.zoomRect).attr("width",Ig).attr("height",Kg),Ek.style("max-height",Ng+"px")}function Vf(a){return{axisX:a?ek.x.transition().duration(a):ek.x,axisY:a?ek.y.transition().duration(a):ek.y,axisY2:a?ek.y2.transition().duration(a):ek.y2,axisSubX:a?ek.subx.transition().duration(a):ek.subx}}function Wf(a){var b;a=a||{},a.withTransition=Ze(a,"withTransition",!0),a.withTransform=Ze(a,"withTransform",!1),a.withLegend=Ze(a,"withLegend",!1),a.withUpdateXDomain=!0,a.withUpdateOrgXDomain=!0,a.withTransitionForExit=!1,p(),a.withLegend&&Uh||(b=Vf(a.withTransitionForAxis?Eg:0),W(),Uf(),o(a.withTransition,b)),Qf(a,b)}function Xf(a){var b,c,d,e,f,h,i,j,k,l,m,n;i=Ak.select("."+g.chartTexts).selectAll("."+g.chartText).data(a).attr("class",xd),j=i.enter().append("g").attr("class",xd).style("opacity",0).style("pointer-events","none"),j.append("g").attr("class",hd),e=Ak.select("."+g.chartBars).selectAll("."+g.chartBar).data(a).attr("class",zd),d=e.enter().append("g").attr("class",zd).style("opacity",0).style("pointer-events","none"),d.append("g").attr("class",pd).style("cursor",function(a){return Gh(a)?"pointer":null}),c=Ak.select("."+g.chartLines).selectAll("."+g.chartLine).data(a).attr("class",yd),b=c.enter().append("g").attr("class",yd).style("opacity",0).style("pointer-events","none"),b.append("g").attr("class",ld),b.append("g").attr("class",td),b.append("g").attr("class",function(a){return fd(g.selectedCircles,a.id)}),b.append("g").attr("class",nd).style("cursor",function(a){return Gh(a)?"pointer":null}),a.forEach(function(a){Ak.selectAll("."+g.selectedCircles+Bd(a.id)).selectAll("."+g.selectedCircle).each(function(b){b.value=a.values[b.index].value})}),h=Ak.select("."+g.chartArcs).selectAll("."+g.chartArc).data(Wg(a)).attr("class",Ad),f=h.enter().append("g").attr("class",Ad),f.append("g").attr("class",rd),f.append("text").attr("dy",ue(ng.data.targets)?"-0.35em":".35em").style("opacity",0).style("text-anchor","middle").style("pointer-events","none"),Qh&&(n=Bk.select("."+g.chartBars).selectAll("."+g.chartBar).data(a).attr("class",zd),m=n.enter().append("g").style("opacity",0).attr("class",zd),m.append("g").attr("class",pd),l=Bk.select("."+g.chartLines).selectAll("."+g.chartLine).data(a).attr("class",yd),k=l.enter().append("g").style("opacity",0).attr("class",yd),k.append("g").attr("class",ld),k.append("g").attr("class",td)),yk.selectAll("."+g.target).filter(function(a){return Tc(a.id)}).transition().duration(Eg).style("opacity",1)}function Yf(a,b){b.filter&&(a=a.filter(b.filter)),(b.type||b.types)&&a.forEach(function(a){b.types?oe(a.id,b.types[a.id]):oe(a.id,b.type)}),ng.data.targets.forEach(function(b){for(var c=0;cf&&(f=(m-l)/2,z=0,F++)),E[a]=F,D[F]=lk?10:f,A[a]=z,z+=l}var f,h,i=_e(b.textContent,g.legendItem),j=10*Math.ceil((i.width+v)/10),k=10*Math.ceil((i.height+u)/10),l=kk||lk?k:j,m=kk||lk?V():U();return d&&(z=0,F=0,w=0,x=0),Uh&&!Uc(c)?void(B[c]=C[c]=E[c]=A[c]=0):(B[c]=j,C[c]=k,(!w||j>=w)&&(w=j),(!x||k>=x)&&(x=k),h=kk||lk?x:w,void(bi?(Object.keys(B).forEach(function(a){B[a]=w}),Object.keys(C).forEach(function(a){C[a]=x}),f=(m-h*a.length)/2,y>f?(z=0,F=0,a.forEach(function(a){e(a)})):e(c,!0)):e(c)))}var f,h,i,j,k,l,m,n,q,r,s,t,u=4,v=36,w=0,x=0,y=10,z=0,A={},B={},C={},D=[0],E={},F=0,G=Ck.selectAll("."+g.legendItemFocused).size();b=b||{},n=Ze(b,"withTransition",!0),q=Ze(b,"withTransitionForTransform",!0),kk?(f=function(a){return w*E[a]},j=function(a){return D[E[a]]+A[a]}):lk?(f=function(a){return w*E[a]+10},j=function(a){return D[E[a]]+A[a]}):(f=function(a){return D[E[a]]+A[a]},j=function(a){return x*E[a]}),h=function(a,b){return f(a,b)+14},k=function(a,b){return j(a,b)+9},i=function(a,b){return f(a,b)-4},l=function(a,b){return j(a,b)-7},m=Ck.selectAll("."+g.legendItem).data(a).enter().append("g").attr("class",function(a){return fd(g.legendItem,a)}).style("visibility",function(a){return Uc(a)?"visible":"hidden"}).style("cursor","pointer").on("click",function(a){"function"==typeof $h?$h(a):ng.toggle(a)}).on("mouseover",function(a){mg.select(this).classed(g.legendItemFocused,!0),Yj||ng.focus(a),"function"==typeof _h&&_h(a)}).on("mouseout",function(a){mg.select(this).classed(g.legendItemFocused,!1),Yj||ng.revert(),"function"==typeof ai&&ai(a)}),m.append("text").text(function(a){return d(rh[a])?rh[a]:a}).each(function(a,b){e(this,a,0===b)}).style("pointer-events","none").attr("x",kk||lk?h:-200).attr("y",kk||lk?-200:k),m.append("rect").attr("class",g.legendItemEvent).style("fill-opacity",0).attr("x",kk||lk?i:-200).attr("y",kk||lk?-200:l),m.append("rect").attr("class",g.legendItemTile).style("pointer-events","none").style("fill",$j).attr("x",kk||lk?h:-200).attr("y",kk||lk?-200:j).attr("width",10).attr("height",10),lk&&0!==w&&Ck.insert("g","."+g.legendItem).attr("class",g.legendBackground).append("rect").attr("height",V()-10).attr("width",w*(F+1)+10),r=Ck.selectAll("text").data(a).text(function(a){return d(rh[a])?rh[a]:a}).each(function(a,b){e(this,a,0===b)}),(n?r.transition():r).attr("x",h).attr("y",k),s=Ck.selectAll("rect."+g.legendItemEvent).data(a),(n?s.transition():s).attr("width",function(a){return B[a]}).attr("height",function(a){return C[a]}).attr("x",i).attr("y",l),t=Ck.selectAll("rect."+g.legendItemTile).data(a),(n?t.transition():t).style("fill",$j).attr("x",f).attr("y",j),Ck.selectAll("."+g.legendItem).classed(g.legendItemHidden,function(a){return!Tc(a)}).transition().style("opacity",function(a){var b=mg.select(this);return Tc(a)?!G||b.classed(g.legendItemFocused)?_f(b):ag(b):rk}),S(w),T(x),R(F),p(),W(),Uf(),o(q,c)}function gg(a){return Sc(ng.data.targets,a.id)}function hg(a){return"data"in a&&Sc(ng.data.targets,a.data.id)}function ig(a){return a?function(b){var c=!1;return[].concat(a).forEach(function(d){("value"in d&&b.value===a.value||"class"in d&&b.class===a.class)&&(c=!0)}),c}:function(){return!0}}function jg(a,b){var c=ig(a),d=function(a){return!c(a)},e=b?g.xgridLines:g.ygridLines,f=b?g.xgridLine:g.ygridLine;Ak.select("."+e).selectAll("."+f).filter(c).transition().duration(Eg).style("opacity",0).remove(),b?Pi=Pi.filter(d):Ri=Ri.filter(d)}function kg(a,b,c){var d=!we(ng.data.targets);Yj=!1,oe(a,b),Wf(c||{withTransitionForAxis:d})}function lg(a){var b=a.mimeType?a.mimeType:"csv";mg.xhr(a.url,function(c,d){var e;e="json"===b?Gc(JSON.parse(d.response),a.keys):Fc(d.response),If(e)})}var mg=a.d3?a.d3:"undefined"!=typeof require?require("d3"):void 0,ng={data:{},axis:{},legend:{}},og={},pg=i(["bindto"],"#chart"),qg=i(["size","width"]),rg=i(["size","height"]),sg=i(["padding","left"]),tg=i(["padding","right"]),ug=i(["padding","top"]),vg=i(["padding","bottom"]),wg=i(["zoom","enabled"],!1),xg=i(["zoom","extent"]),yg=i(["zoom","privileged"],!1),zg=i(["interaction","enabled"],!0),Ag=i(["onmouseover"],function(){}),Bg=i(["onmouseout"],function(){}),Cg=i(["onresize"],function(){}),Dg=i(["onresized"],function(){}),Eg=i(["transition","duration"],350);h("data","data is required in config");var Fg,Gg,Hg,Ig,Jg,Kg,Lg,Mg,Ng,Og,Pg,Qg,Rg,Sg,Tg,Ug,Vg,Wg,Xg,Yg,Zg,$g,_g,ah,bh,ch,dh,eh,fh,gh,hh,ih,jh,kh,lh,mh,nh=i(["data","x"]),oh=i(["data","xs"],{}),ph=i(["data","x_format"],"%Y-%m-%d"),qh=i(["data","id_converter"],function(a){return a}),rh=i(["data","names"],{}),sh=i(["data","classes"],{}),th=i(["data","groups"],[]),uh=i(["data","axes"],{}),vh=i(["data","type"]),wh=i(["data","types"],{}),xh=i(["data","labels"],{}),yh=i(["data","order"]),zh=i(["data","regions"],{}),Ah=i(["data","color"]),Bh=i(["data","colors"],{}),Ch=i(["data","hide"],!1),Dh=i(["data","filter"]),Eh=i(["data","selection","enabled"],!1),Fh=i(["data","selection","grouped"],!1),Gh=i(["data","selection","isselectable"],function(){return!0}),Hh=i(["data","selection","multiple"],!0),Ih=i(["data","onclick"],function(){}),Jh=i(["data","onmouseover"],function(){}),Kh=i(["data","onmouseout"],function(){}),Lh=i(["data","onselected"],function(){}),Mh=i(["data","onunselected"],function(){}),Nh=i(["data","ondragstart"],function(){}),Oh=i(["data","ondragend"],function(){}),Ph=i(["data","empty","label","text"],""),Qh=i(["subchart","show"],!1),Rh=i(["subchart","size","height"],60),Sh=i(["color","pattern"],[]),Th=i(["color","threshold"],{}),Uh=i(["legend","show"],!0),Vh=i(["legend","position"],"bottom"),Wh=i(["legend","inset","anchor"],"top-left"),Xh=i(["legend","inset","x"],10),Yh=i(["legend","inset","y"],0),Zh=i(["legend","inset","step"]),$h=i(["legend","item","onclick"]),_h=i(["legend","item","onmouseover"]),ai=i(["legend","item","onmouseout"]),bi=i(["legend","equally"],!1),ci=i(["axis","rotated"],!1),di=i(["axis","x","show"],!0),ei=i(["axis","x","type"],"indexed"),fi=i(["axis","x","localtime"],!0),gi=i(["axis","x","categories"],[]),hi=i(["axis","x","tick","centered"],!1),ii=i(["axis","x","tick","format"]),ji=i(["axis","x","tick","culling"],{}),ki=i(["axis","x","tick","culling","max"],10),li=i(["axis","x","tick","count"]),mi=i(["axis","x","tick","fit"],!0),ni=i(["axis","x","tick","values"],null),oi=i(["axis","x","tick","rotate"]),pi=i(["axis","x","max"],null),qi=i(["axis","x","min"],null),ri=i(["axis","x","padding"],{}),si=i(["axis","x","height"]),ti=i(["axis","x","default"]),ui=i(["axis","x","label"],{}),vi=i(["axis","y","show"],!0),wi=i(["axis","y","max"]),xi=i(["axis","y","min"]),yi=i(["axis","y","center"]),zi=i(["axis","y","label"],{}),Ai=i(["axis","y","inner"],!1),Bi=i(["axis","y","tick","format"]),Ci=i(["axis","y","padding"]),Di=i(["axis","y","ticks"],10),Ei=i(["axis","y2","show"],!1),Fi=i(["axis","y2","max"]),Gi=i(["axis","y2","min"]),Hi=i(["axis","y2","center"]),Ii=i(["axis","y2","label"],{}),Ji=i(["axis","y2","inner"],!1),Ki=i(["axis","y2","tick","format"]),Li=i(["axis","y2","padding"]),Mi=i(["axis","y2","ticks"],10),Ni=i(["grid","x","show"],!1),Oi=i(["grid","x","type"],"tick"),Pi=i(["grid","x","lines"],[]),Qi=i(["grid","y","show"],!1),Ri=i(["grid","y","lines"],[]),Si=i(["grid","y","ticks"],10),Ti=i(["grid","focus","show"],!0),Ui=i(["point","show"],!0),Vi=i(["point","r"],2.5),Wi=i(["point","focus","expand","enabled"],!0),Xi=i(["point","focus","expand","r"]),Yi=i(["point","focus","select","r"]),Zi=i(["line","connect_null"],!1),$i=i(["bar","width"]),_i=i(["bar","width","ratio"],.6),aj=i(["pie","label","show"],!0),bj=i(["pie","label","format"]),cj=i(["pie","label","threshold"],.05),dj=i(["pie","sort"],!0),ej=i(["pie","expand"],!0),fj=i(["pie","onclick"],function(){}),gj=i(["pie","onmouseover"],function(){}),hj=i(["pie","onmouseout"],function(){}),ij=i(["gauge","label","show"],!0),jj=i(["gauge","label","format"]),kj=i(["gauge","expand"],!0),lj=i(["gauge","min"],0),mj=i(["gauge","max"],100),nj=i(["gauge","onclick"],function(){}),oj=i(["gauge","onmouseover"],function(){}),pj=i(["gauge","onmouseout"],function(){}),qj=i(["gauge","units"]),rj=i(["gauge","width"]),sj=i(["donut","label","show"],!0),tj=i(["donut","label","format"]),uj=i(["donut","label","threshold"],.05),vj=i(["donut","sort"],!0),wj=i(["donut","expand"],!0),xj=i(["donut","title"],""),yj=i(["donut","onclick"],function(){}),zj=i(["donut","onmouseover"],function(){}),Aj=i(["donut","onmouseout"],function(){}),Bj=i(["regions"],[]),Cj=i(["tooltip","show"],!0),Dj=i(["tooltip","grouped"],!0),Ej=i(["tooltip","format","title"]),Fj=i(["tooltip","format","name"]),Gj=i(["tooltip","format","value"]),Hj=i(["tooltip","contents"],function(a,b,c,d){var e,f,h,i,j,k,l=Ej?Ej:b,m=Fj?Fj:function(a){return a},n=Gj?Gj:c;for(f=0;f"+(h||0===h?""+h+"":"")),j=m(a[f].name),i=n(a[f].value,a[f].ratio,a[f].id,a[f].index),k=_j?_j(a[f].value):d(a[f].id),e+="",e+=""+j+"",e+=""+i+"",e+="");return e+""}),Ij=i(["tooltip","init","show"],!1),Jj=i(["tooltip","init","x"],0),Kj=i(["tooltip","init","position"],{top:"0px",left:"50px"}),Lj="c3-"+ +new Date+"-clip",Mj=Lj+"-xaxis",Nj=Lj+"-yaxis",Oj=j(Lj),Pj=j(Mj),Qj=j(Nj),Rj="timeseries"===ei,Sj=ei.indexOf("categor")>=0,Tj=function(){return!Rj&&(nh||Ue(oh))},Uj=null,Vj=!1,Wj=!1,Xj=!1,Yj=!1,Zj=mg.scale.category10().range(),$j=Ne(Bh,Ue(Sh)?Sh:Zj,Ah),_j=Ue(Th)?Oe(Sh,Th):null,ak=fi?mg.time.format:mg.time.format.utc,bk=ak.multi([[".%L",function(a){return a.getMilliseconds()}],[":%S",function(a){return a.getSeconds()}],["%I:%M",function(a){return a.getMinutes()}],["%I %p",function(a){return a.getHours()}],["%-m/%-d",function(a){return a.getDay()&&1!==a.getDate()}],["%-m/%-d",function(a){return 1!==a.getDate()}],["%-m/%-d",function(a){return a.getMonth()}],["%Y/%-m/%-d",function(){return!0}]]),ck=[],dk=[],ek={},fk=ci?"left":"bottom",gk=ci?Ai?"top":"bottom":Ai?"right":"left",hk=ci?Ji?"bottom":"top":Ji?"left":"right",ik=ci?"left":"bottom",jk={main:function(){return"translate("+k(Fg.left)+","+k(Fg.top)+")"},context:function(){return"translate("+k(Gg.left)+","+k(Gg.top)+")"},legend:function(){return"translate("+Hg.left+","+Hg.top+")"},x:function(){return"translate(0,"+(ci?0:Kg)+")"},y:function(){return"translate(0,"+(ci?Kg:0)+")"},y2:function(){return"translate("+(ci?0:Ig)+","+(ci?1:0)+")"},subx:function(){return"translate(0,"+(ci?0:Lg)+")"},arc:function(){return"translate("+Rg/2+","+Sg/2+")"}},kk="right"===Vh,lk="inset"===Vh,mk="top-left"===Wh||"top-right"===Wh,nk="top-left"===Wh||"bottom-left"===Wh,ok=0,pk=0,qk=0,rk=.15,sk=0,tk=30,uk=ci&&!di?0:30,vk=5;Wg=mg.layout.pie().value(function(a){return a.values.reduce(function(a,b){return a+b.value},0)}),dj&&vj||Wg.sort(null);var wk,xk=function(){};wk=mg.svg.brush().on("brush",Rf),wk.update=function(){return Bk&&Bk.select("."+g.brush).call(this),this},wk.scale=function(a){return ci?this.y(a):this.x(a)},xk=mg.behavior.zoom().on("zoomstart",function(){xk.altDomain=mg.event.sourceEvent.altKey?dh.orgDomain():null}).on("zoom",Sf),xk.scale=function(a){return ci?this.y(a):this.x(a)},xk.orgScaleExtent=function(){var a=xg?xg:[1,10];return[a[0],Math.max(Nc()/a[1],a[1])]},xk.updateScaleExtent=function(){var a=ic(dh.orgDomain())/ic(Fk),b=this.orgScaleExtent();return this.scaleExtent([b[0]*a,b[1]*a]),this};var yk,zk,Ak,Bk,Ck,Dk,Ek,Fk,Gk,Hk={};if(ng.focus=function(a){function b(a){Vc(a).transition().duration(100).style("opacity",1)}var c=yk.selectAll(Cd(a)),d=c.filter(gg),e=c.filter(hg);ng.revert(),ng.defocus(),b(d.classed(g.focused,!0)),b(e),we(ng.data.targets)&&Sb(a,!0),bg(a,!0)},ng.defocus=function(a){function b(a){Vc(a).transition().duration(100).style("opacity",.3)}var c=yk.selectAll(Cd(a)),d=c.filter(gg),e=c.filter(hg);ng.revert(),b(d.classed(g.focused,!1)),b(e),we(ng.data.targets)&&Tb(a),bg(a,!1)},ng.revert=function(a){function b(a){Vc(a).transition().duration(100).style("opacity",1)}var c=yk.selectAll(Cd(a)),d=c.filter(gg),e=c.filter(hg);b(d.classed(g.focused,!1)),b(e),we(ng.data.targets)&&Tb(a),cg()},ng.show=function(a,b){a=Rc(a),b=b||{},Zc(a),yk.selectAll(Dd(a)).transition().style("opacity",1),b.withLegend&&dg(a),Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0,withLegend:!0})},ng.hide=function(a,b){a=Rc(a),b=b||{},Yc(a),yk.selectAll(Dd(a)).transition().style("opacity",0),b.withLegend&&eg(a),Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0,withLegend:!0})},ng.toggle=function(a){Tc(a)?ng.hide(a):ng.show(a)},ng.unzoom=function(){wk.clear().update(),Qf({withUpdateXDomain:!0})},ng.zoom=function(){},ng.zoom.enable=function(a){wg=a,Wf()},ng.load=function(a){return a.xs&&yc(a.xs),"classes"in a&&Object.keys(a.classes).forEach(function(b){sh[b]=a.classes[b]}),"categories"in a&&Sj&&(gi=a.categories),"cacheIds"in a&&jc(a.cacheIds)?void Yf(lc(a.cacheIds),a.done):void("unload"in a?$f(Rc("boolean"==typeof a.unload&&a.unload?null:a.unload),function(){Zf(a)}):Zf(a))},ng.unload=function(a,b){$f(Rc(a),function(){Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0,withLegend:!0}),"function"==typeof b&&b()})},ng.flow=function(a){var c,e,f,g,h,i,j=Jc(Ic(a.columns),!0),k=[],l=Nc(),m=0,n=0;ng.data.targets.forEach(function(a){var b,c,d=!1;for(b=0;bc;c++)j[b].values[c].index=n+c,Rj||(j[b].values[c].x=n+c);a.values=a.values.concat(j[b].values),j.splice(b,1);break}d||k.push(a.id)}),ng.data.targets.forEach(function(a){var b,c;for(b=0;bc;c++)a.values.push({id:a.id,index:n+c,x:Rj?xc(n+c):n+c,value:null})}),ng.data.targets.length&&j.forEach(function(a){var b,c=[];for(b=ng.data.targets[0].values[0].index;n>b;b++)c.push({id:a.id,index:b,x:Rj?xc(b):b,value:null});a.values.forEach(function(a){a.index+=n,Rj||(a.x+=n)}),a.values=c.concat(a.values)}),ng.data.targets=ng.data.targets.concat(j),c=Nc(),f=ng.data.targets[0],g=f.values[0],d(a.to)?(m=0,i=Rj?Pe(a.to):a.to,f.values.forEach(function(a){a.x1?f.values[f.values.length-1].x-g.x:g.x-gc(ng.data.targets)[0]:1,e=[g.x-h,g.x],hc(null,!0,!0,e)),Xf(ng.data.targets),Qf({flow:{index:g.index,length:m,duration:b(a.duration)?a.duration:Eg,done:a.done,orgDataCount:l},withLegend:!0,withTransition:l>1})},ng.selected=function(a){return mg.merge(Ak.selectAll("."+g.shapes+Bd(a)).selectAll("."+g.shape).filter(function(){return mg.select(this).classed(g.SELECTED)}).map(function(a){return a.map(function(a){var b=a.__data__;return b.data?b.data:b})}))},ng.select=function(a,b,c){Eh&&Ak.selectAll("."+g.shapes).selectAll("."+g.shape).each(function(e,f){var h=mg.select(this),i=e.data?e.data.id:e.id,j=kf(this),k=Fh||!a||a.indexOf(i)>=0,l=!b||b.indexOf(f)>=0,m=h.classed(g.SELECTED);h.classed(g.line)||h.classed(g.area)||(k&&l?Gh(e)&&!m&&j(!0,h.classed(g.SELECTED,!0),e,f):d(c)&&c&&m&&j(!1,h.classed(g.SELECTED,!1),e,f))})},ng.unselect=function(a,b){Eh&&Ak.selectAll("."+g.shapes).selectAll("."+g.shape).each(function(c,d){var e=mg.select(this),f=c.data?c.data.id:c.id,h=kf(this),i=Fh||!a||a.indexOf(f)>=0,j=!b||b.indexOf(d)>=0,k=e.classed(g.SELECTED);e.classed(g.line)||e.classed(g.area)||i&&j&&Gh(c)&&k&&h(!1,e.classed(g.SELECTED,!1),c,d)})},ng.transform=function(a,b){var c=["pie","donut"].indexOf(a)>=0?{withTransform:!0}:null;kg(b,a,c)},ng.groups=function(a){return c(a)?th:(th=a,Qf(),th)},ng.xgrids=function(a){return a?(Pi=a,Qf(),Pi):Pi},ng.xgrids.add=function(a){return a?ng.xgrids(Pi.concat(a)):void 0},ng.xgrids.remove=function(a){jg(a,!0)},ng.ygrids=function(a){return a?(Ri=a,Qf(),Ri):Ri},ng.ygrids.add=function(a){return a?ng.ygrids(Ri.concat(a)):void 0},ng.ygrids.remove=function(a){jg(a,!1)},ng.regions=function(a){return a?(Bj=a,Qf(),Bj):Bj},ng.regions.add=function(a){return a?(Bj=Bj.concat(a),Qf(),Bj):Bj},ng.regions.remove=function(a){var b,c,d;return a=a||{},b=Ze(a,"duration",Eg),c=Ze(a,"classes",[g.region]),d=Ak.select("."+g.regions).selectAll(c.map(function(a){return"."+a})),(b?d.transition().duration(b):d).style("opacity",0).remove(),Bj=Bj.filter(function(a){var b=!1;return a.class?(a.class.split(" ").forEach(function(a){c.indexOf(a)>=0&&(b=!0)}),!b):!0})},ng.data.get=function(a){var b=ng.data.getAsTarget(a);return d(b)?b.values.map(function(a){return a.value}):void 0},ng.data.getAsTarget=function(a){var b=ng.data.targets.filter(function(b){return b.id===a});return b.length>0?b[0]:void 0},ng.data.names=function(a){return arguments.length?(Object.keys(a).forEach(function(b){rh[b]=a[b]}),Qf({withLegend:!0}),rh):rh},ng.data.colors=function(a){return arguments.length?(Object.keys(a).forEach(function(b){Bh[b]=a[b]}),Qf({withLegend:!0}),Bh):Bh},ng.color=$j,ng.x=function(a){return arguments.length&&(Cc(ng.data.targets,a),Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0})),ng.data.xs},ng.xs=function(a){return arguments.length&&(Dc(ng.data.targets,a),Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0})),ng.data.xs},ng.axis.labels=function(a){arguments.length&&(Object.keys(a).forEach(function(b){hb(b,a[b])}),Jb())},ng.axis.max=function(a){arguments.length&&("object"==typeof a?(b(a.x)&&(pi=a.x),b(a.y)&&(wi=a.y),b(a.y2)&&(Fi=a.y2)):wi=Fi=a,Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0}))},ng.axis.min=function(a){arguments.length&&("object"==typeof a?(b(a.x)&&(qi=a.x),b(a.y)&&(xi=a.y),b(a.y2)&&(Gi=a.y2)):xi=Gi=a,Qf({withUpdateOrgXDomain:!0,withUpdateXDomain:!0}))},ng.axis.range=function(a){arguments.length&&("undefined"!=typeof a.max&&ng.axis.max(a.max),"undefined"!=typeof a.min&&ng.axis.min(a.min))},ng.legend.show=function(a){dg(Rc(a)),Wf({withLegend:!0})},ng.legend.hide=function(a){eg(Rc(a)),Wf({withLegend:!0})},ng.resize=function(a){qg=a?a.width:null,rg=a?a.height:null,ng.flush()},ng.flush=function(){Wf({withLegend:!0,withTransition:!1,withTransitionForTransform:!1})},ng.destroy=function(){ng.data.targets=void 0,ng.data.xs={},Ek.classed("c3",!1).html(""),a.onresize=null},f.data.url)lg(f.data);else if(f.data.json)If(Gc(f.data.json,f.data.keys));else if(f.data.rows)If(Hc(f.data.rows));else{if(!f.data.columns)throw Error("url or json or rows or columns is required.");If(Ic(f.data.columns))}return ng},"function"==typeof define&&define.amd?define("c3",["d3"],f):"undefined"!=typeof exports&&"undefined"!=typeof module?module.exports=f:a.c3=f}(window); \ No newline at end of file diff --git a/htdocs/samples/api_xgrid_lines.html b/htdocs/samples/api_xgrid_lines.html index 4722b02..661d111 100644 --- a/htdocs/samples/api_xgrid_lines.html +++ b/htdocs/samples/api_xgrid_lines.html @@ -8,7 +8,10 @@