matplotlib.axes.Axes.imshow
-
Axes.imshow(X, cmap=None, norm=None, aspect=None, interpolation=None, alpha=None, vmin=None, vmax=None, origin=None, extent=None, *, filternorm=True, filterrad=4.0, resample=None, url=None, data=None, **kwargs)[source]
-
Отображение данных в виде изображения, т. е. на 2D регулярной растровой сетке.
Входные данные могут быть фактическими данными RGB(A) или 2D скалярными данными, которые будут отображаться в виде псевдоцветного изображения. Для отображения градации серого настройте отображение цветов с помощью параметров
cmap='gray', vmin=0, vmax=255.Количество пикселей, используемых для отображения изображения, задаётся размером оси и значением dpi фигуры. Это может привести к артефактам алиасинга при повторной выборке, так как размер отображаемого изображения обычно не совпадает с размером X (см. Интерполяция для imshow). Повторную выборку можно контролировать с помощью параметра interpolation и/или
rcParams["image.interpolation"](по умолчанию:'antialiased').Параметры: - Xмассив или изображение PIL
-
Данные изображения. Поддерживаются следующие формы массива:
- (M, N): изображение со скалярными данными. Значения отображаются в цветах с использованием нормализации и цветовой карты. См. параметры norm, cmap, vmin, vmax.
- (M, N, 3): изображение с RGB значениями (0-1 float или 0-255 int).
- (M, N, 4): изображение с RGBA значениями (0-1 float или 0-255 int), т. е. включая прозрачность.
Первые два измерения (M, N) определяют строки и столбцы изображения.
Значения RGB(A) за пределами диапазона отсекаются.
-
cmapстрока или
Colormap, по умолчанию:rcParams["image.cmap"](по умолчанию:'viridis') -
Объект Colormap или зарегистрированное имя цветовой карты, используемое для отображения скалярных данных в цветах. Этот параметр игнорируется для данных RGB(A).
-
norm
Normalize, необязательно -
Объект
Normalize, используемый для масштабирования скалярных данных в диапазон [0, 1] перед отображением в цветах с помощью cmap. По умолчанию используется линейное масштабирование, отображающее минимальное значение как 0, а максимальное как 1. Этот параметр игнорируется для данных RGB(A). -
aspect{'equal', 'auto'} или float, по умолчанию:
rcParams["image.aspect"](по умолчанию:'equal') -
Соотношение сторон оси. Этот параметр особенно важен для изображений, поскольку он определяет, являются ли пиксели данных квадратными.
Этот параметр является сокращением для явного вызова
Axes.set_aspect. См. там для получения дополнительных подробностей.- 'equal': Обеспечивает соотношение сторон 1. Пиксели будут квадратными (если размеры пикселей явно не сделаны неквадратными в координатах данных с использованием extent).
- 'auto': Ось остается фиксированной, и соотношение сторон корректируется таким образом, чтобы данные помещались в ось. В общем случае это приведет к неквадратным пикселям.
-
interpolationстрока, по умолчанию:
rcParams["image.interpolation"](по умолчанию:'antialiased') -
Метод интерполяции, используемый.
Поддерживаемые значения: 'none', 'antialiased', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos', 'blackman'.
Если interpolation равно 'none', то интерполяция не выполняется на бэкендах Agg, ps, pdf и svg. Другие бэкенды вернутся к 'nearest'. Обратите внимание, что большинство рендереров SVG выполняют интерполяцию при рендеринге, и метод интерполяции по умолчанию, который они реализуют, может отличаться.
Если interpolation имеет значение по умолчанию 'antialiased', то используется интерполяция 'nearest', если изображение масштабируется более чем в три раза (т. е. количество пикселей отображения не менее чем в три раза превышает размер массива данных). Если скорость масштабирования меньше 3 или изображение уменьшается, то используется интерполяция 'hanning' для работы в качестве фильтра против алиасинга, если изображение не масштабируется ровно в два или один раз.
См. Методы интерполяции для imshow для обзора поддерживаемых методов интерполяции и Интерполяция для изображений для обсуждения антиалиасинга изображений.
Некоторые методы интерполяции требуют дополнительного параметра радиуса, который можно установить с помощью filterrad. Кроме того, фильтр изменения размера изображений антиграйнов контролируется параметром filternorm.
- alphafloat или массив, необязательно
-
Значение альфа-смешивания, от 0 (прозрачный) до 1 (непрозрачный). Если alpha является массивом, значения альфа-смешивания применяются к каждому пикселю, и alpha должен иметь такие же размеры, как и X.
- vmin, vmaxfloat, необязательно
-
При использовании скалярных данных и отсутствии явного norm, vmin и vmax определяют диапазон данных, который охватывает цветовая карта. По умолчанию цветовая карта охватывает весь диапазон значений предоставленных данных. Использование vmin/vmax устарело, когда задан norm. При использовании данных RGB(A) параметры vmin/vmax игнорируются.
-
origin{'upper', 'lower'}, по умолчанию:
rcParams["image.origin"](по умолчанию:'upper') -
Размещение индекса [0, 0] массива в левом верхнем или левом нижнем углу оси. Конвенция (по умолчанию) 'upper' обычно используется для матриц и изображений.
Обратите внимание, что вертикальная ось направлена вверх для 'lower', но вниз для 'upper'.
См. внешний вид и область в imshow для примеров и более подробного описания.
- extentfloat (left, right, bottom, top), необязательно
-
Границы в координатах данных, которые заполнит изображение. Изображение масштабируется по отдельности по осям x и y для заполнения прямоугольника.
Значение по умолчанию для extent определяется следующими условиями. Пиксели имеют единичный размер в координатах данных. Их центры находятся в целочисленных координатах, и их координаты центров изменяются от 0 до столбцов-1 по горизонтали и от 0 до строк-1 по вертикали.
Обратите внимание, что направление вертикальной оси, а также значения по умолчанию для top и bottom зависят от origin:
- Для
origin == 'upper'значение по умолчанию(-0.5, numcols-0.5, numrows-0.5, -0.5). - Для
origin == 'lower'значение по умолчанию(-0.5, numcols-0.5, -0.5, numrows-0.5).
См. внешний вид и область в imshow для примеров и более подробного описания.
- Для
- filternormbool, по умолчанию: True
-
Параметр фильтра изменения размера изображения антиграйнов (см. документацию антиграйнов). Если filternorm установлен, фильтр нормализует целые значения и исправляет ошибки округления. Он ничего не делает со значениями исходных чисел с плавающей запятой, он корректирует только целые числа в соответствии с правилом 1.0, что означает, что любая сумма весов пикселей должна быть равна 1.0. Таким образом, функция фильтра должна создавать график правильной формы.
- filterradfloat > 0, по умолчанию: 4.0
-
Радиус фильтра для фильтров, имеющих параметр радиуса, т. е. когда интерполяция равна одному из: 'sinc', 'lanczos' или 'blackman'.
-
resamplebool, по умолчанию:
rcParams["image.resample"](по умолчанию:True) -
Если True, используется метод полной повторной выборки. Если False, повторная выборка выполняется только тогда, когда выходное изображение больше входного изображения.
- urlстрока, необязательно
-
Устанавливает URL созданного
AxesImage. См.Artist.set_url.
Возвращаемое значение: Другие параметры: См. также
matshow- Отображение матрицы или массива в виде изображения.
Примечания
Если не используется extent, центры пикселей будут расположены в целочисленных координатах. Другими словами: начало координат совпадёт с центром пикселя (0, 0).
Существует два распространённых представления для изображений RGB с альфа-каналом:
- Прямой (не связанный) альфа-канал: каналы R, G и B представляют цвет пикселя, не учитывая его непрозрачность.
- Преумноженный (связанный) альфа-канал: каналы R, G и B представляют цвет пикселя, скорректированный на его непрозрачность путём умножения.
imshowожидает изображения RGB, используя прямое (не связанное) представление альфа-канала.
Примечание
В дополнение к вышеописанным аргументам, эта функция может принимать ключевой аргумент data. Если такой аргумент data задан, каждый другой аргумент также может быть строкой
s, которая интерпретируется какdata[s](если это не вызывает исключение).Объекты, переданные как data, должны поддерживать доступ к элементам (
data[s]) и проверку на членство (s in data).
Примеры использования matplotlib.axes.Axes.imshow
Аспект области осей
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.4.3/api/_as_gen/matplotlib.axes.Axes.imshow.html