我刚刚使用突触软件包系统在Ubuntu 9.10中安装了matplotlib。但是,当我尝试以下简单示例时
>>> from pylab import plot;
>>> plot([1,2,3],[1,2,3])
[<matplotlib.lines.Line2D object at 0x9aa78ec>]
我没有绘图窗口。关于如何显示绘图窗口的任何想法?
我刚刚使用突触软件包系统在Ubuntu 9.10中安装了matplotlib。但是,当我尝试以下简单示例时
>>> from pylab import plot;
>>> plot([1,2,3],[1,2,3])
[<matplotlib.lines.Line2D object at 0x9aa78ec>]
我没有绘图窗口。关于如何显示绘图窗口的任何想法?
Answers:
pylab.show()
可以但是会阻塞(您需要关闭窗口)。
一个更方便的解决方案是pylab.ion()
在启动时执行(启用交互模式):所有(pylab的等效pyplot.*
命令)立即显示其图。可以在官方网站上找到有关交互模式的更多信息。
我还使用了更方便的功能ipython -pylab
(--pylab
在较新的版本中),它使您可以跳过该from … import …
部分(%pylab
在较新的IPython版本中也可以使用)。
pylab.show()
才能打开一个数字。
以下代码段可在Eclipse和Python Shell上使用:
import numpy as np
import matplotlib.pyplot as plt
# Come up with x and y
x = np.arange(0, 5, 0.1)
y = np.sin(x)
# Just print x and y for fun
print x
print y
# Plot the x and y and you are supposed to see a sine curve
plt.plot(x, y)
# Without the line below, the figure won't show
plt.show()
是否显示任何错误?这可能是没有设置后端的问题。您可以从Python解释器或.matplotlib/matplotlibrc
主目录中的配置文件()进行设置。
要在代码中设置后端,您可以执行
import matplotlib
matplotlib.use('Agg')
其中“ Agg”是后端的名称。存在哪些后端取决于您的安装和操作系统。
http://matplotlib.sourceforge.net/faq/installing_faq.html#backends
.matplotlib/matplotlibrc
为backend: Agg
。然后,您不必use
每次都明确地指定一个:)
使用easy_install时的另一种可能性是,您需要使用最新版本的matplotlib。尝试:
import pkg_resources
pkg_resources.require("matplotlib")
在导入matplotlib或其任何模块之前。
matplotlib
已安装,而不影响窗口处理的完成方式。
show()
。