UNPKG

juijs-chart

Version:

SVG-based JUI chart that can be used in the browser and Node.js. Support many types of charts. (Dashboard, Map, Topology, Full 3D)

1 lines 340 kB
!function(t){var e={};function i(r){if(e[r])return e[r].exports;var n=e[r]={i:r,l:!1,exports:{}};return t[r].call(n.exports,n,n.exports,i),n.l=!0,n.exports}i.m=t,i.c=e,i.d=function(t,e,r){i.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},i.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},i.t=function(t,e){if(1&e&&(t=i(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(i.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)i.d(r,n,function(e){return t[e]}.bind(null,n));return r},i.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return i.d(e,"a",e),e},i.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},i.p="",i(i.s=13)}([function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(t){return t&&t.__esModule?t:{default:t}}(i(14));e.default=r.default},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=a(i(0)),n=a(i(2));function a(t){return t&&t.__esModule?t:{default:t}}r.default.use(n.default),e.default={name:"chart.brush.stackbar",extend:"chart.brush.bar",component:function(){var t=r.default.include("util.base"),e=function(e,i,r){var n,a;this.addBarElement=function(t){null==this.barList&&(this.barList=[]),this.barList.push(t)},this.getBarElement=function(t,e){var i=this.getBarStyle(),r=this.color(e),n=this.getData(t)[this.brush.target[e]],a=this.chart.svg.rect({fill:r,stroke:i.borderColor,"stroke-width":i.borderWidth,"stroke-opacity":i.borderOpacity});return 0==n&&a.attr({display:"none"}),0!=n&&this.addEvent(a,t,e),a},this.setActiveEffect=function(e){for(var i=this.getBarStyle(),r=this.barList,n=this.stackTooltips,a=0;a<r.length;a++){var o=e==r[a]?1:i.disableOpacity;n&&(1==o||-1!=t.inArray(a,this.tooltipIndexes)?n[a].attr({opacity:1}):n[a].attr({opacity:0})),r[a].attr({opacity:o})}},this.setActiveEffectOption=function(){var t=this.brush.active;this.barList&&this.barList[t]&&this.setActiveEffect(this.barList[t])},this.setActiveEvent=function(t){var e=this;t.on(e.brush.activeEvent,function(i){e.setActiveEffect(t)})},this.setActiveEventOption=function(t){null!=this.brush.activeEvent&&(this.setActiveEvent(t),t.attr({cursor:"pointer"}))},this.getTargetSize=function(){var t=this.axis.y.rangeBand();if(this.brush.size>0)return this.brush.size;var e=t-2*this.brush.outerPadding;return e<this.brush.minSize?this.brush.minSize:e},this.setActiveTooltips=function(t,e){for(var i=this.brush.display,r="min"==i?t:e,n=0;n<this.stackTooltips.length;n++)n!=r&&"all"!=i||(this.stackTooltips[n].css({opacity:1}),this.tooltipIndexes.push(n))},this.drawStackTooltip=function(t,e,i,r,n,a){var o=this.chart.theme("tooltipPointFontSize"),s="middle",h=0,l=0;"left"==a?(s="start",h=3,l=o/3):"right"==a?(s="end",h=-3,l=o/3):l="top"==a?-o/3:o;var c=this.chart.text({fill:this.chart.theme("tooltipPointFontColor"),"font-size":o,"font-weight":this.chart.theme("tooltipPointFontWeight"),"text-anchor":s,dx:h,dy:l,opacity:0}).text(this.format(i)).translate(r,n);this.stackTooltips[e]=c,t.append(c)},this.drawStackEdge=function(t){for(var e=this.chart.theme("barStackEdgeBorderWidth"),i=1;i<this.edgeData.length;i++)for(var r=this.edgeData[i-1],n=this.edgeData[i],a=0;a<this.brush.target.length;a++)n[a].width>0&&n[a].height>0&&t.append(this.svg.line({x1:r[a].x+r[a].width-r[a].ex,x2:n[a].x+n[a].dx-n[a].ex,y1:r[a].y+r[a].height-r[a].ey,y2:n[a].y+n[a].dy,stroke:n[a].color,"stroke-width":e}))},this.drawBefore=function(){n=e.svg.group(),i.y.rangeBand(),a=this.getTargetSize(),this.stackTooltips=[],this.tooltipIndexes=[],this.edgeData=[]},this.draw=function(){var o=null,s=0,h=null,l=this.axis.x.max(),c=this.axis.get("x").reverse;return this.eachData(function(u,d){for(var f=e.svg.group(),g=this.offset("y",d),p=g-a/2,v=i.x(0),m=0,y=0,x=0;x<r.target.length;x++){var b=u[r.target[x]]+m,w=i.x(b),C={x:v<w?v:w,y:p,width:Math.abs(v-w),height:a},k=this.getBarElement(d,x).attr(C);this.edgeData[d]||(this.edgeData[d]={}),this.edgeData[d][x]=t.extend({color:this.color(x),dx:C.width,dy:0,ex:c?C.width:0,ey:0},C),v=w,m=b,y+=u[r.target[x]],f.append(k)}y>s&&(s=y,o=d),y<l&&(l=y,h=d),this.drawStackTooltip(f,d,y,v,g,c?"right":"left"),this.setActiveEventOption(f),this.addBarElement(f),n.append(f)}),this.brush.edge&&this.drawStackEdge(n),null!=this.brush.display&&this.setActiveTooltips(h,o),this.setActiveEffectOption(),n}};return e.setup=function(){return{outerPadding:15,edge:!1}},e}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(t){return t&&t.__esModule?t:{default:t}}(i(0));e.default={name:"chart.brush.bar",extend:"chart.brush.core",component:function(){var t=r.default.include("util.base"),e=function(){var e,i,r,n,a;this.getBarStyle=function(){return{borderColor:this.chart.theme("barBorderColor"),borderWidth:this.chart.theme("barBorderWidth"),borderOpacity:this.chart.theme("barBorderOpacity"),borderRadius:this.chart.theme("barBorderRadius"),disableOpacity:this.chart.theme("barDisableBackgroundOpacity"),circleColor:this.chart.theme("barPointBorderColor")}},this.getBarElement=function(e,i,r){var n=this.getBarStyle(),a=this.color(e,i),o=this.getData(e)[this.brush.target[i]],s=this.chart.svg.pathRect({width:r.width,height:r.height,fill:a,stroke:n.borderColor,"stroke-width":n.borderWidth,"stroke-opacity":n.borderOpacity});return 0!=o&&this.addEvent(s,e,i),null==this.barList&&(this.barList=[]),this.barList.push(t.extend({element:s,color:a},r)),s},this.setActiveEffect=function(t){for(var e=this.getBarStyle(),i=this.barList,r=0;r<i.length;r++){var n=i[r]==t?1:e.disableOpacity;i[r].element.attr({opacity:n}),i[r].minmax&&i[r].minmax.style(i[r].color,e.circleColor,n)}},this.drawBefore=function(){var t=this.brush.outerPadding,o=this.brush.innerPadding,s=this.brush.target.length;e=this.chart.svg.group(),i=this.axis.x(0),r=this.axis.y.rangeBand(),this.brush.size>0?(a=this.brush.size,n=a*s+(s-1)*o):a=(a=((n=r-2*t)-(s-1)*o)/s)<0?0:a},this.drawETC=function(e){if(t.typeCheck("array",this.barList)){var i=this,r=this.getBarStyle();this.active=this.drawTooltip(),e.append(this.active.tooltip);for(var n=0;n<this.barList.length;n++){var a=this.barList[n],o=this.brush.display;("max"==o&&a.max||"min"==o&&a.min||"all"==o)&&(a.minmax=this.drawTooltip(a.color,r.circleColor,1),a.minmax.control(a.position,a.tooltipX,a.tooltipY,this.format(a.value)),e.append(a.minmax.tooltip)),0!=a.value&&null!=this.brush.activeEvent&&function(t){i.active.style(t.color,r.circleColor,1),t.element.on(i.brush.activeEvent,function(e){i.active.style(t.color,r.circleColor,1),i.active.control(t.position,t.tooltipX,t.tooltipY,i.format(t.value)),i.setActiveEffect(t)}),t.element.attr({cursor:"pointer"})}(a)}null!=(a=this.barList[this.brush.active])&&(this.active.style(a.color,r.circleColor,1),this.active.control(a.position,a.tooltipX,a.tooltipY,this.format(a.value)),this.setActiveEffect(a))}},this.draw=function(){var t=this.getXY(),r=this.getBarStyle();return this.eachData(function(o,s){for(var h=this.offset("y",s)-n/2,l=0;l<this.brush.target.length;l++){var c=o[this.brush.target[l]],u=this.axis.x(c),d=h+a/2,f=u>=i?"right":"left";Math.abs(i-u)<this.brush.minSize&&(u="right"==f?u+this.brush.minSize:u-this.brush.minSize);var g=Math.abs(i-u),p=g<r.borderRadius||a<r.borderRadius?0:r.borderRadius,v=this.getBarElement(s,l,{width:g,height:a,value:c,tooltipX:u,tooltipY:d,position:f,max:t[l].max[s],min:t[l].min[s]});u>=i?(v.round(g,a,0,p,p,0),v.translate(i,h)):(v.round(g,a,p,0,0,p),v.translate(i-g,h)),e.append(v),h+=a+this.brush.innerPadding}}),this.drawETC(e),e},this.drawAnimate=function(t){var e=this.chart.svg,i=this.brush.animate;t.append(e.animate({attributeName:"opacity",from:"0",to:"1",begin:"0s",dur:"1.4s",repeatCount:"1",fill:"freeze"})),t.each(function(t,r){if(r.is("util.svg.element.path")){var n=r.data("translate").split(","),a=parseInt(n[0]),o=parseInt(n[1]),s=parseInt(r.attr("width")),h="right"==i?a+s:a-s;r.append(e.animateTransform({attributeName:"transform",type:"translate",from:h+" "+o,to:a+" "+o,begin:"0s",dur:"0.7s",repeatCount:"1",fill:"freeze"}))}})}};return e.setup=function(){return{size:0,minSize:0,outerPadding:2,innerPadding:1,active:null,activeEvent:null,display:null,format:null}},e}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(t){return t&&t.__esModule?t:{default:t}}(i(0));e.default={name:"chart.brush.line",extend:"chart.brush.core",component:function(){var t=r.default.include("util.base"),e=function(){var e,i,r,n,a,o;this.setActiveEffect=function(t){for(var e=this.lineList,n=0;n<e.length;n++){var a=t==e[n].element?o:r,s=e[n].element.get(0).attr("stroke");null!=e[n].tooltip&&e[n].tooltip.style(s,i,a),e[n].element.attr({opacity:a})}},this.setActiveEffects=function(){for(var e=this.lineList,n=this.brush.active,a=0;a<e.length;a++){var s=this.brush.target[a],h=r,l=e[a].element.get(0).attr("stroke");(null===n||n===s||t.typeCheck("array",n)&&n.includes(s))&&(h=o),null!=e[a].tooltip&&e[a].tooltip.style(l,i,h),e[a].element.attr({opacity:h})}},this.addLineElement=function(t){this.lineList||(this.lineList=[]),this.lineList.push(t)},this.createLine=function(e,i){var r=e.x,o=e.y,s=e.value,h="curve"==this.brush.symbol?this.curvePoints(r):null,l="curve"==this.brush.symbol?this.curvePoints(o):null,c=null,u=null,d={"stroke-width":n,"stroke-dasharray":a,fill:"transparent",cursor:null!=this.brush.activeEvent?"pointer":"normal"},f=this.svg.group(),g=null;if(e.length>0)for(var p=null,v=null,m=0;m<r.length-1;m++)if(t.typeCheck(["undefined","null"],s[m])||(p=m),t.typeCheck(["undefined","null"],s[m+1])||(v=m+1),null!=p&&null!=v&&p!=v){var y=this.color(m,i),x=this.getOpacity(m);if(c!=y||u!=x?((g=this.svg.path(t.extend({"stroke-opacity":x,stroke:y,x1:r[p]},d))).css({"pointer-events":"stroke"}),g.MoveTo(r[p],o[p]),f.append(g),c=y,u=x):g.attr({x2:r[v]}),"curve"==this.brush.symbol)g.CurveTo(h.p1[p],l.p1[p],h.p2[p],l.p2[p],r[v],o[v]);else{if("step"==this.brush.symbol){var b=r[p]+(r[v]-r[p])/2;g.LineTo(b,o[p]),g.LineTo(b,o[v])}g.LineTo(r[v],o[v])}}return f},this.createTooltip=function(t,e,r){for(var n=this.brush.display,a=0;a<e.x.length;a++)if("max"==n&&e.max[a]||"min"==n&&e.min[a]||"all"==n){var s="max"==n&&e.max[a]?"top":"bottom",h=this.lineList[r].tooltip;if("all"==n||null==h){var l=this.drawTooltip(this.color(r),i,o);l.control(s,+e.x[a],+e.y[a],this.format(e.value[a])),t.append(l.tooltip),this.lineList[r].tooltip=l}}},this.getOpacity=function(e){var i=this.brush.opacity,r=this.chart.theme("lineBorderOpacity");return t.typeCheck("function",i)&&t.typeCheck("number",e)?i.call(this.chart,this.getData(e),e):t.typeCheck("number",i)?i:r},this.drawLine=function(t){for(var i=this,r=0;r<t.length;r++){var n=this.createLine(t[r],r);this.addEvent(n,null,r),e.append(n),this.addLineElement({element:n,tooltip:null}),null!=this.brush.display&&this.createTooltip(e,t[r],r),null!=this.brush.activeEvent&&function(t){t.on(i.brush.activeEvent,function(e){i.setActiveEffect(t)})}(n)}return null!=this.brush.active&&this.setActiveEffects(),e},this.drawBefore=function(){e=this.chart.svg.group(),i=this.chart.theme("linePointBorderColor"),r=this.chart.theme("lineDisableBorderOpacity"),n=this.chart.theme("lineBorderWidth"),a=this.chart.theme("lineBorderDashArray"),o=this.getOpacity(null)},this.draw=function(){return this.drawLine(this.getXY())},this.drawAnimate=function(t){var e=this.chart.svg;t.each(function(t,i){if(i.is("util.svg.element.path")){var r=i.attributes["stroke-dasharray"],n=i.length();"none"==r?(i.attr({"stroke-dasharray":n}),i.append(e.animate({attributeName:"stroke-dashoffset",from:n,to:"0",begin:"0s",dur:"1s",repeatCount:"1"}))):i.append(e.animate({attributeName:"opacity",from:"0",to:"1",begin:"0s",dur:"1.5s",repeatCount:"1",fill:"freeze"}))}})}};return e.setup=function(){return{symbol:"normal",active:null,activeEvent:null,display:null,opacity:null}},e}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=a(i(0)),n=a(i(3));function a(t){return t&&t.__esModule?t:{default:t}}r.default.use(n.default),e.default={name:"chart.brush.area",extend:"chart.brush.line",component:function(){var t=r.default.include("util.base"),e=function(){this.drawArea=function(e){for(var i=this.chart.svg.group(),r=this.axis.y(this.brush.startZero?0:this.axis.y.min()),n=t.typeCheck("number",this.brush.opacity)?this.brush.opacity:this.chart.theme("areaBackgroundOpacity"),a=0;a<e.length;a++){for(var o=this.createLine(e[a],a).children,s=0;s<o.length;s++){var h=o[s];t.typeCheck("function",this.brush.opacity)&&(n=h.attr("stroke-opacity")),e[a].length>0&&(h.LineTo(h.attr("x2"),r),h.LineTo(h.attr("x1"),r),h.ClosePath()),h.attr({fill:h.attr("stroke"),"fill-opacity":n,"stroke-width":0}),i.prepend(h)}if(this.brush.line){h=this.createLine(e[a],a);i.prepend(h),this.addLineElement({element:h,tooltip:null}),this.brush.display&&this.createTooltip(i,e[a],a)}this.addEvent(i,null,a)}return i},this.draw=function(){return this.drawArea(this.getXY())},this.drawAnimate=function(t){t.append(this.chart.svg.animate({attributeName:"opacity",from:"0",to:"1",begin:"0s",dur:"1.5s",repeatCount:"1",fill:"freeze"}))}};return e.setup=function(){return{symbol:"normal",active:null,activeEvent:null,display:null,startZero:!0,line:!0}},e}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=a(i(0)),n=a(i(1));function a(t){return t&&t.__esModule?t:{default:t}}r.default.use(n.default),e.default={name:"chart.brush.fullstackbar",extend:"chart.brush.stackbar",component:function(){var t=r.default.include("util.base"),e=function(e,i,r){var n,a;this.drawBefore=function(){n=e.svg.group(),i.x(0),i.y.rangeBand(),a=this.getTargetSize()},this.drawText=function(e,i,r){if(0===e||isNaN(e))return null;var n=t.typeCheck("function",this.brush.showText)?this.brush.showText.call(this,e):e+"%";return this.chart.text({"font-size":this.chart.theme("barFontSize"),fill:this.chart.theme("barFontColor"),x:i,y:r,"text-anchor":"middle"},n)},this.draw=function(){return this.eachData(function(t,o){for(var s=e.svg.group(),h=this.offset("y",o)-a/2,l=0,c=[],u=0;u<r.target.length;u++){l+=g=t[r.target[u]],c.push(g)}var d=0,f=i.x.max();for(u=0;u<c.length;u++){var g=i.x.rate(c[u],l),p=this.getBarElement(o,u);if(!isNaN(g)){if(p.attr({x:d,y:h,width:g,height:a}),s.append(p),!1!==r.showText){var v=Math.round(c[u]/l*f),m=d+g/2,y=h+a/2+5,x=this.drawText(v,m,y);null!=x&&s.append(x)}this.setActiveEventOption(s),d+=g}}this.addBarElement(s),n.append(s)}),this.setActiveEffectOption(),n}};return e.setup=function(){return{outerPadding:15,showText:!1}},e}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=a(i(0)),n=a(i(1));function a(t){return t&&t.__esModule?t:{default:t}}r.default.use(n.default),e.default={name:"chart.brush.stackcolumn",extend:"chart.brush.stackbar",component:function(){var t=r.default.include("util.base");return function(e,i,r){var n,a;this.getTargetSize=function(){var t=this.axis.x.rangeBand();if(this.brush.size>0)return this.brush.size;var e=t-2*this.brush.outerPadding;return e<this.brush.minSize?this.brush.minSize:e},this.drawBefore=function(){n=e.svg.group(),i.y(0),a=this.getTargetSize(),this.stackTooltips=[],this.tooltipIndexes=[],this.edgeData=[]},this.draw=function(){var o=null,s=0,h=null,l=this.axis.y.max(),c=this.axis.get("y").reverse;return this.eachData(function(u,d){for(var f=e.svg.group(),g=this.offset("x",d),p=g-a/2,v=i.y(0),m=0,y=0,x=0;x<r.target.length;x++){var b=u[r.target[x]]+m,w=i.y(b),C={x:p,y:v>w?w:v,width:a,height:Math.abs(v-w)},k=this.getBarElement(d,x).attr(C);this.edgeData[d]||(this.edgeData[d]={}),this.edgeData[d][x]=t.extend({color:this.color(x),dx:0,dy:c?C.height:0,ex:0,ey:c?0:C.height},C),v=w,m=b,y+=u[r.target[x]],f.append(k)}y>s&&(s=y,o=d),y<l&&(l=y,h=d),this.drawStackTooltip(f,d,y,g,v,c?"bottom":"top"),this.setActiveEventOption(f),this.addBarElement(f),n.append(f)}),this.brush.edge&&this.drawStackEdge(n),null!=this.brush.display&&this.setActiveTooltips(h,o),this.setActiveEffectOption(),n}}}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(t){return t&&t.__esModule?t:{default:t}}(i(0));e.default={name:"chart.brush.scatter",extend:"chart.brush.core",component:function(){var t=r.default.include("util.base"),e=function(){this.getSymbolType=function(e,i){var r=this.brush.symbol,n=this.brush.target[e];if(t.typeCheck("function",r)){var a=r.apply(this.chart,[n,i]);return"triangle"==a||"cross"==a||"rectangle"==a||"rect"==a||"circle"==a?{type:"default",uri:a}:{type:"image",uri:a}}return{type:"default",uri:r}},this.createScatter=function(t,e,i,r){var n=this,a=null,o=this.brush.size,s=this.brush.size,h=this.color(e,i),l=this.chart.theme("scatterBorderColor"),c=this.chart.theme("scatterBorderWidth"),u=this.brush.opacity;return"image"==r.type?a=this.chart.svg.image({"xlink:href":r.uri,width:o+c,height:s+c,x:t.x-o/2-c,y:t.y-s/2}):(a="triangle"==r.uri||"cross"==r.uri?this.chart.svg.group({width:o,height:s,opacity:u},function(){"triangle"==r.uri?n.chart.svg.polygon().point(0,s).point(o,s).point(o/2,0):(n.chart.svg.line({stroke:h,"stroke-width":2*c,x1:0,y1:0,x2:o,y2:s}),n.chart.svg.line({stroke:h,"stroke-width":2*c,x1:0,y1:o,x2:s,y2:0}))}).translate(t.x-o/2,t.y-s/2):"rectangle"==r.uri||"rect"==r.uri?this.chart.svg.rect({width:o,height:s,x:t.x-o/2,y:t.y-s/2,opacity:u}):this.chart.svg.ellipse({rx:o/2,ry:s/2,cx:t.x,cy:t.y,opacity:u}),"cross"!=r.uri&&a.attr({fill:h,stroke:l,"stroke-width":c}).hover(function(){if(a!=n.activeScatter){var t={fill:n.chart.theme("scatterHoverColor"),stroke:h,"stroke-width":2*c,opacity:u};if(n.brush.hoverSync)for(var i=0;i<n.cachedSymbol[e].length;i++)t.stroke=n.color(e,i),n.cachedSymbol[e][i].attr(t);else a.attr(t)}},function(){if(a!=n.activeScatter){var t={fill:h,stroke:l,"stroke-width":c,opacity:n.brush.hide?0:u};if(n.brush.hoverSync)for(var i=0;i<n.cachedSymbol[e].length;i++)t.fill=n.color(e,i),n.cachedSymbol[e][i].attr(t);else a.attr(t)}})),a},this.drawScatter=function(e){this.cachedSymbol={};for(var i=this,r=this.chart.svg.group(),n=this.chart.theme("scatterBorderColor"),a=this.chart.theme("scatterBorderWidth"),o=this.brush.opacity,s=!1,h=0;h<e.length;h++)for(var l=0;l<e[h].length;l++)if(this.cachedSymbol[l]||(this.cachedSymbol[l]=[]),!this.brush.hideZero||0!==e[h].value[l]){var c={x:e[h].x[l],y:e[h].y[l],max:e[h].max[l],min:e[h].min[l],value:e[h].value[l]};if(!t.typeCheck(["undefined","null"],c.value)){var u=this.getSymbolType(h,c.value),d=this.createScatter(c,l,h,u),f=this.brush.display;"default"==u.type&&"cross"!=u.uri&&this.cachedSymbol[l].push(d),("max"==f&&c.max||"min"==f&&c.min||"all"==f)&&("all"!=f&&s||(r.append(this.drawTooltip(c.x,c.y,this.format(c.value))),s=!0)),null!=this.brush.activeEvent&&function(t,e,r,s){var h=e.x,l=e.y,c=i.format(e.value);t.on(i.brush.activeEvent,function(e){"default"==s.type&&"cross"!=s.uri&&(null!=i.activeScatter&&i.activeScatter.attr({fill:i.activeScatter.attributes.stroke,stroke:n,"stroke-width":a,opacity:i.brush.hide?0:o}),i.activeScatter=t,i.activeScatter.attr({fill:i.chart.theme("scatterHoverColor"),stroke:r,"stroke-width":2*a,opacity:o})),i.activeTooltip.html(c),i.activeTooltip.translate(h,l)}),t.attr({cursor:"pointer"})}(d,c,this.color(l,h),this.getSymbolType(h,c.value)),this.brush.hide&&d.attr({opacity:0}),this.addEvent(d,l,h),r.append(d)}}return this.activeTooltip=this.drawTooltip(0,0,""),r.append(this.activeTooltip),r},this.drawTooltip=function(t,e,i){return this.chart.text({y:-this.brush.size,"text-anchor":"middle",fill:this.chart.theme("tooltipPointFontColor"),"font-size":this.chart.theme("tooltipPointFontSize"),"font-weight":this.chart.theme("tooltipPointFontWeight"),opacity:this.brush.opacity},i).translate(t,e)},this.draw=function(){return this.drawScatter(this.getXY())},this.drawAnimate=function(){var t=this.chart.area();return this.chart.svg.animateTransform({attributeName:"transform",type:"translate",from:t.x+" "+t.height,to:t.x+" "+t.y,begin:"0s",dur:"0.4s",repeatCount:"1"})}};return e.setup=function(){return{symbol:"circle",size:7,hide:!1,hideZero:!1,hoverSync:!1,activeEvent:null,display:null,opacity:1,clip:!1}},e}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(t){return t&&t.__esModule?t:{default:t}}(i(0));e.default={name:"chart.brush.pie",extend:"chart.brush.core",component:function(){var t=r.default.include("util.base"),e=r.default.include("util.math"),i=r.default.include("util.color"),n=function(){var r,n=this,a=0,o=0,s=1,h={};this.setActiveEvent=function(t,i){var r=!0,n=this.chart.theme("pieDisableBackgroundOpacity")||.5;for(var a in t){if((o=t[a]).active){r=!1;break}}for(var a in t){var o;if((o=t[a]).active){var s=this.chart.theme("pieActiveDistance"),h=Math.cos(e.radian(o.centerAngle))*s,l=Math.sin(e.radian(o.centerAngle))*s;o.pie.translate(o.centerX+h,o.centerY+l)}else o.pie.translate(o.centerX,o.centerY);i&&(o.pie.children.length>0&&o.pie.get(0).attr({opacity:r||o.active?1:n}),o.text.children.length>0&&o.text.get(0).attr({opacity:r||o.active?1:n}))}},this.setActiveTextEvent=function(t){for(var i in t){var r=t[i],n=r.active?this.chart.theme("pieActiveDistance"):0,a=r.centerX+Math.cos(e.radian(r.centerAngle))*((r.outerRadius+n)/2),o=r.centerY+Math.sin(e.radian(r.centerAngle))*((r.outerRadius+n)/2);r.text.children.length>0&&r.text.get(0).translate(a,o)}},this.getFormatText=function(t,e,i){var r=t;return"function"==typeof this.brush.format?this.format(r,e,i):e?r+": "+this.format(e):r},this.drawPie=function(t,i,r,n,a,o){var s=this.chart.svg.group();if(360==a){var h=this.chart.svg.circle({cx:t,cy:i,r:r,fill:o,stroke:this.chart.theme("pieBorderColor")||o,"stroke-width":this.chart.theme("pieBorderWidth")});return s.append(h),s}var l=this.chart.svg.path({fill:o,stroke:this.chart.theme("pieBorderColor")||o,"stroke-width":this.chart.theme("pieBorderWidth")}),c=e.rotate(0,-r,e.radian(n)),u=c.x,d=c.y;return l.MoveTo(u,d),c=e.rotate(u,d,e.radian(a)),s.translate(t,i),l.Arc(r,r,0,a>180?1:0,1,c.x,c.y).LineTo(0,0).ClosePath(),s.append(l),s.order=1,s},this.drawPie3d=function(t,i,r,n,a,o){var s=this.chart.svg.group(),h=this.chart.svg.path({fill:o,stroke:this.chart.theme("pieBorderColor")||o,"stroke-width":this.chart.theme("pieBorderWidth")}),l=e.rotate(0,-r,e.radian(n)),c=l.x,u=l.y;h.MoveTo(c,u),l=e.rotate(c,u,e.radian(a)),s.translate(t,i),h.Arc(r,r,0,a>180?1:0,1,l.x,l.y);var d=l.y+10,f=l.x+5,g=c+5,p=u+10;return h.LineTo(f,d),h.Arc(r,r,0,a>180?1:0,0,g,p),h.ClosePath(),s.append(h),s.order=1,s},this.drawText=function(t,i,r,n,h){var l=this.svg.group({visibility:this.brush.showText?"visible":"hidden"}),c=r+90>180;if(""===h||!h)return l;if("inside"==this.brush.showText){var u=t+Math.cos(e.radian(r))*(n/2),d=i+Math.sin(e.radian(r))*(n/2);(h=this.chart.text({"font-size":this.chart.theme("pieInnerFontSize"),fill:this.chart.theme("pieInnerFontColor"),"text-anchor":"middle",y:3},h)).translate(u,d),l.append(h),l.order=2}else{var f=this.chart.theme("pieOuterLineRate");if(Math.abs(r-a)<2)0==o&&(o=f),o-=.05*f,s-=.25;else o=f,s=1;if(o>1.2){var g=this.chart.theme("pieOuterLineSize"),p=n*o,v=(u=t+Math.cos(e.radian(r))*n,d=i+Math.sin(e.radian(r))*n,t+Math.cos(e.radian(r))*p),m=i+Math.sin(e.radian(r))*p,y=c?v-g:v+g,x=this.svg.path({fill:"transparent",stroke:this.chart.theme("pieOuterLineColor"),"stroke-width":this.chart.theme("pieOuterLineWidth"),"stroke-opacity":s});x.MoveTo(u,d).LineTo(v,m).LineTo(y,m),(h=this.chart.text({"font-size":this.chart.theme("pieOuterFontSize"),fill:this.chart.theme("pieOuterFontColor"),"fill-opacity":s,"text-anchor":c?"end":"start",y:3},h)).translate(y+(c?-3:3),m),l.append(h),l.append(x),l.order=0,a=r}}return l},this.drawUnit=function(e,r,a){for(var o=this.getProperty(e),s=o.centerX,l=o.centerY,c=o.outerRadius,u=this.brush.target,d=this.brush.active,f=0,g=0,p=0;p<u.length;p++)g+=r[u[p]];for(p=0;p<u.length;p++)if(0!=r[u[p]]){var v=(y=r[u[p]])/g*360;if(this.brush["3d"]){var m=this.drawPie3d(s,l,c,f,v,i.darken(this.color(p),.5));a.append(m)}f+=v}f=0;for(p=0;p<u.length;p++){var y,x=f+(v=(y=r[u[p]])/g*360)/2-90,b=360==Math.abs(f-v),w=this.drawPie(s,l,c,f,v,this.color(p)),C=this.drawText(s,l,x,c,this.getFormatText(u[p],y,g));h[x]={active:!1,pie:w,text:C,centerX:s,centerY:l,centerAngle:x,outerRadius:c},b||(d==u[p]||-1!=t.inArray(u[p],d)?h[x].active=!0:h[x].active=!1,"inside"==this.brush.showText&&this.setActiveTextEvent(h),this.setActiveEvent(h,!0),null!=this.brush.activeEvent&&function(t,e,i,r,a,o){t.on(n.brush.activeEvent,function(t){h[a].active?h[a].active=!1:h[a].active=!0,"inside"==n.brush.showText&&n.setActiveTextEvent(h),n.setActiveEvent(h,!0)}),t.attr({cursor:"pointer"})}(w,C.get(0),0,0,x)),n.addEvent(w,e,p),a.append(w),a.append(C),f+=v}},this.drawNoData=function(t){var e=this.getProperty(0);t.append(this.drawPie(e.centerX,e.centerY,e.outerRadius,0,360,this.chart.theme("pieNoDataBackgroundColor")))},this.drawBefore=function(){r=this.chart.svg.group()},this.draw=function(){return 0==this.listData().length?this.drawNoData(r):this.eachData(function(t,e){this.drawUnit(e,t,r)}),r},this.getProperty=function(t){var e=this.axis.c(t),i=e.width,r=e.height,n=e.x,a=e.y,o=i;return r<o&&(o=r),{centerX:i/2+n,centerY:r/2+a,outerRadius:o/2}}};return n.setup=function(){return{clip:!1,showText:null,format:null,"3d":!1,active:null,activeEvent:null}},n}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=a(i(0)),n=a(i(8));function a(t){return t&&t.__esModule?t:{default:t}}r.default.use(n.default),e.default={name:"chart.brush.donut",extend:"chart.brush.pie",component:function(){var t=r.default.include("util.base"),e=r.default.include("util.math"),i=r.default.include("util.color"),n=function(){var r=this,n={};this.drawDonut=function(t,i,r,n,a,o,s){s["stroke-width"]=n-r,o>=360&&(o=359.9999);var h=this.chart.svg.group(),l=this.chart.svg.path(s),c=(Math.abs(n-r),e.rotate(0,-n,e.radian(a))),u=c.x,d=c.y;return l.MoveTo(u,d),c=e.rotate(u,d,e.radian(o)),h.translate(t,i),l.Arc(n,n,0,o>180?1:0,1,c.x,c.y),l.css({"pointer-events":"stroke"}),h.append(l),h.order=1,h},this.drawDonut3d=function(t,i,r,n,a,o,s){var h=this.chart.svg.group(),l=this.chart.svg.path(s),c=Math.abs(n-r);r=(n+=c/2)-c;var u=e.rotate(0,-n,e.radian(a)),d=u.x,f=u.y,g=e.rotate(0,-r,e.radian(a)),p=g.x,v=g.y;l.MoveTo(d,f),u=e.rotate(d,f,e.radian(o)),g=e.rotate(p,v,e.radian(o)),h.translate(t,i),l.Arc(n,n,0,o>180?1:0,1,u.x,u.y);var m=u.y+10,y=u.x+5,x=g.y+10,b=g.x+5,w=d+5,C=f+10,k=p+5,B=v+10;l.LineTo(y,m),l.Arc(n,n,0,o>180?1:0,0,w,C),l.ClosePath(),h.append(l);var A=this.chart.svg.path(s);return A.MoveTo(p,v),A.Arc(r,r,0,o>180?1:0,1,g.x,g.y),A.LineTo(b,x),A.Arc(r,r,0,o>180?1:0,0,k,B),A.ClosePath(),h.append(A),h.order=1,h},this.drawDonut3dBlock=function(t,i,r,n,a,o,s){var h=this.chart.svg.group(),l=this.chart.svg.path(s),c=Math.abs(n-r);r=(n+=c/2)-c;var u=e.rotate(0,-n,e.radian(a)),d=u.x,f=u.y,g=e.rotate(0,-r,e.radian(a)),p=g.x,v=g.y;l.MoveTo(d,f),u=e.rotate(d,f,e.radian(o)),g=e.rotate(p,v,e.radian(o)),h.translate(t,i);var m=u.y+10,y=u.x+5,x=g.y+10,b=g.x+5,w=this.chart.svg.path(s);return w.MoveTo(u.x,u.y).LineTo(y,m).LineTo(b,x).LineTo(g.x,g.y).ClosePath(),h.append(w),h.order=1,h},this.drawUnit=function(e,a,o){for(var s=this.getProperty(e),h=s.centerX,l=s.centerY,c=s.innerRadius,u=s.outerRadius,d=this.brush.target,f=this.brush.active,g=0,p=0,v=0,m=0;m<d.length;m++)p+=a[d[m]];if(this.brush["3d"]){for(m=0;m<d.length;m++){var y=(b=a[d[m]])/p*360,x=this.drawDonut3dBlock(h,l,c,u,g,y,{fill:i.darken(this.color(m),.5)},m==d.length-1);o.append(x),g+=y}g=0;for(m=0;m<d.length;m++){y=(b=a[d[m]])/p*360,x=this.drawDonut3d(h,l,c,u,g,y,{fill:i.darken(this.color(m),.5)},m==d.length-1);o.append(x),g+=y}}g=0;for(m=0;m<d.length;m++)if(0!=a[d[m]]){var b,w=g+(y=(b=a[d[m]])/p*360)/2-90,C=360==Math.abs(g-y),k="inside"==this.brush.showText?this.brush.size+c+u:u,B=this.drawDonut(h,l,c,u,g,y,{stroke:this.color(m),fill:"transparent"}),A=this.drawText(h,l,w,k,this.getFormatText(d[m],b));n[w]={active:!1,pie:B,text:A,centerX:h,centerY:l,centerAngle:w,outerRadius:k},C||(f==d[m]||-1!=t.inArray(d[m],f)?n[w].active=!0:n[w].active=!1,"inside"==this.brush.showText&&this.setActiveTextEvent(n),this.setActiveEvent(n,!1),null!=this.brush.activeEvent&&function(t,e,i,a,o,s){t.on(r.brush.activeEvent,function(t){n[o].active?n[o].active=!1:n[o].active=!0,"inside"==r.brush.showText&&r.setActiveTextEvent(n),r.setActiveEvent(n,!1)}),t.attr({cursor:"pointer"})}(B,A.get(0),0,0,w)),this.addEvent(B,e,m),o.append(B),o.append(A),g+=y,v+=b}this.brush.showValue&&this.drawTotalValue(o,h,l,v)},this.drawNoData=function(t){var e=this.getProperty(0);t.append(this.drawDonut(e.centerX,e.centerY,e.innerRadius,e.outerRadius,0,360,{stroke:this.chart.theme("pieNoDataBackgroundColor"),fill:"transparent"})),this.brush.showValue&&this.drawTotalValue(t,e.centerX,e.centerY,0)},this.drawTotalValue=function(t,e,i,r){var n=this.chart.theme("pieTotalValueFontSize"),a=this.chart.text({"font-size":n,"font-weight":this.chart.theme("pieTotalValueFontWeight"),fill:this.chart.theme("pieTotalValueFontColor"),"text-anchor":"middle",dy:n/3},this.format(r));a.translate(e,i),t.append(a)},this.getProperty=function(t){var e=this.axis.c(t),i=e.width,r=e.height,n=e.x,a=e.y,o=i;r<o&&(o=r),this.brush.size>=o/2&&(this.brush.size=o/4);var s=o/2-this.brush.size/2;return{centerX:i/2+n,centerY:r/2+a,outerRadius:s,innerRadius:s-this.brush.size}}};return n.setup=function(){return{size:50,showValue:!1}},n}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(t){return t&&t.__esModule?t:{default:t}}(i(0));r.default.define("util.keyparser",[],function(){return function(){this.isIndexDepth=function(t){return"string"==typeof t&&-1!=t.indexOf(".")},this.getIndexList=function(t){for(var e=[],i=(""+t).split("."),r=0;r<i.length;r++)e[r]=parseInt(i[r]);return e},this.changeIndex=function(t,e,i){for(var r=this.getIndexList(i).length,n=this.getIndexList(t),a=this.getIndexList(e),o=0;o<r;o++)n.shift();return a.concat(n).join(".")},this.getNextIndex=function(t){var e=this.getIndexList(t),i=e.pop()+1;return e.push(i),e.join(".")},this.getParentIndex=function(t){return this.isIndexDepth(t)?t.substr(0,t.lastIndexOf(".")):null}}}),r.default.define("util.treemap",[],function(){return{sumArray:function(t){for(var e=0,i=0;i<t.length;i++)e+=t[i];return e}}}),r.default.define("chart.brush.treemap.node",[],function(){return function(t){var e=this;this.text=t.text,this.value=t.value,this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height,this.index=null,this.nodenum=null,this.parent=null,this.children=[],this.depth=0,this.reload=function(t){this.nodenum=isNaN(t)?this.nodenum:t,e.parent&&(null==this.parent.index?this.index=""+this.nodenum:this.index=e.parent.index+"."+this.nodenum),this.parent&&"string"==typeof e.index&&(this.depth=this.index.split(".").length),this.children.length>0&&function t(e){for(var i=e.children,r=0;r<i.length;r++)i[r].children.length>0&&t(i[r])}(this)},this.isLeaf=function(){return 0==this.children.length},this.appendChild=function(t){this.children.push(t)},this.insertChild=function(t,e){var i=this.children.splice(0,t);i.push(e),this.children=i.concat(this.children)},this.removeChild=function(t){for(var e=0;e<this.children.length;e++)this.children[e].index==t&&this.children.splice(e,1)},this.lastChild=function(){return this.children.length>0?this.children[this.children.length-1]:null},this.lastChildLeaf=function(t){var e=t||this.lastChild();return e.isLeaf()?e:this.lastChildLeaf(e.lastChild())}}}),r.default.define("chart.brush.treemap.nodemanager",["util.base","util.keyparser","chart.brush.treemap.node"],function(t,e,i){return function(){var t=this,r=new i({text:null,value:-1,x:-1,y:-1,width:-1,height:-1}),n=new e;function a(t,e,r){var n=new i(t);return n.parent=r||null,n.reload(e),n}function o(t,e){var i=e.children;if(i.length>0)for(var r=0;r<i.length;r++)t.push(i[r]),i[r].children.length>0&&o(t,i[r])}this.appendNode=function(){var e=arguments[0],i=arguments[1];return i?function(e,i){var r=t.getNode(e),n=a(i,r.children.length,r);return r.appendChild(n),n}(e,i):function(t){var e=a(t,r.children.length,r);return r.appendChild(e),e}(e)},this.insertNode=function(e,i){return 0==r.children.length&&0==parseInt(e)?this.appendNode(i):function(e,i){var r=n.getIndexList(e),o=t.getNodeParent(e),s=r[r.length-1],h=a(i,s,o);return o.insertChild(s,h),h}(e,i)},this.updateNode=function(t,e){var i=this.getNode(t);for(var r in e)i.data[r]=e[r];return i.reload(i.nodenum,!0),i},this.getNode=function(t){if(null==t)return r.children;var e=r.children;if(n.isIndexDepth(t)){var i=n.getIndexList(t);return function t(e,i){if(!i)return null;var r=e.shift();return void 0==r?i:t(e,i.children[r])}(i,e[i.shift()])}return e[t]?e[t]:null},this.getNodeAll=function(t){for(var e=[],i=null==t?r.children:[this.getNode(t)],n=0;n<i.length;n++)i[n]&&(e.push(i[n]),i[n].children.length>0&&o(e,i[n]));return e},this.getNodeParent=function(t){var e=n.getIndexList(t);return 1==e.length?r:2==e.length?this.getNode(e[0]):e.length>2?(e.pop(),this.getNode(e.join("."))):void 0},this.getRoot=function(){return r}}}),r.default.define("chart.brush.treemap.container",["util.treemap"],function(t){return function e(i,r,n,a){this.xoffset=i,this.yoffset=r,this.height=a,this.width=n,this.shortestEdge=function(){return Math.min(this.height,this.width)},this.getCoordinates=function(e){var i=[],r=this.xoffset,n=this.yoffset,a=t.sumArray(e)/this.height,o=t.sumArray(e)/this.width;if(this.width>=this.height)for(var s=0;s<e.length;s++)i.push([r,n,r+a,n+e[s]/a]),n+=e[s]/a;else for(s=0;s<e.length;s++)i.push([r,n,r+e[s]/o,n+o]),r+=e[s]/o;return i},this.cutArea=function(t){if(this.width>=this.height){var i=t/this.height,r=this.width-i;return new e(this.xoffset+i,this.yoffset,r,this.height)}var n=t/this.width,a=this.height-n;return new e(this.xoffset,this.yoffset+n,this.width,a)}}}),r.default.define("chart.brush.treemap.calculator",["util.base","util.treemap","chart.brush.treemap.container"],function(t,e,i){function r(t,r,a,o,s){return o=void 0===o?0:o,s=void 0===s?0:s,function(t){var e=[];if(t)for(var i=0;i<t.length;i++)for(var r=0;r<t[i].length;r++)e.push(t[i][r]);return e}(function t(i,r,a,o){var s;var h;var l;if(0===i.length)return void o.push(a.getCoordinates(r));s=a.shortestEdge();h=i[0];!function(t,e,i){var r;if(0===t.length)return!0;(r=t.slice()).push(e);var a=n(t,i),o=n(r,i);return a>=o}(r,h,s)?(l=a.cutArea(e.sumArray(r),o),o.push(a.getCoordinates(r)),t(i,[],l,o)):(r.push(h),t(i.slice(1),r,a,o));return o}(function(t,i){for(var r=[],n=i/e.sumArray(t),a=0;a<t.length;a++)r[a]=t[a]*n;return r}(t,r*a),[],new i(o,s,r,a),[]))}function n(t,i){var r=Math.min.apply(Math,t),n=Math.max.apply(Math,t),a=e.sumArray(t);return Math.max(Math.pow(i,2)*n/Math.pow(a,2),Math.pow(a,2)/(Math.pow(i,2)*r))}function a(i){var r=0;if(t.typeCheck("array",i[0]))for(var n=0;n<i.length;n++)r+=a(i[n]);else r=e.sumArray(i);return r}return function e(i,n,o,s,h){s=void 0===s?0:s,h=void 0===h?0:h;var l,c=[],u=[];if(t.typeCheck("array",i[0])){for(var d=0;d<i.length;d++)c[d]=a(i[d]);for(l=r(c,n,o,s,h),d=0;d<i.length;d++)u.push(e(i[d],l[d][2]-l[d][0],l[d][3]-l[d][1],l[d][0],l[d][1]))}else u=r(i,n,o,s,h);return u}}),e.default={name:"chart.brush.treemap",extend:"chart.brush.core",component:function(){var t=r.default.include("util.base"),e=r.default.include("chart.brush.treemap.calculator"),i=r.default.include("chart.brush.treemap.nodemanager"),n=3,a=function(){var r=new i,a={};function o(t,e,i,r){r||(r=[]);for(var n=0;n<e.length;n++)0==e[n].children.length?r.push(e[n][t]):o(t,e[n].children,i,[]);return i.push(r),i}function s(t){return 0!=t.width||0!=t.height||0!=t.x||0!=t.y}function h(e,i,r,o,s){var h=e.chart.theme("treemapTitleFontSize"),l=function t(e,i,r){if(0==e.children.length)return{x:Math.min(i,e.x),y:Math.min(r,e.y)};for(var n=0;n<e.children.length;n++)return t(e.children[n],i,r)}(r,e.axis.area("width"),e.axis.area("height")),c=e.chart.text({"font-size":h,"font-weight":"bold",fill:e.chart.theme("treemapTitleFontColor"),x:o+l.x+n,y:s+l.y+h,"text-anchor":"start"},t.typeCheck("function",e.brush.format)?e.format(r):r.text);i.append(c),a[r.index]=!0}function l(t){return t.parent.depth>0?l(t.parent):t.nodenum}this.drawBefore=function(){for(var i=0;i<this.axis.data.length;i++){var n=this.axis.data[i],a=this.getValue(n,"index");r.insertNode(a,{text:this.getValue(n,"text",""),value:this.getValue(n,"value",0),x:this.getValue(n,"x",0),y:this.getValue(n,"y",0),width:this.getValue(n,"width",0),height:this.getValue(n,"height",0)})}var s=r.getNode(),h=o("value",s,[]);!function e(i,n){for(var a=0;a<i.length;a++)if(t.typeCheck("array",i[a]))e(i[a],n[a]);else{var o=r.getNode(i[a]);o.x=n[a][0],o.y=n[a][1],o.width=n[a][2]-n[a][0],o.height=n[a][3]-n[a][1]}}(o("index",s,[]),e(h,this.axis.area("width"),this.axis.area("height")))},this.draw=function(){for(var e=this.svg.group(),i=this.axis.area("x"),o=this.axis.area("y"),c=r.getNodeAll(),u=0;u<c.length;u++)if(this.brush.titleDepth==c[u].depth&&h(this,e,c[u],i,o),s(c[u])){var d=i+c[u].x,f=o+c[u].y,g=c[u].width,p=c[u].height;if(this.brush.showText&&!a[c[u].index]){var v=d+g/2,m=f+p/2,y=this.chart.theme("treemapTextFontSize");"top"==this.brush.textOrient?m=f+y:"bottom"==this.brush.textOrient&&(m=f+p-y/2),"start"==this.brush.textAlign?v=d+n:"end"==this.brush.textAlign&&(v=d+g-n);var x=this.chart.text({"font-size":y,fill:this.chart.theme("treemapTextFontColor"),x:v,y:m,"text-anchor":this.brush.textAlign},t.typeCheck("function",this.brush.format)?this.format(c[u]):c[u].text);e.append(x)}var b=this.svg.rect({stroke:this.chart.theme("treemapNodeBorderColor"),"stroke-width":this.chart.theme("treemapNodeBorderWidth"),x:d,y:f,width:g,height:p,fill:this.color(l(c[u]))});if(t.typeCheck("function",this.brush.nodeColor)){var w=this.brush.nodeColor.call(this.chart,c[u]);b.attr({fill:this.color(w)})}this.addEvent(b,c[u]),e.prepend(b)}return e}};return a.setup=function(){return{textOrient:"top",textAlign:"middle",showText:!0,titleDepth:1,nodeColor:null,clip:!1,format:null}},a}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"util.canvas.base",extend:null,component:function(){return function(t){this.clearContext=function(){t.clearRect(0,0,t.canvas.width,t.canvas.height)},this.drawLine=function(e,i,r,n,a){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:1;a=a||"#434d6b",t.beginPath(),t.moveTo(e,i),t.lineTo(r,n),t.lineWidth=o,t.strokeStyle=a,t.stroke()},this.drawCurve=function(e,i,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:.5,a=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:16;t.beginPath();var s=e.reduce(function(t,e){return t.push(e[0],e[1]),t},[]),h=getCurvePoints(s,i,r,n,a,o);t.moveTo(h[0],h[1]);for(var l=2;l<h.length-1;l+=2)t.lineTo(h[l],h[l+1])},this.drawDashedLine=function(e,i,r,n,a){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[3,3],s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:1;a=a||"#434d6b",t.beginPath(),t.moveTo(e,i),t.lineTo(r,n),t.lineWidth=s,t.strokeStyle=a;var h=t.getLineDash();t.setLineDash(o),t.stroke(),t.setLineDash(h)},this.drawLines=function(e){e=e||"#434d6b",t.beginPath();for(var i=arguments.length,r=Array(i>1?i-1:0),n=1;n<i;n++)r[n-1]=arguments[n];t.moveTo(r[0][0],r[0][1]),r.slice(1).map(function(e){return t.lineTo(e[0],e[1])}),t.lineWidth=1,t.strokeStyle=e,t.stroke()},this.drawRoundRect=function(e,i,r,n,a){t.beginPath(),t.moveTo(e,i+a),t.lineTo(e,i+n-a),t.arcTo(e,i+n,e+a,i+n,a),t.lineTo(e+r-a,i+n),t.arcTo(e+r,i+n,e+r,i+n-a,a),t.lineTo(e+r,i+a),t.arcTo(e+r,i,e+r-a,i,a),t.lineTo(e+a,i),t.arcTo(e,i,e,i+a,a),t.closePath()},this.drawFreeRect=function(e,i,r,n,a,o,s,h,l){var c=arguments.length>9&&void 0!==arguments[9]?arguments[9]:null;l=l||"#ffffff",t.beginPath(),t.moveTo(e,i),t.lineTo(r,n),t.lineTo(a,o),t.lineTo(s,h),t.closePath(),t.fillStyle=l,null!=c&&(t.lineWidth=2,t.strokeStyle=c,t.stroke()),t.fill()},this.drawFreeRectStroke=function(e,i,r,n,a,o,s,h,l){l=l||"#ffffff",t.beginPath(),t.moveTo(e,i),t.lineTo(r,n),t.lineTo(a,o),t.lineTo(s,h),t.lineWidth=1,t.strokeStyle=l,t.stroke()},this.drawTriangle=function(e,i,r,n){n=n||"#ffffff",t.beginPath(),t.moveTo(e,i-r),t.lineTo(e-r,i+r),t.lineTo(e+r,i+r),t.closePath(),t.fillStyle=n,t.fill()},this.drawSquare=function(e,i,r,n){n=n||"#ffffff",t.beginPath(),t.moveTo(e-r,i-r),t.lineTo(e-r,i+r),t.lineTo(e+r,i+r),t.lineTo(e+r,i-r),t.closePath(),t.fillStyle=n,t.fill()},this.drawPage=function(e,i,r,n){var a=arguments.length>4&&void 0!==arguments[4]&&arguments[4];drawFreeRect(t,e+i,r,e+i-20,r+14,e+i-20,r+52,e+i,r+38,n,a?"rgba(255,255,255,0.2)":null)},this.drawCircle=function(e,i,r,n){n=n||"white",r=r||1,t.beginPath(),t.arc(e,i,r,0,2*Math.PI),t.fillStyle=n,t.fill()},this.drawBullet=function(e,i){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:74,n=t.createLinearGradient(e,i,e+r,i);n.addColorStop(0,"#1074fc"),n.addColorStop(1,"rgba(37, 172, 254, 0)"),t.beginPath(),t.arc(e,i,2,Math.PI/2,Math.PI/2*3),t.lineTo(e+r,i-2),t.lineTo(e+r,i+2),t.closePath(),t.fillStyle=n,t.fill(),t.fillStyle=n},this.getCurvePoints=function(t,e,i){var r,n,a,o,s,h,l,c,u,d,f,g,p,v=arguments.length>3&&void 0!==arguments[3]?arguments[3]:.5,m=arguments.length>4&&void 0!==arguments[4]&&arguments[4],y=arguments.length>5&&void 0!==arguments[5]?arguments[5]:16,x=[],b=[];for(x=t.slice(0),m?(x.unshift(t[t.length-1]),x.unshift(t[t.length-2]),x.unshift(t[t.length-1]),x.unshift(t[t.length-2]),x.push(t[0]),x.push(t[1])):(x.unshift(t[1]),x.unshift(t[0]),x.push(t[t.length-2]),x.push(t[t.length-1])),p=2;p<x.length-4;p+=2)for(g=0;g<=y;g++)a=(x[p+2]-x[p-2])*v,o=(x[p+4]-x[p])*v,s=(x[p+3]-x[p-1])*v,h=(x[p+5]-x[p+1])*v,f=g/y,l=2*Math.pow(f,3)-3*Math.pow(f,2)+1,c=-2*Math.pow(f,3)+3*Math.pow(f,2),u=Math.pow(f,3)-2*Math.pow(f,2)+f,d=Math.pow(f,3)-Math.pow(f,2),r=l*x[p]+c*x[p+2]+u*a+d*o,n=l*x[p+1]+c*x[p+3]+u*s+d*h,b.push(r),n>i?b.push(i):n<e?b.push(e):b.push(n);return b}}}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"util.canvas.base.kinetic",extend:null,component:function(){return function(){this.mass=10,this.friction=.1,this.pos=[0,0],this.veloc=[0,0],this.accel=[0,0],this.force=function(t){this.accel=[this.accel[0]+t[0]/this.mass,this.accel[1]+t[1]/this.mass]},this.accelScalar=function(){return Math.sqrt(this.accel[0]*this.accel[0]+this.accel[1]*this.accel[1])},this.velocScalar=function(){return Math.sqrt(this.veloc[0]*this.veloc[0]+this.veloc[1]*this.veloc[1])},this.velocityForce=function(){var t=this.veloc[0]<0?-1:1,e=this.veloc[1]<0?-1:1;return[.5*t*this.mass*this.veloc[0]*this.veloc[0],.5*e*this.mass*this.veloc[1]*this.veloc[1]]},this.distancePos=function(t){return Math.sqrt(Math.pow(this.pos[0]-t[0],2)+Math.pow(this.pos[1]-t[1],2))},this.distance=function(t){return this.distancePos(t.pos)},this.direction=function(t){var e=this.distancePos(t);return 0==e?[0,0]:[(this.pos[0]-t[0])/e,(this.pos[1]-t[1])/e]},this.speed=function(){return Math.sqrt(Math.pow(this.veloc[0],2)+Math.pow(this.veloc[1],2))},this.update=function(){this.veloc=[this.veloc[0]+this.accel[0],this.veloc[1]+this.accel[1]];var t=this.pos[0],e=this.pos[1];Math.abs(this.veloc[0])>2&&(t=this.pos[0]+this.veloc[0]),Math.abs(this.veloc[1])>2&&(e=this.pos[1]+this.veloc[1]),this.pos=[t,e],this.accel=[0,0]},this.draw=function(t,e){}}}}},function(t,e,i){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n=vt(i(0)),a=vt(i(15)),o=vt(i(16)),s=vt(i(17)),h=vt(i(18)),l=vt(i(19)),c=vt(i(20)),u=vt(i(21)),d=vt(i(2)),f=vt(i(1)),g=vt(i(5)),p=vt(i(22)),v=vt(i(23)),m=vt(i(6)),y=vt(i(24)),x=vt(i(25)),b=vt(i(3)),w=vt(i(4)),C=vt(i(26)),k=vt(i(27)),B=vt(i(7)),A=vt(i(28)),F=vt(i(8)),T=vt(i(9)),M=vt(i(10)),S=vt(i(29)),z=vt(i(30)),O=vt(i(31)),E=vt(i(32)),P=vt(i(33)),L=vt(i(34)),_=vt(i(35)),R=vt(i(36)),W=vt(i(37)),D=vt(i(38)),j=vt(i(39)),I=vt(i(40)),N=vt(i(41)),X=vt(i(42)),Y=vt(i(43)),V=vt(i(44)),U=vt(i(46)),H=vt(i(48)),G=vt(i(49)),q=vt(i(50)),Z=vt(i(51)),J=vt(i(52)),K=vt(i(53)),Q=vt(i(54)),$=vt(i(55)),tt=vt(i(56)),et=vt(i(57)),it=vt(i(58)),rt=vt(i(59)),nt=vt(i(60)),at=vt(i(61)),ot=vt(i(62)),st=vt(i(63)),ht=vt(i(64)),lt=vt(i(65)),ct=vt(i(66)),ut=vt(i(67)),dt=vt(i(68)),ft=vt(i(69)),gt=vt(i(70)),pt=vt(i(71));function vt(t){return t&&t.__esModule?t:{default:t}}n.default.use([a.default,o.default,s.default,h.default,l.default,c.default,u.default,d.default,f.default,g.default,p.default,v.default,m.default,y.default,x.default,b.default,w.default,C.default,k.default,B.default,A.default,F.default,T.default,M.default,S.default,z.default,O.default,E.default,P.default,L.default,_.default,R.default,W.default,D.default,j.default,I.default,N.default,X.default,Y.default,V.default,U.default,H.default,G.default,q.default,Z.default,J.default,K.default,Q.default,$.default,tt.default,et.default,it.default,rt.default,nt.default,at.default,ot.default,st.default,ht.default,lt.default,ct.default,ut.default,dt.default,ft.default,gt.default,pt.default]),"object"==("undefined"==typeof window?"undefined":r(window))&&(window.graph=n.default)},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n="function"==typeof Symbol&&"symbol"===r(Symbol.iterator)?function(t){return void 0===t?"undefined":r(t)}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":void 0===t?"undefined":r(t)},a={},o={},s={},h=a["util.base"]={browser:{webkit:"WebkitAppearance"in document.documentElement.style,mozilla:void 0!==window.mozInnerScreenX,msie:-1!=window.navigator.userAgent.indexOf("Trident")},isTouch:/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(window.navigator.userAgent),inherit:function(t,e){this.typeCheck("function",t)&&this.typeCheck("function",e)&&(t.parent=e,t.prototype=new e,t.prototype.constructor=t,t.prototype.parent=t.prototype,t.prototype.super=function(t,e){return this.constructor.prototype[t].apply(this,e)})},extend:function(t,e,i){if(this.typeCheck(["object","function"],t)||(t={}),!this.typeCheck(["object","function"],e))return t;for(var r in e)!0===i?n(t[r])?this.extend(t[r],e[r],i):this.typeCheck("undefined",t[r])&&(t[r]=e[r]):n(t[r])?this.extend(t[r],e[r],i):t[r]=e[r];function n(t){return h.typeCheck("object",t)}return t},pxToInt:function(t){return this.typeCheck("string",t)&&-1!=t.indexOf("px")?parseInt(t.split("px").join("")):t},clone:function(t){var e=this.typeCheck("array",t)?[]:{};for(var i in t)this.typeCheck("object",t[i])?e[i]=this.clone(t[i]):e[i]=t[i];return e},deepClone:function(t,e){var i=null;if(e=e||{},this.typeCheck("array",t)){i=new Array(t.length);for(var r=0,n=t.length;r<n;r++)i[r]=this.deepClone(t[r],e)}else if(this.typeCheck("date",t))i=t;else if(this.typeCheck("object",t))for(var a in i={},t)e[a]?i[a]=t[a]:i[a]=this.deepClone(t[a],e);else i=t;return i},runtime:function(t,e){var i=(new Date).getTime();e();var r=(new Date).getTime();console.warn(t+" : "+(r-i)+"ms")},resize:function(t,e){var i=function(){var i=0;return function(){clearTimeout(i),i=setTimeout(t,e)}}();window.addEventListener?window.addEventListener("resize",i):object.attachEvent?window.attachEvent("onresize",i):window.onresize=i},typeCheck:function(t,e){function i(t,e){return"string"==typeof t&&("string"==t?"string"==typeof e:"integer"==t?"number"==typeof e&&e%1==0:"float"==t?"number"==typeof e&&e%1!=0:"number"==t?"number"==typeof e:"boolean"==t?"boolean"==typeof e:"undefined"==t?void 0===e:"null"==t?null===e:"array"==t?e instanceof Array:"date"==t?e instanceof Date:"function"==t?"function"==typeof e:"object"==t&&!("object"!=(void 0===e?"undefined":n(e))||null===e||e instanceof Array||e instanceof Date||e instanceof RegExp))}if("object"==(void 0===t?"undefined":n(t))&&t.length){for(var r=t,a=0;a<r.length;a++)if(i(r[a],e))return!0;return!1}return i(t,e)},typeCheckObj:function(t,e){if("object"==(void 0===t?"undefined":n(t))){var i=this;for(var r in t){var a=t[r];"function"==typeof a&&function(r,n){t[r]=function(){for(var t=arguments,a=e[r],o=0;o<t.length;o++)if(!i.typeCheck(a[o],t[o]))throw new Error("JUI_CRITICAL_ERR: the "+o+"th parameter is not a "+a[o]+" ("+name+")");return n.apply(this,t)}}(r,a)}}},dateFormat:function(t,e,i){var r=["\0","January","February","March","April","May","June","July","August","September","October","November","December"],n=["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],a=["","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],o=["","Sun","Mon","Tue","Wed","Thu","Fri","Sat"];function s(t,e){var i=t+"";for(e=e||2;i.length<e;)i="0"+i;return i}var h=i?t.getUTCFullYear():t.getFullYear();e=(e=(e=e.replace(/(^|[^\\])yyyy+/g,"$1"+h)).replace(/(^|[^\\])yy/g,"$1"+h.toString().substr(2,2))).replace(/(^|[^\\])y/g,"$1"+h);var l=(i?t.getUTCMonth():t.getMonth())+1;e=(e=(e=(e=e.replace(/(^|[^\\])MMMM+/g,"$1"+r[0])).replace(/(^|[^\\])MMM/g,"$1"+n[0])).replace(/(^|[^\\])MM/g,"$1"+s(l))).replace(/(^|[^\\])M/g,"$1"+l);var c=i?t.getUTCDate():t.getDate();e=(e=(e=(e=e.replace(/(^|[^\\])dddd+/g,"$1"+a[0])).replace(/(^|[^\\])ddd/g,"$1"+o[0])).replace(/(^|[^\\])dd/g,"$1"+s(c))).replace(/(^|[^\\])d/g,"$1"+c);var u=i?t.getUTCHours():t.getHours();e=(e=e.replace(/(^|[^\\])HH+/g,"$1"+s(u))).replace(/(^|[^\\])H/g,"$1"+u);var d=u>12?u-12:0==u?12:u;e=(e=e.replace(/(^|[^\\])hh+/g,"$1"+s(d))).replace(/(^|[^\\])h/g,"$1"+d);var f=i?t.getUTCMinutes():t.getMinutes();e=(e=e.replace(/(^|[^\\])mm+/g,"$1"+s(f))).replace(/(^|[^\