Spec-Zone.ru › Matplotlib 3.8

matplotlib.pyplot.contourf

matplotlib.pyplot.contourf(*args, data=None, **kwargs)[source]

Заполнение контуров.

Вызов:

contourf([X, Y,] Z, [levels], **kwargs)

contour и contourf рисуют контурные линии и заполненные контуры соответственно. За исключением отмеченных случаев, сигнатуры функций и возвращаемые значения одинаковы для обеих версий.

Параметры:
X, Yarray-like, необязательно

Координаты значений в Z.

X и Y должны быть обеих 2D с такой же формой, как Z (например, созданные с помощью numpy.meshgrid), или они должны быть оба 1-D таким образом, что len(X) == N — это количество столбцов в Z, а len(Y) == M — количество строк в Z.

X и Y должны быть упорядочены монотонно.

Если они не заданы, предполагается, что они являются целочисленными индексами, т.е. X = range(N), Y = range(M).

Z(M, N) array-like

Значения высот, по которым строится контур. Отображение цветов контролируется cmap, norm, vmin и vmax.

levelsint или array-like, необязательно

Определяет количество и положение линий/областей контура.

Если целое число n, использовать MaxNLocator, который пытается автоматически выбрать не более n+1 "хороших" уровней контура между минимальным и максимальным числовым значениями Z.

Если массив-подобный, рисуются линии контура на указанных уровнях. Значения должны быть в порядке возрастания.

Возвращает:
QuadContourSet
Другие параметры:
corner_maskbool, default: rcParams["contour.corner_mask"] (default: True)

Включить/выключить маскирование углов, что имеет эффект только если Z — массив с маской. Если False, любой квадрат, касающийся замаскированной точки, маскируется. Если True, только треугольные углы квадратов, ближайших к этим точкам, всегда маскируются, а другие треугольные углы, состоящие из трёх незамаскированных точек, контурируются как обычно.

colorsстрока цвета или последовательность цветов, необязательно

Цвета уровней, т.е. линии для contour и области для contourf.

Последовательность циклически используется для уровней в порядке возрастания. Если последовательность короче, чем количество уровней, она повторяется.

В качестве сокращения можно использовать строки одного цвета вместо списков из одного элемента, т.е. 'red' вместо ['red'] для окраски всех уровней одним цветом. Это сокращение работает только для строк цвета, а не для других способов задания цветов.

По умолчанию (значение None) используется цветовая карта, заданная параметром cmap.

alphafloat, default: 1

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

cmapстрока или Colormap, default: rcParams["image.cmap"] (default: 'viridis')

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

Этот параметр игнорируется, если задан параметр colors.

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

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

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

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

Этот параметр игнорируется, если задан параметр colors.

vmin, vmaxfloat, необязательно

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

Если vmin или vmax не заданы, масштабирование цветов по умолчанию основано на levels.

Этот параметр игнорируется, если задан параметр colors.

origin{None, 'upper', 'lower', 'image'}, default: None

Определяет ориентацию и точное положение Z, задавая положение Z[0, 0]. Это актуально только если X, Y не заданы.

  • None: Z[0, 0] находится в левом нижнем углу при X=0, Y=0.
  • 'lower': Z[0, 0] находится в левом нижнем углу при X=0.5, Y=0.5.
  • 'upper': Z[0, 0] находится в левом верхнем углу при X=N+0.5, Y=0.5.
  • 'image': Используйте значение из rcParams["image.origin"] (default: 'upper').
extent(x0, x1, y0, y1), необязательно

Если origin не None, то extent интерпретируется так же, как в imshow: он задаёт внешние границы пикселей. В этом случае положение Z[0, 0] — центр пикселя, а не угол. Если origin — None, то (x0, y0) — положение Z[0, 0], а (x1, y1) — положение Z[-1, -1].

Этот аргумент игнорируется, если X и Y указаны в вызове contour.

locatorподкласс ticker.Locator, необязательно

Locator используется для определения уровней контура, если они не заданы явно через levels. По умолчанию MaxNLocator.

extend{'neither', 'both', 'min', 'max'}, default: 'neither'

Определяет contourf-окраску значений, которые находятся за пределами диапазона levels.

Если 'neither', значения вне диапазона levels не окрашиваются. Если 'min', 'max' или 'both', раскрасить значения ниже, выше или ниже и выше диапазона levels.

Значения ниже min(levels) и выше max(levels) отображаются под/над значениями цветовой карты Colormap. Обратите внимание, что большинство цветовых карт по умолчанию не имеют выделенных цветов для этих случаев, поэтому значения над и под являются крайними значениями цветовой карты. Вы можете явно задать эти значения, используя Colormap.set_under и Colormap.set_over.

Примечание

