Skip to content

Polynomial fitment library in typescript

License

Notifications You must be signed in to change notification settings

sctg-development/polyfitjs

 
 

Repository files navigation

@sctg/polyfitjs

Build npm version

A TypeScript library for polynomial fitting.

Star the project

If you appreciate my work, please consider giving it a star! 🤩

Features

  • Polynomial fitting up to n degrees
  • Support for Array, Float32Array and Float64Array
  • Correlation coefficient calculation
  • Standard error calculation
  • Polynomial expression generation

Installation

npm install @sctg/polyfitjs

Usage

Creating a polynomial function

import { Polyfit } from '@sctg/polyfitjs';

const x = [1, 2, 3, 4, 5];
const y = [0.01, 0.03, -0.02, 0.03, 0.02];
const poly = new Polyfit(x, y);
const solver = poly.getPolynomial(6);

// Using the solver
console.log(solver(1.17)); // Calculates y for x = 1.17

Getting coefficients

const terms = poly.computeCoefficients(6);
console.log(terms); // Shows polynomial coefficients

Finding the best fit for a given correlation coefficient

const terms = poly.computeBestFit(100,0.99); // Max degree, min correlation coefficient
console.log(terms); // Shows polynomial coefficients

Computing statistical metrics

const terms = poly.computeCoefficients(6);
const correlation = poly.correlationCoefficient(terms);
const stdError = poly.standardError(terms);

Building

To build the project, run the following command:

  git clone [email protected]:sctg-development/polyfitjs.git
  cd polyfitjs
  npm ci
  npm run build
  npm test

License

Copyright © 2023, P. Lutus and Ryan Fink.
Modifications © 2025, SCTG Development. Released under GPL v3 - Details

Acknowledgments

Heavily inspired by Paul Lutus's work ([email protected]) - polysolve

About

Polynomial fitment library in typescript

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 72.4%
  • JavaScript 27.6%