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 возвращает обновлённый угол в пиксельных координатах, предполагая, что входной поворот является углом в координатах данных (или любым установленным преобразованием).
Примечания
Устарело начиная с версии 3.7: Используйте Text.set_transform_rotates_text вместо этого.
Создаёт экземпляр
Textв точке x, y со строкой text.Текст выравнивается относительно точки якоря (x, y) в соответствии с
horizontalalignment(по умолчанию: 'left') иverticalalignment(по умолчанию: 'bottom'). См. также Выравнивание текста.Хотя Text принимает ключевое слово 'label', по умолчанию оно не добавляется в обработчики легенды.
Допустимые ключевые аргументы:
Свойство
Описание
функция фильтра, которая принимает массив чисел с плавающей точкой (m, n, 3) и значение dpi, а возвращает массив чисел с плавающей точкой (m, n, 3) и два смещения от нижнего левого угла изображения
скаляр или None
логическое значение
цвет
словарь с свойствами для
patches.FancyBboxPatchнеизвестно
неизвестно
неизвестно
colorили cцвет
fontfamilyили family{FONTNAME, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'}
fontpropertiesили font или font_propertiesfontsizeили 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'}
строка
horizontalalignmentили ha{'left', 'center', 'right'}
логическое значение
объект
число с плавающей точкой (кратное размеру шрифта)
строка
логическое значение
multialignmentили ma{'left', 'right', 'center'}
логическое значение
None или логическое значение или число с плавающей точкой или вызываемая функция
(число с плавающей точкой, число с плавающей точкой)
логическое значение
число с плавающей точкой или {'vertical', 'horizontal'}
{None, 'default', 'anchor'}
(scale: число с плавающей точкой, length: число с плавающей точкой, randomness: число с плавающей точкой)
логическое значение или None
объект
логическое значение
строка
логическое значение или None
verticalalignmentили va{'bottom', 'baseline', 'center', 'center_baseline', 'top'}
логическое значение
логическое значение
число с плавающей точкой
вещественное число
вещественное число
- 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]
-
Установка нескольких свойств сразу.
Поддерживаемые свойства
Свойство
Описание
функция-фильтр, которая принимает массив float размером (m, n, 3) и значение dpi, и возвращает массив (m, n, 3) и два смещения от левого нижнего угла изображения
скаляр или None
bool
цвет
словарь с свойствами для
patches.FancyBboxPatchbool
Объект Patch или (Path, Transform) или None
colorили cцвет
fontfamilyили family{шрифт, 'serif', 'sans-serif', 'cursive', 'fantasy', 'monospace'}
fontpropertiesили font или font_propertiesfontsizeили 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'}
строка
horizontalalignmentили ha{'left', 'center', 'right'}
bool
объект
числовое значение (кратное размеру шрифта)
строка
bool
multialignmentили ma{'left', 'right', 'center'}
bool
None или bool или число с плавающей точкой или вызываемая функция
(число с плавающей точкой, число с плавающей точкой)
bool
число с плавающей точкой или {'vertical', 'horizontal'}
{None, 'default', 'anchor'}
(scale: число с плавающей точкой, length: число с плавающей точкой, randomness: число с плавающей точкой)
bool или None
объект
bool
строка
bool или None
verticalalignmentили va{'bottom', 'baseline', 'center', 'center_baseline', 'top'}
bool
bool
- classmatplotlib.contour.ContourLabeler[source]
-
Bases:
objectКомпонент, предоставляющий возможности подписи для
ContourSet.- add_label(x, y, rotation, lev, cvalue)[source]
-
Добавление метки контура без
Text.set_transform_rotates_text.
- add_label_clabeltext(x, y, rotation, lev, cvalue)[source]
-
Добавление метки контура с
Text.set_transform_rotates_text.
- 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. Если не указано, все уровни подписаны. -
fontsizestr или float, по умолчанию:
rcParams["font.size"](по умолчанию:10.0) -
Размер в пунктах или относительный размер, например, 'smaller', 'x-large'. Смотрите
Text.set_sizeдля допустимых строковых значений. - colorsцвет или цвета или None, по умолчанию: None
-
Цвета подписи:
- Если None, цвет каждой подписи соответствует цвету соответствующего контура.
- Если один строковый цвет, например, colors = 'r' или colors = 'red', все подписи будут отображаться в этом цвете.
- Если кортеж цветов (строка, число с плавающей точкой, rgb и т. д.), разные подписи будут отображаться в разных цветах в указанном порядке.
- inlinebool, по умолчанию: True
-
Если
Trueудаляется лежащий в основе контур, где размещена подпись. - inline_spacingfloat, по умолчанию: 5
-
Отступ в пикселях, который следует оставить с каждой стороны подписи при размещении внутри.
Этот отступ будет точным для подписей в местах, где контур прямой, менее точным для подписей на кривых контурах.
-
fmt
Formatterили str или callable или dict, необязательно -
Как форматируются уровни:
- Если
Formatter, он используется для форматирования всех уровней сразу, используя свой методFormatter.format_ticks. - Если str, он интерпретируется как строка форматирования в стиле %-.
- Если callable, он вызывается с одним уровнем за раз и должен возвращать соответствующую подпись.
- Если dict, он должен напрямую сопоставлять уровни с подписями.
По умолчанию используется стандартный
ScalarFormatter. - Если
- manualbool или iterable, по умолчанию: False
-
Если
True, подписи контуров будут размещены вручную с помощью щелчков мыши. Щелкните левой кнопкой мыши возле контура, чтобы добавить подпись, щелкните правой кнопкой мыши (или, возможно, обеими кнопками мыши одновременно), чтобы закончить добавление подписей. Третью кнопку можно использовать для удаления последней добавленной подписи, но только если подписи не находятся на одной прямой. В качестве альтернативы можно использовать клавиатуру для выбора мест расположения подписей (ввод для завершения размещения подписей, клавиши Delete или Backspace действуют как третья кнопка мыши, а любая другая клавиша выберет место расположения подписи).manual также может быть итерируемым объектом кортежей (x, y). Подписи контуров будут созданы так, как будто по каждой позиции (x, y) щелкнули мышью.
- rightside_upbool, по умолчанию: True
-
Если
True, повороты подписей всегда будут плюс или минус 90 градусов от уровня. - use_clabeltextbool, по умолчанию: False
-
Если
True, использоватьText.set_transform_rotates_textдля обеспечения обновления поворота подписи всякий раз, когда меняется аспект осей. -
zorderfloat или None, по умолчанию:
(2 + contour.get_zorder()) -
zorder подписей контура.
- Возвращает:
-
- labels
-
Список экземпляров
Textдля подписей.
- get_text(lev, fmt)[source]
-
Получить текст подписи.
- propertylabelFontProps[source]
-
[Устарело]
Примечания
Устарело начиная с версии 3.7: Используйте cs.labelTexts[0].get_font() вместо этого.
- propertylabelFontSizeList[source]
-
[Устарело]
Примечания
Устарело начиная с версии 3.7: Используйте [cs.labelTexts[0].get_font().get_size()] * len(cs.labelLevelList) вместо этого.
- propertylabelTextsList[source]
-
[Устарело]
Примечания
Устарело начиная с версии 3.7: Используйте cs.labelTexts вместо этого.
- labels(inline, inline_spacing)[source]
- locate_label(linecontour, labelwidth)[source]
-
Находит подходящее место для размещения подписи (относительно плоская часть контура).
- pop_label(index=-1)[source]
-
По умолчанию удаляет последнюю подпись, но можно указать любой индекс
- print_label(linecontour, labelwidth)[source]
-
Возвращает, достаточно ли длинный контур для размещения подписи.
- remove()[source]
- set_label_props(label, text, color)[source]
-
[Устарело] Установка свойств метки — цвет, размер шрифта, текст.
Примечания
Устарело начиная с версии 3.7: Используйте метод Artist.set.
- 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- Параметры:
-
-
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
- Атрибуты:
-
-
ax
Axes -
Объект Axes, в котором отображаются контуры.
-
collections
silent_listизPathCollection -
Объекты
Artist, представляющие контур. Это списокPathCollectionдля линий и заполненных контуров. - levelsмассив
-
Значения уровней контура.
- layersмассив
-
То же, что и уровни для линий контура; посередине между уровнями для заполненных контуров. См.
ContourSet._process_colors.
-
ax
Отображает контурные линии или заполненные области, в зависимости от того, является ли ключевой аргумент 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]
-
Вызовите этот метод всякий раз, когда карта изменяется, чтобы уведомить всех слушателей обратного вызова 'changed' сигналов.
- find_nearest_contour(x, y, indices=None, pixel=True)[source]
-
Находит точку на контурном графике, которая находится ближе всего к
(x, y).Этот метод не поддерживает заполненные контуры.
- Параметры:
-
- x, yfloat
-
Точка отсчета.
- 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).
-
contour
- get_alpha()[source]
-
Возвращает альфа-значение, которое применяется ко всем объектам ContourSet.
- get_transform()[source]
-
Возвращает экземпляр
Transform, используемый этим ContourSet.
- legend_elements(variable_name='x', str_format=<class 'str'>)[source]
-
Возвращает список элементов и подписей, подходящих для передачи в
legend, которые представляют этот ContourSet.Подписи имеют вид «0 < variable_name> 1», указывая диапазоны данных, которые представляют элементы.
- Параметры:
-
- variable_namestr
-
Строка, используемая внутри неравенства в подписях.
- str_formatфункция: float -> str
-
Функция, используемая для форматирования чисел в подписях.
- Возвращаемое значение:
-
-
artistslist[
Artist] -
Список элементов.
- labelslist[str]
-
Список подписей.
-
artistslist[
- remove()[source]
- 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.- Атрибуты:
-
-
ax
Axes -
Объект Axes, на котором отрисовываются контуры.
-
collections
silent_listизPathCollection -
Элементы
Artist, представляющие контур. Это списокPathCollectionдля контурных линий и заполненных контуров. - levelsмассив
-
Значения уровней контура.
- layersмассив
-
То же, что и levels для контурных линий; середина между уровнями для заполненных контуров. См.
ContourSet._process_colors.
-
ax
Отрисовывает контурные линии или заполненные области в зависимости от того, установлено ли ключевое слово 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–2023 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.7.5/api/contour_api.html