Spec-Zone.ru › Matplotlib 3.8

matplotlib.axes.Axes.pcolormesh

Axes.pcolormesh(*args, alpha=None, norm=None, cmap=None, vmin=None, vmax=None, shading=None, antialiased=False, data=None, **kwargs)[source]

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

Вызов:

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

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

Подсказка

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

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

Данные сетки. Поддерживаемые формы массивов:

  • (M, N) или 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) определяют строки и столбцы данных сетки.

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.
Возвращаемое значение:
matplotlib.collections.QuadMesh
END_OF_DOCUMENT_MARKER
данныеиндексируемый объект, необязательно

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

**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 или строка или None

color

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

edgecolor или ec или edgecolors

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

facecolor или facecolors или fc

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

figure

Figure

gid

строка

hatch

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

in_layout

bool

joinstyle

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

label

объект

linestyle или штрихи или linestyles или ls

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

linewidth или linewidths или lw

float или список float

mouseover

bool

norm

Normalize или строка или None

offset_transform или transOffset

Transform

offsets

(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

строка

urls

список строк или 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

Подрисунки в фигуре

Подрисунки в фигуре

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

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

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

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

pcolormesh(X, Y, Z)

pcolormesh(X, Y, Z)

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

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

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

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

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

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

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

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

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

Spec-Zone.ru

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