matplotlib.image#

图像模块支持基本的图像加载、缩放和显示操作。

class matplotlib.image.AxesImage(ax, *, cmap=None, norm=None, colorizer=None, interpolation=None, origin=None, extent=None, filternorm=True, filterrad=4.0, resample=False, interpolation_stage=None, **kwargs)[source]#

基类:_ImageBase

一个带有规则网格像素的图像,附属于一个坐标系。

参数:
axAxes

图像所属的坐标系。

cmap字符串或 Colormap,默认值:rcParams["image.cmap"] (默认值:'viridis')

用于将标量数据映射到颜色的颜色映射实例或已注册的颜色映射名称。

norm字符串或 Normalize

将亮度映射到 0-1。

interpolation字符串,默认值:rcParams["image.interpolation"] (默认值:'auto')

支持的值有 'none', 'auto', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos', 'blackman'。

interpolation_stage{'data', 'rgba'},默认值:'data'

如果为 'data',插值将在用户提供的数据上执行。如果为 'rgba',插值将在应用颜色映射后(视觉插值)执行。

origin{'upper', 'lower'},默认值:rcParams["image.origin"] (默认值:'upper')

将数组的 [0, 0] 索引放在 Axes 的左上角或左下角。'upper' 约定通常用于矩阵和图像。

extent元组,可选

用于将图像图与数据图对齐的数据轴(左、右、下、上)。默认是使用零基行和列索引标记像素中心。

filternormbool,默认值:True

一个用于 antigrain 图像大小调整过滤器的参数(请参阅 antigrain 文档)。如果设置了 filternorm,过滤器将规范化整数值并纠正舍入误差。它不会对源浮点值执行任何操作,它只根据 1.0 规则纠正整数,这意味着任何像素权重之和必须等于 1.0。因此,过滤函数必须生成适当形状的图。

filterrad浮点数 > 0,默认值:4

具有半径参数的过滤器的过滤半径,即当插值为以下之一时:“sinc”、“lanczos”或“blackman”。

resample布尔值,默认值:False

如果为 True,则使用完整的重采样方法。如果为 False,则仅在输出图像大于输入图像时进行重采样。

**kwargsArtist 属性
参数:
colorizercolorizer.Colorizer
get_cursor_data(event)[source]#

返回事件位置的图像值,如果事件在图像外部则返回 None。

get_extent()[source]#

返回图像范围为元组 (left, right, bottom, top)。

get_window_extent(renderer=None)[source]#

获取 artist 在显示空间中的边界框。

边界框的宽度和高度均为非负值。

子类应覆盖此方法,以便将其包含在边界框“紧密”计算中。默认返回一个位于 0, 0 的空边界框。

使用此函数时请小心,如果艺术家的窗口范围发生变化,结果将不会更新。范围可能因变换堆栈中的任何更改而改变,例如更改坐标轴限制、图形大小或使用的画布(如保存图形时所做)。这可能导致交互式图形在屏幕上看起来正常,但保存时却不正确。

make_image(renderer, magnification=1.0, unsampled=False)[source]#

使用给定的放大倍数,规范化、重新缩放并对该图像的数据进行颜色映射,以便使用渲染器进行渲染。

如果 unsampled 为 True,图像将不会被缩放,而是返回一个适当的仿射变换。

返回:
image(M, N, 4) numpy.uint8 数组

RGBA 图像,除非 unsampled 为 True,否则已重采样。

x, y浮点数

图像应绘制的左上角,位于像素空间中。

transAffine2D

从图像空间到像素空间的仿射变换。

