Spec-Zone.ru › Matplotlib 3.8

matplotlib.axes.Axes.contourf

Axes.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 или один из его подклассов (см. Нормализация цветовых карт).
  • Имя масштаба, т.е. одно из "линейный", "логарифмический", "симлогический", "логит" и т.д. Список доступных масштабов можно получить, вызвав matplotlib.scale.get_scale_names(). В этом случае динамически генерируется и создается соответствующий подкласс Normalize.

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

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

При использовании скалярных данных и отсутствии явного norm, vmin и vmax определяют диапазон данных, который охватывает цветовая карта. По умолчанию цветовая карта охватывает весь диапазон значений предоставленных данных. Использование vmin/vmax при заданном экземпляре norm является ошибкой (но использование имени norm в формате строки вместе с 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"] (по умолчанию '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, необязательно

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

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

nchunkint >= 0, optional

Если 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 также может быть итерируемым объектом из указанных выше строк, определяющим набор стилей линий, которые будут использоваться. Если этот итерируемый объект короче, чем число уровней контура, он будет повторяться по мере необходимости.

hatcheslist[str], optional

Только для 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.axes.Axes.contourf

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

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

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

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

Штриховка contourf

Штриховка contourf

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

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

Контурный график неравномерно распределенных данных

Контурный график неравномерно распределенных данных

pcolormesh

pcolormesh

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

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

График поверхности 3D-боксов

График поверхности 3D-боксов

Заполненные контуры

Заполненные контуры

Проекция заполненного контура на график

Проекция заполненного контура на график

contourf(X, Y, Z)

contourf(X, Y, Z)

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

Spec-Zone.ru

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