pyplot.Show():matplotlib不显示我的绘图?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (46)

我没有忘记调用pyplot.Show()。

$IPython-pylab

import matplotlib.pyplot as p 
p.plot(range(20), range(20))

它回来了matplotlib.lines.Line2D at 0xade2b2c as the output.

p.show()

结果什么都没有返回。

我用,

  • Ubuntu
  • IPython v0.11
  • Python v2.6.6
  • matplotlib v1.0.1
提问于
用户回答回答于

如果我把后端设置为template~/.matplotlib/matplotlibrc然后我可以重现你的症状:

~/.matplotlib/matplotLibrary c

# backend      : GtkAgg
backend      : template

注意文件matplotlibrc可能不在目录中~/.matplotlib/...。在这种情况下,下面的代码显示了它的位置:

>>> import matplotlib
>>> matplotlib.matplotlib_fname()

In [1]: import matplotlib.pyplot as p

In [2]: p.plot(range(20),range(20))
Out[2]: [<matplotlib.lines.Line2D object at 0xa64932c>]

In [3]: p.show()

如果你编辑~/.matplotlib/matplotlibrc并将后端更改为GtkAgg你应该看个阴谋。您可以列出计算机上可用的所有后端

import matplotlib.rcsetup as rcsetup
print(rcsetup.all_backends)

它应该返回如下列表:

['GTK', 'GTKAgg', 'GTKCairo', 'FltkAgg', 'MacOSX', 'QtAgg', 'Qt4Agg',
'TkAgg', 'WX', 'WXAgg', 'CocoaAgg', 'agg', 'cairo', 'emf', 'gdk', 'pdf',
'ps', 'svg', 'template']
用户回答回答于

我在Ubuntu12.04上遇到了完全相同的问题,因为我使用

pip install matplotlib

扫码关注云+社区