Spec-Zone.ru › Matplotlib

matplotlib.pyplot.pcolormesh

matplotlib.pyplot.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().

Параметры:
Cмассивоподобный объект

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

  • (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, Yмассивоподобный объект, необязательный

Координаты углов четырёхугольников 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, vmaxчисло с плавающей точкой, необязательный

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

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

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

edgecolors{'none', None, 'face', цвет, последовательность цветов}, необязательный

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

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

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

alphaчисло с плавающей точкой, по умолчанию: 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
Другие параметры:
dataиндексируемый объект, необязательный

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

**kwargs

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

Свойство

Описание

agg_filter

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

alpha

массивоподобный объект, число с плавающей точкой или None

animated

bool

antialiased или aa или antialiaseds

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

array

массивоподобный объект

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

объект

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

str, кортеж или список из них

linewidth или linewidths или lw

число с плавающей точкой или список чисел с плавающей точкой

mouseover

bool

norm

Normalize или str или None

offset_transform или transOffset

Transform

offsets

массивоподобный объект формы (N, 2) или (2,)

path_effects

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

picker

None, bool, число с плавающей точкой или вызываемый объект

pickradius

число с плавающей точкой

rasterized

bool

sketch_params

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

snap

bool или None

transform

Transform

url

str

urls

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

visible

bool

zorder

число с плавающей точкой

См. также

pcolor

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

imshow

Если X и Y имеют равномерный шаг, imshow может оказаться более быстрой альтернативой.

Примечания

Примечание

Это обёртка pyplot для axes.Axes.pcolormesh.

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

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 делает цвет граней замаскированных элементов прозрачным. Различие можно заметить при использовании цветов границ. В QuadMesh все границы отрисовываются независимо от маскирования, тогда как граница между двумя соседними замаскированными четырёхугольниками в pcolor не отрисовывается, поскольку соответствующие многоугольники отсутствуют в PolyQuadMesh. Поскольку PolyQuadMesh отрисовывает каждый отдельный многоугольник, он также поддерживает применение штриховок и стилей линий к коллекции.

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

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

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

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

Сетки pcolormesh и затенение

Сетки pcolormesh и затенение

pcolormesh

pcolormesh

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

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

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

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

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

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

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

Spec-Zone.ru

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