解决python绘图使用subplots出现标题重叠的问题


Posted in Python onApril 30, 2021

先上图

解决python绘图使用subplots出现标题重叠的问题

遇到的问题

使用plt.subplots(2,2)绘图时,子图的标题和上图重叠,影响观感:

解决python绘图使用subplots出现标题重叠的问题

源代码:

import numpy as np
from scipy import signal
from skimage import data
from matplotlib import pyplot as plt

# 定义二维灰度图像的空间滤波函数
def correl2d(img, window):
	# 使用滤波器实现图像的空间相关
	# mode = 'same'表示输出尺寸等于输入尺寸
	# boundary = 'fill'表示滤波前,用常量值填充原始图像的边缘,默认常量值为0
	s = signal.correlate2d(img, window, mode='same', boundary='fill')
	return s.astype(np.uint8)
# img为原始图像
img = data.camera()
# 3*3盒状滤波模板
window_1 = np.ones((3, 3))/(3 ** 2)
# 5*5盒状滤波模板
window_2 = np.ones((5, 5))/(5 ** 2)
# 9*9盒状滤波模板
window_3 = np.ones((9, 9))/(9 ** 2)
# 生成滤波结果
new_img_1 = correl2d(img, window_1)
new_img_2 = correl2d(img, window_2)
new_img_3 = correl2d(img, window_3)
# 显示图像
plt.rcParams['font.sans-serif'] = ['SimHei'] # 中文
fig, axs = plt.subplots(2, 2)
axs[0, 0].imshow(img, cmap='gray')
axs[0, 0].set_title("摄影师原图")
axs[0, 1].imshow(new_img_1, cmap='gray')
axs[0, 1].set_title("3*3盒状滤波模板")
axs[1, 0].imshow(new_img_2, cmap='gray')
axs[1, 0].set_title("5*5盒状滤波模板")
axs[1, 1].imshow(new_img_3, cmap='gray')
axs[1, 1].set_title("9*9盒状滤波模板")
plt.show()

解决方法

方法1:在plt.show() 之前添加一句:

plt.tight_layout()

函数原型:

matplotlib.pyplot.tight_layout(*, pad=1.08, h_pad=None, w_pad=None, rect=None)

作用:调整subplots子图见的间距

Adjust the padding between and around subplots.

参数:

解决python绘图使用subplots出现标题重叠的问题

参考官方文档:https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.tight_layout.html#matplotlib.pyplot.tight_layout

部分代码:

# 显示图像
plt.rcParams['font.sans-serif'] = ['SimHei'] # 中文
fig, axs = plt.subplots(2, 2)
axs[0, 0].imshow(img, cmap='gray')
axs[0, 0].set_title("摄影师原图")
axs[0, 1].imshow(new_img_1, cmap='gray')
axs[0, 1].set_title("3*3盒状滤波模板")
axs[1, 0].imshow(new_img_2, cmap='gray')
axs[1, 0].set_title("5*5盒状滤波模板")
axs[1, 1].imshow(new_img_3, cmap='gray')
axs[1, 1].set_title("9*9盒状滤波模板")
plt.tight_layout()
plt.show()

方法1测试结果:

解决python绘图使用subplots出现标题重叠的问题

方法2:在subplots中设置figsize

fig, axs = plt.subplots(2, 2,figsize=(6, 15))
# 显示图像
plt.rcParams['font.sans-serif'] = ['SimHei'] # 中文
# 设置figsize,防止图片重叠
fig, axs = plt.subplots(2, 2,figsize=(6, 15))
axs[0, 0].imshow(img, cmap='gray')
axs[0, 0].set_title("摄影师原图")
axs[0, 1].imshow(new_img_1, cmap='gray')
axs[0, 1].set_title("3*3盒状滤波模板")
axs[1, 0].imshow(new_img_2, cmap='gray')
axs[1, 0].set_title("5*5盒状滤波模板")
axs[1, 1].imshow(new_img_3, cmap='gray')
axs[1, 1].set_title("9*9盒状滤波模板")

方法2测试结果:

