Python tkinter maplotlib动态
时间: 2023-11-05 13:02:58 浏览: 90
绘图示例
下面是一个简单的Python tkinter matplotlib动态绘图示例,可以展示如何使用matplotlib库和tkinter库来绘制动态图形:
```python
import tkinter as tk
import matplotlib.pyplot as plt
import matplotlib.animation as animation
fig, ax = plt.subplots()
x = []
y = []
def animate(i):
x.append(i)
y.append(i*i)
ax.clear()
ax.plot(x, y)
class Application(tk.Frame):
def __init__(self, master=None):
super().__init__(master)
self.master = master
self.pack()
self.create_widgets()
def create_widgets(self):
self.quit = tk.Button(self, text="QUIT", fg="red",
command=self.master.destroy)
self.quit.pack(side="bottom")
ani = animation.FuncAnimation(fig, animate, interval=1000)
root = tk.Tk()
app = Application(master=root)
app.mainloop()
```
在这个示例中,我们创建了一个名为Application的类,该类继承了tkinter的Frame类,并定义了一个名为create_widgets的方法来创建一个名为QUIT的Button对象。我们还定义了一个名为animate的函数,该函数在每个间隔时间内被调用,并根据当前的i值计算x和y的值,然后清除绘图,并使用新的x和y值重新绘制图形。
最后,我们使用matplotlib的FuncAnimation方法创建一个名为ani的动画对象,并将它添加到我们的tkinter应用程序中。当我们运行这个脚本时,我们将看到一个动态图形,显示x轴和y轴上的点随时间变化的情况。
请注意,这只是一个最简单的tkinter matplotlib动态绘图示例。您可以使用更复杂的数据和绘图类型来创建更复杂的动态图形。
阅读全文