matplotlib 使用 plt.savefig() 输出图片去除旁边的空白区域
作者:jifaley 时间:2023-06-24 02:55:42
最近在作图时需要将输出的图片紧密排布,还要去掉坐标轴,同时设置输出图片大小。
要让程序自动将图表保存到文件中,代码为:
plt.savefig('squares_plot.png', bbox_inches='tight')
第一个实参指定要以什么样的文件名保存图表,这个文件将存储到scatter_squares.py所在的目录中。
第二个实参指定将图表多余的空白区域裁减掉。如果要保留图表周围多余的空白区域,可省略这个实参。
但是发现matplotlib使用plt.savefig()保存的图片
周围有一圈空白。那么如何去掉该空白呢?
首先,关闭坐标轴显示:
plt.axis('off')
但是,这样只是关闭显示而已,透明的坐标轴仍然会占据左下角位置,导致输出的图片偏右。
要想完全去掉坐标轴,需要改为以下代码:
plt.axis('off')
fig = plt.gcf()
fig.set_size_inches(7.0/3,7.0/3) #dpi = 300, output = 700*700 pixels
plt.gca().xaxis.set_major_locator(plt.NullLocator())
plt.gca().yaxis.set_major_locator(plt.NullLocator())
plt.subplots_adjust(top = 1, bottom = 0, right = 1, left = 0, hspace = 0, wspace = 0)
plt.margins(0,0)
fig.savefig(out_png_path, format='png', transparent=True, dpi=300, pad_inches = 0)
即可完成去掉空白。
注:如果不采用 subplot_adjust + margin(0,0),而是在fig.savefig()的参数中添加bbox_inches = 'tight',也可以达到
去除空白的效果; 但是,这样会导致对图片输出大小的设置失效。
来源:https://blog.csdn.net/jifaley/article/details/79687000
标签:matplotlib,plt.savefig()
0
投稿
猜你喜欢
利用JavaScript做数独的完整实现过程
2024-02-24 02:10:47
SQL入侵恢复xp_cmdshell方法总结
2024-01-28 12:26:24
基于Python获取docx/doc文件内容代码解析
2022-09-20 09:25:23
90行Python代码开发个人云盘应用
2021-12-17 13:44:12
基于Python3.7.1无法导入Numpy的解决方式
2022-10-27 20:50:01
无组件上传图片到数据库中,asp解决方案
2007-08-03 13:22:00
Python识别html主要文本框过程解析
2023-11-09 01:31:52
详解python中的线程
2021-11-19 18:30:35
vue中实现拖动调整左右两侧div的宽度的示例代码
2024-04-27 16:02:36
JavaScript每天必学之事件
2024-04-22 13:08:43
将Python代码打包为jar软件的简单方法
2023-10-25 17:46:34
c#生成excel示例sql数据库导出excel
2024-01-26 16:55:07
MySQL定时全库备份数据库
2024-01-15 18:44:42
在pycharm中debug 实时查看数据操作(交互式)
2023-01-19 08:31:11
Python之lxml安装失败的解决
2023-11-27 04:34:22
Pycharm开发Django项目创建ORM模型的问题
2022-11-09 06:00:48
Python趣味挑战之用pygame实现飞机塔防游戏
2022-07-18 04:00:02
python中logging模块的一些简单用法的使用
2023-08-12 09:28:17
回归预测分析python数据化运营线性回归总结
2023-07-01 15:36:54
Windows 本地安装 Mysql8.0图文教程
2024-01-15 17:24:05