matplotlib 使用savefig动态命名

jpfvwuh4  于 2023-11-22  发布在  其他
关注(0)|答案(2)|浏览(115)

我有一个包含一些列的df,我使用一个循环来创建二元图,如下所示:

for col in df.columns[2:len(df.columns)]:
    sns.factorplot(x='xvar', y=col,  data=df)
    sns.despine(offset=10, trim=True)

    plt.show()
    plt.clf()

plt.close()

字符串
我不想显示所有的图,我想用命名约定[xaxis]_y[axis]. png来保存它们。然而,我不确定如何通过plt.savefig()传递多个项目,其中一个项目每次都会改变。我看到过一些依赖于列表的答案(12),但我希望有一种方法可以实现相同的结果,而不必创建列表来传递。

0s0u357o

0s0u357o1#

plt.savefig('var1' + '_' + col' + '.png')

字符串
达到了预期的效果

w6lpcovy

w6lpcovy2#

python 3.6开始,你可以使用f-strings来动态格式化字符串:

for col in df.columns[2:]:
    sns.factorplot(x='xvar', y=col, data=df)
    sns.despine(offset=10, trim=True)
    plt.savefig(f'xvar_{col}.png')

字符串

相关问题