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组件。如果不是的话只能看它自己有没有提供删除的方法了。