在python中利用numpy求解多项式以及多项式拟合的方法

yipeiwu_com7年前Python基础

构建一个二阶多项式:x^2 - 4x + 3

多项式求解

>>> p = np.poly1d([1,-4,3])   #二阶多项式系数
>>> p(0)                  #自变量为0时多项式的值
3
>>> p.roots              #多项式的根
array([3., 1.])
>>> p(p.roots)              #多项式根处的值
array([0., 0.])
>>> p.order                  #多项式的阶数
2
>>> p.coeffs                #多项式的系数
array([ 1, -4, 3])
>>>

多项式拟合

用三阶多项式去拟合

import matplotlib.pyplot as plt
import numpy as np

n_dot = 20
n_order = 3     #阶数

x = np.linspace(0,1,n_dot)             #[0,1]之间创建20个点
y = np.sqrt(x) + 0.2*np.random.rand(n_dot)
p = np.poly1d(np.polyfit(x,y,n_order))      #拟合并构造出一个3次多项式
print(p.coeffs)                #输出拟合的系数,顺序从高阶低阶

#画出拟合出来的多项式所表达的曲线以及原始的点
t = np.linspace(0,1,200)
plt.plot(x,y,'ro',t,p(t),'-')
plt.show()

以上这篇在python中利用numpy求解多项式以及多项式拟合的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决Pycharm中import时无法识别自己写的程序方法

我们用pycharm打开自己写的代码,当多个文件之间有相互依赖的关系的时候,import无法识别自己写的文件,但是我们写的文件又确实在同一个文件夹中, 这种问题可以用下面的方法解决: 1...

浅谈python脚本设置运行参数的方法

浅谈python脚本设置运行参数的方法

正在学习Django框架,在运行manage.py的时候需要给它设置要监听的端口,就是给这个脚本一个运行参数。教学视频中,是在Eclipse中设置的运行参数,网上Django大部分都是在...

Python考拉兹猜想输出序列代码实践

考拉兹猜想(英语:Collatz conjecture),是指对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除以2,如此循环,最终都能够得到1。(摘自Wiki)...

Python实现多线程的两种方式分析

本文实例讲述了Python实现多线程的两种方式。分享给大家供大家参考,具体如下: 目前python 提供了几种多线程实现方式 thread,threading,multithreadin...

python 模拟银行转账功能过程详解

python 模拟银行转账功能过程详解

首先画出流程图,流程图与现实代码有出入,因为刚开始画流程图的时候,有些东西没考虑进去,后来写着写着就慢慢能想起来并实现了。 另有一点经验推荐给新手朋友,如果说碰到一个项目无从下手的话,...