函数说明

plt.imshow()是Matplotlib中的一个函数,用于显示图像。它可以传递一个二维或三维数组作为image参数, 并将图像数据显示为图形,并对图像进行不同的可视化设置。

关于二维/三维数组的解释说明

image支持的数组形状包括:

  • (M, N):具有标量数据的图像。使用归一化和颜色映射将值映射到颜色。
  • (M, N, 3):具有RGB值(0-1浮点数或0-255整数)的图像。
  • (M, N, 4):具有RGBA值(0-1浮点数或0-255整数)的图像,即包括透明度。
  • 前两个维度(M, N)定义了图像的行和列。
  • 超出范围的RGB(A)值将被裁剪。
#二维数组(M, N)
np.random.rand(2,2)
#三维数组(M, N, 3)
np.random.rand(2,2,3)
#三维数组(M, N, 4)
np.random.rand(2,2,4)

在这里插入图片描述
第一行代码创建了一个形状为(2, 2)的二维数组。它将包含2行2列的随机值,类似于一个2x2的二维表格。

第二行代码创建了一个形状为(2, 2, 3)的三维数组。这个数组类似于由2个2x3的二维数组构成的集合,它包含2个2x3的二维数组,并且每个元素都是一个长度为3的一维数组。

第三行代码创建了一个形状为(2, 2, 4)的三维数组。这个数组类似于由2个2x4的二维数组构成的集合,它包含2个2x4的二维数组,并且每个元素都是一个长度为4的一维数组。

常用参数介绍

  • cmap:颜色设置。常用的值有’viridis’、‘gray’、'hot’等。可以通过plt.colormaps()查看可用的颜色映射。

  • aspect:调整坐标轴。这将根据图像数据自动调整坐标轴的比例。常用的值有’auto’、'equal’等。设置为’auto’时会根据图像数据自动调整纵横比,而设置为’equal’时则会强制保持纵横比相等。

  • interpolation:插值方法。它定义了图像在放大或缩小时的插值方式。常用的值有’nearest’、‘bilinear’、'bicubic’等。较高的插值方法可以使图像看起来更平滑,但计算成本更高。

  • alpha:透明度。它允许您设置图像的透明度,取值范围为0(完全透明)到1(完全不透明)之间。

  • vminvmax:用于设置显示的数据值范围。当指定了这两个参数时,imshow()将会根据给定的范围显示图像,超出范围的值会被截断显示。

官网文件地址:https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.imshow.html

函数示例

import numpy as np
import matplotlib.pyplot as plt

# 创建一个简单的二维数组作为图像数据
image = np.random.rand(4, 4)

# 显示图像
plt.imshow(image, cmap='viridis', interpolation='nearest', aspect='auto')
plt.colorbar()  # 显示颜色条
plt.title('Random Image')  # 设置标题
plt.show()

在这里插入图片描述

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