Python 如何将matplotlib中的图形保存到特定文件夹中(spyder)
我得到了一个包含多个列的datetime索引数据框,我想为一个特定列的每周绘制一个图,但我想将这些图保存在将要创建的特定文件夹中。 文件夹名称将是列名,图形名称将是“columnname\u week” 现在,我可以使用此功能保存我的无花果,并将其命名为:Python 如何将matplotlib中的图形保存到特定文件夹中(spyder),python,matplotlib,spyder,Python,Matplotlib,Spyder,我得到了一个包含多个列的datetime索引数据框,我想为一个特定列的每周绘制一个图,但我想将这些图保存在将要创建的特定文件夹中。 文件夹名称将是列名,图形名称将是“columnname\u week” 现在,我可以使用此功能保存我的无花果,并将其命名为: def graph(a): for i in range (2,53): plt.figure(figsize=[20,20]) a19=df19[[a]][(df19["week"
def graph(a):
for i in range (2,53):
plt.figure(figsize=[20,20])
a19=df19[[a]][(df19["week"]==i)]
plt.plot(a19)
name=str(a)+"_"+str(i)
plt.savefig(name)
return
graph('column_name')
但是我找不到一种方法,可以通过列的名称将它们保存在特定的文件夹中。
另外,我正在使用spyder,我的所有绘图似乎都保存在C:\Users\Me中,而不是保存程序的工作文件中,我不知道如何更改它。如果我正确理解了您的问题,那么它保存到“C:\Users\Me”的原因是什么因为name变量是一个相对路径,所以python将把它保存到当前工作目录(cwd) 您可以参考创建目录和创建绝对路径 比如说,
desired_folder = 'D:/some/desired/folder'
os.makedirs(desired_folder)
name=str(a)+"_"+str(i)
full_path = os.path.join(desired_folder, name)
plt.savefig(name)
哦,谢谢,这看起来是个好办法。我能在路径上输入变量名吗?例如,如果我想改进我的程序,同时绘制所有列并将它们保存在列命名文件夹中,你是想在文件路径中添加更多层次结构吗?您可以多次执行makedirs和os.path.join以生成更长的路径。