要創建一個動態調整大小的圖表容器,您可以使用Matplotlib的Figure和Axes對象,并結合使用GUI庫(如Tkinter)來實現動態調整大小的功能。
以下是一個使用Tkinter和Matplotlib創建一個動態調整大小的圖表容器的示例代碼:
import tkinter as tk
from matplotlib.figure import Figure
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg
# 創建Tkinter窗口
root = tk.Tk()
root.title("Dynamic Resizing Plot")
# 創建Matplotlib的Figure對象
fig = Figure(figsize=(5, 4), dpi=100)
ax = fig.add_subplot(111)
ax.plot([1, 2, 3, 4])
# 創建FigureCanvasTkAgg對象,并將其添加到Tkinter窗口中
canvas = FigureCanvasTkAgg(fig, master=root)
canvas.draw()
canvas.get_tk_widget().pack(side=tk.TOP, fill=tk.BOTH, expand=1)
# 創建一個函數,用于動態調整圖表容器的大小
def resize(event):
fig.set_size_inches(event.width/100, event.height/100)
canvas.draw()
# 綁定Tkinter窗口的resize事件
root.bind("<Configure>", resize)
# 運行Tkinter主循環
tk.mainloop()
運行上面的代碼,將會創建一個Tkinter窗口,其中包含一個動態調整大小的Matplotlib圖表容器。您可以拖動窗口的邊緣來調整圖表容器的大小,圖表容器會動態調整并重新繪制圖表。