在线多项式曲线及曲线函数拟合工具

这是一款基于echarts插件实现的可拟合多项式曲线及对应曲线函数的在线工具,用户在输入框中输入坐标点,即可在下方的直角坐标系中绘制出相应的坐标系曲线(或直线)拟合图形,同时给出图形对应的拟合曲线函数。免费提供给需要的朋友参考使用。


  1. 输入多组坐标(x, y)值,就可以根据这些坐标点计算出这组数据的多项式拟合函数表达式,并绘制出响应拟合曲线的样子。
  2. 在下方输入拟合点,每一行一个点,例如:520 13.14,数字之间使用","分割(英文逗号)。
函数方程表达式为:

JavaScript多项式函数拟合的实现方法

经常会遇到给你几个点,让你找规律什么的东西,多项式函数是一个很重要的建模手段,利用任意个点,就可以拟合出一个多项式函数,通过多项式函数来推导出其他点的函数值,然后绘制出函数曲线,这个是最基本的原理,非常简单!
  • 一、通过点来拟合,得到拟合多项式的函数关系(一个JavaScript方法),在拟合过程中,记录中间生成的一个二维数组,用于后续计算图表值;
  • 二、将得到的集合关系转化成多项式函数的表达式,形如x*x*x + a*x*x + b*x +c 的样子;
  • 三、计算给定的拟合点中,x的最大值和最小值,计算间距gap = max - min,然后取范围(min - 0.3 * gap, max + 0.3 * gap),范围作为绘制图表的x轴范围;
  • 四、设定图表绘制点数为1000,然后在范围(min - 0.3 * gap, max + 0.3 * gap)取1000个等距离的x值,分别通过函数计算y值,然后得到x_data_array, y_data_array;
  • 五、通过x,y轴的1000个数据,你用echarts绘制函数,line形图平滑曲线,即可看到多项式函数的曲线;
关于echarts源码可点击此处本站下载

关于多项式函数F(x)说明

  1. 形如Pn(x)= anx^n+ an-1x^(n-1)+…+ a1x+ a0的函数,叫做多项式函数,它是由常数与自变量x经过有限次乘法与加法运算得到的。显然,当n=1时,其为一次函数y=kx+b,当n=2时,其为二次函数y=ax^2+bx+c。
  2. 形如 y=kx+b (k为任意不为0的常数,b为任意常数)的函数叫做一次函数(linear function),也称线性函数,其图像在平面直角坐标系中可以用一条直线表示,当一次函数中的一个变量的值确定时,可以用一元一次方程确定另一个变量的值。
  3. 一般地,形如y=ax^2+bx+c的函数叫做二次函数(quadratic function)。二次函数是自变量的最高次数为二次的多项式函数。其图像在平面直角坐标系中呈一条抛物线。
  4. 形如 y=ax^3+bx^2+cx+d (a≠0,b,c,d为常数)的函数叫做三次函数(cubics function)。三次函数的图像是一条曲线——回归式抛物线(不同于普通抛物线),具有比较特殊的性质。
  5. 对于给出的多个离散的坐标点,一般都可以使用多项式函数来进行拟合,从而分析其规律;如果给出n个坐标点,则可以使用n-1项多项式进行拟合。

数学函数多项式说明

  1. 由若干个单项式的和组成的代数式叫做多项式(减法中有:减一个数等于加上它的相反数)。多项式中每个单项式叫做多项式的项,这些单项式中的最高次数,就是这个多项式的次数。
  2. 多项式是简单的连续函数,它是平滑的,它的微分也必定是多项式。泰勒多项式的精神便在于以多项式逼近一个平滑函数,此外闭区间上的连续函数都可以写成多项式的均匀极限。
  3. 多项式有一个非常重要的特性,就是一个x值对应一个y值,两个相同的x对应的y必定相同,称之为可导函数。
  4. 正因为多项式一个x对应一个y这种特性,所以当拟合数据中存在两组数据x相同,但是y值不相同,这个时候无法使用多项式拟合,也得不到拟合答案。