Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/morganherlocker/cubic-spline

interpolate for X in a 2d array
https://github.com/morganherlocker/cubic-spline

Last synced: 18 days ago
JSON representation

interpolate for X in a 2d array

Awesome Lists containing this project

README

        

# cubic-spline

A slight modification of [Ivan Kuckir's cubic spline implementation](http://blog.ivank.net/interpolation-with-cubic-splines.html), cubic-spline guesses the value of y for any x value on a line. This is helpful for smoothing line graphs.

## installation

```sh
npm install cubic-spline
```

## usage

```js
const Spline = require('cubic-spline');

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));
}
```

## test

```sh
npm test
```

## lint

```sh
npm run lint
```