簡體   English   中英

在tkinter中積分圖給出更新idletasks錯誤

[英]Integrating plot in tkinter giving update idletasks error

我正在嘗試創建一個超級簡單的GUI並在其上集成繪圖。 我設法整合了情節,但出現錯誤:

AttributeError: 'NoneType' object has no attribute 'update_idletasks'

這個問題是關於問題的,但是答案並沒有真正解決更新閑置任務的問題。

我的代碼非常簡單,網格中只有兩個標簽,我不想在第三行中繪圖。

from tkinter import Label, Tk
import matplotlib.pyplot as plt
from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg


class MyGUI:
    def __init__(self):
        self.window = Tk()
        self.window.geometry('420x400')
        self.populate_elements()
        self.window.mainloop()

    def populate_elements(self):
        Label(self.window, text="Hello").grid(column=0, row=0)
        Label(self.window, text="My text").grid(column=0, row=1)

        fig = plt.Figure(figsize=(2, 2), dpi=100)
        ax = fig.add_subplot(111)
        ax.plot([1, 2, 3, 4, 5, 6, 7, 8], [5, 6, 1, 3, 8, 9, 3, 5])

        canvas = FigureCanvasTkAgg(fig)
        canvas.get_tk_widget().grid(column=0, row=2)


if __name__ == '__main__':
    MyGUI()

Matplotlib有一個有關在tk中嵌入的示例: https ://matplotlib.org/3.1.1/gallery/user_interfaces/embedding_in_tk_sgskip.html

如果堅持下去,您會發現需要使用

canvas = FigureCanvasTkAgg(fig, master=self.window)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM