Python Can';t使用matplotlib和draw()/ion()关闭绘图

Python Can';t使用matplotlib和draw()/ion()关闭绘图,python,matplotlib,draw,glade,Python,Matplotlib,Draw,Glade,我试图使用matplotlib绘制一些方程,并保持主程序A运行,因此我开始使用draw()而不是show()。除了我不能关闭情节外,一切都按预期进行。我点击plot X按钮,什么也不做。如果我点击主程序上的X按钮,它会关闭所有程序,正如我所期望的那样 我使用Glade制作了一个带有两个按钮(button1和button2,与代码中的函数链接)的简单界面 我的代码如下: import gtk, gobject from pylab import * import matplotlib.pyplot

我试图使用matplotlib绘制一些方程,并保持主程序A运行,因此我开始使用draw()而不是show()。除了我不能关闭情节外,一切都按预期进行。我点击plot X按钮,什么也不做。如果我点击主程序上的X按钮,它会关闭所有程序,正如我所期望的那样

我使用Glade制作了一个带有两个按钮(button1和button2,与代码中的函数链接)的简单界面

我的代码如下:

import gtk, gobject
from pylab import *
import matplotlib.pyplot as plt

def gtk_main_quit(*args):
    gtk.main_quit() #fecha prog no botao fechar 

def button1(*args):
    path()

def button2(*args):
    simple()

def path(*args):    
    fig = figure()
    plt.ion()
    radius = [1.0, 2.0, 3.0, 4.0, 5.0, 6.0]
    area = [3.14159, 12.56636, 28.27431, 50.26544, 78.53975, 113.09724]
    plt.plot(radius, area)
    plt.draw()

def simple(*args):    
    fig = figure()
    plt.ion()
    t = arange(0.0, 2.0, 0.01)
    s = sin(2*pi*t)
    plot(t, s, linewidth=1.0)    
    grid(True)
    plt.draw()

App = gtk.Builder()
App.add_from_file("Thread.glade")
App.connect_signals(locals())
App.get_object('window1').show()    

gtk.main()
我必须给情节设置一些结尾吗


Thx预先

您使用什么IDE运行此代码?在从终端运行时。我在同一文件夹中有Thread.glade和tread.py。实际上,我在这里取得了一些进展,使用了draw()和ion(),但设置了matplotlib.use('GTKAgg')。这在大多数情况下解决了我的问题,除了因为现在我不能使用主代码上的spanselector。绘图显示,但我无法选择区域。