我有一个简单的脚本来测试matplotlib中的绘图,但没有显示该图的窗口。在阅读有关stackoverflow的其他问题时,我已完成以下操作来解决此问题:
使用以下两行编辑matplotlibrc文件:
backend : Qt4Agg
#backend.qt4 : PySide # PyQt4 | PySide
以便命令python -c 'import matplotlib; import matplotlib.pyplot; print(matplotlib.backends.backend)'
现在产生Qt4Agg
,而在它给出agg
之前
包含pylab.show()
命令。所以我现在在安装Pyside后在python解释器中尝试过的命令集,并编辑matplotlibrc文件如下所示:
import pylab
pylab.ion()
import matplotlib.pyplot as plt
import numpy as np
x = np.arange(0,5,0.1)
y = np.sin(x)
plt.plot(x,y)
[<matplotlib.lines.Line2D object at 0x7fcef627cdd0>]
pylab.show()
然而,该情节仍然没有显示出来。有人可以帮我这个吗?我在VirtualBox中使用Ubuntu 14.04和python2.7。
答案 0 :(得分:2)
当我使用您的代码时,图表实际上会在屏幕上闪烁,但会立即关闭。在最后放置input()
函数可能会帮助您进行调试:
import pylab
import matplotlib.pyplot as plt
import numpy as np
pylab.ion()
x = np.arange(0,5,0.1)
y = np.sin(x)
plt.plot(x,y)
pylab.show()
tin = input("Test Input: ")
删除pylab.ion()
实际上会将图表保留在屏幕上。这给了你另一个提示。已经有一些很好的答案为什么会发生这种情况。 E.g: