Spec-Zone.ru › Matplotlib 3.6

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=None, **kwargs)[source]

Базовый класс: Text

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

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

Текст выравнивается относительно точки привязки (x, y) в соответствии с horizontalalignment (по умолчанию: 'слева') и verticalalignment (по умолчанию: 'снизу'). См. также Выравнивание текста.

Хотя Text принимает ключевое слово 'label', по умолчанию оно не добавляется в легенду.

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

Свойство

Описание

agg_filter

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

alpha

скаляр или None

animated

булево значение

backgroundcolor

цвет

bbox

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

clip_box

неизвестно

clip_on

неизвестно

clip_path

неизвестно

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

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

in_layout

булево значение

label

объект

linespacing

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

math_fontfamily

строка

mouseover

булево значение

multialignment или ma

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

parse_math

булево значение

path_effects

AbstractPathEffect

picker

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

position

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

rasterized

булево значение

rotation

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

rotation_mode

{None, 'default', 'anchor'}

sketch_params

(масштаб: число с плавающей точкой, длина: число с плавающей точкой, случайность: число с плавающей точкой)

snap

булево значение или None

text

объект

transform

Transform

transform_rotates_text

булево значение

url

строка

usetex

булево значение или None

verticalalignment или va

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

visible

булево значение

wrap

булево значение

x

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

y

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

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>, mouseover=<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

bool

backgroundcolor

цвет

bbox

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

clip_box

Bbox

clip_on

bool

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

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

in_layout

bool

label

объект

linespacing

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

math_fontfamily

строка

mouseover

bool

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

строка

usetex

bool или None

verticalalignment или va

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

visible

bool

wrap

bool

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) от центральной точки для определения угла поворота и, при необходимости, разрыва контура.

END_OF_DOCUMENT_MARKER
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)

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

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

Цвета меток:

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

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

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

Расстояние в пикселях, которое необходимо оставить по обеим сторонам метки при размещении inline.

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

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

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

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

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

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

Если True, метки контура будут размещаться вручную с помощью щелчков мыши. Щелкните первую кнопку рядом с контуром, чтобы добавить метку, щелкните вторую кнопку (или, возможно, обе кнопки мыши одновременно), чтобы закончить добавление меток. Третья кнопка может использоваться для удаления последней добавленной метки, но только если метки не расположены inline. В качестве альтернативы, можно использовать клавиатуру для выбора расположения меток (enter для завершения размещения меток, delete или 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 меток контура.

Возвращает:
labels

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

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, negative_linestyles=None, **kwargs)[source]

Основы: ScalarMappable, 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 или [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

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

levelsмассив

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

layersмассив

То же, что и levels для контурных линий; середина между уровнями для заполненных контуров. См. ContourSet._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, ...], необязательно

Необязательный список всех типов вершин многоугольника (кодовые типы), как описано и используется в 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, negative_linestyles=None, **kwargs)[source]

Базируется на ContourSet

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

Этот класс обычно не создается напрямую пользователем, а создается contour и contourf.

Атрибуты:
axAxes

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

collectionssilent_list объектов PathCollection

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

levelsмассив

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

layersмассив

То же, что и levels для линий контура; половина между уровнями для заполненных контуров. См. 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, ...], optional

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

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

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

**kwargs

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

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

Spec-Zone.ru

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