"""
求出多项式的 导函数与根
"""
import numpy as np
import matplotlib.pyplot as mp
# 多项式函数 y = 4x^3 + 3X^2 - 1000x + 1
P = [4, 3, -1000, 1] # 多项式系数 数组
x = np.linspace(-20, 20, 1000)
y = np.polyval(P, x) # 求多项式 Y 数组
mp.plot(x, y)
# 求导函数
Q = np.polyder(P) # 求导数
xs = np.roots(Q) # 求多项式函数根
ys = np.polyval(P, xs)
# 绘制曲线拐点
mp.scatter(xs, ys, color="r", s=60)
mp.show()