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().- Параметры
-
- CДвумерный массив
-
Значения для отображения с помощью цветовой карты.
- 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 являются одномерными массивами или столбцами, они будут расширены в соответствующие двумерные массивы, создавая прямоугольную сетку.
-
cmapстрока или
Colormap, по умолчанию:rcParams["image.cmap"](по умолчанию:'viridis') -
Экземпляр Colormap или зарегистрированное имя цветовой карты. Цветовая карта сопоставляет значения C с цветами.
-
norm
Normalize, необязательно -
Экземпляр Normalize масштабирует значения данных до стандартного диапазона цветовой карты [0, 1] для сопоставления с цветами. По умолчанию диапазон данных сопоставляется с диапазоном цветовой шкалы с использованием линейного масштабирования.
- vmin, vmaxfloat, по умолчанию: None
-
Диапазон цветовой шкалы. Если None, подходящие минимальные/максимальные значения автоматически выбираются экземпляром
Normalize(по умолчанию — соответствующие минимальные/максимальные значения C в случае линейного масштабирования). Использование vmin/vmax при заданном norm недопустимо. - edgecolors{'none', None, 'face', цвет, последовательность цветов}, необязательно
-
Цвет границ. По умолчанию 'none'. Возможные значения:
- 'none' или '': Без границ.
-
None:
rcParams["patch.edgecolor"](по умолчанию:'black') будет использоваться. Обратите внимание, что в настоящее времяrcParams["patch.force_edgecolor"](по умолчанию:False) должно быть True для работы. - 'face': Использовать цвет прилегающего лица.
- Цвет или последовательность цветов задаёт цвет границы.
Единственное форма edgecolor работает как псевдоним.
- alphafloat, по умолчанию: None
-
Значение прозрачности, от 0 (прозрачный) до 1 (непрозрачный).
- shading{'flat', 'nearest', 'gouraud', 'auto'}, необязательно
-
Стиль заливки четырёхугольников; по умолчанию 'flat' или
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': Для каждого четырёхугольника будет применено Gouraud-затенение: цвета углов (i', j') задаются
C[i', j']. Значения цвета области между углами интерполируются из значений углов. Размеры X и Y должны быть такими же, как у C. При использовании Gouraud-затенения edgecolors игнорируется. - 'auto': Выбрать 'flat', если размерности X и Y на единицу больше, чем у C. Выбрать 'nearest', если размерности одинаковые.
См. сетки pcolormesh и затенение для более подробного описания.
- 'flat': Для каждого четырёхугольника используется сплошной цвет. Цвет четырёхугольника (i, j), (i+1, j), (i, j+1), (i+1, j+1) задаётся
- snapbool, по умолчанию: False
-
Привязывать ли сетку к границам пикселей.
- rasterizedbool, необязательно
-
Растеризовать pcolormesh при рисовании векторной графики. Это может ускорить отрисовку и уменьшить размер файлов для больших наборов данных. См. также Растеризация для векторной графики.
- Возвращает
-
matplotlib.collections.QuadMesh
- Другие параметры
-
- dataиндексируемый объект, необязательно
-
Если указано, все параметры также принимают строку
s, которая интерпретируется какdata[s](если это не вызывает исключение). - **kwargs
-
Дополнительно разрешены следующие аргументы. Они передаются конструктору
QuadMesh:Свойство
Описание
функция фильтра, которая принимает массив float (m, n, 3) и значение dpi и возвращает массив (m, n, 3)
массив или скаляр или None
bool
antialiasedили aa или antialiasedsbool или список bool
(M, N) массив или массив M*N
CapStyleили {'butt', 'projecting', 'round'}(vmin: float, vmax: float)
bool
Patch или (Path, Transform) или None
Colormapили str или Noneцвет или список кортежей rgba
edgecolorили ec или edgecolorsцвет или список цветов или 'face'
facecolorили facecolors или fcцвет или список цветов
str
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
bool
JoinStyleили {'miter', 'round', 'bevel'}объект
linestyleили dashes или linestyles или lsstr или кортеж или список thereof
linewidthили linewidths или lwfloat или список float
Normalizeили None(N, 2) или (2,) массив
None или bool или float или вызываемый объект
float
bool
(scale: float, length: float, randomness: float)
bool или None
str
список str или None
bool
float
-
См. также
pcolor-
Альтернативная реализация с несколько отличающимися функциями. Подробное обсуждение различий см. в Различиях между pcolor() и pcolormesh().
imshow-
Если X и Y равномерно распределены,
imshowможет быть более быстрой альтернативой.
Примечания
Маскированные массивы
C может быть маскированным массивом. Если
C[i, j]замаскирован, соответствующий четырехугольник будет прозрачным. Маскирование X и Y не поддерживается. Используйтеpcolor, если вам нужна эта функциональность.Ориентация сетки
Ориентация сетки следует стандартной матричной конвенции: массив C с формой (nrows, ncolumns) отображается с номером столбца как X и номером строки как Y.
Различия между pcolor() и pcolormesh()
Оба метода используются для создания псевдоцветного графика двумерного массива с помощью четырехугольников.
Основное различие заключается в создаваемом объекте и обработке внутренних данных: в то время как
pcolorвозвращаетPolyCollection,pcolormeshвозвращаетQuadMesh. Последний более специализирован для этой цели и, следовательно, быстрее. Его следует предпочитать практически всегда.Также есть небольшое различие в обработке маскированных массивов. Оба
pcolorиpcolormeshподдерживают маскированные массивы для C. Однако толькоpcolorподдерживает маскированные массивы для X и Y. Причина заключается во внутренней обработке маскированных значений.pcolorисключает соответствующие многоугольники из PolyCollection.pcolormeshустанавливает цвет заливки для замаскированных элементов в прозрачный. Различие видно при использовании edgecolors. В то время как все края отрисовываются независимо от маскирования в QuadMesh, край между двумя смежными замаскированными четырехугольниками вpcolorне отрисовывается, так как соответствующие многоугольники не существуют в PolyCollection.Еще одно различие заключается в поддержке затенения Гуро в
pcolormesh, которое недоступно вpcolor.
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.5.1/api/_as_gen/matplotlib.pyplot.pcolormesh.html