set(*, agg_filter=<UNSET>, alpha=<UNSET>, animated=<UNSET>, array=<UNSET>, clim=<UNSET>, clip_box=<UNSET>, clip_on=<UNSET>, clip_path=<UNSET>, cmap=<UNSET>, data=<UNSET>, extent=<UNSET>, filternorm=<UNSET>, filterrad=<UNSET>, gid=<UNSET>, in_layout=<UNSET>, interpolation=<UNSET>, interpolation_stage=<UNSET>, label=<UNSET>, mouseover=<UNSET>, norm=<UNSET>, path_effects=<UNSET>, picker=<UNSET>, rasterized=<UNSET>, resample=<UNSET>, sketch_params=<UNSET>, snap=<UNSET>, transform=<UNSET>, url=<UNSET>, visible=<UNSET>, zorder=<UNSET>)[source]#

一次性设置多个属性。

支持的属性包括:

属性

描述

agg_filter

一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量

alpha

浮点数或二维类数组或 None

animated

布尔值

array

类数组

clim

(vmin: 浮点数, vmax: 浮点数)

clip_box

BboxBase 或 None

clip_on

布尔值

clip_path

Patch 或 (Path, Transform) 或 None

cmap

Colormap 或 str 或 None

data

类数组或 PIL.Image.Image

extent

浮点数的4元组

figure

FigureSubFigure

filternorm

布尔值

filterrad

正浮点数

gid

字符串

in_layout

布尔值

interpolation

