在Mac系统中保存matplotlib图形时无法修改文件名

Unable to modify file name when saving matplotlib figures in Mac system

在Python中执行show()命令后,我只能将数字保存为figure_1.png 我无法更改我的文件名。 "Save As:" 旁边不允许打字。如何启用此时输入我的文件名?

抱歉,我需要至少 10 个声望才能 post 截图。

试试这个。我不知道你是否在使用 pyplot,但这很常见。 确保你没有在代码中的任何地方显示()图形——它会阻止 savefig()函数工作。这对我有用,并将 myfigure.png 保存在我 运行 代码所在的目录中。

import matplotlib.pyplot as plt

# make a figure with 1 row and 1 column
fig, myplot = plt.subplots( nrows=1, ncols =1)

# simple plot
t = arange(0.0,2.0,0.01)
s = sin(2*pi*t)
myplot = plot(t,s)

# save figure with specified filename
plt.savefig('myfigure.png')

# close figure
plt.close(fig)

我遇到了完全相同的问题,我在解决 matplotlib 后端的潜在问题时找到了答案(默认后端 "macosx" 导致了此问题)。解决方案是更改 matplotlibrc 文件中的后端行,您可以通过 运行

找到它
import matplotlib
matplotlib.matplotlib_fname()

在 python 终端中。在 matplotlibrc 文件中,找到并更改行

backend      : macosx

至(例如):

backend      : TkAgg

所有问题都应该消失了。对我有用,希望对你有帮助。

刚刚找到解决方案:

使用conda install python.app安装pythonw

然后在终端中使用 pythonw 而不是 python

例如

pythonw my_plot.py

希望对您有所帮助

对于一些人来说,这个讨论可能会回答这个问题:https://matplotlib.org/faq/osx_framework.html

如果没有 Python 的框架构建,matplotlib 在 OS X 上无法正常运行。Anaconda 不提供框架构建,因此出现了问题......虽然我没有记住这直到最近才成为一个问题!

尽管使用 Python 3,但我实际上无法使 link 中建议的虚拟环境修复对我有用。