Socket
Socket
Sign inDemoInstall

vega-statistics

Package Overview
Dependencies
Maintainers
1
Versions
32
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vega-statistics - npm Package Compare versions

Comparing version 1.7.10 to 1.8.0

217

build/vega-statistics.js
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('d3-array')) :
typeof define === 'function' && define.amd ? define(['exports', 'd3-array'], factory) :
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.vega = {}, global.d3));
}(this, (function (exports, d3Array) { 'use strict';
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
typeof define === 'function' && define.amd ? define(['exports'], factory) :
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.vega = {}));
})(this, (function (exports) { 'use strict';
function* numbers (values, valueof) {
function* numbers$1 (values, valueof) {
if (valueof == null) {

@@ -27,8 +27,197 @@ for (let value of values) {

function ascending(a, b) {
return a == null || b == null ? NaN : a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;
}
function number(x) {
return x === null ? NaN : +x;
}
function* numbers(values, valueof) {
if (valueof === undefined) {
for (let value of values) {
if (value != null && (value = +value) >= value) {
yield value;
}
}
} else {
let index = -1;
for (let value of values) {
if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {
yield value;
}
}
}
}
function variance(values, valueof) {
let count = 0;
let delta;
let mean = 0;
let sum = 0;
if (valueof === undefined) {
for (let value of values) {
if (value != null && (value = +value) >= value) {
delta = value - mean;
mean += delta / ++count;
sum += delta * (value - mean);
}
}
} else {
let index = -1;
for (let value of values) {
if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {
delta = value - mean;
mean += delta / ++count;
sum += delta * (value - mean);
}
}
}
if (count > 1) return sum / (count - 1);
}
function deviation(values, valueof) {
const v = variance(values, valueof);
return v ? Math.sqrt(v) : v;
}
function compareDefined(compare = ascending) {
if (compare === ascending) return ascendingDefined;
if (typeof compare !== "function") throw new TypeError("compare is not a function");
return (a, b) => {
const x = compare(a, b);
if (x || x === 0) return x;
return (compare(b, b) === 0) - (compare(a, a) === 0);
};
}
function ascendingDefined(a, b) {
return (a == null || !(a >= a)) - (b == null || !(b >= b)) || (a < b ? -1 : a > b ? 1 : 0);
}
function max(values, valueof) {
let max;
if (valueof === undefined) {
for (const value of values) {
if (value != null && (max < value || max === undefined && value >= value)) {
max = value;
}
}
} else {
let index = -1;
for (let value of values) {
if ((value = valueof(value, ++index, values)) != null && (max < value || max === undefined && value >= value)) {
max = value;
}
}
}
return max;
}
function min(values, valueof) {
let min;
if (valueof === undefined) {
for (const value of values) {
if (value != null && (min > value || min === undefined && value >= value)) {
min = value;
}
}
} else {
let index = -1;
for (let value of values) {
if ((value = valueof(value, ++index, values)) != null && (min > value || min === undefined && value >= value)) {
min = value;
}
}
}
return min;
}
// ISC license, Copyright 2018 Vladimir Agafonkin.
function quickselect(array, k, left = 0, right = array.length - 1, compare) {
compare = compare === undefined ? ascendingDefined : compareDefined(compare);
while (right > left) {
if (right - left > 600) {
const n = right - left + 1;
const m = k - left + 1;
const z = Math.log(n);
const s = 0.5 * Math.exp(2 * z / 3);
const sd = 0.5 * Math.sqrt(z * s * (n - s) / n) * (m - n / 2 < 0 ? -1 : 1);
const newLeft = Math.max(left, Math.floor(k - m * s / n + sd));
const newRight = Math.min(right, Math.floor(k + (n - m) * s / n + sd));
quickselect(array, k, newLeft, newRight, compare);
}
const t = array[k];
let i = left;
let j = right;
swap(array, left, k);
if (compare(array[right], t) > 0) swap(array, left, right);
while (i < j) {
swap(array, i, j), ++i, --j;
while (compare(array[i], t) < 0) ++i;
while (compare(array[j], t) > 0) --j;
}
if (compare(array[left], t) === 0) swap(array, left, j);else ++j, swap(array, j, right);
if (j <= k) left = j + 1;
if (k <= j) right = j - 1;
}
return array;
}
function swap(array, i, j) {
const t = array[i];
array[i] = array[j];
array[j] = t;
}
function quantile(values, p, valueof) {
values = Float64Array.from(numbers(values, valueof));
if (!(n = values.length)) return;
if ((p = +p) <= 0 || n < 2) return min(values);
if (p >= 1) return max(values);
var n,
i = (n - 1) * p,
i0 = Math.floor(i),
value0 = max(quickselect(values, i0).subarray(0, i0 + 1)),
value1 = min(values.subarray(i0 + 1));
return value0 + (value1 - value0) * (i - i0);
}
function quantileSorted(values, p, valueof = number) {
if (!(n = values.length)) return;
if ((p = +p) <= 0 || n < 2) return +valueof(values[0], 0, values);
if (p >= 1) return +valueof(values[n - 1], n - 1, values);
var n,
i = (n - 1) * p,
i0 = Math.floor(i),
value0 = +valueof(values[i0], i0, values),
value1 = +valueof(values[i0 + 1], i0 + 1, values);
return value0 + (value1 - value0) * (i - i0);
}
function median(values, valueof) {
return quantile(values, 0.5, valueof);
}
function quantiles (array, p, f) {
const values = Float64Array.from(numbers(array, f)); // don't depend on return value from typed array sort call
const values = Float64Array.from(numbers$1(array, f)); // don't depend on return value from typed array sort call
// protects against undefined sort results in Safari (vega/vega-lite#4964)
values.sort(d3Array.ascending);
return p.map(_ => d3Array.quantileSorted(values, _));
values.sort(ascending);
return p.map(_ => quantileSorted(values, _));
}

@@ -44,3 +233,3 @@

const n = array.length,
d = d3Array.deviation(array, f),
d = deviation(array, f),
q = quartiles(array, f),

@@ -120,3 +309,3 @@ h = (q[2] - q[0]) / 1.34,

if (!array.length) return [undefined, undefined];
const values = Float64Array.from(numbers(array, f)),
const values = Float64Array.from(numbers$1(array, f)),
n = values.length,

@@ -134,4 +323,4 @@ m = samples;

mu.sort(d3Array.ascending);
return [d3Array.quantile(mu, alpha / 2), d3Array.quantile(mu, 1 - alpha / 2)];
mu.sort(ascending);
return [quantile(mu, alpha / 2), quantile(mu, 1 - alpha / 2)];
}

@@ -1130,3 +1319,3 @@

const medianResidual = d3Array.median(residuals);
const medianResidual = median(residuals);
if (Math.abs(medianResidual) < epsilon) break;

@@ -1312,2 +1501,2 @@

})));
}));

2

build/vega-statistics.min.js

@@ -1,2 +0,2 @@

