matplotlib.pyplot.contour
-
matplotlib.pyplot.contour(*args, data=None, **kwargs)[source] -
Строить контурные линии.
Вызов:
contour([X, Y,] Z, [levels], **kwargs)
contourиcontourfстроят, соответственно, контурные линии и заполненные контурные области. За исключением отмеченных случаев, сигнатуры функций и возвращаемые значения одинаковы для обеих версий.Параметры: -
X, Yarray-like, optional -
Координаты значений в Z.
X и Y должны быть двумерными массивами с той же формой, что и Z (например, созданные с помощью
numpy.meshgrid), или они должны быть одномерными, так чтоlen(X) == M— это количество столбцов в Z, аlen(Y) == N— количество строк в Z.Если не указаны, они предполагаются целочисленными индексами, т.е.
X = range(M),Y = range(N). -
Zarray-like(N, M) -
Значения высот, на которых строится контур.
-
levelsint or array-like, optional -
Определяет количество и позиции контурных линий/областей.
Если целое число n, используйте
MaxNLocator, которая пытается автоматически выбрать не более n+1 «красивых» уровней контура между vmin и vmax.Если массив, стройте контурные линии на указанных уровнях. Значения должны быть упорядочены по возрастанию.
Возвращает: Другие параметры: -
corner_maskbool, default: rcParams["contour.corner_mask"] (default: True) -
Включает/выключает маскирование углов, что имеет эффект только если Z является массивкой с пропускаемыми значениями. Если
False, любой четырехугольник, соприкасающийся с пропускаемым значением, маскируется. ЕслиTrue, только треугольные углы четырехугольников, ближайшие к этим точкам, всегда маскируются, другие треугольные углы, состоящие из трёх немаскированных точек, отображаются как обычно. -
colorscolor string or sequence of colors, optional -
Цвета уровней, т.е. линии для
contourи области дляcontourf.Последовательность циклически используется для уровней в порядке возрастания. Если последовательность короче количества уровней, она повторяется.
В качестве сокращения могут использоваться одиночные строковые цвета вместо списков с одним элементом, т.е.
'red'вместо['red'], чтобы окрасить все уровни в один цвет. Это сокращение работает только для цветовых строк, а не для других способов задания цветов.По умолчанию (значение None) используется цветовая карта, заданная параметром cmap.
-
alphafloat, default: 1 -
Значение альфа-смешивания, от 0 (прозрачный) до 1 (непрозрачный).
-
cmapstr or 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').
-
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.
-
locatorticker.Locator subclass, 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, yunitsregistered units, optional -
Переопределяет единицы осей, указывая экземпляр
matplotlib.units.ConversionInterface. -
antialiasedbool, optional -
Включает/отключает сглаживание, переопределяя значения по умолчанию. Для заполненных контуров значение по умолчанию True. Для контурных линий оно берётся из
rcParams["lines.antialiased"](по умолчанию:True). -
nchunkint >= 0, optional -
Если 0, нет разбиения области. Укажите положительное целое число для деления области на поддомены размера nchunk × nchunk четырехугольников. Разбиение уменьшает максимальную длину полигонов, генерируемых алгоритмом контурирования, что уменьшает нагрузку на бэкэнд при отрисовке и потребляет немного меньше ОЗУ. Однако это может привести к артефактам отрисовки на границах поддоменов, в зависимости от бэкэнда, флага antialiased и значения alpha.
-
linewidthsfloat or array-like, default: rcParams["contour.linewidth"] (default: None) -
Применяется только к
contour.Ширина линий контурных линий.
Если число, все уровни будут нарисованы с этой шириной линии.
Если последовательность, уровни в порядке возрастания будут нарисованы с шириной линий, указанной в порядке.
Если None, это возвращается к
rcParams["lines.linewidth"](по умолчанию:1.5). -
linestyles{None, 'solid', 'dashed', 'dashdot', 'dotted'}, optional -
Применяется только к
contour.Если linestyles равно None, по умолчанию «сплошная», если линии не монохромные. В этом случае отрицательные контуры получат стиль линии из
rcParams["contour.negative_linestyle"](по умолчанию:'dashed') настройки.linestyles также может быть итерируемым объектом указанных выше строк, определяющим набор стилей линий, которые будут использоваться. Если этот итерируемый объект короче, чем количество уровней контура, он будет повторяться по необходимости.
-
hatchesList[str], optional -
Применяется только к
contourf.Список узоров штриховки, которые будут использоваться для заполненных областей. Если None, штриховка не будет добавлена к контуру. Штриховка поддерживается только в PostScript, PDF, SVG и Agg бэкендах.
Примечания
-
contourfотличается от версии MATLAB тем, что не рисует рёбра полигонов. Чтобы нарисовать рёбра, добавьте контурные линии с вызовамиcontour. -
contourfзаполняет интервалы, которые закрыты сверху; то есть, для границ z1 и z2, заполненная область:z1 < Z <= z2
за исключением самого нижнего интервала, который закрыт с обеих сторон (т.е. включает самое низкое значение).
-
Примеры использования matplotlib.pyplot.contour
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.3.3/api/_as_gen/matplotlib.pyplot.contour.html