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 должны быть обоих 2-мерными с такой же формой, что и Z (например, созданные с помощью
numpy.meshgrid), или они оба должны быть 1-мерными, так чтоlen(X) == M— это число столбцов в Z, аlen(Y) == N— число строк в Z.Если не указаны, предполагается, что они являются целочисленными индексами, т.е.
X = range(M),Y = range(N). -
Zarray-like(N, M) -
Значения высот, по которым строится контур.
-
levelsint or array-like, optional -
Определяет количество и положение контурных линий/областей.
Если целое число n, использовать n интервалов данных; т.е. нарисовать n+1 контурных линий. Значения уровней автоматически выбираются.
Если массив, рисовать контурные линии по указанным уровням. Значения должны быть в порядке возрастания.
Возвращаемые значения: -
cQuadContourSet
Другие параметры: -
corner_maskbool, optional -
Включить/выключить маскирование углов, что имеет эффект только если Z является массивом с масками. Если
False, любая четверть, касающаяся маскированного пункта, маскируется. ЕслиTrue, только треугольные углы четвертей, ближайших к этим точкам, всегда маскируются, другие треугольные углы, состоящие из трёх не замаскированных точек, рисуются как обычно.По умолчанию
rcParams["contour.corner_mask"](по умолчанию: True). -
colorscolor string or sequence of colors, optional -
Цвета уровней, т.е. линии для
contourи области дляcontourf.Последовательность циклически используется для уровней в порядке возрастания. Если последовательность короче числа уровней, она повторяется.
В качестве сокращения могут использоваться одиночные строковые значения цвета вместо списков с одним элементом, т.е.
'red'вместо['red']для раскраски всех уровней одним цветом. Это сокращение работает только для строковых значений цветов, а не для других способов задания цветов.По умолчанию (значение None) используется цветовая карта, заданная параметром cmap.
-
alphafloat, optional -
Значение альфа-смешивания, от 0 (прозрачный) до 1 (непрозрачный).
-
cmapstr or Colormap, optional -
Экземпляр
Colormapили зарегистрированное имя цветовой карты. Цветовая карта сопоставляет значения уровней с цветами. По умолчаниюrcParams["image.cmap"](по умолчанию: 'viridis').Если заданы оба параметра colors и cmap, генерируется ошибка.
-
normNormalize, optional -
Если используется цветовая карта, экземпляр
Normalizeмасштабирует значения уровней до стандартного диапазона цветовой карты [0, 1] для сопоставления с цветами. Если не задано, используется линейное масштабирование по умолчанию. -
vmin, vmaxfloat, optional -
Если не None, эти значения будут переданы экземпляру
Normalize, переопределяя масштабирование цветов по умолчанию, основанное на levels. -
origin{None, 'upper', 'lower', 'image'}, optional -
Определяет ориентацию и точное положение 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'}, optional, default: 'neither' -
Определяет способ раскраски значений, которые находятся вне диапазона 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 sequence of float, optional -
Применимо только к
contour.Ширина линии контурных линий.
Если число, все уровни будут нарисованы с этой шириной линии.
Если последовательность, уровни в порядке возрастания будут нарисованы с ширинами линий в указанном порядке.
По умолчанию
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 бэкендах.
Примечания
-
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.2.2/api/_as_gen/matplotlib.pyplot.contour.html