python中imshow函数_Matplotlib库imshow函数

Matplotlib是Python最著名的2D绘图库,该库仿造Matlab提供了一整套相似的绘图函数,用于绘图和绘表,强大的数据可视化工具和做图库,适合交互式绘图,图形美观。

imshow:热图(heatmap)是数据分析的常用方法,通过色差、亮度来展示数据的差异、易于理解。Python在Matplotlib库中,调用imshow()函数实现热图绘制。

imshow 参数及其默认值

plt.imshow(

X,

cmap=None,

norm=None,

aspect=None,

interpolation=None,

alpha=None,

vmin=None,

vmax=None,

origin=None,

extent=None,

shape=None,

filternorm=1,

filterrad=4.0,

imlim=None,

resample=None,

url=None,

*,

data=None,

**kwargs,

)

参数:X

图像数据。支持的数组形状是:

(M,N) :带有标量数据的图像。数据可视化使用色彩图。

(M,N,3) :具有RGB值的图像(float或uint8)。

(M,N,4) :具有RGBA值的图像(float或uint8),即包括透明度。

前两个维度(M,N)定义了行和列图片,即图片的高和宽;

RGB(A)值应该在浮点数[0, ..., 1]的范围内,或者

整数[0, ... ,255]。超出范围的值将被剪切为这些界限。

参数:cmap

将标量数据映射到色彩图

颜色默认为:rc:image.cmap。

参数:norm :~matplotlib.colors.Normalize

如果使用scalar data ,则Normalize会对其进行缩放[0,1]的数据值内。

默认情况下,数据范围使用线性缩放映射到颜色条范围。 RGB(A)数据忽略该参数。

参数:aspect

{'equal','auto'}或float,可选

控制轴的纵横比。该参数可能使图像失真,即像素不是方形的。

equal:确保宽高比为1,像素将为正方形。(除非像素大小明确地在数据中变为非正方形,坐标使用 extent )。

auto: 更改图像宽高比以匹配轴的宽高比。通常,这将导致非方形像素。

参数:interpolation

str

使用的插值方法

支持的值有:'none', 'nearest', 'bilinear', 'bicubic','spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser',

'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc','lanczos'.

如果interpolation = 'none',则不执行插值

参数:alpha

alpha值,介于0(透明)和1(不透明)之间。RGBA输入数据忽略此参数。

参数:vmin, vmax : scalar,

如果使用* norm 参数,则忽略 vmin , vmax *。

vmin,vmax与norm结合使用以标准化亮度数据。

参数:origin : {'upper', 'lower'}

将数组的[0,0]索引放在轴的左上角或左下角。

'upper'通常用于矩阵和图像。

请注意,垂直轴向上指向“下”但向下指向“上”。

参数:extent:(left, right, bottom, top)

数据坐标中左下角和右上角的位置。 如果为“无”,则定位图像使得像素中心落在基于零的(行,列)索引上。

导入包

import matplotlib.pyplot as plt

import matplotlib.image as mpimg

import numpy as np

展示原图

img=mpimg.imread('2019062107.png')

imgplot = plt.imshow(img)

效果

2019062108.png

处理1

plt.imshow(img[:,:,0], cmap="hot")

2019062109.png

处理 2

plt.imshow(img, interpolation="bicubic")

2019062110.png

  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
imshow函数matplotlib的一个函数,用于显示图像。其用法如下: ```python import matplotlib.pyplot as plt plt.imshow(image, cmap=None, norm=None, aspect=None, interpolation=None, alpha=None, vmin=None, vmax=None, origin=None, extent=None, shape=None, filternorm=1, filterrad=4.0, imlim=None, resample=None, url=None, data=None, **kwargs) ``` 参数说明: - `image`:要显示的图像,可以是numpy数组或PIL图像对象。 - `cmap`:颜色映射表,用于将灰度图像转换为彩色图像。默认为“viridis”。 - `norm`:归一化器,用于对图像进行归一化。默认为None。 - `aspect`:图像的长宽比。默认为“equal”。 - `interpolation`:图像的插值方式。默认为“nearest”。 - `alpha`:图像的透明度。默认为None。 - `vmin`:图像的最小值。默认为None。 - `vmax`:图像的最大值。默认为None。 - `origin`:图像的原点位置。默认为“upper”。 - `extent`:图像的坐标范围。默认为None。 - `shape`:图像的形状。默认为None。 - `filternorm`:滤波器的归一化常数。默认为1。 - `filterrad`:滤波器的半径。默认为4.0。 - `imlim`:图像的限制范围。默认为None。 - `resample`:重采样方法。默认为None。 - `url`:图像的URL地址。默认为None。 - `data`:图像的数据。默认为None。 - `**kwargs`:其他参数,用于控制图像的显示。默认为None。 示例: ```python import matplotlib.pyplot as plt import numpy as np # 创建一个numpy数组 image = np.random.randint(0, 256, (100, 100)) # 显示图像 plt.imshow(image, cmap='gray') # 添加标题 plt.title('Random Image') # 显示图像 plt.show() ``` 输出结果为: ![imshow示例图像](https://cdn.jsdelivr.net/gh/lyh-18/cdn/img/imshow.png)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值