(2022.4)Python保存大批量的纯矢量图(Matplotlib无坐标轴和填充距离)

前言

今天有个任务,需要基于Matplotlib的Pyplot来保存一大批矢量图,然而存在坐标轴和填充距离等影响图片质量的细节,于是经过探索,找到了保存大量纯矢量图的方法,仅需四行代码完成。


想到将图片保存,于是采用savefig()来实现保存,以下是代码实现:

plt.imshow(img)
plt.savefig(location, bbox_inches='tight')
plt.clf()

效果图:

发现有坐标轴,于是加上了一行来去掉坐标轴,代码如下:

plt.axis("off")
plt.imshow(img)
plt.savefig(location, bbox_inches='tight')
plt.clf()

发现还有一个窄窄的边框(我在图中用红色表示),于是想到是否存在其他参数来解决,经过研究发现bbox_inches的作用是调整图的边界框(bounding box)。

当bbox_inches设为'tight'时,会计算出距该图像的紧(tight)边界框bbox,并将该选中的框中的图像保存。

然而如果需要清楚填充距离,可以使用pad_inches,它的作用是当前面的bbox_inches为'tight'时,调整图像和bbox之间的填充距离。

加上pad_inches=0后,代码和效果图如下:

plt.axis("off")
plt.imshow(img)
plt.savefig(location, bbox_inches='tight', pad_inches=0)
plt.clf()

完成!


总结

以上就是今天要讲的内容,本文仅仅简单介绍了如何基于Matplotlib的Pyplot来保存一大批矢量图,仅需四行代码完成细节优化,可以直接复制使用。

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值