3.0.3 • Published 1 year ago

cubic-spline-browserified v3.0.3

Weekly downloads
-
License
GPLv3
Repository
github
Last release
1 year ago

Disclaimer

This library is a fork of cubic-spline. The only intent of the fork is to get the library work in a browser out-of-the-box. A pull request has been sent to upstream; if and when it is merged, you will perhaps prefer the upstream version.

cubic-spline

A slight modification of Ivan Kuckir's cubic spline implementation, cubic-spline guesses the value of y for any x value on a line. This is helpful for smoothing line graphs.

installation

npm install cubic-spline-browserified

usage

const Spline = require('cubic-spline-browserified'); // Still works

const xs = [1, 2, 3, 4, 5];
const ys = [9, 3, 6, 2, 4];

// new a Spline object
const spline = new Spline(xs, ys);

// get Y at arbitrary X
console.log(spline.at(1.4));

// interpolate a line at a higher resolution
for (let i = 0; i < 50; i++) {
  console.log(spline.at(i * 0.1));
}

or

<script src="node_modules/cubic-spline-browserified/cubic-spline-for-browser.js"></script>
<script>
	const xs = [1, 2, 3, 4, 5];
	const ys = [9, 3, 6, 2, 4];
	const spline = new Spline(xs, ys);
	// ...
</script>

test

npm test

lint

npm run lint