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]
-
Bases:
matplotlib.text.TextВ отличие от обычного текста, get_rotation возвращает обновленный угол в пиксельных координатах, предполагая, что входной угол — это угол в координатах данных (или любой установленный преобразования).
Создаёт экземпляр
Textв точке x, y со строкой text.Допустимы следующие ключевые аргументы:
Свойство Описание agg_filterФункция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) alphafloat или None animatedbool backgroundcolorцвет bboxсловарь свойств для patches.FancyBboxPatchclip_boxBboxclip_onbool clip_pathОбъект Patch или (Path, Transform) или None colorили cцвет containsвызываемый объект figureFigurefontfamilyили family{НАЗВАНИЕ_ШРИФТА, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'} fontpropertiesили font_propertiesfont_manager.FontPropertiesfontsizeили 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_layoutbool labelобъект linespacingзначение с плавающей точкой (кратное размеру шрифта) multialignmentили ma{'left', 'right', 'center'} path_effectsAbstractPathEffectpickerNone или bool или float или вызываемый объект position(float, float) rasterizedbool или None rotation{угол в градусах, 'vertical', 'horizontal'} rotation_mode{None, 'default', 'anchor'} sketch_params(масштаб: float, длина: float, случайность: float) snapbool или None textобъект transformTransformurlстрока usetexbool или None verticalalignmentили va{'center', 'top', 'bottom', 'baseline', 'center_baseline'} visiblebool wrapbool xfloat yfloat zorderfloat -
get_rotation(self)[source] -
Возвращает угол текста в градусах.
-
-
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) в координаты отображения.
Параметры: -
x, yfloat -
Приблизительное положение метки.
-
inlinebool, optional, default: True -
Если True, удаляется отрезок контура под меткой.
-
inline_spacingint, optional, default: 5 -
Отступ в пикселях по обеим сторонам метки при размещении в строку. Этот отступ будет точным для меток в местах, где контур прямой, и менее точным для меток на кривых контурах.
-
-
calc_label_rot_and_inline(self, slc, ind, lw, lc=None, spacing=5)[source] -
Эта функция вычисляет соответствующее поворот метки, учитывая координаты линейного контура в единицах экрана, индекс местоположения метки и ширину метки.
Также она будет разрывать контур и вычислять встраивание, если lc не пустое (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)[source] -
Разметка контурного графика.
Добавляет метки к линиям контуров в этом
ContourSet(который наследуется от этого класса миксина).Параметры: -
levelsarray-like, optional -
Список значений уровней, которые должны быть помечены. Список должен быть подмножеством
cs.levels. Если не указан, все уровни помечены. -
fontsizestr or float, optional -
Размер в пунктах или относительный размер, например, 'smaller', 'x-large'. См.
Text.set_sizeдля допустимых строковых значений. -
colorscolor-spec, optional -
Цвета меток:
- Если None, цвет каждой метки соответствует цвету соответствующего контура.
- Если одна строковая цвет, например, colors = 'r' или colors = 'red', все метки будут нарисованы в этом цвете.
- Если кортеж аргументов цвета matplotlib (строка, число с плавающей запятой, rgb и т. д.), разные метки будут нарисованы в разных цветах в указанном порядке.
-
inlinebool, optional -
Если
True, подлежащий контур удаляется там, где размещена метка. По умолчаниюTrue. -
inline_spacingfloat, optional -
Отступ в пикселях по обеим сторонам метки при размещении в строку. По умолчанию 5.
Этот отступ будет точным для меток в местах, где контур прямой, и менее точным для меток на кривых контурах.
-
fmtstr or dict, optional -
Строка формата для метки. По умолчанию '%1.3f'.
В качестве альтернативы, это может быть словарь, сопоставляющий уровни контура со произвольными строками, которые будут использоваться для каждого уровня контура (т. е., fmt[level]=string), или это может быть любой вызываемый объект, например, экземпляр
Formatter, который возвращает строку при вызове с числовым уровнем контура. -
manualbool or iterable, optional -
Если
True, метки контуров будут размещаться вручную с помощью щелчков мыши. Щелкните левой кнопкой мыши рядом с контуром, чтобы добавить метку, щелкните правой кнопкой мыши (или, возможно, обеими кнопками мыши одновременно), чтобы завершить добавление меток. Третью кнопку можно использовать для удаления последней добавленной метки, но только если метки не встроены. В качестве альтернативы можно использовать клавиатуру для выбора местоположений меток (Enter для завершения размещения меток, Delete или Backspace действуют как третья кнопка мыши, а любая другая клавиша выберет местоположение метки).manual также может быть итерируемым объектом кортежей (x, y). Метки контуров будут создаваться так, как если бы мышь щелкала в каждой позиции (x, y).
-
rightside_upbool, optional -
Если
True, повороты меток всегда будут плюс или минус 90 градусов от уровня. По умолчаниюTrue. -
use_clabeltextbool, optional -
Если
True, используется классClabelText(вместоText) для создания меток.ClabelTextпересчитывает углы поворота текстов во время рисования, поэтому это можно использовать, если аспект осей изменяется. По умолчаниюFalse.
Возвращает: - 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] -
Возвращает False, если контуры слишком короткие для метки.
-
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, alpha=None, origin=None, extent=None, cmap=None, colors=None, norm=None, vmin=None, vmax=None, extend='neither', antialiased=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.
-
changed(self)[source] -
Вызывайте этот метод, когда изменяется сопоставитель, чтобы уведомить все слушатели обратного вызова SM о сигнале 'changed'.
-
find_nearest_contour(self, x, y, indices=None, pixel=True)[source] -
Находит контур, наиболее близкий к точке. По умолчанию измеряет расстояние в пикселях (пространство экрана — полезно для ручного маркирования контуров), но это можно контролировать с помощью ключевого аргумента.
Возвращает кортеж, содержащий контур, сегмент, индекс сегмента, x и y точки сегмента и расстояние до минимальной точки.
Необязательные ключевые аргументы:
- indices:
- Индексы уровней контура, которые нужно учитывать при поиске ближайшей точки. По умолчанию используются все уровни.
- pixel:
- Если True, измеряет расстояние в пространстве пикселей, если нет, измеряет расстояние в пространстве осей. По умолчанию True.
-
get_alpha(self)[source] -
Возвращает альфа-значение, которое должно применяться ко всем элементам ContourSet.
-
get_transform(self)Transform -
Возвращает экземпляр
Transform, используемый этим ContourSet.
-
legend_elements(self, variable_name='x', str_format=<class 'str'>)[source] -
Возвращает список элементов и меток, подходящих для передачи в
plt.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, alpha=None, origin=None, extent=None, cmap=None, colors=None, norm=None, vmin=None, vmax=None, extend='neither', antialiased=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.2.2/api/contour_api.html