Spec-Zone.ru › Matplotlib 3.5

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

Значения высот, по которым строится контур.

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

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

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

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

Возвращает
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')

Экземпляр Colormap или зарегистрированное имя цветовой карты. Цветовая карта сопоставляет значения уровня цветам.

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

normNormalize, optional

Если используется цветовая карта, экземпляр Normalize масштабирует значения уровней до стандартного диапазона цветовой карты [0, 1] для сопоставления с цветами. Если не задано, используется стандартное линейное масштабирование.

vmin, vmaxfloat, optional

Если не None, одно или оба из этих значений будут переданы экземпляру Normalize, переопределяя стандартное масштабирование цвета на основе levels.

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"] (по умолчанию 'upper').
extent(x0, x1, y0, y1), optional

Если 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, optional

Локатор используется для определения контурных уровней, если они не заданы явно через 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

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

nchunkint >= 0, optional

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

linewidthsfloat или массив-подобный объект, default: rcParams["contour.linewidth"] (default: None)

Только для contour.

Толщина линий контура.

Если число, все уровни будут отображаться с этой толщиной.

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

Если None, это возвращается к rcParams["lines.linewidth"] (по умолчанию 1.5).

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

Только для contour.

Если linestyles — None, по умолчанию это 'solid', если линии не монохромные. В этом случае отрицательные контуры получат стиль линии из rcParams["contour.negative_linestyle"] (по умолчанию 'dashed').

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

hatcheslist[str], optional

Только для contourf.

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

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

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

Примечания

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

    z1 < Z <= z2
    

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

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

© 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.contourf.html

Spec-Zone.ru

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