首页 > 解决方案 > tkinter 中的嵌入式 Matplotlib 绘图缩小/缩放整个窗口

问题描述

我正在尝试使用 matplotlib 在 tkinter 框架内嵌入一个 pyplot 图表,但是一旦创建了图表,整个窗口的比例似乎就会减小。下面的代码片段演示了这种行为。

有谁知道这可能是为什么?它几乎似乎与 matplotlib 图形窗口有关,其比例与我的 PC 的其他部分不同

from tkinter import *
from matplotlib import pyplot as plt
from matplotlib.backends.backend_tkagg import (FigureCanvasTkAgg, NavigationToolbar2Tk)
from functools import partial

def plot_data(parent):
    data =[[1,1], [2,2], [3,3], [4,4]]
    fig = plt.figure()
    ax = fig.add_subplot(111)
    plt.plot(data)
    canvas = FigureCanvasTkAgg(fig, master=parent)  # A tk.DrawingArea.
    canvas.draw()
    canvas.get_tk_widget().pack(side=TOP, fill=BOTH, expand=1)

root = Tk()
root.geometry("1260x780")

root.columnconfigure(0, weight=1)
root.columnconfigure(1, weight=1)
root.rowconfigure(0, weight=1)

leftframe = Frame(root, borderwidth=2, relief='solid')
leftframe.grid(row=0, column=0, sticky=N+E+S+W)

rightframe = Frame(root, borderwidth=2, relief='solid')
rightframe.grid(row=0, column=1, sticky=N+E+S+W)

left_button = Button(leftframe, text='plot', command=partial(plot_data, rightframe))
left_button.pack()

root.mainloop()

标签: pythonmatplotlibtkinter

解决方案


推荐阅读