我的 matplotlib,在 tkinter 中,不会绘图。我该如何解决这个问题

问题描述 投票:0回答:1

我试图绘制一个方程,但似乎没有任何效果。它不断给我错误:“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
python matplotlib tkinter sympy
1个回答
0
投票

看起来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)
© www.soinside.com 2019 - 2024. All rights reserved.