怎么在子窗口中用matplotlib画图
时间: 2023-07-12 21:37:47 浏览: 81
在子窗口中使用 Matplotlib 绘制图形,您需要使用 Matplotlib 的 `FigureCanvasTkAgg` 类将图形绘制到 Tkinter 窗口中。
下面是一个示例代码,它演示了如何在子窗口中使用 Matplotlib 来绘制一个简单的折线图:
```python
import tkinter as tk
from tkinter import ttk
import matplotlib.pyplot as plt
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
root = tk.Tk()
root.title("父窗口")
# 创建子窗口
child = tk.Toplevel(root)
child.title("子窗口")
child.geometry("400x300")
# 创建 Matplotlib 图形
fig = plt.Figure(figsize=(4, 3), dpi=100)
ax = fig.add_subplot(111)
ax.plot([1, 2, 3, 4, 5], [2, 3, 5, 4, 6])
# 将图形绘制到 Tkinter 窗口中
canvas = FigureCanvasTkAgg(fig, master=child)
canvas.draw()
canvas.get_tk_widget().pack()
root.mainloop()
```
在这个示例中,我们首先创建了一个子窗口,然后使用 Matplotlib 创建了一个 `Figure` 对象和一个 `Axes` 对象,最后使用 `FigureCanvasTkAgg` 类将图形绘制到 Tkinter 窗口中。
您可以根据需要自定义图形,并将其绘制到子窗口中。
阅读全文