我的matplotlibrc
中有以下内容:
backend : QT4Agg
backend.qt4 : PySide
如果我尝试以下方法:
import pylab as pl
pl.ion()
pl.plot(xrange(10))
pl.show()
pl.draw()
什么都没发生。没有窗户打开。
但如果我这样做:
import pylab as pl
pl.ioff()
pl.plot(xrange(10))
pl.show()
我可以正确看到窗口和情节。
我可以解决这个问题吗?我在Linux 64位上使用Anaconda分发。
我以两种不同的方式重现了上述行为:
> python program.py
ipython
作为> ipython
,然后run program.py
答案 0 :(得分:1)
在我的情况下,我曾经能够使用plt.ion()
进行交互式绘图并且没有任何问题,直到最近它才停止工作。我的情况与你的情况类似:我可以在不使用plt.ion()的情况下绘制静态图像。
我没有收到任何错误消息,但情节并没有显示出来。该计划以其他方式运行良好。
我正在运行Ubuntu 12.04并且最近安装了QT4,我怀疑它与它有关。
我google了一下,了解了后端,并找到了以下解决问题的方法
import matplotlib
matplotlib.rcParams['backend'] = "WXAgg"
import matplotlib.pyplot as plt
我以前有过QT4Agg,如图所示
print matplotlib.get_backend()