matplotlib.image#
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一种具有常规网格像素的图像,附加在 Axes 上。
- 参数:
- ax
Axes 图像所属的坐标轴 (Axes)。
- cmapstr 或
Colormap,默认值:rcParams["image.cmap"](默认值:'viridis') 用于将标量数据映射到颜色的颜色映射实例或已注册的颜色映射名称。
- normstr 或
Normalize 将亮度映射到 0-1 范围。
- interpolationstr,默认值:
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' 约定通常用于矩阵和图像。
- extenttuple,可选
用于使图像图与数据图对齐的数据坐标轴 (left, right, bottom, top)。默认是将像素中心标记为从零开始的行和列索引。
- filternormbool,默认值:True
antigrain 图像调整大小过滤器的参数(参见 antigrain 文档)。如果设置了 filternorm,过滤器会对整数值进行归一化并校正舍入误差。它不对源浮点值执行任何操作,仅根据 1.0 的规则校正整数,这意味着任何像素权重的总和必须等于 1.0。因此,过滤器函数必须生成适当形状的图形。
- filterradfloat > 0,默认值:4
具有半径参数的过滤器的过滤半径,即当插值为以下之一时:“sinc”、“lanczos”或“blackman”。
- resamplebool,默认值:False
为 True 时,使用完整的重采样方法。为 False 时,仅在输出图像大于输入图像时进行重采样。
- **kwargs
Artist属性
- ax
- 参数:
- colorizer
colorizer.Colorizer
- colorizer
- get_window_extent(renderer=None)[source]#
获取美工对象在显示空间中的边界框,忽略裁剪。
边界框的宽度和高度非负。
子类应覆盖此方法,以便将其包含在边界框“紧密”计算中。默认返回一个位于 0, 0 的空边界框。
警告
范围可能会由于变换栈的任何更改而改变,例如更改坐标轴限制、图形大小、使用的画布(保存图形时)或 DPI。
依赖于一次性获取的窗口范围可能会在某些情况下导致意外行为,例如交互式图形被调整大小或移动到具有不同 DPI 的屏幕,或者在屏幕上看起来没问题的图形在保存到文件时渲染不正确。
为了获得准确的结果,您可能需要手动调用
savefig或draw_without_rendering,让 Matplotlib 计算渲染大小。- 参数:
- renderer
RendererBase, 可选 用于绘制图形的渲染器(即
fig.canvas.get_renderer())。
- renderer
另请参阅
Artist.get_tightbbox获取美工边界框,考虑裁剪。
- make_image(renderer, magnification=1.0, unsampled=False)[source]#
使用指定的 renderer 和 magnification 对此图像数据进行归一化、重采样并应用颜色映射以进行渲染。
如果 unsampled 为 True,图像将不会被缩放,而是返回适当的仿射变换。
- 返回:
- image(M, N, 4)
numpy.uint8数组 RGBA 图像,除非 unsampled 为 True,否则会被重采样。
- x, yfloat
应该绘制图像的左上角,位于像素空间中。
- trans
Affine2D 从图像到像素空间的仿射变换。
- image(M, N, 4)
- 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]#
一次性设置多个属性。
a.set(a=A, b=B, c=C)
等同于
a.set_a(A) a.set_b(B) a.set_c(C)
除全名属性外,还支持别名,例如
set(lw=2)等同于set(linewidth=2),但同时传入两者会报错。各个 setter 的调用顺序与
set()中的参数顺序一致。然而,大多数属性并不相互依赖,因此顺序通常无关紧要。支持的属性包括:
属性
描述
一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量
alphafloat 或 2D 数组类或 None
布尔值
array类数组
(vmin: 浮点数, vmax: 浮点数)
BboxBase或 None布尔值
Patch 或 (Path, Transform) 或 None
Colormap或 str 或 Nonedata数组类或
PIL.Image.Image4-tuple of float
filternorm布尔值
filterrad正浮点数
str
布尔值
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'},默认值:
rcParams["image.interpolation_stage"](默认值:'auto')object
布尔值
Normalize或 str 或 NoneNone 或 布尔值 或 浮点数 或 可调用对象
布尔值
resamplebool,默认值:
rcParams["image.resample"](默认值:True)(scale: 浮点数, length: 浮点数, randomness: 浮点数)
布尔值或 None
str
布尔值
浮点数
- set_extent(extent, **kwargs)[source]#
设置图像范围。
- 参数:
- extent4-tuple of float
以数据坐标表示的图像位置和大小,形式为元组
(left, right, bottom, top)。- **kwargs
其他参数,如果存在,将应用单位信息(即 xunits, yunits, zunits(用于 3D Axes), runits 和 thetaunits(用于极坐标 Axes)条目)。
备注
这会更新
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 确定的图像类。
- 参数:
- bboxBboxBase 或 Callable[RendererBase, BboxBase]
bbox 或生成 bbox 的函数
警告
如果将
matplotlib.artist.Artist.get_window_extent用作可调用对象,请确保首先绘制另一个艺术家(较低的 zorder),否则您可能需要渲染两次图形以确保计算出的 bbox 是准确的。- cmapstr 或
Colormap,默认值:rcParams["image.cmap"](默认值:'viridis') 用于将标量数据映射到颜色的 Colormap 实例或已注册的颜色映射名称。如果 X 是 RGB(A),则忽略此参数。
- normstr 或
Normalize 将亮度映射到 0-1 范围。如果 X 是 RGB(A),则忽略此参数。
- interpolationstr,默认值:
rcParams["image.interpolation"](默认值:'auto') 支持的值有 'none', 'auto', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos', 'blackman'。
- origin{'upper', 'lower'},默认值:
rcParams["image.origin"](默认值:'upper') 将数组的 [0, 0] 索引放在 Axes 的左上角或左下角。'upper' 约定通常用于矩阵和图像。
- filternormbool,默认值:True
antigrain 图像调整大小过滤器的参数(参见 antigrain 文档)。如果设置了 filternorm,过滤器会对整数值进行归一化并校正舍入误差。它不对源浮点值执行任何操作,仅根据 1.0 的规则校正整数,这意味着任何像素权重的总和必须等于 1.0。因此,过滤器函数必须生成适当形状的图形。
- filterradfloat > 0,默认值:4
具有半径参数的过滤器的过滤半径,即当插值为以下之一时:“sinc”、“lanczos”或“blackman”。
- resamplebool,默认值:False
为 True 时,使用完整的重采样方法。为 False 时,仅在输出图像大于输入图像时进行重采样。
- **kwargs
Artist属性
- 参数:
- colorizer
colorizer.Colorizer
- colorizer
- get_window_extent(renderer=None)[source]#
获取美工对象在显示空间中的边界框,忽略裁剪。
边界框的宽度和高度非负。
子类应覆盖此方法,以便将其包含在边界框“紧密”计算中。默认返回一个位于 0, 0 的空边界框。
警告
范围可能会由于变换栈的任何更改而改变,例如更改坐标轴限制、图形大小、使用的画布(保存图形时)或 DPI。
依赖于一次性获取的窗口范围可能会在某些情况下导致意外行为,例如交互式图形被调整大小或移动到具有不同 DPI 的屏幕,或者在屏幕上看起来没问题的图形在保存到文件时渲染不正确。
为了获得准确的结果,您可能需要手动调用
savefig或draw_without_rendering,让 Matplotlib 计算渲染大小。- 参数:
- renderer
RendererBase, 可选 用于绘制图形的渲染器(即
fig.canvas.get_renderer())。
- renderer
另请参阅
Artist.get_tightbbox获取美工边界框,考虑裁剪。
- make_image(renderer, magnification=1.0, unsampled=False)[source]#
使用指定的 renderer 和 magnification 对此图像数据进行归一化、重采样并应用颜色映射以进行渲染。
如果 unsampled 为 True,图像将不会被缩放,而是返回适当的仿射变换。
- 返回:
- image(M, N, 4)
numpy.uint8数组 RGBA 图像,除非 unsampled 为 True,否则会被重采样。
- x, yfloat
应该绘制图像的左上角,位于像素空间中。
- trans
Affine2D 从图像到像素空间的仿射变换。
- image(M, N, 4)
- 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]#
一次性设置多个属性。
a.set(a=A, b=B, c=C)
等同于
a.set_a(A) a.set_b(B) a.set_c(C)
除全名属性外,还支持别名,例如
set(lw=2)等同于set(linewidth=2),但同时传入两者会报错。各个 setter 的调用顺序与
set()中的参数顺序一致。然而,大多数属性并不相互依赖,因此顺序通常无关紧要。支持的属性包括:
属性
描述
一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量
alphafloat 或 2D 数组类或 None
布尔值
array类数组
(vmin: 浮点数, vmax: 浮点数)
BboxBase或 None布尔值
Patch 或 (Path, Transform) 或 None
Colormap或 str 或 Nonedata数组类或
PIL.Image.Imagefilternorm布尔值
filterrad正浮点数
str
布尔值
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'},默认值:
rcParams["image.interpolation_stage"](默认值:'auto')object
布尔值
Normalize或 str 或 NoneNone 或 布尔值 或 浮点数 或 可调用对象
布尔值
resamplebool,默认值:
rcParams["image.resample"](默认值:True)(scale: 浮点数, length: 浮点数, randomness: 浮点数)
布尔值或 None
str
布尔值
浮点数
- class matplotlib.image.FigureImage(fig, *, cmap=None, norm=None, colorizer=None, offsetx=0, offsety=0, origin=None, **kwargs)[source]#
基类:
_ImageBase附加到图形 (Figure) 上的图像。
cmap 是一个 colors.Colormap 实例,norm 是一个 colors.Normalize 实例,用于将亮度映射到 0-1 范围。
kwargs 是 Artist 关键字参数的可选列表。
- make_image(renderer, magnification=1.0, unsampled=False)[source]#
使用指定的 renderer 和 magnification 对此图像数据进行归一化、重采样并应用颜色映射以进行渲染。
如果 unsampled 为 True,图像将不会被缩放,而是返回适当的仿射变换。
- 返回:
- image(M, N, 4)
numpy.uint8数组 RGBA 图像,除非 unsampled 为 True,否则会被重采样。
- x, yfloat
应该绘制图像的左上角,位于像素空间中。
- trans
Affine2D 从图像到像素空间的仿射变换。
- image(M, N, 4)
- 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]#
一次性设置多个属性。
a.set(a=A, b=B, c=C)
等同于
a.set_a(A) a.set_b(B) a.set_c(C)
除全名属性外,还支持别名,例如
set(lw=2)等同于set(linewidth=2),但同时传入两者会报错。各个 setter 的调用顺序与
set()中的参数顺序一致。然而,大多数属性并不相互依赖,因此顺序通常无关紧要。支持的属性包括:
属性
描述
一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量
alphafloat 或 2D 数组类或 None
布尔值
array类数组
(vmin: 浮点数, vmax: 浮点数)
BboxBase或 None布尔值
Patch 或 (Path, Transform) 或 None
Colormap或 str 或 None未知
filternorm布尔值
filterrad正浮点数
str
布尔值
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'},默认值:
rcParams["image.interpolation_stage"](默认值:'auto')object
布尔值
Normalize或 str 或 NoneNone 或 布尔值 或 浮点数 或 可调用对象
布尔值
resamplebool,默认值:
rcParams["image.resample"](默认值:True)(scale: 浮点数, length: 浮点数, randomness: 浮点数)
布尔值或 None
str
布尔值
浮点数
- zorder = 0#
- class matplotlib.image.NonUniformImage(ax, *, interpolation='nearest', **kwargs)[source]#
基类:
AxesImage一种像素位于直线网格上的图像。
与像素位于常规网格上的
AxesImage不同,NonUniformImage 允许行和列具有单独的高度/宽度。另请参阅 非均匀图像 (Image nonuniform)。
- 参数:
- make_image(renderer, magnification=1.0, unsampled=False)[source]#
使用指定的 renderer 和 magnification 对此图像数据进行归一化、重采样并应用颜色映射以进行渲染。
如果 unsampled 为 True,图像将不会被缩放,而是返回适当的仿射变换。
- 返回:
- image(M, N, 4)
numpy.uint8数组 RGBA 图像,除非 unsampled 为 True,否则会被重采样。
- x, yfloat
应该绘制图像的左上角,位于像素空间中。
- trans
Affine2D 从图像到像素空间的仿射变换。
- image(M, N, 4)
- 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]#
一次性设置多个属性。
a.set(a=A, b=B, c=C)
等同于
a.set_a(A) a.set_b(B) a.set_c(C)
除全名属性外,还支持别名,例如
set(lw=2)等同于set(linewidth=2),但同时传入两者会报错。各个 setter 的调用顺序与
set()中的参数顺序一致。然而,大多数属性并不相互依赖,因此顺序通常无关紧要。支持的属性包括:
属性
描述
一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量
alphafloat 或 2D 数组类或 None
布尔值
array未知
(vmin: 浮点数, vmax: 浮点数)
BboxBase或 None布尔值
Patch 或 (Path, Transform) 或 None
未知
未知
4-tuple of float
filternorm未知
filterrad未知
str
布尔值
{'nearest', 'bilinear'} 或 None
interpolation_stage{'data', 'rgba', 'auto'},默认值:
rcParams["image.interpolation_stage"](默认值:'auto')object
布尔值
未知
None 或 布尔值 或 浮点数 或 可调用对象
布尔值
resamplebool,默认值:
rcParams["image.resample"](默认值:True)(scale: 浮点数, length: 浮点数, randomness: 浮点数)
布尔值或 None
str
布尔值
浮点数
- set_data(x, y, A)[source]#
设置像素中心的网格和像素值。
- 参数:
- x, y1D 数组类
分别为形状为 (N,) 和 (M,) 的单调数组,指定像素中心。
- A数组类
(M, N)
ndarray或需要进行颜色映射的值的掩码数组,或者 (M, N, 3) RGB 数组,或者 (M, N, 4) RGBA 数组。
- set_interpolation(s)[source]#
- 参数:
- s{'nearest', 'bilinear'} 或 None
如果为 None,则使用
rcParams["image.interpolation"](默认值:'auto')。
- class matplotlib.image.PcolorImage(ax, x=None, y=None, A=None, *, cmap=None, norm=None, colorizer=None, **kwargs)[source]#
基类:
AxesImage制作具有不规则矩形网格的 pcolor 样式图。
它使用了原始不规则图像代码的变体,并由 pcolorfast 用于相应的网格类型。
- 参数:
- ax
Axes 图像所属的坐标轴 (Axes)。
- x, y1D 数组类,可选
分别为长度为 N+1 和 M+1 的单调数组,指定矩形边界。如果不提供,将默认为
range(N + 1)和range(M + 1)。- A数组类
要进行颜色编码的数据。其解释取决于形状:
(M, N)
ndarray或掩码数组:需要进行颜色映射的值(M, N, 3):RGB 数组
(M, N, 4):RGBA 数组
- cmapstr 或
Colormap,默认值:rcParams["image.cmap"](默认值:'viridis') 用于将标量数据映射到颜色的颜色映射实例或已注册的颜色映射名称。
- normstr 或
Normalize 将亮度映射到 0-1 范围。
- **kwargs
Artist属性
- ax
- make_image(renderer, magnification=1.0, unsampled=False)[source]#
使用指定的 renderer 和 magnification 对此图像数据进行归一化、重采样并应用颜色映射以进行渲染。
如果 unsampled 为 True,图像将不会被缩放,而是返回适当的仿射变换。
- 返回:
- image(M, N, 4)
numpy.uint8数组 RGBA 图像,除非 unsampled 为 True,否则会被重采样。
- x, yfloat
应该绘制图像的左上角,位于像素空间中。
- trans
Affine2D 从图像到像素空间的仿射变换。
- image(M, N, 4)
- 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]#
一次性设置多个属性。
a.set(a=A, b=B, c=C)
等同于
a.set_a(A) a.set_b(B) a.set_c(C)
除全名属性外,还支持别名,例如
set(lw=2)等同于set(linewidth=2),但同时传入两者会报错。各个 setter 的调用顺序与
set()中的参数顺序一致。然而,大多数属性并不相互依赖,因此顺序通常无关紧要。支持的属性包括:
属性
描述
一个过滤函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组以及图像左下角的两个偏移量
alphafloat 或 2D 数组类或 None
布尔值
array未知
(vmin: 浮点数, vmax: 浮点数)
BboxBase或 None布尔值
Patch 或 (Path, Transform) 或 None
Colormap或 str 或 None未知
4-tuple of float
filternorm布尔值
filterrad正浮点数
str
布尔值
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'},默认值:
rcParams["image.interpolation_stage"](默认值:'auto')object
布尔值
Normalize或 str 或 NoneNone 或 布尔值 或 浮点数 或 可调用对象
布尔值
resamplebool,默认值:
rcParams["image.resample"](默认值:True)(scale: 浮点数, length: 浮点数, randomness: 浮点数)
布尔值或 None
str
布尔值
浮点数
- matplotlib.image.composite_images(images, renderer, magnification=1.0)[source]#
将多个 RGBA 图像合成到一个中。图像按照它们在 images 列表中出现的顺序进行合成。
- 参数:
- images图像列表
每个图像必须有一个
make_image方法。对于每个图像,can_composite应返回True,尽管此函数并不强制要求。每个图像必须具有纯仿射变换,且无剪切。- renderer
RendererBase - magnificationfloat,默认值:1
应用于当前渲染器的额外放大倍数。
- 返回:
- image(M, N, 4)
numpy.uint8数组 合成后的 RGBA 图像。
- offset_x, offset_yfloat
合成图像在输出图形中应放置的 (left, bottom) 偏移量。
- image(M, N, 4)
- matplotlib.image.imread(fname, format=None)[source]#
从文件读取图像到数组。
注意
此函数出于历史原因保留。建议使用
PIL.Image.open来加载图像。- 参数:
- fnamestr 或类文件对象
要读取的图像文件:文件名、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) 图像将直接通过。单通道图像将根据 cmap 和 norm 进行颜色映射。
注意
如果您想将单通道图像保存为灰度图,请直接使用图像 I/O 库(如 pillow、tifffile 或 imageio)。
- 参数:
- fname字符串或路径类或文件类
用于存储图像的路径或类文件对象。如果未设置 format,则输出格式将根据 fname 的扩展名(如有)推断;否则,将从
rcParams["savefig.format"](默认值:'png')获取。如果设置了 format,它将决定输出格式。- arrarray-like
图像数据。接受 NumPy 数组或序列(例如列表或元组)。形状可以是 MxN(亮度)、MxNx3(RGB)或 MxNx4(RGBA)。
- vmin, vmax浮点型,可选
vmin 和 vmax 通过固定映射到颜色映射颜色界限的值来设置图像的颜色缩放比例。如果 vmin 或 vmax 为 None,则该界限将根据 arr 的最小值/最大值确定。
- cmapstr 或
Colormap,默认值:rcParams["image.cmap"](默认值:'viridis') Colormap 实例或已注册的颜色映射名称。颜色映射将标量数据映射到颜色。对于 RGB(A) 数据,此参数将被忽略。
- formatstr, 可选
文件格式,例如 'png', 'pdf', 'svg', ... 未设置此项时的行为已在 *fname* 下记录。
- origin{'upper', 'lower'},默认值:
rcParams["image.origin"](默认值:'upper') 指示数组的
(0, 0)索引位于坐标轴的左上角还是左下角。- dpifloat
存储在文件元数据中的 DPI。这不会影响输出图像的分辨率。根据文件格式,该值可能会四舍五入到最接近的整数。
- metadata字典,可选
图像文件中的元数据。支持的键取决于输出格式,详情请参阅各后端的文档。目前仅支持 "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。
请参阅 Pillow 的替代方案。
- 参数:
- infilestr 或类文件对象
图像文件。Matplotlib 依赖 Pillow 进行图像读取,因此支持多种文件格式,包括 PNG、JPG、TIFF 等。
- thumbfilestr 或类文件对象
缩略图文件名。
- scalefloat,默认值:0.1
缩略图的缩放比例。
- interpolationstr,默认值:'bilinear'
重采样中使用的插值方案。有关可能的值,请参阅
imshow的 interpolation 参数。- previewbool,默认值:False
如果为 True,则将使用默认后端(通常是用户界面后端),如果调用
show,则会导致图表显示。如果为 False,则使用FigureCanvasBase创建图表,并按照Figure.savefig的常规方式选择绘图后端。
- 返回:
Figure包含缩略图的图表实例。
备注
自 3.11 版本弃用: 请改用 Pillow 的
PIL.Image.Image.thumbnail。