我在 Win7 32 位(Python 版本是 2.7.3)上使用 PyDev 和 Eclipse。我还安装了 Scipy 和 Matplotlib。现在,我要做的是将绘制的数据保存为 pdf 文件。这是一个代码示例,尽管它与我的问题并不相关:
import scipy as sp
import matplotlib.pyplot as plt
from scipy.io import loadmat
fname = "calc.mat"
data = loadmat(fname)
train_acc, test_acc = data['train'], data['test']
# plot results
fig = plt.figure(1,figsize=(12,4))
fig.clf()
# plot the error
ax1 = fig.add_subplot(1,2,1)
ax1.boxplot(sp.hstack((train_acc, test_acc)))
plt.savefig('bcc.pdf')
代码非常简单:从 mat 文件加载一些数据,创建一个绘图并将其存储为图像。现在,当尝试在 Eclipse 中执行代码时,出现以下错误:
File "C:\Users\Kseniya\workspace\BrainComputerInterfacing\src\bci.py", line 223, in test2
fig = plt.figure(1,figsize=(12,4))
File "C:\Programme\Python27\lib\site-packages\matplotlib\pyplot.py", line 343, in figure
**kwargs)
File "C:\Programme\Python27\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 79, in new_figure_manager
return new_figure_manager_given_figure(num, figure)
File "C:\Programme\Python27\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 96, in new_figure_manager_given_figure
icon_img = Tk.PhotoImage(file=icon_fname)
File "C:\Programme\Python27\lib\lib-tk\Tkinter.py", line 3244, in __init__
Image.__init__(self, 'photo', name, cnf, master, **kw)
File "C:\Programme\Python27\lib\lib-tk\Tkinter.py", line 3200, in __init__
self.tk.call(('image', 'create', imgtype, name,) + options)
_tkinter.TclError: couldn't open "C:\Programme\Python27\lib\site-packages\matplotlib\mpl-data\images\matplotlib.gif": no such file or directory
似乎找不到或无法打开文件 matplotlib.gif,尽管它存在。如果我从控制台运行脚本,我不会收到任何错误,并且脚本会在没有任何错误的情况下终止,从而正确创建图像文件。所以,这似乎是一个 PyDev 错误。有谁知道如何解决它?提前谢谢了!