Spec-Zone.ru › Matplotlib 3.7

matplotlib.pyplot.pcolormesh

matplotlib.pyplot.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 или целые числа от 0 до 255).
  • (M, N, 4): изображение с значениями RGBA (числа с плавающей точкой от 0 до 1 или целые числа от 0 до 255), т.е. включая прозрачность.

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

X, Yarray-like, optional

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

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

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

normстрока или Normalize, необязательно

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

Если задано, это может быть одним из следующих:

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

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

edgecolors{'none', None, 'face', цвет, последовательность цветов}, optional

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

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

Слово edgecolor также работает как псевдоним.

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

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

shading{'flat', 'nearest', 'gouraud', 'auto'}, optional

Стиль заливки четырёхугольника; по умолчанию 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, optional

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

Возвращает:
matplotlib.collections.QuadMesh
Другие параметры:
dataindexable object, optional

If given, all parameters also accept a string s, which is interpreted as data[s] (unless this raises an exception).

**kwargs

Additionally, the following arguments are allowed. They are passed along to the QuadMesh constructor:

Свойство

Описание

agg_filter

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

alpha

массив-подобный объект или скаляр или None

animated

bool

antialiased or aa or antialiaseds

bool или список bool

array

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

capstyle

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

clim

(vmin: float, vmax: float)

clip_box

Bbox

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 или dashes или linestyles или ls

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

linewidth или linewidths или lw

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

mouseover

bool

norm

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

offset_transform или transOffset

неизвестно

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

строка

urls

список строк или None

visible

bool

zorder

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

См. также

pcolor

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

imshow

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

Примечания

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

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

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

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

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

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

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

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

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

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

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

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

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

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

pcolormesh

pcolormesh

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

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

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

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

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

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

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

Spec-Zone.ru

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