问题
当我们在使用matplotlib绘图时会发现保存的图片周围有白色部分,但是有些情况下我们是不需要这些空白部分的。下面举个简单的例子。
import matplotlib.pyplot as plt
x = [1,2,3,4]
y = [2,4,6,8]
plt.plot(x, y)
plt.gca().set_facecolor('yellow') #为了突出突出图像部分,加了一个颜色
plt.savefig('./demo.jpg')
plt.show()
运行这段简单的代码我们会发现保存的图像是下面这样(为了突出周围白色部分我在相册里打开了)。
解决办法
但是有些情况下我们是不需要这些空白部分的,解决的办法很简单,两个命令搞定!具体代码如下。
import matplotlib.pyplot as plt
x = [1, 2, 3, 4]
y = [2, 4, 6, 8]
plt.plot(x, y)
plt.gca().set_facecolor('yellow') # 为了突出突出图像部分,加了一个颜色
plt.axis('off') # 关掉坐标轴
plt.savefig('./demo.jpg', bbox_inches='tight', pad_inches=0)
plt.show()
运行代码后我们会发现我们得到了一个没有坐标轴并且十分紧凑的图像。如下图所示。其中plt.savefig()命令中的bbox_inches='tight'参数就是为了让图片变得更加紧凑,pad_inches是留白的尺寸。具体细节可以查看官网plt.savefig(),感觉有用的话点个赞👍支持一下。