文章目录

  • 遇到的问题
  • 解决方法
  • 参考

先上图

遇到的问题

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

源代码:

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'表示滤波前,用常量值填充原始图像的边缘,默认常量值为0s = 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.

参数:

参考官方文档: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测试结果:

方法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测试结果:

参考

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

python绘图使用subplots出现标题重叠的解决方法相关推荐

  1. Python:绘图保存时出现空白图像的解决和如何保存图片

    QUESTION:Python:绘图保存时出现空白图像的解决和如何保存图片? ANSWER: 保存图片的代码: plt.savefig("test1.png") 保存要在显示图形前 ...

  2. python使用退格键时出现^H解决方法

    python使用退格键时出现^H解决方法 参考文章: (1)python使用退格键时出现^H解决方法 (2)https://www.cnblogs.com/effortsing/p/9982040.h ...

  3. Python 下载依赖包环境经常失败超时解决方法

    Python 下载依赖包环境经常失败超时解决方法 参考文章: (1)Python 下载依赖包环境经常失败超时解决方法 (2)https://www.cnblogs.com/boonya/p/11909 ...

  4. Python写入到csv文件存在空行的解决方法

    Python写入到csv文件存在空行的解决方法 参考文章: (1)Python写入到csv文件存在空行的解决方法 (2)https://www.cnblogs.com/crooswang/p/5953 ...

  5. Python TimedRotatingFileHandler 多进程环境下的问题和解决方法

    Python TimedRotatingFileHandler 多进程环境下的问题和解决方法 原文:https://my.oschina.net/lionets/blog/796438 Python ...

  6. python安装numpy模块-python的numpy模块安装不成功简单解决方法总结

    为了画个图,被numpy这个模块的安装真的折腾疯了!!!一直装不上,花了几个小时,看了网上的很多教程.方法发现总结得不是很全,这里总结一下,防止大家再出现这个问题没有解决方法. Python的魅力之一 ...

  7. python怎么安装pyecharts_基于Python安装pyecharts所遇的问题及解决方法

    最近学习到数据可视化内容,老师推荐安装pyecharts,于是pip install 了一下,结果...掉坑了,下面是我的跳坑经验,如果你有类似问题,希望对你有所帮助. 第一个坑: 这个不难理解,缺少 ...

  8. python安装pyecharts清华_基于Python安装pyecharts所遇的问题及解决方法

    最近学习到数据可视化内容,老师推荐安装pyecharts,于是pip install 了一下,结果...掉坑了,下面是我的跳坑经验,如果你有类似问题,希望对你有所帮助. 第一个坑: 这个不难理解,缺少 ...

  9. Win11任务栏图标重叠怎么办 Win11任务栏图标重叠的解决方法

    Win11操作系统也推出一段时间了,不少小伙都有下载体验,但有一些小伙伴在使用Win11系统的时候发现自己任务栏图标重叠在一起,那么碰到这种情况应该怎么办,下面就和小编一起来看看有什么解决方法. Wi ...

最新文章

  1. windowsclient开发--为你的client进行国际化
  2. mybatis框架--学习笔记(下)
  3. QT绘制散点图(2)
  4. 问题 B: 小鱼的搭配购物(并查集+01背包)
  5. intellij-IDE运行Java程序报错:java: -source 1.5 中不支持 lambda 表达式 有用
  6. mongodb 导入 mysql_将mongodb 数据指定字段导出,然后指定字段导入mysql 实例 及相关问题解决...
  7. 第十一章:可绑定的基础结构(四)
  8. Hindenburg发布亿邦国际做空报告,称其股份增发套现、矿机销量萎靡
  9. 百度员工揭秘8月算法变动
  10. 管理员后台爆破扫描器-WebCrack
  11. 一文了解机器人伺服系统
  12. 程序猿必备的17款最佳的代码审查工具
  13. vmware8.0.4序列号及汉化包安装
  14. 算法训练 - 黑色星期五 有些西方人比较迷信,如果某个月的13号正好是星期五,他们就会觉得不太吉利,用古人的说法,就是“诸事不宜”。请你编写一个程序,统计出在某个特定的年份中,出现了多少次既是13号又
  15. 清晰认知总线(包括各类常用总线的总结)
  16. 无人机编程模拟仿真软件下载
  17. JS控制字体大小中、设为首页、收藏本站功能、超链接去掉颜色
  18. 单片机应用系统设计技术——基于51单片机篮球计时计分器的设计
  19. 奥的斯电梯服务器自动呼梯,奥的斯外呼电梯控制系统说明
  20. 移动电源/便携式汽车应急启动电源UKCA/CE认证

热门文章

  1. Python--三元运算与lambda表达式
  2. react 实现数据双向绑定
  3. iOS-上架APP之启动页设置(新手必看!)
  4. uniGUI试用笔记(二)
  5. 可以给img元素设置背景图
  6. 4. 分类的线性模型
  7. 【控制】二阶 UGV 的 时间-输入 指标性能最优解算
  8. 【小项目关键技术六】控制北斗 GPS 定位 / UWB 室内定位
  9. 1.2 线性回归与梯度下降-机器学习笔记-斯坦福吴恩达教授
  10. 解决NIOS II工程拷贝后无法编译问题