numpy多项式解方程
时间: 2023-11-11 09:06:41 浏览: 140
多项式求解
4星 · 用户满意度95%
利用NumPy库可以很方便地求解多项式方程。可以使用`numpy.roots()`函数来求解多项式方程的根。该函数的参数是一个一维数组,表示多项式的系数,返回值是一个一维数组,表示多项式方程的根。
例如,对于一个二次方程$ax^2+bx+c=0$,可以使用以下代码求解其根:
```python
import numpy as np
a = 1
b = 2
c = 1
coefficients = [a, b, c]
roots = np.roots(coefficients)
print(roots)
```
输出结果为:
```
[-1. -1.]
```
这表示该二次方程有两个根,分别为-1和-1。
另外,NumPy还提供了多项式拟合的函数`numpy.polyfit()`。该函数可以用来拟合一组数据点,并返回一个多项式函数。该函数的参数包括数据点的x坐标、y坐标和多项式的次数。例如,以下代码演示了如何拟合一个二次函数:
```python
import numpy as np
import matplotlib.pyplot as plt
x = np.array([0, 1, 2, 3, 4, 5])
y = np.array([1, 3, 2, 5, 7, 8])
n_order = 2
p = np.poly1d(np.polyfit(x, y, n_order))
plt.scatter(x, y)
plt.plot(x, p(x))
plt.show()
```
该代码会生成一个散点图,并在图中绘制出拟合的二次函数曲线。
阅读全文