Я бы порекомендовал использовать IPython . Это приносит режим matplotlib / pylab, который обрабатывает все это для вас. После установки IPython вы можете запустить его с флагом pylab
:
$ ipython -pylab
Затем в интерактивной оболочке вы набираете код:
In [1]: from pylab import*
In [2]: subplot(111,projection="hammer")
Out[2]: <matplotlib.axes.HammerAxesSubplot object at 0x2241050>
In [3]:
IPython автоматически показывает график, используя отдельный поток, и возвращает управление интерактивной оболочке.
Документация matplotlib содержит немного больше информации о том, как все это работает.