如何将matplotlib中的图形保存到特定文件夹中(spyder)

2024-05-28 11:16:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我得到了一个包含多个列的datetime索引数据框,我想为一个特定列的每周绘制一个图,但我想将这些图保存在将要创建的特定文件夹中。 文件夹名称将是列名,图形名称将是“columnname\u 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中,而不是保存程序的工作文件中,我不知道如何更改它


Tags: 数据name功能文件夹名称图形datetime绘制
1条回答
网友
1楼 · 发布于 2024-05-28 11:16:17

如果我正确理解了您的问题,那么它之所以保存到“C:\Users\Me”是因为name变量是一个相对路径,那么python将把它保存到当前工作目录(cwd)

您可以参考os.makedirs来创建目录,参考os.path来创建绝对路径

比如说,

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)

相关问题 更多 >