matplotlib.contour
Классы для поддержки построения контурных диаграмм и маркировки для класса Axes.
-
class matplotlib.contour.ClabelText(x=0, y=0, text='', color=None, verticalalignment='baseline', horizontalalignment='left', multialignment=None, fontproperties=None, rotation=None, linespacing=None, rotation_mode=None, usetex=None, wrap=False, **kwargs)[source]
-
Основы:
matplotlib.text.TextВ отличие от обычного текста, get_rotation возвращает обновлённый угол в пиксельных координатах, предполагая, что входной угол является углом в координатах данных (или любым настроенным преобразованием).
Создайте экземпляр
Textв точке x, y со строкой text.Допустимы следующие ключевые аргументы:
Свойство Описание agg_filterфункция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) alphaчисло с плавающей точкой или None animatedбулево значение backgroundcolorцвет bboxсловарь свойств для patches.FancyBboxPatchclip_boxBboxclip_onбулево значение clip_pathобъект Patch или (Path, Transform) или None colorили cцвет containsнеизвестно figureFigurefontfamilyили family{имя_шрифта, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'} fontpropertiesили font или font_propertiesfont_manager.FontPropertiesилиstrилиpathlib.Pathfontsizeили sizeчисло с плавающей точкой или {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'} fontstretchили stretch{числовое значение в диапазоне 0-1000, 'ultra-condensed', 'extra-condensed', 'condensed', 'semi-condensed', 'normal', 'semi-expanded', 'expanded', 'extra-expanded', 'ultra-expanded'} fontstyleили style{'normal', 'italic', 'oblique'} fontvariantили variant{'normal', 'small-caps'} fontweightили weight{числовое значение в диапазоне 0-1000, 'ultralight', 'light', 'normal', 'regular', 'book', 'medium', 'roman', 'semibold', 'demibold', 'demi', 'bold', 'heavy', 'extra bold', 'black'} gidстрока horizontalalignmentили ha{'center', 'right', 'left'} in_layoutбулево значение labelобъект linespacingчисло с плавающей точкой (кратное размеру шрифта) multialignmentили ma{'left', 'right', 'center'} path_effectsAbstractPathEffectpickerNone или булево значение или вызываемый объект position(число с плавающей точкой, число с плавающей точкой) rasterizedбулево значение или None rotationчисло с плавающей точкой или {'vertical', 'horizontal'} rotation_mode{None, 'default', 'anchor'} sketch_params(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой) snapбулево значение или None textобъект transformTransformurlстрока usetexбулево значение или None verticalalignmentили va{'center', 'top', 'bottom', 'baseline', 'center_baseline'} visibleбулево значение wrapбулево значение xчисло с плавающей точкой yчисло с плавающей точкой zorderчисло с плавающей точкой
-
get_rotation(self)[source] -
Возвращает угол текста в градусах от 0 до 360.
-
-
class matplotlib.contour.ContourLabeler[source] -
Bases:
objectMixin для предоставления возможностей подписывания контурам
ContourSet.-
add_label(self, x, y, rotation, lev, cvalue)[source] -
Добавление метки контура с использованием класса
Text.
-
add_label_clabeltext(self, x, y, rotation, lev, cvalue)[source] -
Добавление метки контура с использованием класса
ClabelText.
-
add_label_near(self, x, y, inline=True, inline_spacing=5, transform=None)[source] -
Добавление метки вблизи точки (x, y). Если transform равно None (по умолчанию), (x, y) заданы в координатах данных; если transform равно False, (x, y) заданы в экранных координатах; в противном случае используется указанное преобразование для перевода (x, y) в экранные координаты.
Parameters: -
x, yfloat -
Приблизительное расположение метки.
-
inlinebool, default: True -
Если True, удаляется сегмент контура под меткой.
-
inline_spacingint, default: 5 -
Расстояние в пикселях, отступаемое с каждой стороны от метки при размещении в строку. Это расстояние будет точным для меток в местах, где контур прямой, и менее точным для меток на кривых контурах.
-
-
calc_label_rot_and_inline(self, slc, ind, lw, lc=None, spacing=5)[source] -
Вычисление подходящего поворота метки на основе координат линии контура в экранных единицах, индекса положения метки и ширины метки.
Если lc не равно None или пустое, также разделяются контуры и вычисляется выравнивание.
spacing — это пустое место, отводимое вокруг метки в пикселях.
Обе задачи выполняются вместе для предотвращения многократного вычисления длин путей контура, что относительно дорого.
Используемый здесь метод включает вычисление длины пути вдоль контура в пиксельных координатах, а затем приблизительное смещение (ширина метки / 2) от центральной точки для определения поворота и последующего разделения контура при необходимости.
-
clabel(self, levels=None, *, fontsize=None, inline=True, inline_spacing=5, fmt='%1.3f', colors=None, use_clabeltext=False, manual=False, rightside_up=True, zorder=None)[source] -
Подписывание графика контуров.
Добавляет подписи к линиям контуров в этом объекте
ContourSet(который наследует от этого миксин-класса).Parameters: -
levelsarray-like, optional -
Список значений уровней, которые должны быть подписаны. Список должен быть подмножеством
cs.levels. Если не задано, все уровни подписываются. -
fontsizestr or float, default: rcParams["font.size"] (default: 10.0) -
Размер в пунктах или относительный размер, например, 'smaller', 'x-large'. См.
Text.set_sizeдля допустимых строковых значений. -
colorscolor or colors or None, default: None -
Цвета меток:
- Если None, цвет каждой метки соответствует цвету соответствующего контура.
- Если строка цвета, например, colors = 'r' или colors = 'red', все метки будут отображаться в этом цвете.
- Если кортеж цветов (строка, число с плавающей точкой, RGB и т.д.), разные метки будут отображаться в разных цветах в указанном порядке.
-
inlinebool, default: True -
Если
True, соответствующий контур удаляется, где размещена метка. -
inline_spacingfloat, default: 5 -
Расстояние в пикселях, отступаемое с каждой стороны от метки при размещении в строку.
Это расстояние будет точным для меток в местах, где контур прямой, и менее точным для меток на кривых контурах.
-
fmtstr or dict, default: '%1.3f' -
Строковый формат для метки.
В качестве альтернативы это может быть словарь, сопоставляющий уровни контуров с произвольными строками для каждого уровня контура (т. е., fmt[level]=строка), или это может быть любой вызываемый объект, такой как экземпляр
Formatter, возвращающий строку при вызове с числовым уровнем контура. -
manualbool or iterable, default: False -
Если
True, метки контуров будут размещаться вручную с помощью щелчков мышью. Щелкните левой кнопкой мыши рядом с контуром, чтобы добавить метку, щелкните правой кнопкой мыши (или, возможно, обеими кнопками мыши одновременно), чтобы закончить добавление меток. Третья кнопка может использоваться для удаления последней добавленной метки, но только если метки не расположены в строку. В качестве альтернативы можно использовать клавиатуру для выбора мест размещения меток (ввод для завершения размещения меток, клавиши удаления или Backspace действуют как третья кнопка мыши, а любая другая клавиша выберет место размещения метки).manual также может быть итерируемым объектом кортежей (x, y). Метки контуров будут создаваться так, как если бы мышью щелкали в каждой точке (x, y).
-
rightside_upbool, default: True -
Если
True, повороты меток всегда будут плюс или минус 90 градусов от уровня. -
use_clabeltextbool, default: False -
Если
True, используется классClabelText(вместоText) для создания меток.ClabelTextпересчитывает углы поворота текстов во время рисования, поэтому это можно использовать, если изменяется вид осей. -
zorderfloat or None, default: (2 + contour.get_zorder()) -
zorder меток контура.
Returns: - labels
-
Список экземпляров
Textдля меток.
-
-
get_label_coords(self, distances, XX, YY, ysize, lw)[source] -
Возвращает x, y и индекс расположения метки.
Метки отображаются в позиции с наименьшим отклонением контура от прямой линии, если рядом нет другой метки, в этом случае выбирается следующее лучшее место на контуре. Если все такие кандидаты отклоняются, выбирается начало контура.
-
get_label_width(self, lev, fmt, fsize)[source] -
Возвращает ширину метки в пунктах.
-
get_text(self, lev, fmt)[source] -
Получить текст метки.
-
labels(self, inline, inline_spacing)[source]
-
locate_label(self, linecontour, labelwidth)[source] -
Поиск подходящего места для отображения метки (относительно плоская часть контура).
-
pop_label(self, index=- 1)[source] -
По умолчанию удаляется последняя метка, но можно указать любой индекс.
-
print_label(self, linecontour, labelwidth)[source] -
Возвращает, достаточно ли длинный контур для размещения метки.
-
set_label_props(self, label, text, color)[source] -
Устанавливает свойства метки — цвет, размер шрифта, текст.
-
too_close(self, x, y, lw)[source] -
Возвращает True, если метка уже находится рядом с этим местом.
-
-
class matplotlib.contour.ContourSet(ax, *args, levels=None, filled=False, linewidths=None, linestyles=None, hatches=None, alpha=None, origin=None, extent=None, cmap=None, colors=None, norm=None, vmin=None, vmax=None, extend='neither', antialiased=None, nchunk=0, locator=None, transform=None, **kwargs)[source] -
Bases:
matplotlib.cm.ScalarMappable,matplotlib.contour.ContourLabelerХранит набор контурных линий или заполненных областей.
Метод, вызываемый пользователем:
clabelПараметры: -
axAxes -
levels[level0, level1, ..., leveln] -
Список чисел с плавающей точкой, указывающий уровни контура.
-
allsegs[level0segs, level1segs, ...] -
Список всех сегментов полигонов для всех уровней. Для контурных линий
len(allsegs) == len(levels), а для заполненных контурных областейlen(allsegs) = len(levels)-1. Списки должны выглядеть следующим образом:level0segs = [polygon0, polygon1, ...] polygon0 = [[x0, y0], [x1, y1], ...]
-
allkindsNone or [level0kinds, level1kinds, ...] -
Необязательный список всех типов вершин полигонов (коды типов), как описано и используется в Path. Это используется для разрешения многосвязных путей, таких как отверстия внутри заполненных полигонов. Если не
None,len(allkinds) == len(allsegs). Списки должны выглядеть следующим образом:level0kinds = [polygon0kinds, ...] polygon0kinds = [vertexcode0, vertexcode1, ...]
Если allkinds не
None, обычно все полигоны для определенного уровня контура группируются вместе, чтобыlevel0segs = [polygon0]иlevel0kinds = [polygon0kinds]. - **kwargs
-
Ключевые аргументы, как описано в документации к
contour.
Атрибуты: - ax
-
Объект осей, на котором отображаются контуры.
- collections
-
Список LineCollections или PolyCollections.
- levels
-
Уровни контура.
- layers
-
То же, что и levels для линий контура; середина между уровнями для заполненных контуров. См.
_process_colors().
Отображает контурные линии или заполненные области, в зависимости от того, является ли ключевой аргумент filled
False(по умолчанию) илиTrue.Вызов функции:
ContourSet(ax, levels, allsegs, [allkinds], **kwargs)
Параметры: -
axAxes -
Объект
Axesдля отображения. -
levels[level0, level1, ..., leveln] -
Список чисел с плавающей точкой, указывающий уровни контура.
-
allsegs[level0segs, level1segs, ...] -
Список всех сегментов полигонов для всех уровней. Для контурных линий
len(allsegs) == len(levels), а для заполненных контурных областейlen(allsegs) = len(levels)-1. Списки должны выглядеть следующим образом:level0segs = [polygon0, polygon1, ...] polygon0 = [[x0, y0], [x1, y1], ...]
-
allkinds[level0kinds, level1kinds, ...], optional -
Необязательный список всех типов вершин полигонов (коды типов), как описано и используется в Path. Это используется для разрешения многосвязных путей, таких как отверстия внутри заполненных полигонов. Если не
None,len(allkinds) == len(allsegs). Списки должны выглядеть следующим образом:level0kinds = [polygon0kinds, ...] polygon0kinds = [vertexcode0, vertexcode1, ...]
Если allkinds не
None, обычно все полигоны для определенного уровня контура группируются вместе, чтобыlevel0segs = [polygon0]иlevel0kinds = [polygon0kinds]. - **kwargs
-
Ключевые аргументы, как описано в документации к
contour.
-
property ax
-
changed(self)[source] -
Вызовите это, когда изменяется mappable, чтобы оповестить всех слушателей обратного вызова SM о сигнале 'changed'.
-
find_nearest_contour(self, x, y, indices=None, pixel=True)[source] -
Найдите точку на диаграмме контуров, которая находится ближе всего к
(x, y).Параметры: - x, y: float
-
Точка отсчета.
-
indiceslist of int or None, default: None -
Индексы уровней контура для рассмотрения. Если None (по умолчанию), учитываются все уровни.
-
pixelbool, default: True -
Если True, измеряется расстояние в пикселях (на экране), что полезно для ручного контурного маркирования; в противном случае измеряется расстояние в пространстве осей.
Возвращает: -
contourCollection -
Контур, который находится ближе всего к
(x, y). -
segmentint -
Индекс
Pathв contour, который ближе всего к(x, y). -
indexint -
Индекс сегмента пути в segment, который ближе всего к
(x, y). -
xmin, yminfloat -
Точка на диаграмме контуров, которая находится ближе всего к
(x, y). -
dfloat -
Расстояние от
(xmin, ymin)до(x, y).
-
get_alpha(self)[source] -
Возвращает значение альфа-смешения, применяемое ко всем элементам ContourSet.
-
get_transform(self)[source] -
Возвращает экземпляр
Transform, используемый этим ContourSet.
-
legend_elements(self, variable_name='x', str_format=<class 'str'>)[source] -
Возвращает список элементов и меток, подходящих для передачи в
legend, которые представляют этот ContourSet.Метки имеют вид "0 < x <= 1", указывающий диапазоны данных, которые представляют эти элементы.
Параметры: -
variable_namestr -
Строка, используемая внутри неравенства, используемого в метках.
-
str_formatfunction: float -> str -
Функция форматирования чисел в метках.
Возвращает: -
artistsList[Artist] -
Список элементов.
-
labelsList[str] -
Список меток.
-
-
set_alpha(self, alpha)[source] -
Устанавливает значение альфа-смешения для всех элементов ContourSet. alpha должно быть от 0 (прозрачный) до 1 (непрозрачный).
-
-
class matplotlib.contour.QuadContourSet(ax, *args, levels=None, filled=False, linewidths=None, linestyles=None, hatches=None, alpha=None, origin=None, extent=None, cmap=None, colors=None, norm=None, vmin=None, vmax=None, extend='neither', antialiased=None, nchunk=0, locator=None, transform=None, **kwargs)[source] -
Bases:
matplotlib.contour.ContourSetСоздаёт и сохраняет набор контурных линий или заполненных областей.
Метод, вызываемый пользователем:
clabelАтрибуты: - ax
-
Объект осей, на котором отображаются контуры.
- collections
-
Список LineCollections или PolyCollections.
- levels
-
Уровни контуров.
- layers
-
То же, что и levels для линий контуров; середина между уровнями для заполненных контуров. См. метод
_process_colors().
Отображает контурные линии или заполненные области, в зависимости от того, является ли ключевой аргумент filled
False(по умолчанию) илиTrue.Вызов:
ContourSet(ax, levels, allsegs, [allkinds], **kwargs)
Параметры: -
axAxes -
Объект
Axesдля рисования. -
levels[level0, level1, ..., leveln] -
Список чисел с плавающей точкой, указывающих уровни контуров.
-
allsegs[level0segs, level1segs, ...] -
Список всех сегментов многоугольников для всех уровней. Для контурных линий
len(allsegs) == len(levels), а для заполненных контурных областейlen(allsegs) = len(levels)-1. Списки должны быть похожи наlevel0segs = [polygon0, polygon1, ...] polygon0 = [[x0, y0], [x1, y1], ...]
-
allkinds[level0kinds, level1kinds, ...], optional -
Необязательный список всех типов вершин многоугольника (коды типов), как описано и используется в Path. Это используется для разрешения многосвязных путей, таких как дыры внутри заполненных многоугольников. Если не
None,len(allkinds) == len(allsegs). Списки должны быть похожи наlevel0kinds = [polygon0kinds, ...] polygon0kinds = [vertexcode0, vertexcode1, ...]
Если allkinds не
None, обычно все многоугольники для определенного уровня контура группируются вместе, так чтоlevel0segs = [polygon0]иlevel0kinds = [polygon0kinds]. - **kwargs
-
Ключевые параметры, как описано в документации
contour.
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.3.3/api/contour_api.html