python中,一个figure上显示多张小图

已有的多张图,整合到一张图上

import matplotlib.pyplot as plt
 
im1 = plt.imread('RL0.png')
im2 = plt.imread('RL2.png')
im3 = plt.imread('RL3.png')
im4 = plt.imread('RL4.png')

plt.subplot(221, xlabel = '(1)', title = "K_VRH")
plt.imshow(im1)
plt.xticks([])
plt.yticks([])
plt.subplot(222, xlabel = '(2)', title = "G_VRH")
plt.imshow(im2)
plt.xticks([])
plt.yticks([])
plt.subplot(223, xlabel = '(3)', title = "Elastic anisotropy")
plt.imshow(im3)
plt.xticks([])
plt.yticks([])
plt.subplot(224, xlabel = '(4)', title = "Poisson ratio")
plt.imshow(im4)
plt.xticks([])
plt.yticks([])

imread是 Matplotlib 库中的一个函数,用于从指定路径读取图像文件并将其作为 NumPy 数组返回。该函数支持多种图像文件格式,包括PNG、JPEG、BMP、GIF等等。通过调用该函数,可以将图像数据加载到Python环境中,以便进一步处理和分析。

通过plt.subplot来设置子图的参数,其中数字221表示子图总共有2行2列(4个),1则表示位于左上方的第一个图。

plt.xticks([])
plt.yticks([])

运行这两行代码以消除子图中的横纵坐标刻度(使得横纵坐标显示为空),因为我们要处理的图像一般都有刻度了。

plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=None, hspace=0.5)
plt.show()

通过plt.subplot_adjust来调节各个子图的间距,用plit.show()展示出子图

原文链接:使用Python中的matplotlib将多个图片显示到一张图内

代码运行时,一个figure上显示多个子图像

import cv2 as cv
import matplotlib.pyplot as plt

image = cv.imread('./demo/image database1/src_test_images/11.png')
I1 = cv.flip(image, 1)  # 水平翻转或者说是沿着y轴翻转
I2 = cv.flip(image, 0)  # 垂直翻转或者说是沿着x轴翻转
I3 = cv.flip(image, -1)  # 垂直水平翻转或者说是沿着xy轴翻转

plt.subplot(221)
plt.imshow(image)
plt.subplot(222)
plt.imshow(I1)
plt.subplot(223)
plt.imshow(I2)
plt.subplot(224)
plt.imshow(I3)
# 子图I3这里设置x、y轴刻度标签,范围,间距,旋转,字号
plt.xlabel('set_xlabel')
plt.ylabel('set_ylabel', fontsize=12, color='b')     # 设置y轴刻度标签
plt.xlim(0,250)   # 设置x轴刻度范围
plt.xticks(range(0,250,50))   # 设置x轴刻度间距
plt.tick_params(axis='x', labelsize=10, rotation=30)    # x轴标签旋转、字号等
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['font.size'] = 15
plt.suptitle("多子图绘制")

plt.show()

原文链接:python 一个figure上显示多个子图像

调整子图间隔

plt.subplots_adjust(left=None, bottom=None, right=None, top=None, \
    wspace=None, hspace=0.45)

你可能感兴趣的:(学习,python,笔记)