• :一个数组或者序列。其意义取决于r
      • r:布尔值。如果为True,则c_or_r指定的是多项式的根;如果为False,则c_or_r指定的是多项式的系数
      • variable:一个字符串,指定了打印多项式时,用什么字符代表自变量。默认为x

      多项式的属性有:

      • .coeffs属性:多项式的系数
      • .order属性:多项式最高次的次数
      • .variable属性:自变量的代表字符

      多项式的方法有:

      • .deriv(m=1)方法:计算多项式的微分。可以通过参数m指定微分次数
      • .integ(m=1,k=0)方法:计算多项式的积分。可以通过参数m指定积分次数和k积分常量

    1. 操作一元多项式类的函数:

      • 多项式对象可以像函数一样,返回多项式的值
      • 多项式对象进行加减乘除,相当于对应的多项式进行计算。也可以使用对应的numpy.polyadd/polysub/polymul/polydiv/函数。
      • numpy.roots函数:求多项式的根(也可以通过p.r方法)
    2. 使用np.polyfit(x, y, deg, rcond=None, full=False, w=None, cov=False)函数可以对一组数据使用多项式函数进行拟合(最小均方误差)。其参数为:

      • x:数据点的x坐标序列
      • :数据点的y坐标序列。如果某个x坐标由两个点,你可以传入一个二维数组。
      • deg:拟合多项式的次数
      • rcond:指定了求解过程中的条件:当某个特征值/最大特征值<rcond时,该特征值被抛弃
      • full:如果为False,则仅仅返回拟合多项式的系数;如果为True,则更多的结果被返回
      • w:权重序列。它对y序列的每个位置赋予一个权重
      • cov:如果为True,则返回相关矩阵。如果fullTrue,则不返回。

      默认情况下,返回两个数组:一个是拟合多项式的系数;另一个是数据的相关矩阵

      poly_fit

    3. numpy提供了更丰富的多项式函数类。注意其中的多项式的系数按照次数从小到大排列。

      • numpy.polynomial.Polynomial:一元多次多项式
      • numpy.polynomial.Chebyshev:切比雪夫多项式
      • numpy.polynomial.Legendre:勒让德多项式
      • numpy.polynomial.Hermite:哈米特多项式
      • numpy.polynomial.HermiteEHermiteE多项式

      所有的这些多项式可以使用的方法为:

      • 四则运行
      • .basis(deg[, domain, window]):获取转换后的一元多项式
      • .convert(domain=None, kind=None, window=None):转换为另一个格式的多项式。kind为目标格式的多项式的类
      • .degree():返回次数
      • .fit(x, y, deg[, domain, rcond, full, w, window]):拟合数据,返回拟合后的多项式
      • .fromroots(roots[, domain, window]):从根创建多项式
      • .has_samecoef(other).has_samedomain(other).has_sametype(other).has_samewindow(other):判断是否有相同的系数/domain/类型/window
      • .roots():返回多项式的根
      • .trim([tol]):将系数小于 tol的项截掉

    4. 切比雪夫多项式可以降低龙格现象。所谓龙格现象:等距离差值多项式在两个端点处有非常大的震荡,n越大,震荡越大。