pylab matplotlib "show" ожидает закрытия окна - PullRequest
16 голосов
/ 18 марта 2012

Я бы хотел, чтобы команда "show" matplotlib вернулась в командную строку при отображении сюжета. Большинство других пакетов, таких как R, делают это. Но пилаб висит, пока окно сюжета не закроется. Например:

import pylab
x = pylab.arange( 0, 10, 0.1)
y = pylab.sin(x)
pylab.plot(x,y, 'ro-')
pylab.show()   #  Python hangs here until the plot window is closed

Я бы хотел иметь возможность просматривать график во время выполнения запросов командной строки. Я использую Debian Squeeze с Python 2.6.6. Мой ~ / .matplotlib / matplotlibrc содержит

backend      : GTKAgg

Спасибо!

Ответы [ 2 ]

23 голосов
/ 18 марта 2012

Добавить pylab.ion() ( интерактивный режим ) перед вызовом pylab.show(). Это заставит пользовательский интерфейс работать в отдельном потоке, и вызов show немедленно вернется.

5 голосов
/ 18 марта 2012

Вам нужно запустить его как

$ ipython --pylab 

и запустить код как

In [8]: x = arange(0,10,.1)

In [9]: y = sin(x)

In [10]: plot(x,y,'ro-')

Out[10]: [<matplotlib.lines.Line2D at 0x2f2fd50>]

In [11]: 

. Это дает вам подсказку для случаев, когда вы захотите изменить другие детали или вычерчивать больше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...