!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((t="undefined"!=typeof globalThis?globalThis:t||self).vega={})}(this,(function(t){"use strict";function*n(t,n){if(null==n)for(let n of t)null!=n&&""!==n&&(n=+n)>=n&&(yield n);else{let e=-1;for(let r of t)r=n(r,++e,t),null!=r&&""!==r&&(r=+r)>=r&&(yield r)}}function e(t,n){return t<n?-1:t>n?1:t>=n?0:NaN}function r(t){return null===t?NaN:+t}function o(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e<n||void 0===e&&n>=n)&&(e=n);else{let r=-1;for(let o of t)null!=(o=n(o,++r,t))&&(e<o||void 0===e&&o>=o)&&(e=o)}return e}function l(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e>n||void 0===e&&n>=n)&&(e=n);else{let r=-1;for(let o of t)null!=(o=n(o,++r,t))&&(e>o||void 0===e&&o>=o)&&(e=o)}return e}function u(t,n,r=0,o=t.length-1,l=e){for(;o>r;){if(o-r>600){const e=o-r+1,f=n-r+1,a=Math.log(e),i=.5*Math.exp(2*a/3),s=.5*Math.sqrt(a*i*(e-i)/e)*(f-e/2<0?-1:1);u(t,n,Math.max(r,Math.floor(n-f*i/e+s)),Math.min(o,Math.floor(n+(e-f)*i/e+s)),l)}const e=t[n];let a=r,i=o;for(f(t,r,n),l(t[o],e)>0&&f(t,r,o);a<i;){for(f(t,a,i),++a,--i;l(t[a],e)<0;)++a;for(;l(t[i],e)>0;)--i}0===l(t[r],e)?f(t,r,i):(++i,f(t,i,o)),i<=n&&(r=i+1),n<=i&&(o=i-1)}return t}function f(t,n,e){const r=t[n];t[n]=t[e],t[e]=r}function a(t,n,e){if(t=Float64Array.from(function*(t,n){if(void 0===n)for(let n of t)null!=n&&(n=+n)>=n&&(yield n);else{let e=-1;for(let r of t)null!=(r=n(r,++e,t))&&(r=+r)>=r&&(yield r)}}(t,e)),r=t.length){if((n=+n)<=0||r<2)return l(t);if(n>=1)return o(t);var r,f=(r-1)*n,a=Math.floor(f),i=o(u(t,a).subarray(0,a+1));return i+(l(t.subarray(a+1))-i)*(f-a)}}function i(t,o,l){const u=Float64Array.from(n(t,l));return u.sort(e),o.map((t=>function(t,n,e=r){if(o=t.length){if((n=+n)<=0||o<2)return+e(t[0],0,t);if(n>=1)return+e(t[o-1],o-1,t);var o,l=(o-1)*n,u=Math.floor(l),f=+e(t[u],u,t);return f+(+e(t[u+1],u+1,t)-f)*(l-u)}}(u,t)))}function s(t,n){return i(t,[.25,.5,.75],n)}function c(t,n){const e=t.length,r=function(t,n){const e=function(t,n){let e,r=0,o=0,l=0;if(void 0===n)for(let n of t)null!=n&&(n=+n)>=n&&(e=n-o,o+=e/++r,l+=e*(n-o));else{let u=-1;for(let f of t)null!=(f=n(f,++u,t))&&(f=+f)>=f&&(e=f-o,o+=e/++r,l+=e*(f-o))}if(r>1)return l/(r-1)}(t,n);return e?Math.sqrt(e):e}(t,n),o=s(t,n),l=(o[2]-o[0])/1.34;return 1.06*(Math.min(r,l)||r||Math.abs(o[0])||1)*Math.pow(e,-.2)}t.random=Math.random;const h=Math.sqrt(2*Math.PI),d=Math.SQRT2;let p=NaN;function M(n,e){n=n||0,e=null==e?1:e;let r,o,l=0,u=0;if(p==p)l=p,p=NaN;else{do{l=2*t.random()-1,u=2*t.random()-1,r=l*l+u*u}while(0===r||r>1);o=Math.sqrt(-2*Math.log(r)/r),l*=o,p=u*o}return n+l*e}function m(t,n,e){const r=(t-(n||0))/(e=null==e?1:e);return Math.exp(-.5*r*r)/(e*h)}function g(t,n,e){const r=(t-(n=n||0))/(e=null==e?1:e),o=Math.abs(r);let l;if(o>37)l=0;else{const t=Math.exp(-o*o/2);let n;o<7.07106781186547?(n=.0352624965998911*o+.700383064443688,n=n*o+6.37396220353165,n=n*o+33.912866078383,n=n*o+112.079291497871,n=n*o+221.213596169931,n=n*o+220.206867912376,l=t*n,n=.0883883476483184*o+1.75566716318264,n=n*o+16.064177579207,n=n*o+86.7807322029461,n=n*o+296.564248779674,n=n*o+637.333633378831,n=n*o+793.826512519948,n=n*o+440.413735824752,l/=n):(n=o+.65,n=o+4/n,n=o+3/n,n=o+2/n,n=o+1/n,l=t/n/2.506628274631)}return r>0?1-l:l}function b(t,n,e){return t<0||t>1?NaN:(n||0)+(null==e?1:e)*d*function(t){let n,e=-Math.log((1-t)*(1+t));e<6.25?(e-=3.125,n=-364441206401782e-35,n=n*e-16850591381820166e-35,n=128584807152564e-32+n*e,n=11157877678025181e-33+n*e,n=n*e-1333171662854621e-31,n=20972767875968562e-33+n*e,n=6637638134358324e-30+n*e,n=n*e-4054566272975207e-29,n=n*e-8151934197605472e-29,n=26335093153082323e-28+n*e,n=n*e-12975133253453532e-27,n=n*e-5415412054294628e-26,n=1.0512122733215323e-9+n*e,n=n*e-4.112633980346984e-9,n=n*e-2.9070369957882005e-8,n=4.2347877827932404e-7+n*e,n=n*e-13654692000834679e-22,n=n*e-13882523362786469e-21,n=.00018673420803405714+n*e,n=n*e-.000740702534166267,n=n*e-.006033670871430149,n=.24015818242558962+n*e,n=1.6536545626831027+n*e):e<16?(e=Math.sqrt(e)-3.25,n=2.2137376921775787e-9,n=9.075656193888539e-8+n*e,n=n*e-2.7517406297064545e-7,n=1.8239629214389228e-8+n*e,n=15027403968909828e-22+n*e,n=n*e-4013867526981546e-21,n=29234449089955446e-22+n*e,n=12475304481671779e-21+n*e,n=n*e-47318229009055734e-21,n=6828485145957318e-20+n*e,n=24031110387097894e-21+n*e,n=n*e-.0003550375203628475,n=.0009532893797373805+n*e,n=n*e-.0016882755560235047,n=.002491442096107851+n*e,n=n*e-.003751208507569241,n=.005370914553590064+n*e,n=1.0052589676941592+n*e,n=3.0838856104922208+n*e):Number.isFinite(e)?(e=Math.sqrt(e)-5,n=-27109920616438573e-27,n=n*e-2.555641816996525e-10,n=1.5076572693500548e-9+n*e,n=n*e-3.789465440126737e-9,n=7.61570120807834e-9+n*e,n=n*e-1.496002662714924e-8,n=2.914795345090108e-8+n*e,n=n*e-6.771199775845234e-8,n=2.2900482228026655e-7+n*e,n=n*e-9.9298272942317e-7,n=4526062597223154e-21+n*e,n=n*e-1968177810553167e-20,n=7599527703001776e-20+n*e,n=n*e-.00021503011930044477,n=n*e-.00013871931833623122,n=1.0103004648645344+n*e,n=4.849906401408584+n*e):n=1/0;return n*t}(2*t-1)}function x(t,n){let e,r;const o={mean(t){return arguments.length?(e=t||0,o):e},stdev(t){return arguments.length?(r=null==t?1:t,o):r},sample:()=>M(e,r),pdf:t=>m(t,e,r),cdf:t=>g(t,e,r),icdf:t=>b(t,e,r)};return o.mean(t).stdev(n)}function y(t,n){return t=t||0,n=null==n?1:n,Math.exp(t+M()*n)}function N(t,n,e){if(t<=0)return 0;n=n||0,e=null==e?1:e;const r=(Math.log(t)-n)/e;return Math.exp(-.5*r*r)/(e*h*t)}function v(t,n,e){return g(Math.log(t),n,e)}function w(t,n,e){return Math.exp(b(t,n,e))}function q(n,e){return null==e&&(e=null==n?1:n,n=0),n+(e-n)*t.random()}function A(t,n,e){return null==e&&(e=null==n?1:n,n=0),t>=n&&t<=e?1/(e-n):0}function F(t,n,e){return null==e&&(e=null==n?1:n,n=0),t<n?0:t>e?1:(t-n)/(e-n)}function L(t,n,e){return null==e&&(e=null==n?1:n,n=0),t>=0&&t<=1?n+t*(e-n):NaN}function S(t,n,e,r){const o=r-t*t,l=Math.abs(o)<1e-24?0:(e-t*n)/o;return[n-l*t,l]}function E(t,n,e,r){t=t.filter((t=>{let r=n(t),o=e(t);return null!=r&&(r=+r)>=r&&null!=o&&(o=+o)>=o})),r&&t.sort(((t,e)=>n(t)-n(e)));const o=t.length,l=new Float64Array(o),u=new Float64Array(o);let f,a,i,s=0,c=0,h=0;for(i of t)l[s]=f=+n(i),u[s]=a=+e(i),++s,c+=(f-c)/s,h+=(a-h)/s;for(s=0;s<o;++s)l[s]-=c,u[s]-=h;return[l,u,c,h]}function P(t,n,e,r){let o,l,u=-1;for(const f of t)o=n(f),l=e(f),null!=o&&(o=+o)>=o&&null!=l&&(l=+l)>=l&&r(o,l,++u)}function U(t,n,e,r,o){let l=0,u=0;return P(t,n,e,((t,n)=>{const e=n-o(t),f=n-r;l+=e*e,u+=f*f})),1-l/u}function I(t,n,e){let r=0,o=0,l=0,u=0,f=0;P(t,n,e,((t,n)=>{++f,r+=(t-r)/f,o+=(n-o)/f,l+=(t*n-l)/f,u+=(t*t-u)/f}));const a=S(r,o,l,u),i=t=>a[0]+a[1]*t;return{coef:a,predict:i,rSquared:U(t,n,e,o,i)}}function k(t,n,e){const[r,o,l,u]=E(t,n,e),f=r.length;let a,i,s,c,h=0,d=0,p=0,M=0,m=0;for(a=0;a<f;)i=r[a],s=o[a++],c=i*i,h+=(c-h)/a,d+=(c*i-d)/a,p+=(c*c-p)/a,M+=(i*s-M)/a,m+=(c*s-m)/a;const g=p-h*h,b=h*g-d*d,x=(m*h-M*d)/b,y=(M*g-m*d)/b,N=-x*h,v=t=>x*(t-=l)*t+y*t+N+u;return{coef:[N-y*l+x*l*l+u,y-2*x*l,x],predict:v,rSquared:U(t,n,e,u,v)}}function C(t,n,e,r){const o=Array(t);let l,u,f,a;for(l=0;l<t;++l)o[l]=0;for(l=t-1;l>=0;--l)for(f=n[l],a=1,o[l]+=f,u=1;u<=l;++u)a*=(l+1-u)/u,o[l-u]+=f*Math.pow(e,u)*a;return o[0]+=r,o}function D(t){return(t=1-t*t*t)*t*t}function R(t,n,e){const r=t[n];let o=e[0],l=e[1]+1;if(!(l>=t.length))for(;n>o&&t[l]-r<=r-t[o];)e[0]=++o,e[1]=l,++l}const T=.5*Math.PI/180;function j(t,n,e,r,o){const l=Math.atan2(o*(e[1]-t[1]),r*(e[0]-t[0])),u=Math.atan2(o*(n[1]-t[1]),r*(n[0]-t[0]));return Math.abs(l-u)}t.bandwidthNRD=c,t.bin=function(t){const n=t.maxbins||20,e=t.base||10,r=Math.log(e),o=t.divide||[5,2];let l,u,f,a,i,s,c=t.extent[0],h=t.extent[1];const d=t.span||h-c||Math.abs(c)||1;if(t.step)l=t.step;else if(t.steps){for(a=d/n,i=0,s=t.steps.length;i<s&&t.steps[i]<a;++i);l=t.steps[Math.max(0,i-1)]}else{for(u=Math.ceil(Math.log(n)/r),f=t.minstep||0,l=Math.max(f,Math.pow(e,Math.round(Math.log(d)/r)-u));Math.ceil(d/l)>n;)l*=e;for(i=0,s=o.length;i<s;++i)a=l/o[i],a>=f&&d/a<=n&&(l=a)}a=Math.log(l);const p=a>=0?0:1+~~(-a/r),M=Math.pow(e,-p-1);return(t.nice||void 0===t.nice)&&(a=Math.floor(c/l+M)*l,c=c<a?a-l:a,h=Math.ceil(h/l)*l),{start:c,stop:h===c?c+l:h,step:l}},t.bootstrapCI=function(r,o,l,u){if(!r.length)return[void 0,void 0];const f=Float64Array.from(n(r,u)),i=f.length,s=o;let c,h,d,p;for(d=0,p=Array(s);d<s;++d){for(c=0,h=0;h<i;++h)c+=f[~~(t.random()*i)];p[d]=c/i}return p.sort(e),[a(p,l/2),a(p,1-l/2)]},t.cumulativeLogNormal=v,t.cumulativeNormal=g,t.cumulativeUniform=F,t.densityLogNormal=N,t.densityNormal=m,t.densityUniform=A,t.dotbin=function(t,n,e,r){r=r||(t=>t);const o=t.length,l=new Float64Array(o);let u,f=0,a=1,i=r(t[0]),s=i,c=i+n;for(;a<o;++a){if(u=r(t[a]),u>=c){for(s=(i+s)/2;f<a;++f)l[f]=s;c=u+n,i=u}s=u}for(s=(i+s)/2;f<a;++f)l[f]=s;return e?function(t,n){const e=t.length;let r,o,l=0,u=1;for(;t[l]===t[u];)++u;for(;u<e;){for(r=u+1;t[u]===t[r];)++r;if(t[u]-t[u-1]<n){for(o=u+(l+r-u-u>>1);o<u;)t[o++]=t[u];for(;o>u;)t[o--]=t[l]}l=u,u=r}return t}(l,n+n/4):l},t.quantileLogNormal=w,t.quantileNormal=b,t.quantileUniform=L,t.quantiles=i,t.quartiles=s,t.randomInteger=function(n,e){let r,o,l;null==e&&(e=n,n=0);const u={min(t){return arguments.length?(r=t||0,l=o-r,u):r},max(t){return arguments.length?(o=t||0,l=o-r,u):o},sample:()=>r+Math.floor(l*t.random()),pdf:t=>t===Math.floor(t)&&t>=r&&t<o?1/l:0,cdf(t){const n=Math.floor(t);return n<r?0:n>=o?1:(n-r+1)/l},icdf:t=>t>=0&&t<=1?r-1+Math.floor(t*l):NaN};return u.min(n).max(e)},t.randomKDE=function(n,e){const r=x();let o=0;const l={data(t){return arguments.length?(n=t,o=t?t.length:0,l.bandwidth(e)):n},bandwidth(t){return arguments.length?(!(e=t)&&n&&(e=c(n)),l):e},sample:()=>n[~~(t.random()*o)]+e*r.sample(),pdf(t){let l=0,u=0;for(;u<o;++u)l+=r.pdf((t-n[u])/e);return l/e/o},cdf(t){let l=0,u=0;for(;u<o;++u)l+=r.cdf((t-n[u])/e);return l/o},icdf(){throw Error("KDE icdf not supported.")}};return l.data(n)},t.randomLCG=function(t){return function(){return(t=(1103515245*t+12345)%2147483647)/2147483647}},t.randomLogNormal=function(t,n){let e,r;const o={mean(t){return arguments.length?(e=t||0,o):e},stdev(t){return arguments.length?(r=null==t?1:t,o):r},sample:()=>y(e,r),pdf:t=>N(t,e,r),cdf:t=>v(t,e,r),icdf:t=>w(t,e,r)};return o.mean(t).stdev(n)},t.randomMixture=function(n,e){let r,o=0;const l={weights(t){return arguments.length?(r=function(t){const n=[];let e,r=0;for(e=0;e<o;++e)r+=n[e]=null==t[e]?1:+t[e];for(e=0;e<o;++e)n[e]/=r;return n}(e=t||[]),l):e},distributions(t){return arguments.length?(t?(o=t.length,n=t):(o=0,n=[]),l.weights(e)):n},sample(){const e=t.random();let l=n[o-1],u=r[0],f=0;for(;f<o-1;u+=r[++f])if(e<u){l=n[f];break}return l.sample()},pdf(t){let e=0,l=0;for(;l<o;++l)e+=r[l]*n[l].pdf(t);return e},cdf(t){let e=0,l=0;for(;l<o;++l)e+=r[l]*n[l].cdf(t);return e},icdf(){throw Error("Mixture icdf not supported.")}};return l.distributions(n).weights(e)},t.randomNormal=x,t.randomUniform=function(t,n){let e,r;const o={min(t){return arguments.length?(e=t||0,o):e},max(t){return arguments.length?(r=null==t?1:t,o):r},sample:()=>q(e,r),pdf:t=>A(t,e,r),cdf:t=>F(t,e,r),icdf:t=>L(t,e,r)};return null==n&&(n=null==t?1:t,t=0),o.min(t).max(n)},t.regressionExp=function(t,n,e){const[r,o,l,u]=E(t,n,e);let f,a,i,s=0,c=0,h=0,d=0,p=0;P(t,n,e,((t,n)=>{f=r[p++],a=Math.log(n),i=f*n,s+=(n*a-s)/p,c+=(i-c)/p,h+=(i*a-h)/p,d+=(f*i-d)/p}));const[M,m]=S(c/u,s/u,h/u,d/u),g=t=>Math.exp(M+m*(t-l));return{coef:[Math.exp(M-m*l),m],predict:g,rSquared:U(t,n,e,u,g)}},t.regressionLinear=I,t.regressionLoess=function(t,n,e,r){const[o,l,u,f]=E(t,n,e,!0),i=o.length,s=Math.max(2,~~(r*i)),c=new Float64Array(i),h=new Float64Array(i),d=new Float64Array(i).fill(1);for(let t=-1;++t<=2;){const n=[0,s-1];for(let t=0;t<i;++t){const e=o[t],r=n[0],u=n[1],f=e-o[r]>o[u]-e?r:u;let a=0,i=0,s=0,p=0,M=0;const m=1/Math.abs(o[f]-e||1);for(let t=r;t<=u;++t){const n=o[t],r=l[t],u=D(Math.abs(e-n)*m)*d[t],f=n*u;a+=u,i+=f,s+=r*u,p+=r*f,M+=n*f}const[g,b]=S(i/a,s/a,p/a,M/a);c[t]=g+b*e,h[t]=Math.abs(l[t]-c[t]),R(o,t+1,n)}if(2===t)break;const e=a(h,.5,void 0);if(Math.abs(e)<1e-12)break;for(let t,n,r=0;r<i;++r)t=h[r]/(6*e),d[r]=t>=1?1e-12:(n=1-t*t)*n}return function(t,n,e,r){const o=t.length,l=[];let u,f=0,a=0,i=[];for(;f<o;++f)u=t[f]+e,i[0]===u?i[1]+=(n[f]-i[1])/++a:(a=0,i[1]+=r,i=[u,n[f]],l.push(i));return i[1]+=r,l}(o,c,u,f)},t.regressionLog=function(t,n,e){let r=0,o=0,l=0,u=0,f=0;P(t,n,e,((t,n)=>{++f,t=Math.log(t),r+=(t-r)/f,o+=(n-o)/f,l+=(t*n-l)/f,u+=(t*t-u)/f}));const a=S(r,o,l,u),i=t=>a[0]+a[1]*Math.log(t);return{coef:a,predict:i,rSquared:U(t,n,e,o,i)}},t.regressionPoly=function(t,n,e,r){if(1===r)return I(t,n,e);if(2===r)return k(t,n,e);const[o,l,u,f]=E(t,n,e),a=o.length,i=[],s=[],c=r+1;let h,d,p,M,m;for(h=0;h<c;++h){for(p=0,M=0;p<a;++p)M+=Math.pow(o[p],h)*l[p];for(i.push(M),m=new Float64Array(c),d=0;d<c;++d){for(p=0,M=0;p<a;++p)M+=Math.pow(o[p],h+d);m[d]=M}s.push(m)}s.push(i);const g=function(t){const n=t.length-1,e=[];let r,o,l,u,f;for(r=0;r<n;++r){for(u=r,o=r+1;o<n;++o)Math.abs(t[r][o])>Math.abs(t[r][u])&&(u=o);for(l=r;l<n+1;++l)f=t[l][r],t[l][r]=t[l][u],t[l][u]=f;for(o=r+1;o<n;++o)for(l=n;l>=r;l--)t[l][o]-=t[l][r]*t[r][o]/t[r][r]}for(o=n-1;o>=0;--o){for(f=0,l=o+1;l<n;++l)f+=t[l][o]*e[l];e[o]=(t[n][o]-f)/t[o][o]}return e}(s),b=t=>{t-=u;let n=f+g[0]+g[1]*t+g[2]*t*t;for(h=3;h<c;++h)n+=g[h]*Math.pow(t,h);return n};return{coef:C(c,g,-u,f),predict:b,rSquared:U(t,n,e,f,b)}},t.regressionPow=function(t,n,e){let r=0,o=0,l=0,u=0,f=0,a=0;P(t,n,e,((t,n)=>{const e=Math.log(t),i=Math.log(n);++a,r+=(e-r)/a,o+=(i-o)/a,l+=(e*i-l)/a,u+=(e*e-u)/a,f+=(n-f)/a}));const i=S(r,o,l,u),s=t=>i[0]*Math.pow(t,i[1]);return i[0]=Math.exp(i[0]),{coef:i,predict:s,rSquared:U(t,n,e,f,s)}},t.regressionQuad=k,t.sampleCurve=function(t,n,e,r){e=e||25,r=Math.max(e,r||200);const o=n=>[n,t(n)],l=n[0],u=n[1],f=u-l,a=f/r,i=[o(l)],s=[];if(e===r){for(let t=1;t<r;++t)i.push(o(l+t/e*f));return i.push(o(u)),i}s.push(o(u));for(let t=e;--t>0;)s.push(o(l+t/e*f));let c=i[0],h=s[s.length-1];const d=1/f,p=function(t,n){let e=t,r=t;const o=n.length;for(let t=0;t<o;++t){const o=n[t][1];o<e&&(e=o),o>r&&(r=o)}return 1/(r-e)}(c[1],s);for(;h;){const t=o((c[0]+h[0])/2);t[0]-c[0]>=a&&j(c,t,h,d,p)>T?s.push(t):(c=h,i.push(h),s.pop()),h=s[s.length-1]}return i},t.sampleLogNormal=y,t.sampleNormal=M,t.sampleUniform=q,t.setRandom=function(n){t.random=n},Object.defineProperty(t,"__esModule",{value:!0})}));
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((t="undefined"!=typeof globalThis?globalThis:t||self).vega={})}(this,(function(t){"use strict";function*n(t,n){if(null==n)for(let n of t)null!=n&&""!==n&&(n=+n)>=n&&(yield n);else{let e=-1;for(let r of t)r=n(r,++e,t),null!=r&&""!==r&&(r=+r)>=r&&(yield r)}}function e(t,n){return null==t||null==n?NaN:t<n?-1:t>n?1:t>=n?0:NaN}function r(t){return null===t?NaN:+t}function o(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e;if(t===e)return l;if("function"!=typeof t)throw new TypeError("compare is not a function");return(n,e)=>{const r=t(n,e);return r||0===r?r:(0===t(e,e))-(0===t(n,n))}}function l(t,n){return(null==t||!(t>=t))-(null==n||!(n>=n))||(t<n?-1:t>n?1:0)}function u(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e<n||void 0===e&&n>=n)&&(e=n);else{let r=-1;for(let o of t)null!=(o=n(o,++r,t))&&(e<o||void 0===e&&o>=o)&&(e=o)}return e}function f(t,n){let e;if(void 0===n)for(const n of t)null!=n&&(e>n||void 0===e&&n>=n)&&(e=n);else{let r=-1;for(let o of t)null!=(o=n(o,++r,t))&&(e>o||void 0===e&&o>=o)&&(e=o)}return e}function a(t,n){let e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:t.length-1,u=arguments.length>4?arguments[4]:void 0;for(u=void 0===u?l:o(u);r>e;){if(r-e>600){const o=r-e+1,l=n-e+1,f=Math.log(o),i=.5*Math.exp(2*f/3),s=.5*Math.sqrt(f*i*(o-i)/o)*(l-o/2<0?-1:1);a(t,n,Math.max(e,Math.floor(n-l*i/o+s)),Math.min(r,Math.floor(n+(o-l)*i/o+s)),u)}const o=t[n];let l=e,f=r;for(i(t,e,n),u(t[r],o)>0&&i(t,e,r);l<f;){for(i(t,l,f),++l,--f;u(t[l],o)<0;)++l;for(;u(t[f],o)>0;)--f}0===u(t[e],o)?i(t,e,f):(++f,i(t,f,r)),f<=n&&(e=f+1),n<=f&&(r=f-1)}return t}function i(t,n,e){const r=t[n];t[n]=t[e],t[e]=r}function s(t,n,e){if(t=Float64Array.from(function*(t,n){if(void 0===n)for(let n of t)null!=n&&(n=+n)>=n&&(yield n);else{let e=-1;for(let r of t)null!=(r=n(r,++e,t))&&(r=+r)>=r&&(yield r)}}(t,e)),r=t.length){if((n=+n)<=0||r<2)return f(t);if(n>=1)return u(t);var r,o=(r-1)*n,l=Math.floor(o),i=u(a(t,l).subarray(0,l+1));return i+(f(t.subarray(l+1))-i)*(o-l)}}function c(t,o,l){const u=Float64Array.from(n(t,l));return u.sort(e),o.map((t=>function(t,n){let e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:r;if(o=t.length){if((n=+n)<=0||o<2)return+e(t[0],0,t);if(n>=1)return+e(t[o-1],o-1,t);var o,l=(o-1)*n,u=Math.floor(l),f=+e(t[u],u,t);return f+(+e(t[u+1],u+1,t)-f)*(l-u)}}(u,t)))}function h(t,n){return c(t,[.25,.5,.75],n)}function d(t,n){const e=t.length,r=function(t,n){const e=function(t,n){let e,r=0,o=0,l=0;if(void 0===n)for(let n of t)null!=n&&(n=+n)>=n&&(e=n-o,o+=e/++r,l+=e*(n-o));else{let u=-1;for(let f of t)null!=(f=n(f,++u,t))&&(f=+f)>=f&&(e=f-o,o+=e/++r,l+=e*(f-o))}if(r>1)return l/(r-1)}(t,n);return e?Math.sqrt(e):e}(t,n),o=h(t,n),l=(o[2]-o[0])/1.34;return 1.06*(Math.min(r,l)||r||Math.abs(o[0])||1)*Math.pow(e,-.2)}t.random=Math.random;const p=Math.sqrt(2*Math.PI),m=Math.SQRT2;let M=NaN;function g(n,e){n=n||0,e=null==e?1:e;let r,o,l=0,u=0;if(M==M)l=M,M=NaN;else{do{l=2*t.random()-1,u=2*t.random()-1,r=l*l+u*u}while(0===r||r>1);o=Math.sqrt(-2*Math.log(r)/r),l*=o,M=u*o}return n+l*e}function b(t,n,e){const r=(t-(n||0))/(e=null==e?1:e);return Math.exp(-.5*r*r)/(e*p)}function v(t,n,e){const r=(t-(n=n||0))/(e=null==e?1:e),o=Math.abs(r);let l;if(o>37)l=0;else{const t=Math.exp(-o*o/2);let n;o<7.07106781186547?(n=.0352624965998911*o+.700383064443688,n=n*o+6.37396220353165,n=n*o+33.912866078383,n=n*o+112.079291497871,n=n*o+221.213596169931,n=n*o+220.206867912376,l=t*n,n=.0883883476483184*o+1.75566716318264,n=n*o+16.064177579207,n=n*o+86.7807322029461,n=n*o+296.564248779674,n=n*o+637.333633378831,n=n*o+793.826512519948,n=n*o+440.413735824752,l/=n):(n=o+.65,n=o+4/n,n=o+3/n,n=o+2/n,n=o+1/n,l=t/n/2.506628274631)}return r>0?1-l:l}function y(t,n,e){return t<0||t>1?NaN:(n||0)+(null==e?1:e)*m*function(t){let n,e=-Math.log((1-t)*(1+t));e<6.25?(e-=3.125,n=-364441206401782e-35,n=n*e-16850591381820166e-35,n=128584807152564e-32+n*e,n=11157877678025181e-33+n*e,n=n*e-1333171662854621e-31,n=20972767875968562e-33+n*e,n=6637638134358324e-30+n*e,n=n*e-4054566272975207e-29,n=n*e-8151934197605472e-29,n=26335093153082323e-28+n*e,n=n*e-12975133253453532e-27,n=n*e-5415412054294628e-26,n=1.0512122733215323e-9+n*e,n=n*e-4.112633980346984e-9,n=n*e-2.9070369957882005e-8,n=4.2347877827932404e-7+n*e,n=n*e-13654692000834679e-22,n=n*e-13882523362786469e-21,n=.00018673420803405714+n*e,n=n*e-.000740702534166267,n=n*e-.006033670871430149,n=.24015818242558962+n*e,n=1.6536545626831027+n*e):e<16?(e=Math.sqrt(e)-3.25,n=2.2137376921775787e-9,n=9.075656193888539e-8+n*e,n=n*e-2.7517406297064545e-7,n=1.8239629214389228e-8+n*e,n=15027403968909828e-22+n*e,n=n*e-4013867526981546e-21,n=29234449089955446e-22+n*e,n=12475304481671779e-21+n*e,n=n*e-47318229009055734e-21,n=6828485145957318e-20+n*e,n=24031110387097894e-21+n*e,n=n*e-.0003550375203628475,n=.0009532893797373805+n*e,n=n*e-.0016882755560235047,n=.002491442096107851+n*e,n=n*e-.003751208507569241,n=.005370914553590064+n*e,n=1.0052589676941592+n*e,n=3.0838856104922208+n*e):Number.isFinite(e)?(e=Math.sqrt(e)-5,n=-27109920616438573e-27,n=n*e-2.555641816996525e-10,n=1.5076572693500548e-9+n*e,n=n*e-3.789465440126737e-9,n=7.61570120807834e-9+n*e,n=n*e-1.496002662714924e-8,n=2.914795345090108e-8+n*e,n=n*e-6.771199775845234e-8,n=2.2900482228026655e-7+n*e,n=n*e-9.9298272942317e-7,n=4526062597223154e-21+n*e,n=n*e-1968177810553167e-20,n=7599527703001776e-20+n*e,n=n*e-.00021503011930044477,n=n*e-.00013871931833623122,n=1.0103004648645344+n*e,n=4.849906401408584+n*e):n=1/0;return n*t}(2*t-1)}function N(t,n){let e,r;const o={mean(t){return arguments.length?(e=t||0,o):e},stdev(t){return arguments.length?(r=null==t?1:t,o):r},sample:()=>g(e,r),pdf:t=>b(t,e,r),cdf:t=>v(t,e,r),icdf:t=>y(t,e,r)};return o.mean(t).stdev(n)}function w(t,n){return t=t||0,n=null==n?1:n,Math.exp(t+g()*n)}function x(t,n,e){if(t<=0)return 0;n=n||0,e=null==e?1:e;const r=(Math.log(t)-n)/e;return Math.exp(-.5*r*r)/(e*p*t)}function q(t,n,e){return v(Math.log(t),n,e)}function A(t,n,e){return Math.exp(y(t,n,e))}function F(n,e){return null==e&&(e=null==n?1:n,n=0),n+(e-n)*t.random()}function L(t,n,e){return null==e&&(e=null==n?1:n,n=0),t>=n&&t<=e?1/(e-n):0}function S(t,n,e){return null==e&&(e=null==n?1:n,n=0),t<n?0:t>e?1:(t-n)/(e-n)}function E(t,n,e){return null==e&&(e=null==n?1:n,n=0),t>=0&&t<=1?n+t*(e-n):NaN}function P(t,n,e,r){const o=r-t*t,l=Math.abs(o)<1e-24?0:(e-t*n)/o;return[n-l*t,l]}function U(t,n,e,r){t=t.filter((t=>{let r=n(t),o=e(t);return null!=r&&(r=+r)>=r&&null!=o&&(o=+o)>=o})),r&&t.sort(((t,e)=>n(t)-n(e)));const o=t.length,l=new Float64Array(o),u=new Float64Array(o);let f,a,i,s=0,c=0,h=0;for(i of t)l[s]=f=+n(i),u[s]=a=+e(i),++s,c+=(f-c)/s,h+=(a-h)/s;for(s=0;s<o;++s)l[s]-=c,u[s]-=h;return[l,u,c,h]}function I(t,n,e,r){let o,l,u=-1;for(const f of t)o=n(f),l=e(f),null!=o&&(o=+o)>=o&&null!=l&&(l=+l)>=l&&r(o,l,++u)}function T(t,n,e,r,o){let l=0,u=0;return I(t,n,e,((t,n)=>{const e=n-o(t),f=n-r;l+=e*e,u+=f*f})),1-l/u}function k(t,n,e){let r=0,o=0,l=0,u=0,f=0;I(t,n,e,((t,n)=>{++f,r+=(t-r)/f,o+=(n-o)/f,l+=(t*n-l)/f,u+=(t*t-u)/f}));const a=P(r,o,l,u),i=t=>a[0]+a[1]*t;return{coef:a,predict:i,rSquared:T(t,n,e,o,i)}}function C(t,n,e){const[r,o,l,u]=U(t,n,e),f=r.length;let a,i,s,c,h=0,d=0,p=0,m=0,M=0;for(a=0;a<f;)i=r[a],s=o[a++],c=i*i,h+=(c-h)/a,d+=(c*i-d)/a,p+=(c*c-p)/a,m+=(i*s-m)/a,M+=(c*s-M)/a;const g=p-h*h,b=h*g-d*d,v=(M*h-m*d)/b,y=(m*g-M*d)/b,N=-v*h,w=t=>v*(t-=l)*t+y*t+N+u;return{coef:[N-y*l+v*l*l+u,y-2*v*l,v],predict:w,rSquared:T(t,n,e,u,w)}}function D(t,n,e,r){const o=Array(t);let l,u,f,a;for(l=0;l<t;++l)o[l]=0;for(l=t-1;l>=0;--l)for(f=n[l],a=1,o[l]+=f,u=1;u<=l;++u)a*=(l+1-u)/u,o[l-u]+=f*Math.pow(e,u)*a;return o[0]+=r,o}function R(t){return(t=1-t*t*t)*t*t}function j(t,n,e){const r=t[n];let o=e[0],l=e[1]+1;if(!(l>=t.length))for(;n>o&&t[l]-r<=r-t[o];)e[0]=++o,e[1]=l,++l}const K=.5*Math.PI/180;function Q(t,n,e,r,o){const l=Math.atan2(o*(e[1]-t[1]),r*(e[0]-t[0])),u=Math.atan2(o*(n[1]-t[1]),r*(n[0]-t[0]));return Math.abs(l-u)}t.bandwidthNRD=d,t.bin=function(t){const n=t.maxbins||20,e=t.base||10,r=Math.log(e),o=t.divide||[5,2];let l,u,f,a,i,s,c=t.extent[0],h=t.extent[1];const d=t.span||h-c||Math.abs(c)||1;if(t.step)l=t.step;else if(t.steps){for(a=d/n,i=0,s=t.steps.length;i<s&&t.steps[i]<a;++i);l=t.steps[Math.max(0,i-1)]}else{for(u=Math.ceil(Math.log(n)/r),f=t.minstep||0,l=Math.max(f,Math.pow(e,Math.round(Math.log(d)/r)-u));Math.ceil(d/l)>n;)l*=e;for(i=0,s=o.length;i<s;++i)a=l/o[i],a>=f&&d/a<=n&&(l=a)}a=Math.log(l);const p=a>=0?0:1+~~(-a/r),m=Math.pow(e,-p-1);return(t.nice||void 0===t.nice)&&(a=Math.floor(c/l+m)*l,c=c<a?a-l:a,h=Math.ceil(h/l)*l),{start:c,stop:h===c?c+l:h,step:l}},t.bootstrapCI=function(r,o,l,u){if(!r.length)return[void 0,void 0];const f=Float64Array.from(n(r,u)),a=f.length,i=o;let c,h,d,p;for(d=0,p=Array(i);d<i;++d){for(c=0,h=0;h<a;++h)c+=f[~~(t.random()*a)];p[d]=c/a}return p.sort(e),[s(p,l/2),s(p,1-l/2)]},t.cumulativeLogNormal=q,t.cumulativeNormal=v,t.cumulativeUniform=S,t.densityLogNormal=x,t.densityNormal=b,t.densityUniform=L,t.dotbin=function(t,n,e,r){r=r||(t=>t);const o=t.length,l=new Float64Array(o);let u,f=0,a=1,i=r(t[0]),s=i,c=i+n;for(;a<o;++a){if(u=r(t[a]),u>=c){for(s=(i+s)/2;f<a;++f)l[f]=s;c=u+n,i=u}s=u}for(s=(i+s)/2;f<a;++f)l[f]=s;return e?function(t,n){const e=t.length;let r,o,l=0,u=1;for(;t[l]===t[u];)++u;for(;u<e;){for(r=u+1;t[u]===t[r];)++r;if(t[u]-t[u-1]<n){for(o=u+(l+r-u-u>>1);o<u;)t[o++]=t[u];for(;o>u;)t[o--]=t[l]}l=u,u=r}return t}(l,n+n/4):l},t.quantileLogNormal=A,t.quantileNormal=y,t.quantileUniform=E,t.quantiles=c,t.quartiles=h,t.randomInteger=function(n,e){let r,o,l;null==e&&(e=n,n=0);const u={min(t){return arguments.length?(r=t||0,l=o-r,u):r},max(t){return arguments.length?(o=t||0,l=o-r,u):o},sample:()=>r+Math.floor(l*t.random()),pdf:t=>t===Math.floor(t)&&t>=r&&t<o?1/l:0,cdf(t){const n=Math.floor(t);return n<r?0:n>=o?1:(n-r+1)/l},icdf:t=>t>=0&&t<=1?r-1+Math.floor(t*l):NaN};return u.min(n).max(e)},t.randomKDE=function(n,e){const r=N();let o=0;const l={data(t){return arguments.length?(n=t,o=t?t.length:0,l.bandwidth(e)):n},bandwidth(t){return arguments.length?(!(e=t)&&n&&(e=d(n)),l):e},sample:()=>n[~~(t.random()*o)]+e*r.sample(),pdf(t){let l=0,u=0;for(;u<o;++u)l+=r.pdf((t-n[u])/e);return l/e/o},cdf(t){let l=0,u=0;for(;u<o;++u)l+=r.cdf((t-n[u])/e);return l/o},icdf(){throw Error("KDE icdf not supported.")}};return l.data(n)},t.randomLCG=function(t){return function(){return(t=(1103515245*t+12345)%2147483647)/2147483647}},t.randomLogNormal=function(t,n){let e,r;const o={mean(t){return arguments.length?(e=t||0,o):e},stdev(t){return arguments.length?(r=null==t?1:t,o):r},sample:()=>w(e,r),pdf:t=>x(t,e,r),cdf:t=>q(t,e,r),icdf:t=>A(t,e,r)};return o.mean(t).stdev(n)},t.randomMixture=function(n,e){let r,o=0;const l={weights(t){return arguments.length?(r=function(t){const n=[];let e,r=0;for(e=0;e<o;++e)r+=n[e]=null==t[e]?1:+t[e];for(e=0;e<o;++e)n[e]/=r;return n}(e=t||[]),l):e},distributions(t){return arguments.length?(t?(o=t.length,n=t):(o=0,n=[]),l.weights(e)):n},sample(){const e=t.random();let l=n[o-1],u=r[0],f=0;for(;f<o-1;u+=r[++f])if(e<u){l=n[f];break}return l.sample()},pdf(t){let e=0,l=0;for(;l<o;++l)e+=r[l]*n[l].pdf(t);return e},cdf(t){let e=0,l=0;for(;l<o;++l)e+=r[l]*n[l].cdf(t);return e},icdf(){throw Error("Mixture icdf not supported.")}};return l.distributions(n).weights(e)},t.randomNormal=N,t.randomUniform=function(t,n){let e,r;const o={min(t){return arguments.length?(e=t||0,o):e},max(t){return arguments.length?(r=null==t?1:t,o):r},sample:()=>F(e,r),pdf:t=>L(t,e,r),cdf:t=>S(t,e,r),icdf:t=>E(t,e,r)};return null==n&&(n=null==t?1:t,t=0),o.min(t).max(n)},t.regressionExp=function(t,n,e){const[r,o,l,u]=U(t,n,e);let f,a,i,s=0,c=0,h=0,d=0,p=0;I(t,n,e,((t,n)=>{f=r[p++],a=Math.log(n),i=f*n,s+=(n*a-s)/p,c+=(i-c)/p,h+=(i*a-h)/p,d+=(f*i-d)/p}));const[m,M]=P(c/u,s/u,h/u,d/u),g=t=>Math.exp(m+M*(t-l));return{coef:[Math.exp(m-M*l),M],predict:g,rSquared:T(t,n,e,u,g)}},t.regressionLinear=k,t.regressionLoess=function(t,n,e,r){const[o,l,u,f]=U(t,n,e,!0),a=o.length,i=Math.max(2,~~(r*a)),c=new Float64Array(a),h=new Float64Array(a),d=new Float64Array(a).fill(1);for(let t=-1;++t<=2;){const n=[0,i-1];for(let t=0;t<a;++t){const e=o[t],r=n[0],u=n[1],f=e-o[r]>o[u]-e?r:u;let a=0,i=0,s=0,p=0,m=0;const M=1/Math.abs(o[f]-e||1);for(let t=r;t<=u;++t){const n=o[t],r=l[t],u=R(Math.abs(e-n)*M)*d[t],f=n*u;a+=u,i+=f,s+=r*u,p+=r*f,m+=n*f}const[g,b]=P(i/a,s/a,p/a,m/a);c[t]=g+b*e,h[t]=Math.abs(l[t]-c[t]),j(o,t+1,n)}if(2===t)break;const e=s(h,.5,void 0);if(Math.abs(e)<1e-12)break;for(let t,n,r=0;r<a;++r)t=h[r]/(6*e),d[r]=t>=1?1e-12:(n=1-t*t)*n}return function(t,n,e,r){const o=t.length,l=[];let u,f=0,a=0,i=[];for(;f<o;++f)u=t[f]+e,i[0]===u?i[1]+=(n[f]-i[1])/++a:(a=0,i[1]+=r,i=[u,n[f]],l.push(i));return i[1]+=r,l}(o,c,u,f)},t.regressionLog=function(t,n,e){let r=0,o=0,l=0,u=0,f=0;I(t,n,e,((t,n)=>{++f,t=Math.log(t),r+=(t-r)/f,o+=(n-o)/f,l+=(t*n-l)/f,u+=(t*t-u)/f}));const a=P(r,o,l,u),i=t=>a[0]+a[1]*Math.log(t);return{coef:a,predict:i,rSquared:T(t,n,e,o,i)}},t.regressionPoly=function(t,n,e,r){if(1===r)return k(t,n,e);if(2===r)return C(t,n,e);const[o,l,u,f]=U(t,n,e),a=o.length,i=[],s=[],c=r+1;let h,d,p,m,M;for(h=0;h<c;++h){for(p=0,m=0;p<a;++p)m+=Math.pow(o[p],h)*l[p];for(i.push(m),M=new Float64Array(c),d=0;d<c;++d){for(p=0,m=0;p<a;++p)m+=Math.pow(o[p],h+d);M[d]=m}s.push(M)}s.push(i);const g=function(t){const n=t.length-1,e=[];let r,o,l,u,f;for(r=0;r<n;++r){for(u=r,o=r+1;o<n;++o)Math.abs(t[r][o])>Math.abs(t[r][u])&&(u=o);for(l=r;l<n+1;++l)f=t[l][r],t[l][r]=t[l][u],t[l][u]=f;for(o=r+1;o<n;++o)for(l=n;l>=r;l--)t[l][o]-=t[l][r]*t[r][o]/t[r][r]}for(o=n-1;o>=0;--o){for(f=0,l=o+1;l<n;++l)f+=t[l][o]*e[l];e[o]=(t[n][o]-f)/t[o][o]}return e}(s),b=t=>{t-=u;let n=f+g[0]+g[1]*t+g[2]*t*t;for(h=3;h<c;++h)n+=g[h]*Math.pow(t,h);return n};return{coef:D(c,g,-u,f),predict:b,rSquared:T(t,n,e,f,b)}},t.regressionPow=function(t,n,e){let r=0,o=0,l=0,u=0,f=0,a=0;I(t,n,e,((t,n)=>{const e=Math.log(t),i=Math.log(n);++a,r+=(e-r)/a,o+=(i-o)/a,l+=(e*i-l)/a,u+=(e*e-u)/a,f+=(n-f)/a}));const i=P(r,o,l,u),s=t=>i[0]*Math.pow(t,i[1]);return i[0]=Math.exp(i[0]),{coef:i,predict:s,rSquared:T(t,n,e,f,s)}},t.regressionQuad=C,t.sampleCurve=function(t,n,e,r){e=e||25,r=Math.max(e,r||200);const o=n=>[n,t(n)],l=n[0],u=n[1],f=u-l,a=f/r,i=[o(l)],s=[];if(e===r){for(let t=1;t<r;++t)i.push(o(l+t/e*f));return i.push(o(u)),i}s.push(o(u));for(let t=e;--t>0;)s.push(o(l+t/e*f));let c=i[0],h=s[s.length-1];const d=1/f,p=function(t,n){let e=t,r=t;const o=n.length;for(let t=0;t<o;++t){const o=n[t][1];o<e&&(e=o),o>r&&(r=o)}return 1/(r-e)}(c[1],s);for(;h;){const t=o((c[0]+h[0])/2);t[0]-c[0]>=a&&Q(c,t,h,d,p)>K?s.push(t):(c=h,i.push(h),s.pop()),h=s[s.length-1]}return i},t.sampleLogNormal=w,t.sampleNormal=g,t.sampleUniform=F,t.setRandom=function(n){t.random=n},Object.defineProperty(t,"__esModule",{value:!0})}));
//# sourceMappingURL=vega-statistics.min.js.map
{
"name": "vega-statistics",
"version": "1.7.10",
"version": "1.8.0",
"description": "Statistical routines and probability distributions.",

@@ -25,5 +25,5 @@ "keywords": [

"dependencies": {
"d3-array": "^2.7.1"
"d3-array": "^3.1.1"
},
"gitHead": "774165e29850b66ec8b79ba52a7955f1ab936ea6"
"gitHead": "9a3faca4395cade9ecdfde90af98f1c53e9916b2"
}

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc