Akima cubic spline interpolation in TypeScript

Error: Your browser does not support the HTML canvas element.

I have translated the Java class AkimaSplineInterpolator of the Apache Commons Math Library to TypeScript. TypeScript is compiled to JavaScript.

The visual demo above is based on the function curve editor widget. If fewer than 5 knots are defined, a fallback to natural cubic spline interpolation (3 or 4 knots) and linear interpolation (2 knots) is used.

Source code: github.com/chdh/commons-math-interpolation
NPM package: commons-math-interpolation

Theory: A New Method of Interpolation and Smooth Curve Fitting Based on Local Procedures, by Hiroshi Akima

Author: Christian d'Heureuse (www.source-code.biz, www.inventec.ch/chdh)