Spec-Zone.ru › Matplotlib 3.5

matplotlib.contour

Классы для поддержки построения и маркировки контуров для класса Axes.

classmatplotlib.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, *, parse_math=True, **kwargs)[source]

Bases: matplotlib.text.Text

В отличие от обычного текста, get_rotation возвращает обновленный угол в пиксельных координатах, предполагая, что входной поворот — это угол в координатах данных (или любом заданном преобразовании).

Создаёт экземпляр Text в точке x, y со строкой text.

Допустимые ключевые аргументы:

Свойство

Описание

agg_filter

функция фильтра, которая принимает массив float (m, n, 3) и значение dpi, и возвращает массив (m, n, 3)

alpha

скаляр или None

animated

bool

backgroundcolor

цвет

bbox

словарь свойств для patches.FancyBboxPatch

clip_box

неизвестно

clip_on

неизвестно

clip_path

неизвестно

color или c

цвет

figure

Figure

fontfamily или family

{FONTNAME, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'}

fontproperties или font или font_properties

font_manager.FontProperties или str или pathlib.Path

fontsize или 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

строка (str)

horizontalalignment или ha

{'center', 'right', 'left'}

in_layout

bool

label

объект

linespacing

числовое значение (кратное размеру шрифта)

math_fontfamily

строка (str)

multialignment или ma

{'left', 'right', 'center'}

parse_math

bool

path_effects

AbstractPathEffect

picker

None или bool или числовое значение или вызываемый объект

position

(число, число)

rasterized

bool

rotation

числовое значение или {'vertical', 'horizontal'}

rotation_mode

{None, 'default', 'anchor'}

sketch_params

(масштаб: число, длина: число, случайность: число)

snap

bool или None

text

объект

transform

Transform

transform_rotates_text

bool

url

строка (str)

usetex

bool или None

verticalalignment или va

{'center', 'top', 'bottom', 'baseline', 'center_baseline'}

visible

bool

wrap

bool

x

числовое значение (float)

y

числовое значение (float)

zorder

вещественное число

get_rotation()[source]

Возвращает угол текста в градусах в диапазоне от 0 до 360.

set(*, agg_filter=<UNSET>, alpha=<UNSET>, animated=<UNSET>, backgroundcolor=<UNSET>, bbox=<UNSET>, clip_box=<UNSET>, clip_on=<UNSET>, clip_path=<UNSET>, color=<UNSET>, fontfamily=<UNSET>, fontproperties=<UNSET>, fontsize=<UNSET>, fontstretch=<UNSET>, fontstyle=<UNSET>, fontvariant=<UNSET>, fontweight=<UNSET>, gid=<UNSET>, horizontalalignment=<UNSET>, in_layout=<UNSET>, label=<UNSET>, linespacing=<UNSET>, math_fontfamily=<UNSET>, multialignment=<UNSET>, parse_math=<UNSET>, path_effects=<UNSET>, picker=<UNSET>, position=<UNSET>, rasterized=<UNSET>, rotation=<UNSET>, rotation_mode=<UNSET>, sketch_params=<UNSET>, snap=<UNSET>, text=<UNSET>, transform=<UNSET>, transform_rotates_text=<UNSET>, url=<UNSET>, usetex=<UNSET>, verticalalignment=<UNSET>, visible=<UNSET>, wrap=<UNSET>, x=<UNSET>, y=<UNSET>, zorder=<UNSET>)[source]

Установить сразу несколько свойств.

Поддерживаемые свойства:

Свойство

Описание

agg_filter

функция фильтра, которая принимает массив чисел с плавающей запятой (m, n, 3) и значение dpi, а возвращает массив чисел с плавающей запятой (m, n, 3)

alpha

скаляр или None

animated

логическое значение

backgroundcolor

цвет

bbox

словарь со свойствами для patches.FancyBboxPatch

clip_box

Bbox

clip_on

логическое значение

clip_path

Объект Patch или (Path, Transform) или None

color или c

цвет

figure

Figure

fontfamily или family

{имя_шрифта, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'}

fontproperties или font или font_properties

font_manager.FontProperties или str или pathlib.Path

fontsize или 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

число с плавающей запятой (кратное размеру шрифта)

math_fontfamily

строка

multialignment или ma

{'left', 'right', 'center'}

parse_math

логическое значение

path_effects

AbstractPathEffect

picker

None или логическое значение или число с плавающей запятой или вызываемая функция

position

(число с плавающей запятой, число с плавающей запятой)

rasterized

логическое значение

rotation

число с плавающей запятой или {'vertical', 'horizontal'}

rotation_mode

{None, 'default', 'anchor'}

sketch_params

(scale: число с плавающей запятой, length: число с плавающей запятой, randomness: число с плавающей запятой)

snap

логическое значение или None

text

объект

transform

Transform

transform_rotates_text

логическое значение

url

строка

usetex

логическое значение или None

verticalalignment или va

{'center', 'top', 'bottom', 'baseline', 'center_baseline'}

visible

логическое значение

wrap

логическое значение

x

число с плавающей запятой

y

вещественное число

zorder

вещественное число

classmatplotlib.contour.ContourLabeler[source]

Bases: 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, yвещественное число

Приблизительное расположение подписи.

inlineлогическое значение, по умолчанию: True

Если True, удаляет сегмент контура под подписью.

inline_spacingцелое число, по умолчанию: 5

Отступ в пикселях по обе стороны от подписи при размещении подписи в строке. Этот отступ будет точным для подписей в местах, где контур прямой, и менее точным для подписей на кривых контурах.

transformTransform или 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 (который наследуется от этого класса-миксина).

Параметры
levelsмассив-подобный объект, необязательно

Список значений уровней, которые должны быть подписаны. Список должен быть подмножеством cs.levels. Если не задан, все уровни подписываются.

fontsizeстрока или число с плавающей точкой, по умолчанию: rcParams["font.size"] (по умолчанию: 10.0)

Размер в пунктах или относительный размер, например, 'меньше', 'очень-большой'. Смотрите Text.set_size для принятых строковых значений.

colorsцвет или цвета или None, по умолчанию: None

Цвета подписей:

  • Если None, цвет каждой подписи соответствует цвету соответствующего контура.
  • Если одна строка цвета, например, colors = 'r' или colors = 'red', все подписи будут нарисованы этим цветом.
  • Если кортеж цветов (строка, число с плавающей точкой, RGB и т.д.), разные подписи будут нарисованы разными цветами в указанном порядке.
inlineбулево значение, по умолчанию: True

Если True подлежащий контур удаляется там, где размещается подпись.

inline_spacingчисло с плавающей точкой, по умолчанию: 5

Пробел в пикселях, оставляемый по обеим сторонам подписи при размещении встроеным способом.

Этот интервал будет точным для подписей в местах, где контур прямой, менее точным для подписей на кривых контурах.

fmtFormatter или строка или вызываемый объект или словарь, необязательно

Как форматируются уровни:

  • Если Formatter, он используется для форматирования всех уровней сразу, используя его метод Formatter.format_ticks.
  • Если строка, она интерпретируется как строка формата стиля %-.
  • Если вызываемый объект, он вызывается с одним уровнем за раз и должен возвращать соответствующую подпись.
  • Если словарь, он должен напрямую сопоставлять уровни с подписями.

По умолчанию используется стандартный ScalarFormatter.

manualбулево или итерируемый объект, по умолчанию: False

Если True, подписи контура будут размещаться вручную с помощью щелчков мыши. Нажмите левую кнопку мыши рядом с контуром, чтобы добавить подпись, нажмите среднюю кнопку (или, возможно, обе кнопки мыши одновременно), чтобы закончить добавление подписей. Третья кнопка может использоваться для удаления последней добавленной подписи, но только если подписи не встроены. В качестве альтернативы, можно использовать клавиатуру для выбора мест расположения подписей (ввод для завершения размещения подписей, клавиши delete или backspace действуют как третья кнопка мыши, а любая другая клавиша выберет место расположения подписи).

manual также может быть итерируемым объектом кортежей (x, y). Подписи контура будут созданы так, как будто щелчок мыши происходил в каждой позиции (x, y).

rightside_upбулево значение, по умолчанию: True

Если True, повороты подписей всегда будут плюс или минус 90 градусов от уровня.

use_clabeltextбулево значение, по умолчанию: False

Если True, используется класс ClabelText (вместо Text), чтобы создать подписи. ClabelText пересчитывает углы поворота текстов во время отрисовки, поэтому это можно использовать, если аспект осей изменяется.

zorderчисло с плавающей точкой или None, по умолчанию: (2 + contour.get_zorder())

zorder подписей контура.

Возвращает
labels

Список экземпляров Text для подписей.

get_label_coords(distances, XX, YY, ysize, lw)[source]

[Устаревшее] Возвращает координаты x, y и индекс местоположения подписи.

Подписи отображаются в месте с наименьшим отклонением контура от прямой линии, если рядом нет другой подписи, в этом случае выбирается следующее лучшее место на контуре. Если все такие кандидаты отклоняются, выбирается начало контура.

Примечания

Устарело начиная с версии 3.4.

get_label_width(lev, fmt, fsize)[source]

[Устаревшее] Возвращает ширину подписи в пунктах.

Примечания

Устарело начиная с версии 3.5.

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]

Возвращает, находится ли метка слишком близко к этому месту.

classmatplotlib.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]

