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, возникает ошибка.
-
norm
Normalize, 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').
-
None:
- 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](если это не вызывает исключения).
-
corner_maskbool, default:
Примечания
-
-
contourfотличается от версии MATLAB тем, что не рисует грани многоугольника. Чтобы нарисовать грани, добавьте линии контуров с вызовамиcontour. -
contourfзаполняет интервалы, которые закрыты сверху; другими словами, для границ z1 и z2 заполненная область:z1 < Z <= z2
за исключением самого нижнего интервала, который закрыт с обеих сторон (т.е. он включает самое низкое значение).
-
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