matplotlib.pyplot.contour
-
matplotlib.pyplot.contour(*args, data=None, **kwargs)[source] -
Построение контуров.
Вызов функции:
contour([X, Y,] Z, [levels], **kwargs)
contourиcontourfсоответственно строят линии контуров и заполненные контуры. За исключением отмеченных случаев, сигнатуры функций и возвращаемые значения одинаковы для обеих версий.Параметры: -
X, Y : array-like, optional -
Координаты значений в Z.
X и Y должны быть двумерными с такой же формой, что и Z (например, созданные с помощью
numpy.meshgrid), или они должны быть одномерными так, чтоlen(X) == Mявляется количеством столбцов в Z, аlen(Y) == N- количеством строк в Z.Если не указаны, предполагается, что они являются целочисленными индексами, т.е.
X = range(M),Y = range(N). -
Z : array-like(N, M) -
Значения высот, по которым строится контур.
-
levels : int or array-like, optional -
Определяет количество и положение линий/областей контура.
Если целое число n, использовать n интервалов данных; т.е. нарисовать n+1 линий контура. Уровни высот выбираются автоматически.
Если массив, нарисовать линии контура на указанных уровнях. Значения должны быть упорядочены по возрастанию.
Возвращаемые значения: -
c : QuadContourSet
Другие параметры: -
corner_mask : bool, optional -
Включение/выключение маскирования углов, которое имеет эффект только если Z является массивкой с пропускаемыми значениями. Если
False, любой четырехугольник, касающийся пропускаемого значения, пропускается. ЕслиTrue, только треугольные углы четырехугольников, ближайшие к этим точкам, всегда пропускаются, другие треугольные углы, состоящие из трех неполучаемых точек, отображаются обычно.По умолчанию
rcParams["contour.corner_mask"], что по умолчаниюTrue. -
colors : color string or sequence of colors, optional -
Цвета уровней, т.е. линий для
contourи областей дляcontourf.Последовательность циклически используется для уровней в порядке возрастания. Если последовательность короче, чем количество уровней, она повторяется.
В качестве сокращения могут быть использованы одиночные строковые цвета вместо списков с одним элементом, т.е.
'red'вместо['red']для окрашивания всех уровней одним цветом. Это сокращение работает только для строковых цветов, а не для других способов задания цветов.По умолчанию (значение None) используется цветовая карта, заданная параметром cmap.
-
alpha : float, optional -
Значение альфа-смешивания, от 0 (прозрачный) до 1 (непрозрачный).
-
cmap : str or Colormap, optional -
Экземпляр
Colormapили имя зарегистрированной цветовой карты. Цветовая карта отображает значения уровня в цвета. По умолчаниюrcParams["image.cmap"].Если задано, colors имеет приоритет над cmap.
-
norm : Normalize, optional -
Если используется цветовая карта, экземпляр
Normalizeмасштабирует значения уровня до стандартного диапазона цветовой карты [0, 1] для отображения в цвета. Если не задано, используется линейное масштабирование по умолчанию. -
vmin, vmax : float, 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"].
-
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 subclass, optional -
Локатор используется для определения уровней контура, если они не заданы явно через levels. По умолчанию
MaxNLocator. -
extend : {'neither', 'both', 'min', 'max'}, optional, default: 'neither' -
Определяет
contourf-окраску значений, которые находятся вне диапазона levels.Если 'ничего', значения вне диапазона levels не окрашиваются. Если 'мин', 'макс' или 'оба', цвет значений ниже, выше или ниже и выше диапазона 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 : registered units, optional -
Переопределить единицы осей, указав экземпляр
matplotlib.units.ConversionInterface. -
antialiased : bool, optional -
Включить сглаживание, переопределяя значения по умолчанию. Для заполненных контуров значение по умолчанию - True. Для линейных контуров оно взято из
rcParams["lines.antialiased"]. -
Nchunk : int >= 0, optional -
Если 0, нет разделения области. Укажите положительное целое число для разделения области на поддомены размером nchunk на nchunk четырехугольников. Разделение уменьшает максимальную длину полигонов, генерируемых алгоритмом контурного построения, что уменьшает рабочую нагрузку, передаваемую бэкэнду, и требует немного меньше оперативной памяти. Однако это может привести к артефактам отображения на границах фрагментов в зависимости от бэкэнда, флага antialiased и значения alpha.
-
linewidths : float or sequence of float, optional -
Применимо только к
contour.Толщина линий контура.
Если число, все уровни будут нарисованы с этой толщиной.
Если последовательность, уровни в порядке возрастания будут нарисованы с толщинами в указанном порядке.
По умолчанию
rcParams["lines.linewidth"]. -
linestyles : {None, 'solid', 'dashed', 'dashdot', 'dotted'}, optional -
Применимо только к
contour.Если linestyles равно None, значение по умолчанию - 'solid', за исключением монохромных линий. В этом случае отрицательные контуры получат стиль линии из
rcParams["contour.negative_linestyle"]настройки.linestyles также может быть итерируемым списком вышеперечисленных строк, задающим набор стилей линий для использования. Если этот итерируемый список короче, чем количество уровней контура, он будет повторяться по мере необходимости.
-
hatches : List[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.1.1/api/_as_gen/matplotlib.pyplot.contour.html