matplotlib.contour
Классы для поддержки построения и маркировки контуров для класса Axes.
- класс
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, transform_rotates_text=False, **kwargs)[source] -
Наследуется от
matplotlib.text.TextВ отличие от обычного текста, get_rotation возвращает обновлённый угол в пиксельных координатах, предполагая, что входной rotation — это угол в координатах данных (или любом заданном преобразовании).
Создаёт экземпляр
Textв точке x, y со строкой text.Допустимые ключевые аргументы:
Свойство Описание agg_filterфункция фильтра, которая принимает массив float размером (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) alphaскаляр или None animatedbool backgroundcolorцвет bboxсловарь свойств для patches.FancyBboxPatchclip_boxBboxclip_onbool clip_pathPatch или (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_layoutbool labelобъект linespacingвещественное число (кратное размеру шрифта) math_fontfamilyстрока multialignmentили ma{'left', 'right', 'center'} path_effectsAbstractPathEffectpickerNone или bool или float или вызываемый объект position(вещественное число, вещественное число) rasterizedbool rotationвещественное число или {'vertical', 'horizontal'} rotation_mode{None, 'default', 'anchor'} sketch_params(scale: вещественное число, length: вещественное число, randomness: вещественное число) snapbool или None textобъект transformTransformtransform_rotates_textbool urlстрока usetexbool или None verticalalignmentили va{'center', 'top', 'bottom', 'baseline', 'center_baseline'} visiblebool wrapbool xвещественное число yвещественное число zorderвещественное число
-
get_rotation()[source] -
Возвращает угол текста в градусах от 0 до 360.
-
- class
matplotlib.contour.ContourLabeler[source] -
Наследуется от
objectМиксин для добавления возможностей маркировки к
ContourSet.-
add_label(x, y, rotation, lev, cvalue)[source] -
Добавляет метку контура с использованием класса
Text.
-
add_label_clabeltext(x, y, rotation, lev, cvalue)[source] -
Добавляет метку контура с использованием класса
ClabelText.
-
add_label_near(x, y, inline=True, inline_spacing=5, transform=None)[source] -
Добавляет метку вблизи точки
(x, y).Параметры: - x, yfloat
-
Приблизительное местоположение метки.
- inlinebool, по умолчанию: True
-
Если True, удаляет сегмент контура под меткой.
- inline_spacingint, по умолчанию: 5
-
Пробел в пикселях, оставляемый с каждой стороны метки при размещении в одну строку. Этот пробел будет точным для меток в местах, где контур прямой, менее точным для меток на кривых контурах.
-
transform
TransformилиFalse, по умолчанию:self.axes.transData -
Преобразование, применяемое к
(x, y)перед маркировкой. По умолчанию(x, y)интерпретируется как координаты данных.False— синоним дляIdentityTransform; т.е.(x, y)следует интерпретировать как координаты отображения.
-
calc_label_rot_and_inline(slc, ind, lw, lc=None, spacing=5)[source] -
Вычисляет подходящий угол поворота метки, учитывая координаты контура линии в единицах экрана, индекс местоположения метки и ширину метки.
Если lc не равно None или пусто, также разрывает контуры и вычисляет встраивание.
spacing — пустое пространство вокруг метки в пикселях.
Обе задачи выполняются вместе, чтобы избежать многократного вычисления длин путей, что относительно дорого.
Здесь используется метод, включающий вычисление длины пути вдоль контура в координатах пикселей, а затем приблизительное смещение (ширина метки / 2) от центральной точки для определения поворота и затем разрыва контура при необходимости.
-
-
clabel(levels=None, *, fontsize=None, inline=True, inline_spacing=5, fmt=None, colors=None, use_clabeltext=False, manual=False, rightside_up=True, zorder=None)[source] -
Подпишите контурный график.
Добавляет метки к линиям контуров в этом
ContourSet(который наследуется от этого класса-миксина).Параметры: - levelsarray-like, необязательно
-
Список значений уровней, которые должны быть помечены. Список должен быть подмножеством
cs.levels. Если не указан, все уровни помечены. -
fontsizeстрока или число с плавающей точкой, по умолчанию:
rcParams["font.size"](по умолчанию:10.0) -
Размер в пунктах или относительный размер, например, 'smaller', 'x-large'. См.
Text.set_sizeдля допустимых строковых значений. - colorsцвет или цвета или None, по умолчанию: None
-
Цвета меток:
- Если None, цвет каждой метки соответствует цвету соответствующего контура.
- Если один строковый цвет, например, colors = 'r' или colors = 'red', все метки будут отображаться этим цветом.
- Если кортеж цветов (строка, число с плавающей точкой, rgb и т. д.), разные метки будут отображаться разными цветами в указанном порядке.
- inlinebool, по умолчанию: True
-
Если
Trueосновной контур удаляется, где размещается метка. - inline_spacingчисло с плавающей точкой, по умолчанию: 5
-
Расстояние в пикселях, которое следует оставить по обеим сторонам метки при размещении в одну строку.
Это расстояние будет точным для меток в местах, где контур прямой, и менее точным для меток на криволинейных контурах.
-
fmt
Formatterили строка или вызываемый объект или словарь, необязательно -
Как форматируются уровни:
- Если
Formatter, он используется для форматирования всех уровней сразу, используя его методFormatter.format_ticks. - Если строка, она интерпретируется как строка формата со знаком процента.
- Если вызываемый объект, он вызывается с одним уровнем за раз и должен возвращать соответствующую метку.
- Если словарь, он должен непосредственно сопоставлять уровни меткам.
По умолчанию используется стандартный
ScalarFormatter. - Если
- manualbool или итерируемый объект, по умолчанию: False
-
Если
True, метки контуров будут размещаться вручную с помощью щелчков мышью. Щелкните первой кнопкой вблизи контура, чтобы добавить метку, щелкните второй кнопкой (или, возможно, обеими кнопками мыши одновременно), чтобы завершить добавление меток. Третью кнопку можно использовать для удаления последней добавленной метки, но только если метки не находятся в строке. В качестве альтернативы, можно использовать клавиатуру для выбора местоположения меток (ввод для завершения размещения меток, удаление или backspace как третья кнопка мыши, а любая другая клавиша выберет местоположение метки).manual также может быть итерируемым объектом кортежей (x, y). Метки контуров будут создаваться так, как будто щелчки мыши были выполнены в каждом положении (x, y).
- rightside_upbool, по умолчанию: True
-
Если
True, повороты меток всегда будут плюс или минус 90 градусов от уровня. - use_clabeltextbool, по умолчанию: False
-
Если
True, используется классClabelText(вместоText) для создания меток.ClabelTextпересчитывает углы поворота текстов во время рисования, поэтому это можно использовать, если аспект осей изменяется. -
zorderчисло с плавающей точкой или None, по умолчанию:
(2 + contour.get_zorder()) -
zorder меток контуров.
Возвращает: - метки
-
Список экземпляров
Textдля меток.
-
get_label_coords(distances, XX, YY, ysize, lw)[source] -
[Устарело] Возвращает x, y и индекс местоположения метки.
Метки отображаются в месте с наименьшим отклонением контура от прямой линии, если нет другой метки поблизости, в этом случае выбирается следующее лучшее место на контуре. Если все такие кандидаты отклоняются, выбирается начало контура.
Примечания
Устарело начиная с версии 3.4.
-
get_label_width(lev, fmt, fsize)[source] -
Возвращает ширину метки в пунктах.
-
get_text(lev, fmt)[source] -
Получить текст метки.
-
labels(inline, inline_spacing)[source]
-
locate_label(linecontour, labelwidth)[source] -
Найти подходящее место для рисования метки (относительно плоская часть контура).
-
pop_label(index=- 1)[source] -
По умолчанию удаляет последнюю метку, но можно указать любой индекс
-
print_label(linecontour, labelwidth)[source] -
Возвращает, достаточно ли длинный контур для размещения метки.
-
set_label_props(label, text, color)[source] -
Установить свойства метки - цвет, размер шрифта, текст.
-
-
too_close(x, y, lw)[source] -
Возвращает, находится ли метка уже рядом с этим местоположением.
-
- 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Параметры: -
ax
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
Noneили [level0kinds, level1kinds, ...] -
Необязательный список всех типов вершин многоугольников (кодовые типы), как описано и используется в Path. Это используется для разрешения многосвязных путей, таких как дыры внутри залитых многоугольников. Если не
None,len(allkinds) == len(allsegs). Списки должны выглядеть такlevel0kinds = [polygon0kinds, ...] polygon0kinds = [vertexcode0, vertexcode1, ...]
Если allkinds не
None, обычно все многоугольники для определенного уровня контура группируются вместе, чтобыlevel0segs = [polygon0]иlevel0kinds = [polygon0kinds]. - **kwargs
-
Ключевые аргументы описаны в документации для
contour.
Атрибуты: -
ax
Axes -
Объект Axes, в котором отображаются контуры.
-
collections
silent_listизLineCollectionилиPathCollection -
Элементы
Artist, представляющие контур. Это списокLineCollectionдля контурных линий и списокPathCollectionдля залитых контуров. - levelsмассив
-
Значения уровней контура.
- layersмассив
-
Аналогично levels для контурных линий; находится посередине между уровнями для заполненных контуров. См.
ContourSet._process_colors.
Рисует контурные линии или залитые области, в зависимости от того, является ли ключевой аргумент filled
False(по умолчанию) илиTrue.Вызов:
ContourSet(ax, levels, allsegs, [allkinds], **kwargs)
Параметры: -
ax
Axes -
Объект
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, ...], необязательно
-
Необязательный список всех типов вершин многоугольников (кодовые типы), как описано и используется в Path. Это используется для разрешения многосвязных путей, таких как дыры внутри залитых многоугольников. Если не
None,len(allkinds) == len(allsegs). Списки должны выглядеть такlevel0kinds = [polygon0kinds, ...] polygon0kinds = [vertexcode0, vertexcode1, ...]
Если allkinds не
None, обычно все многоугольники для определенного уровня контура группируются вместе, чтобыlevel0segs = [polygon0]иlevel0kinds = [polygon0kinds]. - **kwargs
-
Ключевые аргументы описаны в документации для
contour.
- свойство
ax
-
changed()[source] -
Вызывайте этот метод всякий раз, когда изменяется отображение, чтобы уведомлять всех слушателей обратного вызова SM об изменении сигнала «changed».
-
find_nearest_contour(x, y, indices=None, pixel=True)[source] -
Находит точку в контурном графике, ближайшую к
(x, y).Параметры: - x, y: float
-
Точка отсчета.
- indicesсписок целых чисел или None, по умолчанию: None
-
Индексы уровней контура для рассмотрения. Если None (по умолчанию), рассматриваются все уровни.
- pixelbool, по умолчанию: True
-
Если True, расстояние измеряется в пикселях (пространство экрана), что полезно для ручного маркирования контуров; в противном случае расстояние измеряется в пространстве осей.
Возвращает: -
contour
Collection -
Контур, ближайший к
(x, y). - segmentint
-
Индекс
Pathв contour, ближайший к(x, y). - indexint
-
Индекс сегмента пути в segment, ближайший к
(x, y). - xmin, yminfloat
-
Точка в контурном графике, ближайшая к
(x, y). - d2float
-
Квадрат расстояния от
(xmin, ymin)до(x, y).
-
get_alpha()[source] -
Возвращает альфа-значение, которое должно быть применено ко всем элементам ContourSet.
-
get_transform()[source] -
Возвращает экземпляр
Transform, используемый этим ContourSet.
-
ax
-
legend_elements(variable_name='x', str_format=<class 'str'>)[source] -
Возвращает список элементов и подписей, подходящих для передачи в
legend, которые представляют этот набор контуров.Подписи имеют вид «0 < x <= 1», указывая диапазоны данных, которые представляют элементы.
Параметры: - variable_namestr
-
Строка, используемая в неравенстве в подписях.
- str_formatфункция: float -> str
-
Функция, используемая для форматирования чисел в подписях.
Возвращает: -
artistslist[
Artist] -
Список элементов.
- labelslist[str]
-
Список подписей.
-
set_alpha(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] -
Наследуется от:
matplotlib.contour.ContourSetСоздаёт и сохраняет набор линий контура или заполненных областей.
Этот класс обычно не создаётся напрямую пользователем, но создаётся
contourиcontourf.Атрибуты: -
ax
Axes -
Объект Axes, на котором отрисовываются контуры.
-
collections
silent_listизLineCollectionилиPathCollection -
Элементы
Artist, представляющие контур. Это списокLineCollectionдля линий контура и списокPathCollectionдля заполненных контуров. - levelsмассив
-
Значения уровней контура.
- layersмассив
-
То же, что и уровни, для линий контура; посередине между уровнями для заполненных контуров. См.
ContourSet._process_colors.
Отрисовывает линии контура или заполненные области в зависимости от того, является ли ключевой аргумент filled
False(по умолчанию) илиTrue.Вызов функции:
ContourSet(ax, levels, allsegs, [allkinds], **kwargs)
Параметры: -
ax
Axes -
Объект
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.
-
ax
© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.4.3/api/contour_api.html