import matplotlib.pyplot as plt
import sympy as sy
import numpy as np
x=sy.Symbol('x')
plt.title("Comparison of EXP(x), PP1, PP2")
plt.xlim(0-0.1, 3+0.2)
plt.ylim(0, 20+1)
plt.xlabel("x")
plt.ylabel("y: values")
plt.grid(False)
x=np.linspace(0.0, 3.0, 100)
plt.plot(x, np.exp(x), label="exp(x)")
plt.plot(x, np.exp(x).series(x, 0, 4), label="PP1")
plt.legend(loc=2)
plt.show();
我使用 Jupyter Notebook。 我想绘制 exp(x) 的泰勒级数图。 我刚刚成功绘制了 exp(x) 的图表,但失败了 exp(x) 的泰勒系列。 Sympy 库有泰勒级数功能,所以我尝试了它,但我不明白问题是什么。 下面是错误消息和图表。
最佳答案
sy.exp(x).series(x)
创建一个 sympy 表达式,而不是函数
您可能想将其转换为函数
from sympy.utilities.lambdify import lambdify
x = sy.Symbol('x')
exp_expr = sy.exp(x).series(x).removeO()
exp_func = lambdify(x, exp_expr)
并绘制出来
x_points = np.linspace(0.0, 3.0, 100)
plt.plot(x_points, [exp_func(i) for i in x_points])
关于python - 我想在 python 中使用 matplotlib 绘制泰勒级数图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52849350/