contour
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.Допустимые значения kwargs:
Свойство Описание agg_filterфункция фильтра, которая принимает массив float (m, n, 3) и значение dpi и возвращает массив float (m, n, 3) alphaвещественное число animatedлогическое значение backgroundcolorцвет bboxсловарь свойств для patches.FancyBboxPatchclip_boxmatplotlib.transforms.Bboxclip_onлогическое значение clip_path{ ( path.Path,transforms.Transform),patches.Patch, None }colorцвет containsвызываемый объект figureFigurefontfamily{НАЗВАНИЕ ШРИФТА, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'} fontname{НАЗВАНИЕ ШРИФТА, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'} fontpropertiesfont_manager.FontPropertiesfontsize{размер в пунктах, 'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'} fontstretch{числовое значение в диапазоне 0-1000, 'ultra-condensed', 'extra-condensed', 'condensed', 'semi-condensed', 'normal', 'semi-expanded', 'expanded', 'extra-expanded', 'ultra-expanded'} fontstyle{'normal', 'italic', 'oblique'} fontvariant{'normal', 'small-caps'} fontweight{числовое значение в диапазоне 0-1000, 'ultralight', 'light', 'normal', 'regular', 'book', 'medium', 'roman', 'semibold', 'demibold', 'demi', 'bold', 'heavy', 'extra bold', 'black'} gidстрока horizontalalignment{'center', 'right', 'left'} in_layoutлогическое значение labelобъект linespacingвещественное число (кратное размеру шрифта) multialignment{'left', 'right', 'center'} path_effectsAbstractPathEffectpickerNone или логическое значение или вещественное число или вызываемый объект position(вещественное число, вещественное число) rasterizedлогическое значение или None rotation{угол в градусах, 'vertical', 'horizontal'} rotation_mode{None, 'default', 'anchor'} sketch_params(масштаб: вещественное число, длина: вещественное число, случайность: вещественное число) snapлогическое значение или None textстрока или объект, преобразуемый в строку (но Noneпреобразуется в'')transformTransformurlстрока usetexлогическое значение или None verticalalignment{'center', 'top', 'bottom', 'baseline', 'center_baseline'} visibleлогическое значение wrapлогическое значение xвещественное число yвещественное число zorderвещественное число
-
get_rotation()[source] -
Возвращает угол текста в градусах как число с плавающей точкой.
-
-
class matplotlib.contour.ContourLabeler[source]
-
Базы:
objectMixin для предоставления возможностей маркировки для
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). Если transform равно None (по умолчанию), (x, y) находится в координатах данных; если transform равно False, (x, y) находится в координатах отображения; в противном случае будет использовано указанное преобразование для перевода (x, y) в координаты отображения.
Параметры: -
x, y : float -
Приблизительное расположение метки.
-
inline : bool, optional, default: True -
Если True, удалите часть контура под меткой.
-
inline_spacing : int, optional, default: 5 -
Пространство в пикселях, оставляемое с каждой стороны метки при размещении в строку. Это расстояние будет точным для меток в местах, где контур прямой, и менее точным для меток на кривых контурах.
-
-
calc_label_rot_and_inline(slc, ind, lw, lc=None, spacing=5)[source] -
Эта функция вычисляет соответствующее вращение метки на основе координат линии контура в экранных единицах, индекса местоположения метки и ширины метки.
Также она разрывает контур и вычисляет выравнивание, если lc не пустое (lc по умолчанию - пустой список, если равно None). spacing - это расстояние вокруг метки в пикселях, которое нужно оставить пустым.
Выполнение обеих задач сразу, чтобы избежать многократного вычисления длин путей, что относительно дорого.
Используемый здесь метод включает вычисление длины пути вдоль контура в пиксельных координатах, а затем приблизительное отстояние ширины метки / 2 от центральной точки для определения вращения и последующего разрыва контура при необходимости.
-
cl -
Устарело начиная с версии 3.0: Функция <lambda> устарела в Matplotlib 3.0 и будет удалена в 3.2. Используйте labelTexts вместо этого.
-
cl_cvalues -
Устарело начиная с версии 3.0: Функция <lambda> устарела в Matplotlib 3.0 и будет удалена в 3.2. Используйте labelCValues вместо этого.
-
cl_xy -
Устарело начиная с версии 3.0: Функция <lambda> устарела в Matplotlib 3.0 и будет удалена в 3.2. Используйте labelXYs вместо этого.
-
clabel(*args, fontsize=None, inline=True, inline_spacing=5, fmt='%1.3f', colors=None, use_clabeltext=False, manual=False, rightside_up=True)[source] -
Маркировка графика контуров.
Вызов функции:
clabel(cs, [levels,] **kwargs)
Добавляет метки линиям контуров в cs, где cs - объект
ContourSet, возвращенный функциейcontour().Параметры: -
cs : ContourSet -
Контурный набор для маркировки.
-
levels : array-like, optional -
Список значений уровня, которые должны быть помечены. Список должен быть подмножеством
cs.levels. Если не указано, все уровни маркируются. -
fontsize : string or float, optional -
Размер в пунктах или относительный размер, например, 'smaller', 'x-large'. Смотрите
Text.set_sizeдля допустимых строковых значений. -
colors : color-spec, optional -
Цвета меток:
- Если None, цвет каждой метки соответствует цвету соответствующего контура.
- Если одна строка цвета, например, colors = 'r' или colors = 'red', все метки будут нарисованы этим цветом.
- Если кортеж аргументов цвета matplotlib (строка, число с плавающей точкой, rgb и т. д.), различные метки будут нарисованы различными цветами в указанном порядке.
-
inline : bool, optional -
Если
True, подлежащий контур удаляется там, где расположена метка. По умолчаниюTrue. -
inline_spacing : float, optional -
Пространство в пикселях, оставляемое с каждой стороны метки при размещении в строку. По умолчанию 5.
Это расстояние будет точным для меток в местах, где контур прямой, и менее точным для меток на кривых контурах.
-
fmt : string or dict, optional -
Строка формата для метки. По умолчанию '%1.3f'
В качестве альтернативы это может быть словарь, сопоставляющий уровни контуров с произвольными строками для каждого уровня контура (например, fmt[level]=строка), или это может быть любая вызываемая функция, например, экземпляр
Formatter, которая возвращает строку при вызове с числовым уровнем контура. -
manual : bool or iterable, optional -
Если
True, метки контуров будут размещаться вручную с помощью щелчков мыши. Нажмите первую кнопку вблизи контура, чтобы добавить метку, нажмите вторую кнопку (или, возможно, обе кнопки мыши одновременно), чтобы закончить добавление меток. Третья кнопка может использоваться для удаления последней добавленной метки, но только если метки не расположены в строку. В качестве альтернативы, можно использовать клавиатуру для выбора местоположений меток (ввод для завершения размещения меток, удаление или backspace действуют как третья кнопка мыши, а любая другая клавиша выберет местоположение метки).manual также может быть итерируемым объектом кортежей x,y. Метки контуров будут создаваться так, как будто мышь щелкает в каждом из положений x,y.
-
rightside_up : bool, optional -
Если
True, повороты меток всегда будут на плюс или минус 90 градусов от уровня. По умолчаниюTrue. -
use_clabeltext : bool, optional -
Если
True, используется классClabelText(вместоText) для создания меток.ClabelTextпересчитывает углы поворота текста во время рисования, поэтому это может быть использовано, если вид осей изменится. По умолчаниюFalse.
Возвращает: - метки
-
Список экземпляров
Textдля меток.
-
-
get_label_coords(distances, XX, YY, ysize, lw)[source] -
Возвращает координаты x, y и индекс местоположения метки.
Метки отображаются в месте с наименьшим отклонением контура от прямой линии, если рядом нет другой метки, в противном случае выбирается следующее лучшее место на контуре. Если все такие кандидаты отклонены, выбирается начало контура.
-
get_label_width(lev, fmt, fsize)[source] -
Возвращает ширину метки в пунктах.
-
get_real_label_width(lev, fmt, fsize)[source] -
Устарело начиная с версии 2.2: Функция get_real_label_width устарела в Matplotlib 2.2 и будет удалена в 3.1.
Это вычисляет фактическую ширину метки на экране. Это использует некоторую магию для определения экранного расширения метки, не нарисованной ранее. Эта магия может быть не очень устойчивой.
Этот метод не используется и может быть изменен или удален.
-
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] -
Возвращает False, если контуры слишком коротки для метки.
-
set_label_props(label, text, color)[source] -
Установить свойства метки — цвет, размер шрифта, текст.
-
too_close(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] -
Базы:
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 = array_like [[x0,y0], [x1,y1], ...]
-
allkinds : None 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:
-
То же, что и уровни для контурных линий; посреди уровней для заполненных контуров. См.
_process_colors().
Отображаются контурные линии или заполненные области в зависимости от того, является ли ключевой аргумент filled
False(по умолчанию) илиTrue.Вызов функции:
ContourSet(ax, levels, allsegs, [allkinds], **kwargs)
Параметры: - ax :
-
Объект
Axesдля отображения. -
levels : [level0, level1, ..., leveln] -
Список чисел с плавающей точкой, указывающих на уровни контуров.
-
allsegs : [level0segs, level1segs, ...] -
Список всех полигональных сегментов для всех уровней. Для контурных линий
len(allsegs) == len(levels), а для заполненных контурных областейlen(allsegs) = len(levels)-1. Списки должны выглядеть так:level0segs = [polygon0, polygon1, ...] polygon0 = array_like [[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()[source] -
Вызовите эту функцию при изменении отображаемого объекта, чтобы уведомить все слушатели обратного вызова SM о сигнале 'changed'.
-
find_nearest_contour(x, y, indices=None, pixel=True)[source] -
Находит контур, ближайший к точке. По умолчанию измеряет расстояние в пикселях (пространство экрана — полезно для ручного маркирования контуров), но это можно контролировать с помощью ключевого аргумента.
Возвращает кортеж, содержащий контур, сегмент, индекс сегмента, x и y точки сегмента и расстояние до минимальной точки.
Необязательные ключевые аргументы:
- indices:
- Индексы уровней контура, которые следует учитывать при поиске ближайшей точки. По умолчанию используются все уровни.
- pixel:
- Если True, измеряется расстояние в пространстве пикселей, в противном случае — в пространстве осей. По умолчанию True.
-
get_alpha()[source] -
Возвращает альфа-значение, которое будет применено ко всем элементам ContourSet.
-
get_transform()[source] -
Возвращает экземпляр
Transform, используемый этим ContourSet.
-
legend_elements(variable_name='x', str_format=<class 'str'>)[source] -
Возвращает список элементов и подписей, подходящих для передачи в
plt.legend(), которые представляют этот ContourSet.Подписи имеют вид «0 < x <= 1», указывающий диапазоны данных, которые представляют элементы.
Параметры: -
variable_name : str -
Строка, используемая внутри неравенства в подписях.
-
str_format : function: float -> str -
Функция форматирования чисел в подписях.
Возвращает: -
artists : List[Artist] -
Список элементов.
-
labels : List[str] -
Список подписей.
-
-
set_alpha(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)
Параметры: - ax :
-
Объект
Axesдля отрисовки. -
levels : [level0, level1, ..., leveln] -
Список чисел с плавающей точкой, указывающих уровни контура.
-
allsegs : [level0segs, level1segs, ...] -
Список всех сегментов полигонов для всех уровней. Для контурных линий
len(allsegs) == len(levels), а для заполненных областей контураlen(allsegs) = len(levels)-1. Списка должны выглядеть следующим образом:level0segs = [polygon0, polygon1, ...] polygon0 = array_like [[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.0.0/api/contour_api.html