Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在Windows中保存matplotlib图形?_Python_String_Image_Matplotlib - Fatal编程技术网

Python 如何在Windows中保存matplotlib图形?

Python 如何在Windows中保存matplotlib图形?,python,string,image,matplotlib,Python,String,Image,Matplotlib,当我试图在Spyder中保存matplotlib图形时(在Windows 10中运行),出现了一个错误。我的代码非常简单,看起来像: date0 = datetime(2018, 1, 1, 0, 0) m.contourf(x, y, Zp * norm_vert, np.arange(0, 40, 0.1), cmap = 'jet') plt.colorbar(cmap = 'jet') plt.savefig("C:\\Work\\IWV\\" + str(date0) + ".png"

当我试图在Spyder中保存matplotlib图形时(在Windows 10中运行),出现了一个错误。我的代码非常简单,看起来像:

date0 = datetime(2018, 1, 1, 0, 0)
m.contourf(x, y, Zp * norm_vert, np.arange(0, 40, 0.1), cmap = 'jet')
plt.colorbar(cmap = 'jet')
plt.savefig("C:\\Work\\IWV\\" + str(date0) + ".png")
错误是:

OSError: [Errno 22] Invalid argument: 'C:\\Work\\IWV\\2018-01-01 00:00:00.png'
我还试图将最后一行改写为:

plt.savefig(r"C:\Work\IWV\" + str(date0) + ".png")
但在本例中,savefig的整个参数被视为一个字符串,因此文件名类似于“str(date0)+.png.png”。
有人能帮我解决这个问题吗?

您遇到了一个错误,因为您无法用符号命名文件
。使用以下命令代替
str(date0)

date0.strftime("%B-%d-%Y-%H-%M-%S")
您将拥有一个可以保存的字符串,其中不包含禁止的字符
,如下所示:

Out[11]: 'January-01-2018-00-00-00'

或者您喜欢的任何其他格式。阅读有关strftime的更多信息。然后,您将能够为文件扩展名
+'.png'

您将收到一个错误,因为您无法使用符号
命名文件。使用以下命令代替
str(date0)

date0.strftime("%B-%d-%Y-%H-%M-%S")
您将拥有一个可以保存的字符串,其中不包含禁止的字符
,如下所示:

Out[11]: 'January-01-2018-00-00-00'
或者您喜欢的任何其他格式。阅读有关strftime的更多信息。然后,您将能够为文件扩展名设置
+'.png'