Базы: matplotlib.cm.ScalarMappable, matplotlib.contour.ContourLabeler

Хранит набор контурных линий или заполненных областей.

Метод, вызываемый пользователем: clabel

Параметры
axAxes
levels[уровень0, уровень1, ..., уровеньn]

Список чисел с плавающей точкой, указывающий уровни контура.

allsegs[level0segs, level1segs, ...]

Список всех сегментов многоугольников для всех уровней. Для контурных линий len(allsegs) == len(levels), а для заполненных контурных областей len(allsegs) = len(levels)-1. Списка должны выглядеть следующим образом

level0segs = [polygon0, polygon1, ...]
polygon0 = [[x0, y0], [x1, y1], ...]
allkindsNone или [level0kinds, level1kinds, ...]

Необязательный список всех типов вершин многоугольников (кодовые типы), как описано и используется в Path. Это используется для разрешения многосвязных путей, таких как отверстия внутри заполненных многоугольников. Если не None, len(allkinds) == len(allsegs). Списка должны выглядеть следующим образом

level0kinds = [polygon0kinds, ...]
polygon0kinds = [vertexcode0, vertexcode1, ...]

Если allkinds не None, обычно все многоугольники для определённого уровня контура группируются вместе, так что level0segs = [polygon0] и level0kinds = [polygon0kinds].

