UNPKG

25.2 kBJavaScriptView Raw
1/*
2 Highcharts JS v5.0.5 (2016-11-29)
3
4 (c) 2009-2016 Torstein Honsi
5
6 License: www.highcharts.com/license
7*/
8(function(w){"object"===typeof module&&module.exports?module.exports=w:w(Highcharts)})(function(w){(function(a){function r(a,c,d){this.init(a,c,d)}var t=a.each,u=a.extend,g=a.merge,n=a.splat;u(r.prototype,{init:function(a,c,d){var k=this,l=k.defaultOptions;k.chart=c;k.options=a=g(l,c.angular?{background:{}}:void 0,a);(a=a.background)&&t([].concat(n(a)).reverse(),function(c){var b=d.userOptions;c=g(k.defaultBackgroundOptions,c);d.options.plotBands.unshift(c);b.plotBands=b.plotBands||[];b.plotBands!==
9d.options.plotBands&&b.plotBands.unshift(c)})},defaultOptions:{center:["50%","50%"],size:"85%",startAngle:0},defaultBackgroundOptions:{className:"highcharts-pane",shape:"circle",from:-Number.MAX_VALUE,innerRadius:0,to:Number.MAX_VALUE,outerRadius:"105%"}});a.Pane=r})(w);(function(a){var r=a.CenteredSeriesMixin,t=a.each,u=a.extend,g=a.map,n=a.merge,h=a.noop,c=a.Pane,d=a.pick,k=a.pInt,l=a.splat,p=a.wrap,b,e,m=a.Axis.prototype;a=a.Tick.prototype;b={getOffset:h,redraw:function(){this.isDirty=!1},render:function(){this.isDirty=
10!1},setScale:h,setCategories:h,setTitle:h};e={defaultRadialGaugeOptions:{labels:{align:"center",x:0,y:null},minorGridLineWidth:0,minorTickInterval:"auto",minorTickLength:10,minorTickPosition:"inside",minorTickWidth:1,tickLength:10,tickPosition:"inside",tickWidth:2,title:{rotation:0},zIndex:2},defaultRadialXOptions:{gridLineWidth:1,labels:{align:null,distance:15,x:0,y:null},maxPadding:0,minPadding:0,showLastLabel:!1,tickLength:0},defaultRadialYOptions:{gridLineInterpolation:"circle",labels:{align:"right",
11x:-3,y:-2},showLastLabel:!1,title:{x:4,text:null,rotation:90}},setOptions:function(b){b=this.options=n(this.defaultOptions,this.defaultRadialOptions,b);b.plotBands||(b.plotBands=[])},getOffset:function(){m.getOffset.call(this);this.chart.axisOffset[this.side]=0;this.center=this.pane.center=r.getCenter.call(this.pane)},getLinePath:function(b,c){b=this.center;var q=this.chart,f=d(c,b[2]/2-this.offset);this.isCircular||void 0!==c?c=this.chart.renderer.symbols.arc(this.left+b[0],this.top+b[1],f,f,{start:this.startAngleRad,
12end:this.endAngleRad,open:!0,innerR:0}):(c=this.postTranslate(this.angleRad,f),c=["M",b[0]+q.plotLeft,b[1]+q.plotTop,"L",c.x,c.y]);return c},setAxisTranslation:function(){m.setAxisTranslation.call(this);this.center&&(this.transA=this.isCircular?(this.endAngleRad-this.startAngleRad)/(this.max-this.min||1):this.center[2]/2/(this.max-this.min||1),this.minPixelPadding=this.isXAxis?this.transA*this.minPointOffset:0)},beforeSetTickPositions:function(){if(this.autoConnect=this.isCircular&&void 0===d(this.userMax,
13this.options.max)&&this.endAngleRad-this.startAngleRad===2*Math.PI)this.max+=this.categories&&1||this.pointRange||this.closestPointRange||0},setAxisSize:function(){m.setAxisSize.call(this);this.isRadial&&(this.center=this.pane.center=r.getCenter.call(this.pane),this.isCircular&&(this.sector=this.endAngleRad-this.startAngleRad),this.len=this.width=this.height=this.center[2]*d(this.sector,1)/2)},getPosition:function(b,c){return this.postTranslate(this.isCircular?this.translate(b):this.angleRad,d(this.isCircular?
14c:this.translate(b),this.center[2]/2)-this.offset)},postTranslate:function(b,c){var d=this.chart,f=this.center;b=this.startAngleRad+b;return{x:d.plotLeft+f[0]+Math.cos(b)*c,y:d.plotTop+f[1]+Math.sin(b)*c}},getPlotBandPath:function(b,c,e){var f=this.center,q=this.startAngleRad,l=f[2]/2,a=[d(e.outerRadius,"100%"),e.innerRadius,d(e.thickness,10)],m=Math.min(this.offset,0),p=/%$/,v,n=this.isCircular;"polygon"===this.options.gridLineInterpolation?f=this.getPlotLinePath(b).concat(this.getPlotLinePath(c,
15!0)):(b=Math.max(b,this.min),c=Math.min(c,this.max),n||(a[0]=this.translate(b),a[1]=this.translate(c)),a=g(a,function(b){p.test(b)&&(b=k(b,10)*l/100);return b}),"circle"!==e.shape&&n?(b=q+this.translate(b),c=q+this.translate(c)):(b=-Math.PI/2,c=1.5*Math.PI,v=!0),a[0]-=m,a[2]-=m,f=this.chart.renderer.symbols.arc(this.left+f[0],this.top+f[1],a[0],a[0],{start:Math.min(b,c),end:Math.max(b,c),innerR:d(a[1],a[0]-a[2]),open:v}));return f},getPlotLinePath:function(b,c){var d=this,e=d.center,f=d.chart,k=d.getPosition(b),
16a,q,l;d.isCircular?l=["M",e[0]+f.plotLeft,e[1]+f.plotTop,"L",k.x,k.y]:"circle"===d.options.gridLineInterpolation?(b=d.translate(b))&&(l=d.getLinePath(0,b)):(t(f.xAxis,function(b){b.pane===d.pane&&(a=b)}),l=[],b=d.translate(b),e=a.tickPositions,a.autoConnect&&(e=e.concat([e[0]])),c&&(e=[].concat(e).reverse()),t(e,function(c,d){q=a.getPosition(c,b);l.push(d?"L":"M",q.x,q.y)}));return l},getTitlePosition:function(){var b=this.center,c=this.chart,d=this.options.title;return{x:c.plotLeft+b[0]+(d.x||0),
17y:c.plotTop+b[1]-{high:.5,middle:.25,low:0}[d.align]*b[2]+(d.y||0)}}};p(m,"init",function(k,f,a){var q=f.angular,m=f.polar,p=a.isX,v=q&&p,g,h=f.options,r=a.pane||0;if(q){if(u(this,v?b:e),g=!p)this.defaultRadialOptions=this.defaultRadialGaugeOptions}else m&&(u(this,e),this.defaultRadialOptions=(g=p)?this.defaultRadialXOptions:n(this.defaultYAxisOptions,this.defaultRadialYOptions));q||m?(this.isRadial=!0,f.inverted=!1,h.chart.zoomType=null):this.isRadial=!1;k.call(this,f,a);v||!q&&!m||(k=this.options,
18f.panes||(f.panes=[]),this.pane=f=f.panes[r]=f.panes[r]||new c(l(h.pane)[r],f,this),f=f.options,this.angleRad=(k.angle||0)*Math.PI/180,this.startAngleRad=(f.startAngle-90)*Math.PI/180,this.endAngleRad=(d(f.endAngle,f.startAngle+360)-90)*Math.PI/180,this.offset=k.offset||0,this.isCircular=g)});p(m,"autoLabelAlign",function(b){if(!this.isRadial)return b.apply(this,[].slice.call(arguments,1))});p(a,"getPosition",function(b,c,d,e,k){var a=this.axis;return a.getPosition?a.getPosition(d):b.call(this,c,
19d,e,k)});p(a,"getLabelPosition",function(b,c,e,k,a,l,m,p,n){var f=this.axis,q=l.y,v=20,z=l.align,g=(f.translate(this.pos)+f.startAngleRad+Math.PI/2)/Math.PI*180%360;f.isRadial?(b=f.getPosition(this.pos,f.center[2]/2+d(l.distance,-25)),"auto"===l.rotation?k.attr({rotation:g}):null===q&&(q=f.chart.renderer.fontMetrics(k.styles.fontSize).b-k.getBBox().height/2),null===z&&(f.isCircular?(this.label.getBBox().width>f.len*f.tickInterval/(f.max-f.min)&&(v=0),z=g>v&&g<180-v?"left":g>180+v&&g<360-v?"right":
20"center"):z="center",k.attr({align:z})),b.x+=l.x,b.y+=q):b=b.call(this,c,e,k,a,l,m,p,n);return b});p(a,"getMarkPath",function(b,c,d,e,k,a,l){var f=this.axis;f.isRadial?(b=f.getPosition(this.pos,f.center[2]/2+e),c=["M",c,d,"L",b.x,b.y]):c=b.call(this,c,d,e,k,a,l);return c})})(w);(function(a){var r=a.each,t=a.noop,u=a.pick,g=a.Series,n=a.seriesType,h=a.seriesTypes;n("arearange","area",{marker:null,threshold:null,tooltip:{pointFormat:'\x3cspan class\x3d"highcharts-color-{series.colorIndex}"\x3e\u25cf\x3c/span\x3e {series.name}: \x3cb\x3e{point.low}\x3c/b\x3e - \x3cb\x3e{point.high}\x3c/b\x3e\x3cbr/\x3e'},
21trackByArea:!0,dataLabels:{align:null,verticalAlign:null,xLow:0,xHigh:0,yLow:0,yHigh:0},states:{hover:{halo:!1}}},{pointArrayMap:["low","high"],dataLabelCollections:["dataLabel","dataLabelUpper"],toYData:function(c){return[c.low,c.high]},pointValKey:"low",deferTranslatePolar:!0,highToXY:function(c){var d=this.chart,k=this.xAxis.postTranslate(c.rectPlotX,this.yAxis.len-c.plotHigh);c.plotHighX=k.x-d.plotLeft;c.plotHigh=k.y-d.plotTop},translate:function(){var c=this,d=c.yAxis,k=!!c.modifyValue;h.area.prototype.translate.apply(c);
22r(c.points,function(a){var l=a.low,b=a.high,e=a.plotY;null===b||null===l?a.isNull=!0:(a.plotLow=e,a.plotHigh=d.translate(k?c.modifyValue(b,a):b,0,1,0,1),k&&(a.yBottom=a.plotHigh))});this.chart.polar&&r(this.points,function(d){c.highToXY(d)})},getGraphPath:function(c){var d=[],a=[],l,p=h.area.prototype.getGraphPath,b,e,m;m=this.options;var q=m.step;c=c||this.points;for(l=c.length;l--;)b=c[l],b.isNull||m.connectEnds||c[l+1]&&!c[l+1].isNull||a.push({plotX:b.plotX,plotY:b.plotY,doCurve:!1}),e={polarPlotY:b.polarPlotY,
23rectPlotX:b.rectPlotX,yBottom:b.yBottom,plotX:u(b.plotHighX,b.plotX),plotY:b.plotHigh,isNull:b.isNull},a.push(e),d.push(e),b.isNull||m.connectEnds||c[l-1]&&!c[l-1].isNull||a.push({plotX:b.plotX,plotY:b.plotY,doCurve:!1});c=p.call(this,c);q&&(!0===q&&(q="left"),m.step={left:"right",center:"center",right:"left"}[q]);d=p.call(this,d);a=p.call(this,a);m.step=q;m=[].concat(c,d);this.chart.polar||"M"!==a[0]||(a[0]="L");this.graphPath=m;this.areaPath=this.areaPath.concat(c,a);m.isArea=!0;m.xMap=c.xMap;this.areaPath.xMap=
24c.xMap;return m},drawDataLabels:function(){var c=this.data,d=c.length,a,l=[],p=g.prototype,b=this.options.dataLabels,e=b.align,m=b.verticalAlign,q=b.inside,f,v,n=this.chart.inverted;if(b.enabled||this._hasPointLabels){for(a=d;a--;)if(f=c[a])v=q?f.plotHigh<f.plotLow:f.plotHigh>f.plotLow,f.y=f.high,f._plotY=f.plotY,f.plotY=f.plotHigh,l[a]=f.dataLabel,f.dataLabel=f.dataLabelUpper,f.below=v,n?e||(b.align=v?"right":"left"):m||(b.verticalAlign=v?"top":"bottom"),b.x=b.xHigh,b.y=b.yHigh;p.drawDataLabels&&
25p.drawDataLabels.apply(this,arguments);for(a=d;a--;)if(f=c[a])v=q?f.plotHigh<f.plotLow:f.plotHigh>f.plotLow,f.dataLabelUpper=f.dataLabel,f.dataLabel=l[a],f.y=f.low,f.plotY=f._plotY,f.below=!v,n?e||(b.align=v?"left":"right"):m||(b.verticalAlign=v?"bottom":"top"),b.x=b.xLow,b.y=b.yLow;p.drawDataLabels&&p.drawDataLabels.apply(this,arguments)}b.align=e;b.verticalAlign=m},alignDataLabel:function(){h.column.prototype.alignDataLabel.apply(this,arguments)},setStackedPoints:t,getSymbol:t,drawPoints:t})})(w);
26(function(a){var r=a.seriesType;r("areasplinerange","arearange",null,{getPointSpline:a.seriesTypes.spline.prototype.getPointSpline})})(w);(function(a){var r=a.defaultPlotOptions,t=a.each,u=a.merge,g=a.noop,n=a.pick,h=a.seriesType,c=a.seriesTypes.column.prototype;h("columnrange","arearange",u(r.column,r.arearange,{lineWidth:1,pointRange:null}),{translate:function(){var a=this,k=a.yAxis,l=a.xAxis,p=l.startAngleRad,b,e=a.chart,m=a.xAxis.isRadial,q;c.translate.apply(a);t(a.points,function(c){var d=c.shapeArgs,
27f=a.options.minPointLength,g,h;c.plotHigh=q=k.translate(c.high,0,1,0,1);c.plotLow=c.plotY;h=q;g=n(c.rectPlotY,c.plotY)-q;Math.abs(g)<f?(f-=g,g+=f,h-=f/2):0>g&&(g*=-1,h-=g);m?(b=c.barX+p,c.shapeType="path",c.shapeArgs={d:a.polarArc(h+g,h,b,b+c.pointWidth)}):(d.height=g,d.y=h,c.tooltipPos=e.inverted?[k.len+k.pos-e.plotLeft-h-g/2,l.len+l.pos-e.plotTop-d.x-d.width/2,g]:[l.left-e.plotLeft+d.x+d.width/2,k.pos-e.plotTop+h+g/2,g])})},directTouch:!0,trackerGroups:["group","dataLabelsGroup"],drawGraph:g,crispCol:c.crispCol,
28drawPoints:c.drawPoints,drawTracker:c.drawTracker,getColumnMetrics:c.getColumnMetrics,animate:function(){return c.animate.apply(this,arguments)},polarArc:function(){return c.polarArc.apply(this,arguments)},pointAttribs:c.pointAttribs})})(w);(function(a){var r=a.each,t=a.isNumber,u=a.merge,g=a.pick,n=a.pInt,h=a.Series,c=a.seriesType,d=a.TrackerMixin;c("gauge","line",{dataLabels:{enabled:!0,defer:!1,y:15,borderRadius:3,crop:!1,verticalAlign:"top",zIndex:2},dial:{},pivot:{},tooltip:{headerFormat:""},
29showInLegend:!1},{angular:!0,directTouch:!0,drawGraph:a.noop,fixedBox:!0,forceDL:!0,noSharedTooltip:!0,trackerGroups:["group","dataLabelsGroup"],translate:function(){var c=this.yAxis,a=this.options,d=c.center;this.generatePoints();r(this.points,function(b){var e=u(a.dial,b.dial),k=n(g(e.radius,80))*d[2]/200,l=n(g(e.baseLength,70))*k/100,f=n(g(e.rearLength,10))*k/100,p=e.baseWidth||3,h=e.topWidth||1,r=a.overshoot,x=c.startAngleRad+c.translate(b.y,null,null,null,!0);t(r)?(r=r/180*Math.PI,x=Math.max(c.startAngleRad-
30r,Math.min(c.endAngleRad+r,x))):!1===a.wrap&&(x=Math.max(c.startAngleRad,Math.min(c.endAngleRad,x)));x=180*x/Math.PI;b.shapeType="path";b.shapeArgs={d:e.path||["M",-f,-p/2,"L",l,-p/2,k,-h/2,k,h/2,l,p/2,-f,p/2,"z"],translateX:d[0],translateY:d[1],rotation:x};b.plotX=d[0];b.plotY=d[1]})},drawPoints:function(){var c=this,a=c.yAxis.center,d=c.pivot,b=c.options,e=b.pivot,m=c.chart.renderer;r(c.points,function(a){var d=a.graphic,e=a.shapeArgs,k=e.d;u(b.dial,a.dial);d?(d.animate(e),e.d=k):a.graphic=m[a.shapeType](e).attr({rotation:e.rotation,
31zIndex:1}).addClass("highcharts-dial").add(c.group)});d?d.animate({translateX:a[0],translateY:a[1]}):c.pivot=m.circle(0,0,g(e.radius,5)).attr({zIndex:2}).addClass("highcharts-pivot").translate(a[0],a[1]).add(c.group)},animate:function(c){var a=this;c||(r(a.points,function(c){var b=c.graphic;b&&(b.attr({rotation:180*a.yAxis.startAngleRad/Math.PI}),b.animate({rotation:c.shapeArgs.rotation},a.options.animation))}),a.animate=null)},render:function(){this.group=this.plotGroup("group","series",this.visible?
32"visible":"hidden",this.options.zIndex,this.chart.seriesGroup);h.prototype.render.call(this);this.group.clip(this.chart.clipRect)},setData:function(c,a){h.prototype.setData.call(this,c,!1);this.processData();this.generatePoints();g(a,!0)&&this.chart.redraw()},drawTracker:d&&d.drawTrackerPoint},{setState:function(c){this.state=c}})})(w);(function(a){var r=a.each,t=a.noop,u=a.seriesType,g=a.seriesTypes;u("boxplot","column",{threshold:null,tooltip:{pointFormat:'\x3cspan class\x3d"highcharts-color-{point.colorIndex}"\x3e\u25cf\x3c/span\x3e \x3cb\x3e {series.name}\x3c/b\x3e\x3cbr/\x3eMaximum: {point.high}\x3cbr/\x3eUpper quartile: {point.q3}\x3cbr/\x3eMedian: {point.median}\x3cbr/\x3eLower quartile: {point.q1}\x3cbr/\x3eMinimum: {point.low}\x3cbr/\x3e'},
33whiskerLength:"50%"},{pointArrayMap:["low","q1","median","q3","high"],toYData:function(a){return[a.low,a.q1,a.median,a.q3,a.high]},pointValKey:"high",drawDataLabels:t,translate:function(){var a=this.yAxis,h=this.pointArrayMap;g.column.prototype.translate.apply(this);r(this.points,function(c){r(h,function(d){null!==c[d]&&(c[d+"Plot"]=a.translate(c[d],0,1,0,1))})})},drawPoints:function(){var a=this,g=a.chart.renderer,c,d,k,l,p,b,e=0,m,q,f,v,z=!1!==a.doQuartiles,t,x=a.options.whiskerLength;r(a.points,
34function(h){var n=h.graphic,r=n?"animate":"attr",u=h.shapeArgs;void 0!==h.plotY&&(m=u.width,q=Math.floor(u.x),f=q+m,v=Math.round(m/2),c=Math.floor(z?h.q1Plot:h.lowPlot),d=Math.floor(z?h.q3Plot:h.lowPlot),k=Math.floor(h.highPlot),l=Math.floor(h.lowPlot),n||(h.graphic=n=g.g("point").add(a.group),h.stem=g.path().addClass("highcharts-boxplot-stem").add(n),x&&(h.whiskers=g.path().addClass("highcharts-boxplot-whisker").add(n)),z&&(h.box=g.path(void 0).addClass("highcharts-boxplot-box").add(n)),h.medianShape=
35g.path(void 0).addClass("highcharts-boxplot-median").add(n)),b=h.stem.strokeWidth()%2/2,e=q+v+b,h.stem[r]({d:["M",e,d,"L",e,k,"M",e,c,"L",e,l]}),z&&(b=h.box.strokeWidth()%2/2,c=Math.floor(c)+b,d=Math.floor(d)+b,q+=b,f+=b,h.box[r]({d:["M",q,d,"L",q,c,"L",f,c,"L",f,d,"L",q,d,"z"]})),x&&(b=h.whiskers.strokeWidth()%2/2,k+=b,l+=b,t=/%$/.test(x)?v*parseFloat(x)/100:x/2,h.whiskers[r]({d:["M",e-t,k,"L",e+t,k,"M",e-t,l,"L",e+t,l]})),p=Math.round(h.medianPlot),b=h.medianShape.strokeWidth()%2/2,p+=b,h.medianShape[r]({d:["M",
36q,p,"L",f,p]}))})},setStackedPoints:t})})(w);(function(a){var r=a.each,t=a.noop,u=a.seriesType,g=a.seriesTypes;u("errorbar","boxplot",{grouping:!1,linkedTo:":previous",tooltip:{pointFormat:'\x3cspan style\x3d"color:{point.color}"\x3e\u25cf\x3c/span\x3e {series.name}: \x3cb\x3e{point.low}\x3c/b\x3e - \x3cb\x3e{point.high}\x3c/b\x3e\x3cbr/\x3e'},whiskerWidth:null},{type:"errorbar",pointArrayMap:["low","high"],toYData:function(a){return[a.low,a.high]},pointValKey:"high",doQuartiles:!1,drawDataLabels:g.arearange?
37function(){var a=this.pointValKey;g.arearange.prototype.drawDataLabels.call(this);r(this.data,function(g){g.y=g[a]})}:t,getColumnMetrics:function(){return this.linkedParent&&this.linkedParent.columnMetrics||g.column.prototype.getColumnMetrics.call(this)}})})(w);(function(a){var r=a.correctFloat,t=a.isNumber,u=a.pick,g=a.Point,n=a.Series,h=a.seriesType,c=a.seriesTypes;h("waterfall","column",{dataLabels:{inside:!0}},{pointValKey:"y",translate:function(){var a=this.options,k=this.yAxis,l,p,b,e,m,q,f,
38g,h,n=u(a.minPointLength,5),t=a.threshold,w=a.stacking,A=0,y=0;c.column.prototype.translate.apply(this);f=g=t;p=this.points;l=0;for(a=p.length;l<a;l++)b=p[l],q=this.processedYData[l],e=b.shapeArgs,h=(m=w&&k.stacks[(this.negStacks&&q<t?"-":"")+this.stackKey])?m[b.x].points[this.index+","+l]:[0,q],b.isSum?b.y=r(q):b.isIntermediateSum&&(b.y=r(q-g)),m=Math.max(f,f+b.y)+h[0],e.y=k.toPixels(m,!0),b.isSum?(e.y=k.toPixels(h[1],!0),e.height=Math.min(k.toPixels(h[0],!0),k.len)-e.y+A+y):b.isIntermediateSum?
39(e.y=k.toPixels(h[1],!0),e.height=Math.min(k.toPixels(g,!0),k.len)-e.y+A+y,g=h[1]):(e.height=0<q?k.toPixels(f,!0)-e.y:k.toPixels(f,!0)-k.toPixels(f-q,!0),f+=q),0>e.height&&(e.y+=e.height,e.height*=-1),b.plotY=e.y=Math.round(e.y)-this.borderWidth%2/2,e.height=Math.max(Math.round(e.height),.001),b.yBottom=e.y+e.height,e.y-=y,e.height<=n&&(e.height=n,0>b.y?y-=n:A+=n),e.y-=A,e=b.plotY-y-A+(b.negative&&0<=y?e.height:0),this.chart.inverted?b.tooltipPos[0]=k.len-e:b.tooltipPos[1]=e},processData:function(c){var a=
40this.yData,d=this.options.data,p,b=a.length,e,m,q,f,g,h;m=e=q=f=this.options.threshold||0;for(h=0;h<b;h++)g=a[h],p=d&&d[h]?d[h]:{},"sum"===g||p.isSum?a[h]=r(m):"intermediateSum"===g||p.isIntermediateSum?a[h]=r(e):(m+=g,e+=g),q=Math.min(m,q),f=Math.max(m,f);n.prototype.processData.call(this,c);this.dataMin=q;this.dataMax=f},toYData:function(a){return a.isSum?0===a.x?null:"sum":a.isIntermediateSum?0===a.x?null:"intermediateSum":a.y},getGraphPath:function(){return["M",0,0]},getCrispPath:function(){var a=
41this.data,c=a.length,l=this.graph.strokeWidth()+this.borderWidth,l=Math.round(l)%2/2,p=[],b,e,m;for(m=1;m<c;m++)e=a[m].shapeArgs,b=a[m-1].shapeArgs,e=["M",b.x+b.width,b.y+l,"L",e.x,b.y+l],0>a[m-1].y&&(e[2]+=b.height,e[5]+=b.height),p=p.concat(e);return p},drawGraph:function(){n.prototype.drawGraph.call(this);this.graph.attr({d:this.getCrispPath()})},getExtremes:a.noop},{getClassName:function(){var a=g.prototype.getClassName.call(this);this.isSum?a+=" highcharts-sum":this.isIntermediateSum&&(a+=" highcharts-intermediate-sum");
42return a},isValid:function(){return t(this.y,!0)||this.isSum||this.isIntermediateSum}})})(w);(function(a){var r=a.Series,t=a.seriesType,u=a.seriesTypes;t("polygon","scatter",{marker:{enabled:!1,states:{hover:{enabled:!1}}},stickyTracking:!1,tooltip:{followPointer:!0,pointFormat:""},trackByArea:!0},{type:"polygon",getGraphPath:function(){for(var a=r.prototype.getGraphPath.call(this),n=a.length+1;n--;)(n===a.length||"M"===a[n])&&0<n&&a.splice(n,0,"z");return this.areaPath=a},drawGraph:function(){u.area.prototype.drawGraph.call(this)},
43drawLegendSymbol:a.LegendSymbolMixin.drawRectangle,drawTracker:r.prototype.drawTracker,setStackedPoints:a.noop})})(w);(function(a){var r=a.arrayMax,t=a.arrayMin,u=a.Axis,g=a.each,n=a.isNumber,h=a.noop,c=a.pick,d=a.pInt,k=a.Point,l=a.seriesType,p=a.seriesTypes;l("bubble","scatter",{dataLabels:{formatter:function(){return this.point.z},inside:!0,verticalAlign:"middle"},marker:{radius:null,states:{hover:{radiusPlus:0}}},minSize:8,maxSize:"20%",softThreshold:!1,states:{hover:{halo:{size:5}}},tooltip:{pointFormat:"({point.x}, {point.y}), Size: {point.z}"},
44turboThreshold:0,zThreshold:0,zoneAxis:"z"},{pointArrayMap:["y","z"],parallelArrays:["x","y","z"],trackerGroups:["group","dataLabelsGroup"],bubblePadding:!0,zoneAxis:"z",markerAttribs:h,getRadii:function(a,c,d,k){var b,e,m,l=this.zData,p=[],q=this.options,h="width"!==q.sizeBy,g=q.zThreshold,n=c-a;e=0;for(b=l.length;e<b;e++)m=l[e],q.sizeByAbsoluteValue&&null!==m&&(m=Math.abs(m-g),c=Math.max(c-g,Math.abs(a-g)),a=0),null===m?m=null:m<a?m=d/2-1:(m=0<n?(m-a)/n:.5,h&&0<=m&&(m=Math.sqrt(m)),m=Math.ceil(d+
45m*(k-d))/2),p.push(m);this.radii=p},animate:function(a){var b=this.options.animation;a||(g(this.points,function(a){var c=a.graphic;a=a.shapeArgs;c&&a&&(c.attr("r",1),c.animate({r:a.r},b))}),this.animate=null)},translate:function(){var a,c=this.data,d,k,f=this.radii;p.scatter.prototype.translate.call(this);for(a=c.length;a--;)d=c[a],k=f?f[a]:0,n(k)&&k>=this.minPxSize/2?(d.shapeType="circle",d.shapeArgs={x:d.plotX,y:d.plotY,r:k},d.dlBox={x:d.plotX-k,y:d.plotY-k,width:2*k,height:2*k}):d.shapeArgs=d.plotY=
46d.dlBox=void 0},drawLegendSymbol:function(a,c){var b=this.chart.renderer,d=b.fontMetrics(a.itemStyle&&a.itemStyle.fontSize,c.legendItem).f/2;c.legendSymbol=b.circle(d,a.baseline-d,d).attr({zIndex:3}).add(c.legendGroup);c.legendSymbol.isMarker=!0},drawPoints:p.column.prototype.drawPoints,alignDataLabel:p.column.prototype.alignDataLabel,buildKDTree:h,applyZones:h},{haloPath:function(a){return k.prototype.haloPath.call(this,this.shapeArgs.r+a)},ttBelow:!1});u.prototype.beforePadding=function(){var a=
47this,e=this.len,k=this.chart,l=0,f=e,p=this.isXAxis,h=p?"xData":"yData",u=this.min,x={},w=Math.min(k.plotWidth,k.plotHeight),A=Number.MAX_VALUE,y=-Number.MAX_VALUE,C=this.max-u,B=e/C,D=[];g(this.series,function(b){var e=b.options;!b.bubblePadding||!b.visible&&k.options.chart.ignoreHiddenSeries||(a.allowZoomOutside=!0,D.push(b),p&&(g(["minSize","maxSize"],function(a){var c=e[a],b=/%$/.test(c),c=d(c);x[a]=b?w*c/100:c}),b.minPxSize=x.minSize,b.maxPxSize=Math.max(x.maxSize,x.minSize),b=b.zData,b.length&&
48(A=c(e.zMin,Math.min(A,Math.max(t(b),!1===e.displayNegative?e.zThreshold:-Number.MAX_VALUE))),y=c(e.zMax,Math.max(y,r(b))))))});g(D,function(c){var b=c[h],d=b.length,e;p&&c.getRadii(A,y,c.minPxSize,c.maxPxSize);if(0<C)for(;d--;)n(b[d])&&a.dataMin<=b[d]&&b[d]<=a.dataMax&&(e=c.radii[d],l=Math.min((b[d]-u)*B-e,l),f=Math.max((b[d]-u)*B+e,f))});D.length&&0<C&&!this.isLog&&(f-=e,B*=(e+l-f)/e,g([["min","userMin",l],["max","userMax",f]],function(b){void 0===c(a.options[b[0]],a[b[1]])&&(a[b[0]]+=b[2]/B)}))}})(w);
49(function(a){function r(a,d){var c=this.chart,l=this.options.animation,p=this.group,b=this.markerGroup,e=this.xAxis.center,m=c.plotLeft,h=c.plotTop;c.polar?c.renderer.isSVG&&(!0===l&&(l={}),d?(a={translateX:e[0]+m,translateY:e[1]+h,scaleX:.001,scaleY:.001},p.attr(a),b&&b.attr(a)):(a={translateX:m,translateY:h,scaleX:1,scaleY:1},p.animate(a,l),b&&b.animate(a,l),this.animate=null)):a.call(this,d)}var t=a.each,u=a.pick,g=a.seriesTypes,n=a.wrap,h=a.Series.prototype;a=a.Pointer.prototype;h.searchPointByAngle=
50function(a){var c=this.chart,k=this.xAxis.pane.center;return this.searchKDTree({clientX:180+-180/Math.PI*Math.atan2(a.chartX-k[0]-c.plotLeft,a.chartY-k[1]-c.plotTop)})};n(h,"buildKDTree",function(a){this.chart.polar&&(this.kdByAngle?this.searchPoint=this.searchPointByAngle:this.kdDimensions=2);a.apply(this)});h.toXY=function(a){var c,k=this.chart,l=a.plotX;c=a.plotY;a.rectPlotX=l;a.rectPlotY=c;c=this.xAxis.postTranslate(a.plotX,this.yAxis.len-c);a.plotX=a.polarPlotX=c.x-k.plotLeft;a.plotY=a.polarPlotY=
51c.y-k.plotTop;this.kdByAngle?(k=(l/Math.PI*180+this.xAxis.pane.options.startAngle)%360,0>k&&(k+=360),a.clientX=k):a.clientX=a.plotX};g.spline&&n(g.spline.prototype,"getPointSpline",function(a,d,k,l){var c,b,e,h,g,f,n;this.chart.polar?(c=k.plotX,b=k.plotY,a=d[l-1],e=d[l+1],this.connectEnds&&(a||(a=d[d.length-2]),e||(e=d[1])),a&&e&&(h=a.plotX,g=a.plotY,d=e.plotX,f=e.plotY,h=(1.5*c+h)/2.5,g=(1.5*b+g)/2.5,e=(1.5*c+d)/2.5,n=(1.5*b+f)/2.5,d=Math.sqrt(Math.pow(h-c,2)+Math.pow(g-b,2)),f=Math.sqrt(Math.pow(e-
52c,2)+Math.pow(n-b,2)),h=Math.atan2(g-b,h-c),g=Math.atan2(n-b,e-c),n=Math.PI/2+(h+g)/2,Math.abs(h-n)>Math.PI/2&&(n-=Math.PI),h=c+Math.cos(n)*d,g=b+Math.sin(n)*d,e=c+Math.cos(Math.PI+n)*f,n=b+Math.sin(Math.PI+n)*f,k.rightContX=e,k.rightContY=n),l?(k=["C",a.rightContX||a.plotX,a.rightContY||a.plotY,h||c,g||b,c,b],a.rightContX=a.rightContY=null):k=["M",c,b]):k=a.call(this,d,k,l);return k});n(h,"translate",function(a){var c=this.chart;a.call(this);if(c.polar&&(this.kdByAngle=c.tooltip&&c.tooltip.shared,
53!this.preventPostTranslate))for(a=this.points,c=a.length;c--;)this.toXY(a[c])});n(h,"getGraphPath",function(a,d){var c=this,l,h;if(this.chart.polar){d=d||this.points;for(l=0;l<d.length;l++)if(!d[l].isNull){h=l;break}!1!==this.options.connectEnds&&void 0!==h&&(this.connectEnds=!0,d.splice(d.length,0,d[h]));t(d,function(a){void 0===a.polarPlotY&&c.toXY(a)})}return a.apply(this,[].slice.call(arguments,1))});n(h,"animate",r);g.column&&(g=g.column.prototype,g.polarArc=function(a,d,k,h){var c=this.xAxis.center,
54b=this.yAxis.len;return this.chart.renderer.symbols.arc(c[0],c[1],b-d,null,{start:k,end:h,innerR:b-u(a,b)})},n(g,"animate",r),n(g,"translate",function(a){var c=this.xAxis,k=c.startAngleRad,h,g,b;this.preventPostTranslate=!0;a.call(this);if(c.isRadial)for(h=this.points,b=h.length;b--;)g=h[b],a=g.barX+k,g.shapeType="path",g.shapeArgs={d:this.polarArc(g.yBottom,g.plotY,a,a+g.pointWidth)},this.toXY(g),g.tooltipPos=[g.plotX,g.plotY],g.ttBelow=g.plotY>c.center[1]}),n(g,"alignDataLabel",function(a,d,g,l,
55n,b){this.chart.polar?(a=d.rectPlotX/Math.PI*180,null===l.align&&(l.align=20<a&&160>a?"left":200<a&&340>a?"right":"center"),null===l.verticalAlign&&(l.verticalAlign=45>a||315<a?"bottom":135<a&&225>a?"top":"middle"),h.alignDataLabel.call(this,d,g,l,n,b)):a.call(this,d,g,l,n,b)}));n(a,"getCoordinates",function(a,d){var c=this.chart,g={xAxis:[],yAxis:[]};c.polar?t(c.axes,function(a){var b=a.isXAxis,e=a.center,h=d.chartX-e[0]-c.plotLeft,e=d.chartY-e[1]-c.plotTop;g[b?"xAxis":"yAxis"].push({axis:a,value:a.translate(b?
56Math.PI-Math.atan2(h,e):Math.sqrt(Math.pow(h,2)+Math.pow(e,2)),!0)})}):g=a.call(this,d);return g})})(w)});