今天遇到了一个问题,在循环中,plt.savefig()和plt.show()方法得到的图片不一样,差别很大
在最后一行加入 plt.clf() 就可以了
原始代码:
for pro in properties:
plt.savefig("images/{}.pdf".format(pro))
正确方式:
for pro in properties:
plt.savefig("images/{}.pdf".format(pro))
plt.clf()
因为如果还需要在同一个脚本中继续使用 plt
对象绘制图像,需要在保存完图像后再次调用 plt.clf()
函数清空图形对象,以免影响后续绘图。
否则,如果不加入这一行,只会循环中的第一次循环plt.savefig()和plt.show()方法得到的图片一样。剩余的循环都不不一样