【Python】【Matplotlib】解决使用 plt.savefig() 保存的图片出现一片空白的问题
解决使用 plt.savefig()
保存图片出现空白的问题,通常是由于没有正确调用 plt.show()
显示图形之后再保存导致的。plt.show()
会实例化图形,之后才能正确保存。
解决方法:
确保在调用 plt.savefig()
之前调用了 plt.show()
或者有一个当前的图形上下文。
示例代码:
import matplotlib.pyplot as plt
# 创建图形
plt.plot([1, 2, 3], [4, 5, 6])
# 显示图形
plt.show()
# 保存图形
plt.savefig('figure.png')
# 关闭图形
plt.close()
如果你不希望显示图形但仍然需要保存,可以使用 plt.gcf()
获取当前图形对象,然后直接保存:
import matplotlib.pyplot as plt
# 创建图形
plt.plot([1, 2, 3], [4, 5, 6])
# 获取当前图形对象并保存
fig = plt.gcf()
fig.savefig('figure.png', bbox_inches='tight')
# 关闭图形
plt.close()
在这个例子中,bbox_inches='tight'
参数可以去除保存图像周围的空白边框。
评论已关闭