tkinter中画布FigureCanvasTkAgg怎么删除?


    def create_form(self, figure):
        # 把绘制的图形显示到tkinter窗口上
        self.canvas = FigureCanvasTkAgg(figure, self.fm_th_right)
        self.canvas.draw()  # 以前的版本使用show()方法,matplotlib 2.2之后不再推荐show()用draw代替,但是用show不会报错,会显示警告
        self.canvas.get_tk_widget().pack(side=LEFT,)
        # 把matplotlib绘制图形的导航工具栏显示到tkinter窗口上
        self.toolbar = NavigationToolbar2Tk(self.canvas, self.fm_th_right)
        self.toolbar.update()
        self.toolbar.pack()
        self.canvas._tkcanvas.pack(side=TOP, )
        # return self.canvas

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。

尝试一下 self.canvas._tkcanvas.pack_foreget() 或 self.canvas._tkcanvas.destroy()。功能分别是隐藏pack布局的tkinter组件 以及 销毁组件。不知道Matlab的tkinter绑定是否是tkinter组件。如果不是的话只能看它自己有没有提供删除的方法了。