我试图绘制一个方程,但似乎没有任何效果。它不断给我错误:“float()参数必须是字符串或实数,而不是‘函数’”当我尝试使用lambdify()以及当我尝试使用简单的y = x**2 +时4(或任何其他方程)它给了我“无法将表达式转换为浮点数”的错误
我试过:
from sympy import symbols, Derivative, sympify, lambdify
import matplotlib.pyplot as plt
x, y = symbols("x y")
expr = x**2 + 4
x = lambdify(x, expr, 'math')
plt.plot(x)
plt.show()
我也尝试过:
from sympy import symbols, Derivative, sympify, lambdify
import matplotlib.pyplot as plt
x, y = symbols("x y")
y = x**2 + 4*x + 4
plt.plot(x,y)
plt.show
看起来lambdaify返回的是一个函数,而不是一个值。 plt.plot(x,y) 需要浮点值列表,而不是函数。
这个答案展示了如何绘制符号函数。
from sympy import symbols
from sympy.plotting import plot as symplot
t = symbols('t')
x = 0.05*t + 0.2/((t - 5)**2 + 2)
symplot(x)