in custom-series/violin/src/index.ts [32:44]
function kernelDensityEstimator(
kernel: (u: number) => number,
bandwidth: number,
data: number[]
) {
return function (x: number) {
let sum = 0;
for (let i = 0; i < data.length; i++) {
sum += kernel((x - data[i]) / bandwidth);
}
return sum / (data.length * bandwidth);
};
}