Существующий QuadContourSet не уведомляется о изменении свойств его цветовой карты. Поэтому требуется явный вызов QuadContourSet.changed() после изменения цветовой карты. Явный вызов можно опустить, если цветовая шкала назначена QuadContourSet, потому что она внутренне вызывает QuadContourSet.changed().

Пример:

x = np.arange(1, 10)
y = x.reshape(-1, 1)
h = x * y

cs = plt.contourf(h, levels=[10, 30, 50],
    colors=['#808080', '#A0A0A0', '#C0C0C0'], extend='both')
cs.cmap.set_over('red')
cs.cmap.set_under('blue')
cs.changed()
xunits, yunitsзарегистрированные единицы, необязательно

Переопределить единицы осей, указав экземпляр matplotlib.units.ConversionInterface.

antialiasedbool, optional

Включить сглаживание, переопределяя значения по умолчанию. Для заполненных контуров значение по умолчанию — False. Для линейных контуров оно берется из rcParams["lines.antialiased"] (default: True).

nchunkint >= 0, необязательно

Если 0, область не разбивается. Укажите положительное целое число, чтобы разбить область на поддомены размером nchunk на nchunk квадратов. Разбиение уменьшает максимальную длину полигонов, генерируемых алгоритмом контурирования, что уменьшает нагрузку на отрисовку, передаваемую бэкенду, и также требует немного меньше оперативной памяти. Однако это может привести к артефактам отрисовки на границах разбиения в зависимости от бэкенда, флага antialiased и значения alpha.

linewidthsfloat или массив, default: rcParams["contour.linewidth"] (default: None)

Применимо только к contour.

Ширина линии контурных линий.

Если число, все уровни будут нарисованы с этой шириной.

Если последовательность, уровни в порядке возрастания будут нарисованы с заданными ширинами в указанном порядке.

Если None, возвращается к rcParams["lines.linewidth"] (default: 1.5).

linestyles{None, 'solid', 'dashed', 'dashdot', 'dotted'}, optional

Применимо только к contour.

Если linestyles — None, по умолчанию используется 'solid', если линии монохромные. В этом случае отрицательные контуры вместо этого будут брать стиль линии из аргумента negative_linestyles.

linestyles также может быть итерируемым объектом вышеперечисленных строк, задающим набор стилей линий, которые будут использоваться. Если этот итерируемый объект короче, чем количество уровней контура, он будет повторяться по необходимости.

negative_linestyles{None, 'solid', 'dashed', 'dashdot', 'dotted'}, optional

Применимо только к contour.

Если linestyles — None и линии монохромные, этот аргумент задаёт стиль линии для отрицательных контуров.

Если negative_linestyles — None, значение по умолчанию берется из rcParams["contour.negative_linestyles"].

negative_linestyles также может быть итерируемым объектом вышеперечисленных строк, задающим набор стилей линий, которые будут использоваться. Если этот итерируемый объект короче, чем количество уровней контура, он будет повторяться по необходимости.

hatchesсписок[строка], необязательно

Только для contourf.

Список узоров штриховки для заполненных областей. Если None, штриховка не будет добавлена к контуру. Штриховка поддерживается только в PostScript, PDF, SVG и Agg бэкендах.

algorithm{'mpl2005', 'mpl2014', 'serial', 'threaded'}, optional

Алгоритм контуров для вычисления линий и полигонов контура. Алгоритмы реализованы в ContourPy, см. документацию ContourPy для получения дополнительной информации.

Значение по умолчанию взято из rcParams["contour.algorithm"] (значение по умолчанию: 'mpl2014').

clip_pathPatch или Path или TransformedPath

Установите путь обрезки. См. set_clip_path.

Введено в версии 3.8.

dataиндексируемый объект, необязательно

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

Примечания

  1. contourf отличается от версии MATLAB тем, что не рисует края полигона. Чтобы нарисовать края, добавьте линии контура с вызовами contour.
  2. contourf заполняет интервалы, которые закрыты сверху; то есть для границ z1 и z2 заполненная область имеет вид:

    z1 < Z <= z2
    

    за исключением самого нижнего интервала, который закрыт с обеих сторон (т.е. он включает наименьшее значение).

  3. contour и contourf используют алгоритм «марширующих квадратов» для вычисления расположения контуров. Дополнительную информацию можно найти в документации ContourPy.

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

Маска углов контура

Маска углов контура

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

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

Штриховка contourf

Штриховка contourf

contourf и логарифмическая шкала цветов

contourf и логарифмическая шкала цветов

Диаграмма контуров неравномерно расположенных данных

Диаграмма контуров неравномерно расположенных данных

pcolormesh

pcolormesh

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

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

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

Spec-Zone.ru

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