交互式绘图模式pl.ion()不起作用

时间:2013-10-10 23:43:09

标签: python matplotlib anaconda

我的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分发。

更新

我以两种不同的方式重现了上述行为:

  1. 来自shell(例如bash),> python program.py
  2. ipython作为> ipython,然后run program.py

1 个答案:

答案 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()

相关问题