{'auto', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos', 'none'} 或 None

interpolation_stage

{'data', 'rgba', 'auto'} 或 None

label

对象

mouseover

布尔值

norm

Normalize 或 字符串 或 None

path_effects

AbstractPathEffect 列表

picker

None 或 布尔值 或 浮点数 或 可调用对象

rasterized

布尔值

resample

布尔值或 None

sketch_params

(scale: 浮点数, length: 浮点数, randomness: 浮点数)

snap

布尔值或 None

transform

变换

url

字符串

visible

布尔值

zorder

浮点数

set_extent(extent, **kwargs)[source]#

设置图像范围。

参数:
extent浮点数的4元组

图像的位置和大小,以数据坐标中的元组 (left, right, bottom, top) 表示。

**kwargs

如果存在,将应用其他参数中的单位信息(即 *xunits*、*yunits*、*zunits*(用于 3D 坐标系)、*runits* 和 *thetaunits*(用于极坐标系)条目)。

备注

这将更新 Axes.dataLim,如果启用了自动缩放,则会设置 Axes.viewLim 以紧密适应图像,而无论 dataLim 如何。自动缩放状态不会改变,因此随后调用 Axes.autoscale_view 将根据 dataLim 重新执行自动缩放。

class matplotlib.image.BboxImage(bbox, *, cmap=None, norm=None, colorizer=None, interpolation=None, origin=None, filternorm=True, filterrad=4.0, resample=False, **kwargs)[source]#

基类:_ImageBase

其大小由给定 bbox 确定的图像类。

cmap 是一个 colors.Colormap 实例,norm 是一个 colors.Normalize 实例,用于将亮度映射到 0-1。

kwargs 是 Artist 关键字参数的可选列表。

contains(mouseevent)[source]#

测试鼠标事件是否发生在图像内部。

get_window_extent(renderer=None)[source]#

获取 artist 在显示空间中的边界框。

边界框的宽度和高度均为非负值。

子类应覆盖此方法,以便将其包含在边界框“紧密”计算中。默认返回一个位于 0, 0 的空边界框。

使用此函数时请小心,如果艺术家的窗口范围发生变化,结果将不会更新。范围可能因变换堆栈中的任何更改而改变,例如更改坐标轴限制、图形大小或使用的画布(如保存图形时所做)。这可能导致交互式图形在屏幕上看起来正常,但保存时却不正确。

make_image(renderer, magnification=1.0, unsampled=False)[source]#

使用给定的放大倍数,规范化、重新缩放并对该图像的数据进行颜色映射,以便使用渲染器进行渲染。

如果 unsampled 为 True,图像将不会被缩放,而是返回一个适当的仿射变换。

返回:
image(M, N, 4) numpy.uint8 数组

RGBA 图像,除非 unsampled 为 True,否则已重采样。

x, y浮点数

图像应绘制的左上角,位于像素空间中。

transAffine2D

从图像空间到像素空间的仿射变换。

set(*, agg_filter=<UNSET>, alpha=<UNSET>, animated=<UNSET>, array=<UNSET>, clim=<UNSET>, clip_box=<UNSET>, clip_on=<UNSET>, clip_path=<UNSET>, cmap=<UNSET>, data=<UNSET>, filternorm=<UNSET>, filterrad=<UNSET>, gid=<UNSET>, in_layout=<UNSET>, interpolation=<UNSET>, interpolation_stage=<UNSET>, label=<UNSET>, mouseover=<UNSET>, norm=<UNSET>, path_effects=<UNSET>, picker=<UNSET>, rasterized=<UNSET>, resample=<UNSET>, sketch_params=<UNSET>, snap=<UNSET>, transform=<UNSET>, url=<UNSET>, visible=<UNSET>, zorder=<UNSET>)[source]#

一次性设置多个属性。

支持的属性包括:

属性

描述

agg_filter

一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量

alpha

浮点数或二维类数组或 None

animated

布尔值

array

类数组

clim

(vmin: 浮点数, vmax: 浮点数)

clip_box

BboxBase 或 None

clip_on

布尔值

clip_path

Patch 或 (Path, Transform) 或 None

cmap

Colormap 或 str 或 None

data

类数组或 PIL.Image.Image

figure

FigureSubFigure

filternorm

布尔值

filterrad

正浮点数

gid

字符串

in_layout

布尔值

interpolation

{'auto', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos', 'none'} 或 None

interpolation_stage

{'data', 'rgba', 'auto'} 或 None

label

对象

mouseover

布尔值

norm

Normalize 或 字符串 或 None

path_effects

AbstractPathEffect 列表

picker

None 或 布尔值 或 浮点数 或 可调用对象

rasterized

布尔值

resample

布尔值或 None

sketch_params

(scale: 浮点数, length: 浮点数, randomness: 浮点数)

snap

布尔值或 None

transform

变换

url

字符串

visible

布尔值

zorder

浮点数

class matplotlib.image.FigureImage(fig, *, cmap=None, norm=None, colorizer=None, offsetx=0, offsety=0, origin=None, **kwargs)[source]#

基类:_ImageBase

附属于图形的图像。

cmap 是一个 colors.Colormap 实例,norm 是一个 colors.Normalize 实例,用于将亮度映射到 0-1。

kwargs 是 Artist 关键字参数的可选列表。

get_extent()[source]#

返回图像范围为元组 (left, right, bottom, top)。

make_image(renderer, magnification=1.0, unsampled=False)[source]#

使用给定的放大倍数,规范化、重新缩放并对该图像的数据进行颜色映射,以便使用渲染器进行渲染。

如果 unsampled 为 True,图像将不会被缩放,而是返回一个适当的仿射变换。

返回:
image(M, N, 4) numpy.uint8 数组

RGBA 图像,除非 unsampled 为 True,否则已重采样。

x, y浮点数

图像应绘制的左上角,位于像素空间中。

transAffine2D

从图像空间到像素空间的仿射变换。

set(*, agg_filter=<未设置>, alpha=<未设置>, animated=<未设置>, array=<未设置>, clim=<未设置>, clip_box=<未设置>, clip_on=<未设置>, clip_path=<未设置>, cmap=<未设置>, data=<未设置>, filternorm=<未设置>, filterrad=<未设置>, gid=<未设置>, in_layout=<未设置>, interpolation=<未设置>, interpolation_stage=<未设置>, label=<未设置>, mouseover=<未设置>, norm=<未设置>, path_effects=<未设置>, picker=<未设置>, rasterized=<未设置>, resample=<未设置>, sketch_params=<未设置>, snap=<未设置>, transform=<未设置>, url=<未设置>, visible=<未设置>, zorder=<未设置>)[source]#

一次性设置多个属性。

支持的属性包括:

属性

描述

agg_filter

一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量

alpha

浮点数或二维类数组或 None

animated

布尔值

array

类数组

clim

(vmin: 浮点数, vmax: 浮点数)

clip_box

BboxBase 或 None

clip_on

布尔值

clip_path

Patch 或 (Path, Transform) 或 None

cmap

Colormap 或 str 或 None

data

未知

figure

FigureSubFigure

filternorm

布尔值

filterrad

正浮点数

gid

字符串

in_layout

布尔值

interpolation

{'auto', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos', 'none'} 或 None

interpolation_stage

{'data', 'rgba', 'auto'} 或 None

label

对象

mouseover

布尔值

norm

Normalize 或 字符串 或 None

path_effects

AbstractPathEffect 列表

picker

None 或 布尔值 或 浮点数 或 可调用对象

rasterized

布尔值

resample

布尔值或 None

sketch_params

(scale: 浮点数, length: 浮点数, randomness: 浮点数)

snap

布尔值或 None

transform

变换

url

字符串

visible

布尔值

zorder

浮点数

set_data(A)[source]#

设置图像数组。

zorder = 0#
class matplotlib.image.NonUniformImage(ax, *, interpolation='nearest', **kwargs)[source]#

基类:AxesImage

具有直角网格像素的图像。

与像素位于常规网格上的 AxesImage 不同,NonUniformImage 允许行和列具有单独的高度/宽度。

另请参阅 非均匀图像

参数:
axAxes

图像所属的坐标系。

interpolation{'nearest', 'bilinear'},默认值:'nearest'

重采样中使用的插值方案。

**kwargs

所有其他关键字参数与 AxesImage 的参数相同。

get_cursor_data(event)[source]#

返回事件位置的图像值,如果事件在图像外部则返回 None。

get_extent()[source]#

返回图像范围为元组 (left, right, bottom, top)。

make_image(renderer, magnification=1.0, unsampled=False)[source]#

使用给定的放大倍数,规范化、重新缩放并对该图像的数据进行颜色映射,以便使用渲染器进行渲染。

如果 unsampled 为 True,图像将不会被缩放,而是返回一个适当的仿射变换。

返回:
image(M, N, 4) numpy.uint8 数组

RGBA 图像,除非 unsampled 为 True,否则已重采样。

x, y浮点数

图像应绘制的左上角,位于像素空间中。

transAffine2D

从图像空间到像素空间的仿射变换。

set(*, agg_filter=<未设置>, alpha=<未设置>, animated=<未设置>, array=<未设置>, clim=<未设置>, clip_box=<未设置>, clip_on=<未设置>, clip_path=<未设置>, cmap=<未设置>, data=<未设置>, extent=<未设置>, filternorm=<未设置>, filterrad=<未设置>, gid=<未设置>, in_layout=<未设置>, interpolation=<未设置>, interpolation_stage=<未设置>, label=<未设置>, mouseover=<未设置>, norm=<未设置>, path_effects=<未设置>, picker=<未设置>, rasterized=<未设置>, resample=<未设置>, sketch_params=<未设置>, snap=<未设置>, transform=<未设置>, url=<未设置>, visible=<未设置>, zorder=<未设置>)[source]#

一次性设置多个属性。

支持的属性包括:

属性

描述

agg_filter

一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量

alpha

浮点数或二维类数组或 None

animated

布尔值

array

未知

clim

(vmin: 浮点数, vmax: 浮点数)

clip_box

BboxBase 或 None

clip_on

布尔值

clip_path

Patch 或 (Path, Transform) 或 None

cmap

未知

data

未知

extent

浮点数的4元组

figure

FigureSubFigure

filternorm

未知

filterrad

未知

gid

字符串

in_layout

布尔值

interpolation

{'nearest', 'bilinear'} 或 None

interpolation_stage

{'data', 'rgba', 'auto'} 或 None

label

对象

mouseover

布尔值

norm

未知

path_effects

AbstractPathEffect 列表

picker

None 或 布尔值 或 浮点数 或 可调用对象

rasterized

布尔值

resample

布尔值或 None

sketch_params

(scale: 浮点数, length: 浮点数, randomness: 浮点数)

snap

布尔值或 None

transform

变换

url

字符串

visible

布尔值

zorder

浮点数

set_array(*args)[source]#

为向后兼容性保留 - 请改用 set_data。

参数:
A类数组
set_cmap(cmap)[source]#

为亮度数据设置色图。

参数:
cmapColormap 或 字符串 或 None
set_data(x, y, A)[source]#

设置像素中心的网格和像素值。

参数:
x, y1D 类数组

形状分别为 (N,) 和 (M,) 的单调数组,指定像素中心。

A类数组

(M, N) ndarray 或要进行颜色映射的掩码数组,或 (M, N, 3) RGB 数组,或 (M, N, 4) RGBA 数组。

set_filternorm(filternorm)[source]#

设置是否由调整大小滤镜对权重进行归一化。

参见 imshow 的帮助文档。

参数:
filternorm布尔值
set_filterrad(filterrad)[source]#

设置调整大小滤镜半径,仅适用于某些插值方案 -- 参见 imshow 的帮助文档。

参数:
filterrad正浮点数
set_interpolation(s)[source]#
参数:
s{'nearest', 'bilinear'} 或 None

如果为 None,则使用 rcParams["image.interpolation"](默认值:'auto')。

set_norm(norm)[source]#

设置归一化实例。

参数:
normNormalize 或 字符串 或 None

备注

如果存在任何颜色条使用此 norm 的可映射对象,则设置可映射对象的 norm 将把颜色条上的 norm、定位器和格式化程序重置为默认值。

class matplotlib.image.PcolorImage(ax, x=None, y=None, A=None, *, cmap=None, norm=None, colorizer=None, **kwargs)[source]#

基类:AxesImage

创建一个具有不规则矩形网格的 pcolor 样式图。

这使用了原始不规则图像代码的一种变体,并被 pcolorfast 用于相应的网格类型。

参数:
axAxes

图像所属的坐标系。

x, y1D 类数组,可选

长度分别为 N+1 和 M+1 的单调数组,指定矩形边界。如果未给出,将分别默认为 range(N + 1)range(M + 1)

A类数组

要进行颜色编码的数据。解释取决于形状

  • (M, N) ndarray 或掩码数组:要进行颜色映射的值

  • (M, N, 3):RGB 数组

  • (M, N, 4):RGBA 数组

cmap字符串或 Colormap,默认值:rcParams["image.cmap"] (默认值:'viridis')

用于将标量数据映射到颜色的颜色映射实例或已注册的颜色映射名称。

norm字符串或 Normalize

将亮度映射到 0-1。

**kwargsArtist 属性
get_cursor_data(event)[source]#

返回事件位置的图像值,如果事件在图像外部则返回 None。

make_image(renderer, magnification=1.0, unsampled=False)[source]#

使用给定的放大倍数,规范化、重新缩放并对该图像的数据进行颜色映射,以便使用渲染器进行渲染。

如果 unsampled 为 True,图像将不会被缩放,而是返回一个适当的仿射变换。

返回:
image(M, N, 4) numpy.uint8 数组

RGBA 图像,除非 unsampled 为 True,否则已重采样。

x, y浮点数

图像应绘制的左上角,位于像素空间中。

transAffine2D

从图像空间到像素空间的仿射变换。

set(*, agg_filter=<未设置>, alpha=<未设置>, animated=<未设置>, array=<未设置>, clim=<未设置>, clip_box=<未设置>, clip_on=<未设置>, clip_path=<未设置>, cmap=<未设置>, data=<未设置>, extent=<未设置>, filternorm=<未设置>, filterrad=<未设置>, gid=<未设置>, in_layout=<未设置>, interpolation=<未设置>, interpolation_stage=<未设置>, label=<未设置>, mouseover=<未设置>, norm=<未设置>, path_effects=<未设置>, picker=<未设置>, rasterized=<未设置>, resample=<未设置>, sketch_params=<未设置>, snap=<未设置>, transform=<未设置>, url=<未设置>, visible=<未设置>, zorder=<未设置>)[source]#

一次性设置多个属性。

支持的属性包括:

属性

描述

agg_filter

一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量

alpha

浮点数或二维类数组或 None

animated

布尔值

array

未知

clim

(vmin: 浮点数, vmax: 浮点数)

clip_box

BboxBase 或 None

clip_on

布尔值

clip_path

Patch 或 (Path, Transform) 或 None

cmap

Colormap 或 str 或 None

data

未知

extent

浮点数的4元组

figure

FigureSubFigure

filternorm

布尔值

filterrad

正浮点数

gid

字符串

in_layout

布尔值

interpolation

{'auto', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos', 'none'} 或 None

interpolation_stage

{'data', 'rgba', 'auto'} 或 None

label

对象

mouseover

布尔值

norm

Normalize 或 字符串 或 None

path_effects

AbstractPathEffect 列表

picker

None 或 布尔值 或 浮点数 或 可调用对象

rasterized

布尔值

resample

布尔值或 None

sketch_params

(scale: 浮点数, length: 浮点数, randomness: 浮点数)

snap

布尔值或 None

transform

变换

url

字符串

visible

布尔值

zorder

浮点数

set_array(*args)[source]#

为向后兼容性保留 - 请改用 set_data。

参数:
A类数组
set_data(x, y, A)[source]#

设置矩形边界的网格和数据值。

参数:
x, y1D 类数组,可选

长度分别为 N+1 和 M+1 的单调数组,指定矩形边界。如果未给出,将分别默认为 range(N + 1)range(M + 1)

A类数组

要进行颜色编码的数据。解释取决于形状

  • (M, N) ndarray 或掩码数组:要进行颜色映射的值

  • (M, N, 3):RGB 数组

  • (M, N, 4):RGBA 数组

matplotlib.image.composite_images(images, renderer, magnification=1.0)[source]#

将多个 RGBA 图像合成为一个。图像按照它们在 images 列表中的出现顺序进行合成。

参数:
images图像列表

每个图像都必须有一个 make_image 方法。对于每个图像,can_composite 应返回 True,尽管此函数不强制执行此操作。每个图像必须具有纯仿射变换,且无剪切。

rendererRendererBase
magnification浮点数,默认值:1

应用于正在使用的渲染器的额外放大倍数。

返回:
image(M, N, 4) numpy.uint8 数组

合成的 RGBA 图像。

offset_x, offset_y浮点数

合成图像在输出图中应放置的(左、下)偏移量。

matplotlib.image.imread(fname, format=None)[source]#

从文件读取图像到数组。

注意

此函数因历史原因存在。建议改用 PIL.Image.open 来加载图像。

参数:
fname字符串 或 类文件对象

要读取的图像文件:文件名、URL 或以二进制读取模式打开的类文件对象。

传递 URL 已弃用。请打开 URL 进行读取并将结果传递给 Pillow,例如使用 np.array(PIL.Image.open(urllib.request.urlopen(url)))

formatstr, 可选

读取数据时假定的图像文件格式。如果 format 设置为“png”,或者如果 fname 是带有“.png”扩展名的路径或已打开的文件,或者它是一个 URL,则图像将作为 PNG 文件加载。在所有其他情况下,format 将被忽略,格式由 PIL.Image.open 自动检测。

返回:
numpy.array

图像数据。返回的数组具有以下形状:

  • 灰度图像为 (M, N)。

  • RGB 图像为 (M, N, 3)。

  • RGBA 图像为 (M, N, 4)。

PNG 图像以浮点数组(0-1)返回。所有其他格式以整数数组返回,其位深度由文件内容决定。

matplotlib.image.imsave(fname, arr, vmin=None, vmax=None, cmap=None, format=None, origin=None, dpi=100, *, metadata=None, pil_kwargs=None)[source]#

对数组进行颜色映射并将其保存为图像文件。

RGB(A) 图像直接通过。单通道图像将根据 cmapnorm 进行颜色映射。

注意

如果要将单通道图像保存为灰度图,请直接使用图像 I/O 库(例如 pillow、tifffile 或 imageio)。

参数:
fname字符串或路径类或文件类

存储图像的路径或类文件对象。如果未设置 format,则输出格式将从 fname 的扩展名(如果有)以及 rcParams["savefig.format"](默认值:'png')推断。如果设置了 format,则它决定输出格式。

arr类数组

图像数据。接受 NumPy 数组或序列(例如列表或元组)。形状可以是 MxN(亮度)、MxNx3 (RGB) 或 MxNx4 (RGBA) 中的一种。

vmin, vmax浮点型,可选

vminvmax 通过固定映射到颜色映射颜色限制的值来设置图像的颜色缩放。如果 vminvmax 为 None,则该限制将根据 arr 的最小/最大值确定。

cmap字符串或 Colormap,默认值:rcParams["image.cmap"] (默认值:'viridis')

一个 Colormap 实例或已注册的颜色映射名称。颜色映射将标量数据映射到颜色。对于 RGB(A) 数据,它将被忽略。

formatstr, 可选

文件格式,例如 'png', 'pdf', 'svg', ... 未设置此项时的行为已在 *fname* 下记录。

origin{'upper', 'lower'},默认值:rcParams["image.origin"] (默认值:'upper')

指示数组的 (0, 0) 索引是在 Axes 的左上角还是左下角。

dpi浮点数

存储在文件元数据中的 DPI 值。这不影响输出图像的分辨率。根据文件格式,此值可能会四舍五入到最近的整数。

metadata字典,可选

图像文件中的元数据。支持的键取决于输出格式,有关更多信息,请参阅各个后端(backend)的文档。目前仅支持“png”、“pdf”、“ps”、“eps”和“svg”格式。

pil_kwargs字典,可选

传递给 PIL.Image.Image.save 的关键字参数。如果存在 'pnginfo' 键,它将完全覆盖 metadata,包括默认的 'Software' 键。

matplotlib.image.pil_to_array(pilImage)[source]#

加载 PIL 图像 并将其作为 numpy 整数数组返回。

返回:
numpy.array

数组形状取决于图像类型

  • 灰度图像为 (M, N)。

  • RGB 图像为 (M, N, 3)。

  • RGBA 图像为 (M, N, 4)。

matplotlib.image.thumbnail(infile, thumbfile, scale=0.1, interpolation='bilinear', preview=False)[source]#

生成 infile 图像的缩略图,并将其输出到 thumbfile 文件名。

参见 图像缩略图

参数:
infile字符串 或 类文件对象

图像文件。Matplotlib 依靠 Pillow 进行图像读取,因此支持多种文件格式,包括 PNG、JPG、TIFF 等。

thumbfile字符串 或 类文件对象

缩略图文件名。

scale浮点数,默认值:0.1

缩略图的比例因子。

interpolation字符串,默认值:'bilinear'

重采样中使用的插值方案。有关可能的值,请参见 imshowinterpolation 参数。

preview布尔值,默认值:False

如果为 True,将使用默认后端(可能是用户界面后端),这将在调用 show 时弹出一个图。如果为 False,则使用 FigureCanvasBase 创建图,并像 Figure.savefig 通常所做的那样选择绘图后端。

返回:

包含缩略图的图实例。