为什么 plt.savefig 根本不保存任何文件



我似乎遇到了一个奇怪的情况,plt.savefig似乎根本没有保存任何文件。

代码的形式是

df.plot().legend(loc='center left', bbox_to_anchor=(1, 0.5))
plt.savefig(label + "_" + "Plot_Type_Name.png", bbox_inches="tight")
plt.close("all")

它正在从命令行和/或 PyCharm 运行。我不清楚为什么它会失败。谁能帮忙?

问题中的代码将在定义dfdf.plot()创建绘图的条件下保存图形。这是一个完整的工作示例:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
df = pd.DataFrame({"x":np.arange(5),"y":np.random.rand(5)})
df.plot().legend(loc='center left', bbox_to_anchor=(1, 0.5))
fname="label.png"
plt.savefig(fname, bbox_inches="tight")
plt.close("all")

您可以测试文件是否确实存在

import os
if os.path.exists(fname):
    print(os.path.abspath(fname))
else:
    print("file not found")

savefig()需要在show()之前

最新更新