UNPKG

highcharts

Version:
1 lines 4.19 kB
import*as e from"../highcharts.js";var t,s={};s.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return s.d(t,{a:t}),t},s.d=(e,t)=>{for(var i in t)s.o(t,i)&&!s.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},s.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let i=e.default;var a=s.n(i);let r=e.default.Series;var n=s.n(r);let{noop:o}=a(),{addEvent:h,defined:l}=a();!function(e){function t(){n().prototype.init.apply(this,arguments),this.initialised=!1,this.baseSeries=null,this.eventRemovers=[],this.addEvents()}function s(){let e=this.chart,t=this.options.baseSeries,s=l(t)&&(e.series[t]||e.get(t));this.baseSeries=s||null}function i(){this.eventRemovers.push(h(this.chart,"afterLinkSeries",()=>{this.setBaseSeries(),this.baseSeries&&!this.initialised&&(this.setDerivedData(),this.addBaseSeriesEvents(),this.initialised=!0)}))}function a(){this.eventRemovers.push(h(this.baseSeries,"updatedData",()=>{this.setDerivedData()}),h(this.baseSeries,"destroy",()=>{this.baseSeries=null,this.initialised=!1}))}function r(){this.eventRemovers.forEach(e=>{e()}),n().prototype.destroy.apply(this,arguments)}e.hasDerivedData=!0,e.setDerivedData=o,e.compose=function(e){let n=e.prototype;return n.addBaseSeriesEvents=a,n.addEvents=i,n.destroy=r,n.init=t,n.setBaseSeries=s,e},e.init=t,e.setBaseSeries=s,e.addEvents=i,e.addBaseSeriesEvents=a,e.destroy=r}(t||(t={}));let d=t,u=e.default.SeriesRegistry;var p=s.n(u);let{column:v}=p().seriesTypes,{arrayMax:c,arrayMin:m,correctFloat:b,extend:f,isNumber:D,merge:g}=a(),y={"square-root":function(e){return Math.ceil(Math.sqrt(e.options.data.length))},sturges:function(e){return Math.ceil(Math.log(e.options.data.length)*Math.LOG2E)},rice:function(e){return Math.ceil(2*Math.pow(e.options.data.length,1/3))}};class S extends v{binsNumber(){let e=this.options.binsNumber,t=y[e]||"function"==typeof e&&e;return Math.ceil(t&&t(this.baseSeries)||(D(e)?e:y["square-root"](this.baseSeries)))}derivedData(e,t,s){var i;let a,r=b(c(e)),n=b(m(e)),o=[],h={},l=[];for(s=this.binWidth=b(D(s)?s||1:(r-n)/t),this.options.pointRange=Math.max(s,0),a=n;a<r&&(this.userOptions.binWidth||b(r-a)>=s||0>=b(b(n+o.length*s)-a));a=b(a+s))o.push(a),h[a]=0;0!==h[n]&&(o.push(n),h[n]=0);let d=(i=o.map(e=>parseFloat(e)),function(e){let t=1;for(;i[t]<=e;)t++;return i[--t]});for(let t of e)h[b(d(t))]++;for(let e of Object.keys(h))l.push({x:Number(e),y:h[e],x2:b(Number(e)+s)});return l.sort((e,t)=>e.x-t.x),l[l.length-1].x2=r,l}setDerivedData(){let e=this.baseSeries?.getColumn("y");if(!e?.length){this.setData([]);return}let t=this.derivedData(e,this.binsNumber(),this.options.binWidth);this.setData(t,!1)}}S.defaultOptions=g(v.defaultOptions,{binsNumber:"square-root",binWidth:void 0,pointPadding:0,groupPadding:0,grouping:!1,pointPlacement:"between",tooltip:{headerFormat:"",pointFormat:'<span style="font-size: 0.8em">{point.x} - {point.x2}</span><br/><span style="color:{point.color}">●</span> {series.name} <b>{point.y}</b><br/>'}}),f(S.prototype,{hasDerivedData:d.hasDerivedData}),d.compose(S),p().registerSeriesType("histogram",S);let{areaspline:M}=p().seriesTypes,{correctFloat:x,isNumber:O,merge:E}=a();class N extends M{static mean(e){let t=e.length,s=e.reduce(function(e,t){return e+t},0);return t>0&&s/t}static standardDeviation(e,t){let s=e.length;t=O(t)?t:N.mean(e);let i=e.reduce((e,s)=>{let i=s-t;return e+i*i},0);return s>1&&Math.sqrt(i/(s-1))}static normalDensity(e,t,s){let i=e-t;return Math.exp(-(i*i)/(2*s*s))/(s*Math.sqrt(2*Math.PI))}derivedData(e,t){let s=this.options,i=s.intervals,a=s.pointsInInterval,r=i*a*2+1,n=t/a,o=[],h=e-i*t;for(let s=0;s<r;s++)o.push([h,N.normalDensity(h,e,t)]),h+=n;return o}setDerivedData(){this.baseSeries?.getColumn("y").length&&(this.setMean(),this.setStandardDeviation(),this.setData(this.derivedData(this.mean||0,this.standardDeviation||0),!1,void 0,!1))}setMean(){this.mean=x(N.mean(this.baseSeries?.getColumn("y")||[]))}setStandardDeviation(){this.standardDeviation=x(N.standardDeviation(this.baseSeries?.getColumn("y")||[],this.mean))}}N.defaultOptions=E(M.defaultOptions,{intervals:3,pointsInInterval:3,marker:{enabled:!1}}),d.compose(N),p().registerSeriesType("bellcurve",N);let q=a();export{q as default};