为什么我在matplotlib.pyplot中得到一个ValueError?这是我的代码:
import matplotlib.pyplot as plt
plt.plot([1,2,3,4,5,6])
f = 1.234
s = "number %i" % f
print s
plt.savefig(s)
到目前为止一切顺利。该图保存到名称为1的文件中(f的整数部分)
但是如果我这样做的话。
plt.plot([1,2,3,4,5,6])
f = 1.234
s = "number %.2f" % f
print s
plt.savefig(s)
print语句按预期打印1.234,而plt.savefig给出:
ValueError:不支持格式“23”。支持的格式:eps, jpeg,jpg,pdf,pgf,png,ps,raw,rgba,svg,svgz,tif,tiff。
以某种方式,savefig()方法将字符串格式与文件格式混合以进行保存。我正在使用matplotlib 1.5.1运行python 2.7
答案 0 :(得分:3)
plt.savefig
尝试根据文件扩展名猜测所需的文件格式。
如果无法识别扩展名,则会出现ValueError。
您可以更改文件名以包含可识别的文件扩展名,也可以包含format
参数:
plt.savefig(s, format='png')