解决python绘图使用subplots出现标题重叠的问题

参考

[1]https://blog.csdn.net/txh3093/article/details/106401484

到此这篇关于python绘图使用subplots出现标题重叠的解决方法的文章就介绍到这了,更多相关python使用subplots绘图标题重叠内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python计算文本文件行数的方法
Jul 06 Python
使用Python的urllib2模块处理url和图片的技巧两则
Feb 18 Python
python实现随机梯度下降(SGD)
Mar 24 Python
PyQt5实现下载进度条效果
Apr 19 Python
Python3.6+Django2.0以上 xadmin站点的配置和使用教程图解
Jun 04 Python
Python3+Appium安装使用教程
Jul 05 Python
对Django的restful用法详解(自带的增删改查)
Aug 28 Python
关于numpy中eye和identity的区别详解
Nov 29 Python
python实现猜数游戏
Mar 27 Python
利用Python制作动态排名图的实现代码
Apr 09 Python
python中HTMLParser模块知识点总结
Jan 25 Python
Python页面加载的等待方式总结
Feb 28 Python
python数据库批量插入数据的实现(executemany的使用)
Apr 30 #Python
Python如何把不同类型数据的json序列化
Apr 30 #Python
python实现三次密码验证的示例
Django一小时写出账号密码管理系统
python中的被动信息搜集
Apr 29 #Python
Python基础之元类详解
Apr 29 #Python
教你怎么用Python监控愉客行车程
You might like
php缓存技术介绍
2006/11/25 PHP
PHP文件锁定写入实例解析
2014/07/14 PHP
PHP中单引号与双引号的区别分析
2014/08/19 PHP
浅谈本地WAMP环境的搭建
2015/05/13 PHP
PHP中通过trigger_error触发PHP错误示例
2015/06/23 PHP
一个简单至极的PHP缓存类代码
2015/10/23 PHP
自用js开发框架小成 学习js的朋友可以看看
2010/11/16 Javascript
javascript使用activex控件的代码
2011/01/27 Javascript
jQuery EasyUI API 中文文档 - Spinner微调器使用
2011/10/21 Javascript
JQuery弹出层示例可自定义
2014/05/19 Javascript
非jQuery实现照片散落桌子上,单击放大的LightBox效果
2014/11/28 Javascript
浅谈JavaScript中的作用域和闭包问题
2015/07/07 Javascript
jQuery form插件之formDdata参数校验表单及验证后提交
2016/01/23 Javascript
JS实现的打字机效果完整实例
2016/06/20 Javascript
nodejs开发微信小程序实现密码加密
2017/07/11 NodeJs
浅谈如何使用 webpack 优化资源
2017/10/20 Javascript
vue实现简单计算商品价格
2020/09/14 Javascript
python制作小说爬虫实录
2017/08/14 Python
python实现汉诺塔算法
2021/03/01 Python
浅谈pycharm出现卡顿的解决方法
2018/12/03 Python
Tensorflow Summary用法学习笔记
2020/01/10 Python
Python importlib动态导入模块实现代码
2020/04/16 Python
解决Keras 自定义层时遇到版本的问题
2020/06/16 Python
Django ModelForm组件原理及用法详解
2020/10/12 Python
python 如何把docker-compose.yaml导入到数据库相关条目里
2021/01/15 Python
python工具快速为音视频自动生成字幕(使用说明)
2021/01/27 Python
美国奢侈品购物平台:Orchard Mile
2018/05/02 全球购物
英国Lookfantastic中文网站:护肤品美妆美发购物(英国直邮)
2020/04/27 全球购物
人事专员职责
2014/02/22 职场文书
情人节寄语大全
2014/04/11 职场文书
地球一小时倡议书
2014/04/15 职场文书
税务干部个人整改措施思想汇报
2014/10/10 职场文书
2015年女生节活动总结
2015/02/27 职场文书
2015年度员工自我评价范文
2015/03/11 职场文书
python 爬取京东指定商品评论并进行情感分析
2021/05/27 Python
怎么用Python识别手势数字
2021/06/07 Python