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) == M— это количество столбцов в Z, иlen(Y) == N— это количество строк в Z.Если не указаны, предполагается, что это целочисленные индексы, т.е.
X = range(M),Y = range(N). - Z(M, N) array-like
-
Значения высот, по которым строится контур.
- levelsint или array-like, необязательно
-
Определяет количество и позиции линий/областей контура.
Если целое число n, используйте
MaxNLocator, который пытается автоматически выбрать не более n+1 "хороших" уровней контура между vmin и vmax.Если массив, рисует линии контура на заданных уровнях. Значения должны быть в порядке возрастания.
Возвращает:
Другие параметры: -
corner_maskbool, по умолчанию:
rcParams["contour.corner_mask"](по умолчанию:True) -
Включить/выключить маскирование углов, что имеет эффект только если Z является массивной маской. Если
False, любой квадрат, соприкасающийся с замаскированной точкой, маскируется. ЕслиTrue, только треугольные углы квадратов, ближайших к этим точкам, всегда маскируются, другие треугольные углы, состоящие из трёх незамаскированных точек, контурируются как обычно. - colorsстрока цвета или последовательность цветов, необязательно
-
Цвета уровней, т.е. линии для
contourи области дляcontourf.Последовательность циклически используется для уровней в порядке возрастания. Если последовательность короче, чем число уровней, она повторяется.
В качестве сокращения можно использовать строковые обозначения цвета вместо списков с одним элементом, т.е.
'red'вместо['red']для окраски всех уровней одним цветом. Это сокращение работает только для строковых обозначений цвета, а не для других способов указания цвета.По умолчанию (значение None) используется цветовая карта, заданная параметром cmap.
- alphaвещественное число, по умолчанию: 1
-
Значение альфа-смешивания, от 0 (прозрачный) до 1 (непрозрачный).
-
cmapстрока или
Colormap, по умолчанию:rcParams["image.cmap"](по умолчанию:'viridis') -
Экземпляр
Colormapили зарегистрированное имя цветовой карты. Цветовая карта сопоставляет значения уровня с цветами.Если заданы оба параметра colors и cmap, возникает ошибка.
-
norm
Normalize, необязательно -
Если используется цветовая карта, экземпляр
Normalizeмасштабирует значения уровня до стандартного диапазона цветовой карты [0, 1] для сопоставления с цветами. Если не задано, используется стандартное линейное масштабирование. - vmin, vmaxвещественное число, необязательно
-
Если не None, одно или оба этих значения будут переданы экземпляру
Normalize, переопределяя стандартное масштабирование цвета на основе levels. - origin{None, 'upper', 'lower', 'image'}, по умолчанию: 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), необязательно
-
Если 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'}, по умолчанию: '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, yunitsзарегистрированные единицы, необязательно
-
Переопределить единицы осей, указав экземпляр
matplotlib.units.ConversionInterface. - antialiasedbool, необязательно
-
Включить сглаживание, переопределив значения по умолчанию. Для заполненных контуров значение по умолчанию равно True. Для контуров линий оно берётся из
rcParams["lines.antialiased"](по умолчанию:True). - nchunkцелое число ≥ 0, необязательно
-
Если 0, область не разбивается. Укажите положительное целое число, чтобы разбить область на поддомены размером nchunk на nchunk квадратов. Разбиение уменьшает максимальную длину полигонов, генерируемых алгоритмом контурного построения, что снижает нагрузку на бэкэнд и требует немного меньше оперативной памяти. Однако это может привести к артефактам отображения на границах разбиений в зависимости от бэкэнда, флага antialiased и значения alpha.
-
linewidthsвещественное число или массив-подобный объект, по умолчанию:
rcParams["contour.linewidth"](по умолчанию:None) -
Применяется только к
contour.Толщина линий контуров.
Если число, все уровни будут отображаться с этой толщиной.
Если последовательность, уровни в порядке возрастания будут отображаться с толщинами линий в указанном порядке.
Если None, это возвращается к
rcParams["lines.linewidth"](по умолчанию:1.5). - linestyles{None, 'solid', 'dashed', 'dashdot', 'dotted'}, необязательно
-
Применяется только к
contour.Если linestyles равно None, по умолчанию используется 'solid', если линии не монохромные. В противном случае отрицательные контуры будут использовать стиль линии из
rcParams["contour.negative_linestyle"](по умолчанию:'dashed').linestyles также может быть итерируемым объектом вышеуказанных строк, задающим набор стилей линий для использования. Если этот итерируемый объект короче, чем число контурных уровней, он будет повторяться по мере необходимости.
- hatchesсписок[строка], необязательно
-
Применяется только к
contourf.Список узоров штриховки для использования в заполненных областях. Если None, штриховка к контуру не добавляется. Штриховка поддерживается только в PostScript, PDF, SVG и Agg бэкендах.
Примечания
-
contourfотличается от версии MATLAB тем, что не рисует края полигонов. Чтобы нарисовать края, добавьте контуры линий с помощью вызововcontour. -
contourfзаполняет интервалы, которые закрыты сверху; другими словами, для границ z1 и z2 заполненная область:z1 < Z <= z2
за исключением самого нижнего интервала, который закрыт с обеих сторон (т.е. он включает минимальное значение).
-
corner_maskbool, по умолчанию:
Примеры использования matplotlib.pyplot.contourf
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.4.3/api/_as_gen/matplotlib.pyplot.contourf.html