我开始使用面向初学者的this教程学习MatPlotLib。这里是第一个例子。
from pylab import *
X = np.linspace(-np.pi, np.pi, 256,endpoint=True)
C,S = np.cos(X), np.sin(X)
如果我将这3行代码写入我的python文件并在命令行中执行它(通过键入python file_name.py
),什么也不会发生。没有错误消息,没有绘图。
有人知道我为什么看不到这个情节吗?
添加了
当然,我需要使用show
。但即使我添加以下3行代码:
plot(X,C)
plot(X,S)
show()
它仍然不会生成任何东西。
添加了
下面是我现在使用的代码行:
import pylab as p
C = [1,2,3,4]
S = [10, 20, 30, 10]
p.plot(C,S)
p.show()
我仍然有相同的结果(什么都没有)。
发布于 2013-01-28 18:15:22
这可能是后端的问题。python -c 'import matplotlib; import matplotlib.pyplot; print(matplotlib.backends.backend)'
的输出是什么
如果它是'agg‘后端,你看到的是预期的行为,因为它是一个非交互式的后端,不会向屏幕显示任何东西,但使用plt.savefig(...)。例如,您应该切换到TkAgg或Qt4Agg才能使用show
。您可以在matplotlib.rc文件中执行此操作。
@shashank:我在12.04和12.10上运行matplotlib都没有问题。在这两种情况下,我都使用Qt4Agg后端。如果您没有设置matplotlibrc,则使用默认的后端。准确地说,matplotlib repo是用TkAgg构建的。如果Quantal版本是使用Agg构建的,那么这就可以解释其中的差异
发布于 2013-01-28 17:22:39
您需要调用该函数:
show()
更准确地说:
pylab.show()
更好的是不要使用:
from pylab import *
而是这样做:
import pylab as p:
然后:
X = np.linspace(-np.pi, np.pi, 256,endpoint=True)
C,S = np.cos(X), np.sin(X)
p.plot(C,S)
p.show()
发布于 2017-10-10 15:01:24
尝试添加。我使用Jupyter,这对我很有效。
%matplotlib inline
https://stackoverflow.com/questions/14558843
复制相似问题