**kwargs

Ключевые аргументы описаны в строке документации contour.

Атрибуты
axAxes

Объект Axes, на котором отображаются контуры.

collectionssilent_list из PathCollection

Artists, представляющие контур. Это список PathCollections для контурных линий и заполненных контуров.

levelsмассив

Значения уровней контура.

layersмассив

То же, что и levels для контурных линий; посередине между уровнями для заполненных контуров. См. ContourSet._process_colors.

Отрисовывает контурные линии или заполненные области в зависимости от того, является ли ключевой аргумент filled False (по умолчанию) или True.

Вызов функции:

ContourSet(ax, levels, allsegs, [allkinds], **kwargs)
Параметры
axAxes

Объект Axes для отрисовки.

levels[уровень0, уровень1, ..., уровеньn]

Список чисел с плавающей точкой, указывающий уровни контура.

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.

changed()[source]

Вызовите этот метод всякий раз, когда изменяется объект отображения, чтобы уведомить всех слушателей обратного вызова SM о событии 'changed'.

find_nearest_contour(x, y, indices=None, pixel=True)[source]

Найдите точку на графике контуров, которая наиболее близка к (x, y).

Параметры
x, yfloat

Точка отсчёта.

indicesсписок целых чисел или None, по умолчанию: None

Индексы уровней контура для рассмотрения. Если None (по умолчанию), рассматриваются все уровни.

pixelbool, по умолчанию: True

Если True, измеряется расстояние в пикселях (на экране), что полезно для ручного контурного выделения; иначе измеряется расстояние в пространстве осей.

Возвращаемые значения
contourCollection

Контур, который наиболее близок к (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.

legend_elements(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(alpha)[source]

Устанавливает значение альфа-смешивания для всех элементов ContourSet. alpha должно быть в диапазоне от 0 (прозрачный) до 1 (непрозрачный).

classmatplotlib.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.

Атрибуты
axAxes

Объект Axes, на котором нарисованы контуры.

collectionssilent_list из PathCollection

Элементы Artist, представляющие контур. Это список PathCollection для линий и заполненных контуров.

levelsмассив

Значения уровней контура.

layersмассив

То же, что и уровни, для линий контура; половина между уровнями для заполненных контуров. См. ContourSet._process_colors.

Рисует контурные линии или заполненные области, в зависимости от того, является ли ключевое слово filled False (по умолчанию) или True.

Вызов:

ContourSet(ax, levels, allsegs, [allkinds], **kwargs)
Параметры
axAxes

Объект Axes, на котором нужно нарисовать контуры.

levels[level0, level1, ..., leveln]

Список чисел с плавающей точкой, указывающих уровни контура.

allsegs[level0segs, level1segs, ...]

Список всех сегментов многоугольников для всех levels. Для линий контура 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.

© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.5.1/api/contour_api.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API