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

yipeiwu_com6年前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设计】。

相关文章

python写入中英文字符串到文件的方法

本文实例讲述了python写入中英文字符串到文件的方法。分享给大家供大家参考。具体分析如下: python中如果使用系统默认的open方法打开的文件只能写入ascii吗,如果要写入中文需...

pycharm远程调试openstack的图文教程

pycharm远程调试openstack的图文教程

今天我要讲如何远程调试openstack。首先我们使用的工具是Pycharm. 1.首先介绍一下环境 我的openstack是使用rdo一键安装的,安装在一台centos的虚拟机上,虚拟...

python如何删除文件中重复的字段

本文实例为大家分享了python如何删除文件中重复字段的具体代码,供大家参考,具体内容如下 原文件内容放在list中,新文件内容按行查找,如果没有出现在list中则写入第三个文件中。...

介绍Python中的__future__模块

Python的每个新版本都会增加一些新的功能,或者对原来的功能作一些改动。有些改动是不兼容旧版本的,也就是在当前版本运行正常的代码,到下一个版本运行就可能不正常了。 从Python 2....

操作Windows注册表的简单的Python程序制作教程

通过Python操作注册表有两种方式,第一种是通过Python的内置模块 _winreg;另一种方式就是Win32 Extension For Python 的win32api模块,但是...