Spec-Zone.ru › Matplotlib

matplotlib.axes.Axes.pcolormesh

Axes.pcolormesh(*args, alpha=None, norm=None, cmap=None, vmin=None, vmax=None, colorizer=None, shading=None, antialiased=False, data=None, **kwargs)[исходный код]

Создаёт псевдоцветное изображение на нерегулярной прямоугольной сетке.

Сигнатура вызова:

pcolormesh([X, Y,] C, /, **kwargs)

X и Y можно использовать для задания углов четырёхугольников.

Аргументы X, Y, C можно передавать только позиционно.

Подсказка

pcolormesh похож на pcolor. Он работает гораздо быстрее и в большинстве случаев предпочтителен. Подробное обсуждение различий см. в разделе Различия между pcolor() и pcolormesh().

Параметры:
Carray-like

Данные сетки. Поддерживаются массивы следующих форм:

  • (M, N) или M*N: сетка со скалярными данными. Значения преобразуются в цвета с помощью нормализации и цветовой карты. См. параметры norm, cmap, vmin, vmax.
  • (M, N, 3): изображение со значениями RGB (числа с плавающей точкой от 0 до 1 или целые числа от 0 до 255).
  • (M, N, 4): изображение со значениями RGBA (числа с плавающей точкой от 0 до 1 или целые числа от 0 до 255), то есть с прозрачностью.

Первые два измерения (M, N) задают строки и столбцы данных сетки.

X, Yarray-like, необязательный

Координаты углов четырёхугольников pcolormesh:

(X[i+1, j], Y[i+1, j])       (X[i+1, j+1], Y[i+1, j+1])
                      ●╶───╴●
                      │     │
                      ●╶───╴●
    (X[i, j], Y[i, j])       (X[i, j+1], Y[i, j+1])

Обратите внимание, что индекс столбца соответствует координате x, а индекс строки — координате y. Подробности см. в разделе Примечания ниже.

Если shading='flat', размеры X и Y должны быть на единицу больше размеров C, а цвет четырёхугольника определяется значением в C[i, j]. Если X, Y и C имеют одинаковые размеры, будет выдано предупреждение, а последняя строка и последний столбец C будут проигнорированы.

Если shading='nearest' или 'gouraud', размеры X и Y должны совпадать с размерами C (иначе будет вызвано исключение ValueError). Для 'nearest' цвет C[i, j] центрирован на (X[i, j], Y[i, j]). Для 'gouraud' выполняется плавная интерполяция между углами четырёхугольника.

Если X и/или Y — одномерные массивы или векторы-столбцы, они будут при необходимости преобразованы в соответствующие двумерные массивы, образующие прямоугольную сетку.

cmapstr или Colormap, по умолчанию: rcParams["image.cmap"] (по умолчанию: 'viridis')

Экземпляр Colormap или имя зарегистрированной цветовой карты, используемой для преобразования скалярных данных в цвета.

normstr или Normalize, необязательный

Метод нормализации, используемый для масштабирования скалярных данных до диапазона [0, 1] перед преобразованием в цвета с помощью cmap. По умолчанию используется линейное масштабирование: наименьшему значению соответствует 0, а наибольшему — 1.

Если задан, этот параметр может принимать одно из следующих значений:

  • Экземпляр Normalize или один из его подклассов (см. раздел Нормализация цветовой карты).
  • Имя шкалы, например "linear", "log", "symlog", "logit" и т. д. Список доступных шкал можно получить вызовом matplotlib.scale.get_scale_names(). В этом случае подходящий подкласс Normalize динамически создаётся и инстанцируется.
vmin, vmaxfloat, необязательный

При использовании скалярных данных без явно заданного norm параметры vmin и vmax определяют диапазон данных, охватываемый цветовой картой. По умолчанию цветовая карта охватывает весь диапазон значений предоставленных данных. Если задан экземпляр norm, использовать vmin/vmax нельзя (однако допустимо использовать имя norm типа str вместе с vmin/vmax).

colorizerColorizer или None, по умолчанию: None

Объект Colorizer, используемый для преобразования данных в цвета. Если задано значение None, объект Colorizer создаётся на основе norm и cmap.

edgecolors{'none', None, 'face', color, color sequence}, необязательный

Цвет границ. По умолчанию — 'none'. Возможные значения:

  • 'none' или '': без границы.
  • None: будет использовано rcParams["patch.edgecolor"] (по умолчанию: 'black'). Обратите внимание, что для работы этого параметра значение rcParams["patch.force_edgecolor"] (по умолчанию: False) должно быть True.
  • 'face': использовать цвет соседней грани.
  • Цвет или последовательность цветов задаёт цвет границы.

Форма единственного числа edgecolor является псевдонимом.

alphafloat, по умолчанию: None

Значение альфа-смешивания от 0 (прозрачный) до 1 (непрозрачный).

shading{'flat', 'nearest', 'gouraud', 'auto'}, необязательный

Стиль заливки четырёхугольника; по умолчанию — rcParams["pcolor.shading"] (по умолчанию: 'auto'). Возможные значения:

  • 'flat': для каждого четырёхугольника используется сплошной цвет. Цвет четырёхугольника (i, j), (i+1, j), (i, j+1), (i+1, j+1) задаётся значением C[i, j]. Размеры X и Y должны быть на единицу больше размеров C; если они совпадают с размером C, будет выдано предупреждение об устаревании, а последняя строка и последний столбец C будут отброшены.
  • 'nearest': каждая точка сетки будет иметь цвет, центрированный в этой точке и простирающийся на половину расстояния до соседних центров сетки. Размеры X и Y должны совпадать с размером C.
  • 'gouraud': для каждого четырёхугольника применяется затенение Гуро: цвета углов (i', j') задаются значением C[i', j']. Цвета промежуточных областей интерполируются по значениям в углах. Размеры X и Y должны совпадать с размером C. При затенении Гуро параметр edgecolors игнорируется.
  • 'auto': выбирает 'flat', если размеры X и Y на единицу больше размера C. Выбирает 'nearest', если размеры совпадают.

Дополнительное описание см. в разделе Сетки pcolormesh и затенение.

snapbool, по умолчанию: False

Следует ли привязывать сетку к границам пикселей.

rasterizedbool, необязательный

Растеризовать pcolormesh при отрисовке векторной графики. Это может ускорить отрисовку и уменьшить размер файлов для больших наборов данных. См. также раздел Растеризация векторной графики.

Возвращает:
matplotlib.collections.QuadMesh
Другие параметры:
dataindexable object, необязательный

Если задан, все параметры также принимают строку s, которая интерпретируется как data[s], если s является ключом в data.

**kwargs

Кроме того, допускаются следующие аргументы. Они передаются конструктору QuadMesh:

Свойство

Описание

agg_filter

функция фильтра, принимающая массив float формы (m, n, 3) и значение dpi и возвращающая массив формы (m, n, 3) и два смещения от нижнего левого угла изображения

alpha

array-like или float или None

animated

bool

antialiased или aa или antialiaseds

bool или список значений bool

array

array-like

capstyle

CapStyle или {'butt', 'projecting', 'round'}

clim

(vmin: float, vmax: float)

clip_box

BboxBase или None

clip_on

bool

clip_path

Patch или (Path, Transform) или None

cmap

Colormap или str или None

color

цвет или список кортежей RGBA

edgecolor или ec или edgecolors

цвет или список цветов или 'face'

facecolor или facecolors или fc

цвет или список цветов

figure

Figure или SubFigure

gid

str

hatch

{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}

hatch_linewidth

неизвестно

in_layout

bool

joinstyle

JoinStyle или {'miter', 'round', 'bevel'}

label

object

linestyle или dashes или linestyles или ls

str или tuple или список таких значений

linewidth или linewidths или lw

float или список значений float

mouseover

bool

norm

Normalize или str или None

offset_transform или transOffset

Transform

offsets

array-like формы (N, 2) или (2,)

path_effects

список объектов AbstractPathEffect

picker

None или bool или float или вызываемый объект

pickradius

float

rasterized

bool

sketch_params

(scale: float, length: float, randomness: float)

snap

bool или None

transform

Transform

url

str

urls

список str или None

visible

bool

zorder

float

См. также

pcolor

Альтернативная реализация с немного отличающимися возможностями. Подробное обсуждение различий см. в разделе Различия между pcolor() и pcolormesh().

imshow

Если значения X и Y равномерно распределены, imshow может быть более быстрой альтернативой.

Примечания

Маскированные массивы

C может быть маскированным массивом. Если значение C[i, j] замаскировано, соответствующий четырёхугольник будет прозрачным. Маскирование X и Y не поддерживается. Если вам нужна эта возможность, используйте pcolor.

Ориентация сетки

Ориентация сетки соответствует стандартному соглашению для матриц: массив C формы (nrows, ncolumns) отображается так, что номер столбца соответствует X, а номер строки — Y.

Различия между pcolor() и pcolormesh()

Оба метода используются для создания псевдоцветного изображения двумерного массива с помощью четырёхугольников.

Основное различие заключается в создаваемом объекте и внутренней обработке данных: pcolor возвращает PolyQuadMesh, а pcolormesh возвращает QuadMesh. Последний специализирован для этой задачи и поэтому работает быстрее. Почти всегда следует предпочитать его.

Есть также небольшое различие в обработке маскированных массивов. И pcolor, и pcolormesh поддерживают маскированные массивы для C. Однако только pcolor поддерживает маскированные массивы для X и Y. Причина заключается во внутренней обработке маскированных значений. pcolor исключает соответствующие многоугольники из PolyQuadMesh. pcolormesh задаёт прозрачный цвет грани для маскированных элементов. Различие можно заметить при использовании edgecolors. В QuadMesh все границы рисуются независимо от маскирования, тогда как граница между двумя соседними маскированными четырёхугольниками в pcolor не рисуется, поскольку соответствующие многоугольники отсутствуют в PolyQuadMesh. PolyQuadMesh рисует каждый многоугольник отдельно, поэтому также поддерживает применение штриховки и стилей линий ко всей коллекции.

Ещё одно различие — поддержка затенения Гуро в pcolormesh, которое недоступно в pcolor.

Примеры использования matplotlib.axes.Axes.pcolormesh

Изображения pcolor

Изображения pcolor

Сетки и закрашивание в pcolormesh

Сетки и закрашивание в pcolormesh

pcolormesh

pcolormesh

Демонстрация QuadMesh

Демонстрация QuadMesh

Растеризация векторной графики

Растеризация векторной графики

Гистограмма временных рядов

Гистограмма временных рядов

Подрисунки Figure

Подрисунки Figure

pcolormesh(X, Y, Z)

pcolormesh(X, Y, Z)

Размещение цветовых шкал

Размещение цветовых шкал

Руководство по ограниченной компоновке

Руководство по ограниченной компоновке

Создание цветовых карт в Matplotlib

Создание цветовых карт в Matplotlib

Нормализация цветовой карты

Нормализация цветовой карты

© 2012–2026 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/stable/api/_as_gen/matplotlib.axes.Axes.pcolormesh.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API