matplotlib.offsetbox
Классы контейнеров для Artist.
-
OffsetBox - Базовый класс всех контейнерных элементов графического отображения, определённых в данном модуле.
-
AnchoredOffsetbox,AnchoredText - Якорное и выравнивание произвольного
Artistили текста относительно родительских осей или определённой точки якорной точки. -
DrawingArea - Контейнер с фиксированной шириной и высотой. Дочерние элементы имеют фиксированное положение внутри контейнера и могут быть обрезаны.
-
HPacker,VPacker - Контейнеры для размещения дочерних элементов вертикально или горизонтально.
-
PaddedBox - Контейнер для добавления отступа вокруг
Artist. -
TextArea - Содержит единственный элемент
Text.
-
class matplotlib.offsetbox.AnchoredOffsetbox(loc, pad=0.4, borderpad=0.5, child=None, prop=None, frameon=True, bbox_to_anchor=None, bbox_transform=None, **kwargs)[source] -
Bases:
matplotlib.offsetbox.OffsetBoxБлок смещения, размещённый в соответствии с местоположением loc.
AnchoredOffsetbox имеет один дочерний элемент. Если необходимо несколько дочерних элементов, используйте дополнительный OffsetBox для их объединения. По умолчанию блок смещения привязан к родительским осям. Вы можете явно указать bbox_to_anchor.
Параметры: -
locstr -
Местоположение блока. Поддерживаемые значения:
- 'верхний правый'
- 'верхний левый'
- 'нижний левый'
- 'нижний правый'
- 'центр слева'
- 'центр справа'
- 'нижний центр'
- 'верхний центр'
- 'центр'
Для обратной совместимости принимаются и числовые значения. См. параметр loc в
Legendдля получения подробностей. -
padfloat, default: 0.4 -
Отступ вокруг дочернего элемента в долях от размера шрифта.
-
borderpadfloat, default: 0.5 -
Отступ между рамкой offsetbox и bbox_to_anchor.
-
childOffsetBox -
Блок, который будет привязан.
-
propFontProperties -
Используется только как ссылка для отступов. Если не указано, используется
rcParams["legend.fontsize"](по умолчанию:'medium'). -
frameonbool -
Рисовать ли рамку вокруг блока.
-
bbox_to_anchorBboxBase, 2-tuple, or 4-tuple of floats -
Блок, используемый для позиционирования легенды совместно с loc.
-
bbox_transformNone or matplotlib.transforms.Transform -
Преобразование для области ограничивающей рамки (bbox_to_anchor).
- **kwargs
-
Все остальные параметры передаются в
OffsetBox.
Примечания
См.
Legendдля подробного описания механизма привязки.-
codes = {'center': 10, 'center left': 6, 'center right': 7, 'lower center': 8, 'lower left': 3, 'lower right': 4, 'right': 5, 'upper center': 9, 'upper left': 2, 'upper right': 1}
-
draw(self, renderer)[source] -
Обновить положение дочерних элементов при необходимости и нарисовать их в данном renderer.
-
get_bbox_to_anchor(self)[source] -
Возвращает область ограничивающую рамку, к которой привязан блок.
-
get_child(self)[source] -
Возвращает дочерний элемент.
-
get_children(self)[source] -
Возвращает список дочерних элементов.
-
get_extent(self, renderer)[source] -
Возвращает область блока как (ширина, высота, x, y).
Это область дочернего элемента плюс отступ.
-
get_window_extent(self, renderer)[source] -
Возвращает ограничивающую рамку в пространстве отображения.
-
set_bbox_to_anchor(self, bbox, transform=None)[source] -
Устанавливает область ограничивающую рамку, к которой привязан блок.
bbox может быть экземпляром Bbox, списком [левый, нижний, ширина, высота] или списком [левый, нижний], где ширина и высота предполагаются нулевыми. Область ограничивающей рамки будет преобразована в координаты отображения с помощью заданного преобразования.
-
set_child(self, child)[source] -
Устанавливает дочерний элемент, который будет привязан.
-
update_frame(self, bbox, fontsize=None)[source]
-
zorder = 5
-
-
class matplotlib.offsetbox.AnchoredText(s, loc, pad=0.4, borderpad=0.5, prop=None, **kwargs)[source] -
Bases:
matplotlib.offsetbox.AnchoredOffsetboxAnchoredOffsetbox с текстом.
Параметры: -
sstr -
Текст.
-
locstr -
Код расположения. См.
AnchoredOffsetbox. -
padfloat, default: 0.4 -
Отступ вокруг текста как доля размера шрифта.
-
borderpadfloat, default: 0.5 -
Отступ между рамкой offsetbox и bbox_to_anchor.
-
propdict, optional -
Словарь ключевых параметров, которые будут переданы экземпляру
Textвнутри AnchoredText. - **kwargs
-
Все остальные параметры передаются
AnchoredOffsetbox.
-
-
class matplotlib.offsetbox.AnnotationBbox(offsetbox, xy, xybox=None, xycoords='data', boxcoords=None, frameon=True, pad=0.4, annotation_clip=None, box_alignment=0.5, 0.5, bboxprops=None, arrowprops=None, fontsize=None, **kwargs)[source] -
Bases:
matplotlib.artist.Artist,matplotlib.text._AnnotationBaseКонтейнер для
OffsetBox, ссылающегося на определённую позицию xy.Можно также нарисовать стрелку, указывающую от offsetbox к xy.
Это похоже на
Annotation, но сOffsetBoxвместоText.Параметры: -
offsetboxOffsetBox -
xy(float, float) -
Точка (x, y) для аннотации. Система координат определяется xycoords.
-
xybox(float, float), default: xy -
Позиция (x, y) для размещения текста. Система координат определяется boxcoords.
-
xycoordsstr or Artist or Transform or callable or (float, float), default: 'data' -
Система координат, в которой заданы xy. Подробное описание см. в параметре xycoords в
Annotation. -
boxcoordsstr or Artist or Transform or callable or (float, float), default: value of xycoords -
Система координат, в которой заданы xybox. Подробное описание см. в параметре textcoords в
Annotation. -
frameonbool, default: True -
Отрисовать ли рамку вокруг ячейки.
-
padfloat, default: 0.4 -
Отступ вокруг offsetbox.
-
box_alignment(float, float) -
Кортеж из двух чисел с плавающей точкой для вертикального и горизонтального выравнивания offsetbox относительно boxcoords. Левый нижний угол — (0, 0), правый верхний — (1, 1).
- **kwargs
-
Другие параметры идентичны
Annotation.
-
property anncoords
-
contains(self, mouseevent)[source] -
Проверка, содержит ли элемент графический объект событие мыши.
Параметры: -
mouseeventmatplotlib.backend_bases.MouseEvent
Возвращает: -
containsbool -
Содержатся ли какие-либо значения в радиусе.
-
detailsdict -
Словарь, специфичный для графического объекта, с подробными сведениями о контексте события, например, о том, какие точки содержатся в радиусе выбора. Подробности см. в отдельных подклассах графических объектов.
-
-
draw(self, renderer)[source] -
Отрисовка графического объекта (и его дочерних элементов) с помощью заданного рендерера.
Если графический объект не отображается (
Artist.get_visibleвозвращает False), это не имеет никакого эффекта.Параметры: -
rendererRendererBase subclass.
Примечания
Этот метод переопределён в подклассах графических объектов.
-
-
get_fontsize(self, s=<deprecated parameter>)[source] -
Возвращает размер шрифта в пунктах.
-
get_tightbbox(self, renderer)[source] -
Получение плотного ограничивающего прямоугольника в пространстве отображения.
-
get_window_extent(self, renderer)[source] -
Получение ограничивающего прямоугольника в пространстве отображения.
-
set_figure(self, fig)[source] -
Установка экземпляра
Figure, к которому относится графический объект.Параметры: -
figFigure
-
-
set_fontsize(self, s=None)[source] -
Установка размера шрифта в пунктах.
Если s не задано, сбросить до
rcParams["legend.fontsize"](по умолчанию:'medium').
-
update_positions(self, renderer)[source] -
Обновление пиксельных позиций аннотируемой точки и текста.
-
property xyann
-
zorder = 3
-
-
class matplotlib.offsetbox.AuxTransformBox(aux_transform)[source] -
Bases:
matplotlib.offsetbox.OffsetBoxОбъект смещения с aux_transform. Его дочерние элементы будут преобразовываться с помощью aux_transform сначала, а затем будут смещены. Абсолютные координаты aux_transform подразумеваются, так как они будут автоматически корректироваться таким образом, чтобы левая нижняя вершина ограничивающего прямоугольника дочерних элементов устанавливалась в (0, 0) перед применением трансформации смещения.
Он похож на область рисования, за исключением того, что границы рамки не предопределены, а рассчитываются на основе границ окна её дочерних элементов. Кроме того, границы дочерних элементов будут рассчитываться в преобразованных координатах.
-
add_artist(self, a)[source] -
Добавить
Artistв контейнерный объект.
-
draw(self, renderer)[source] -
Обновить положение дочерних элементов при необходимости и нарисовать их на заданном renderer.
-
get_extent(self, renderer)[source] -
Возвращает кортеж
width, height, xdescent, ydescentрамки.
-
get_offset(self)[source] -
Возвращает смещение контейнера.
-
get_transform(self)[source] -
Возвращает
Transform, применяемый к дочерним элементам.
-
get_window_extent(self, renderer)[source] -
Возвращает ограничивающий прямоугольник в пространстве отображения.
-
set_offset(self, xy)[source] -
Устанавливает смещение контейнера.
Параметры: -
xy(float, float) -
Координаты смещения (x, y) в единицах отображения.
-
-
set_transform(self, t)[source] -
set_transform игнорируется.
-
-
class matplotlib.offsetbox.DraggableAnnotation(annotation, use_blit=False)[source] -
Bases:
matplotlib.offsetbox.DraggableBase-
save_offset(self)[source]
-
update_offset(self, dx, dy)[source]
-
-
class matplotlib.offsetbox.DraggableBase(ref_artist, use_blit=False)[source] -
Bases:
objectБазовый вспомогательный класс для изменяемого по положению объекта (легенда, offsetbox).
Производные классы должны переопределить следующие методы:
def save_offset(self): ''' Called when the object is picked for dragging; should save the reference position of the artist. ''' def update_offset(self, dx, dy): ''' Called during the dragging; (*dx*, *dy*) is the pixel offset from the point where the mouse drag started. '''По желанию, вы можете переопределить следующие методы:
def finalize_offset(self): '''Called when the mouse is released.'''В текущей реализации
DraggableLegendиDraggableAnnotation,update_offsetпомещает объекты в координаты отображения, аfinalize_offsetпересчитывает их положение в координатах осей и устанавливает соответствующее атрибут.-
artist_picker(self, artist, evt)[source] -
[Устарело]
Примечания
Устарело начиная с версии 3.3:
-
disconnect(self)[source] -
Отключить обратные вызовы.
-
finalize_offset(self)[source]
-
on_motion(self, evt)[source]
-
on_motion_blit(self, evt)[source] -
[Устарело]
Примечания
Устарело начиная с версии 3.3:
-
on_pick(self, evt)[source]
-
on_release(self, event)[source]
-
save_offset(self)[source]
-
update_offset(self, dx, dy)[source]
-
-
class matplotlib.offsetbox.DraggableOffsetBox(ref_artist, offsetbox, use_blit=False)[source] -
Bases:
matplotlib.offsetbox.DraggableBase-
get_loc_in_canvas(self)[source]
-
save_offset(self)[source]
-
update_offset(self, dx, dy)[source]
-
-
class matplotlib.offsetbox.DrawingArea(width, height, xdescent=0.0, ydescent=0.0, clip=False)[source] -
Bases:
matplotlib.offsetbox.OffsetBoxОбласть рисования может содержать любой объект-артист в качестве дочернего элемента. Область рисования имеет фиксированную ширину и высоту. Положение дочерних элементов относительно родительского элемента фиксировано. Дочерние элементы могут быть обрезаны по границам родительского элемента.
Параметры: -
width, heightfloat -
Ширина и высота контейнерной области.
-
xdescent, ydescentfloat -
Спуск области в направлении x и y.
-
clipbool -
Нужно ли обрезать дочерние элементы по области.
-
add_artist(self, a)[source] -
Добавление объекта-артиста
Artistв контейнерную область.
-
property clip_children -
Если дочерние элементы этой области рисования должны быть обрезаны рамкой области рисования.
-
draw(self, renderer)[source] -
Обновление местоположения дочерних элементов при необходимости и вывод их на заданный рендерер.
-
get_extent(self, renderer)[source] -
Возвращает ширину, высоту, xdescent, ydescent области.
-
get_offset(self)[source] -
Возвращает смещение контейнера.
-
get_transform(self)[source] -
Возвращает
Transform, применяемый к дочерним элементам.
-
get_window_extent(self, renderer)[source] -
Возвращает рамку области в пространстве отображения.
-
set_offset(self, xy)[source] -
Установка смещения контейнера.
Параметры: -
xy(float, float) -
Координаты смещения (x, y) в единицах отображения.
-
-
set_transform(self, t)[source] -
set_transform игнорируется.
-
-
class matplotlib.offsetbox.HPacker(pad=None, sep=None, width=None, height=None, align='baseline', mode='fixed', children=None)[source] -
Bases:
matplotlib.offsetbox.PackerBaseЭлементы HPacker упаковываются горизонтально. Он автоматически настраивает относительные позиции дочерних элементов во время отрисовки.
Параметры: -
padfloat, optional -
Поля отступов по границам в пунктах.
-
sepfloat, optional -
Отступ между элементами в пунктах.
-
width, heightfloat, optional -
Ширина и высота контейнерной области в пикселях, вычисляются, если None.
-
align{'top', 'bottom', 'left', 'right', 'center', 'baseline'} -
Выравнивание областей.
-
mode{'fixed', 'expand', 'equal'} -
Режим упаковки.
- 'fixed' упаковывает заданные
Artistsплотно с отступом sep. - 'expand' использует максимальное доступное пространство для распределения объектов-артистов с одинаковым отступом между ними.
- 'equal': Каждый объект-артист занимает равную долю доступного пространства и выравнивается слева (или сверху) в нём.
- 'fixed' упаковывает заданные
-
childrenlist of Artist -
Объекты-артисты для упаковки.
Примечания
pad и sep задаются в пунктах и масштабируются с разрешением рендерера, а width и height — в пикселях.
-
get_extent_offsets(self, renderer)[source] -
Обновление смещения дочерних элементов и возвращение размера области.
Параметры: -
rendererRendererBase subclass
Возвращает: - width
- height
- xdescent
- ydescent
- список пар (xoffset, yoffset)
-
-
-
class matplotlib.offsetbox.OffsetBox(*args, **kwargs)[source] -
Bases:
matplotlib.artist.ArtistЭлемент размещения — это простой контейнерный элемент.
Дочерние элементы должны отображаться по относительному положению к родителю.
В качестве элемента, все параметры передаются
Artist.-
property axes -
Экземпляр
Axes, в котором находится элемент, или None.
-
contains(self, mouseevent)[source] -
Делегирует проверку нажатия мыши дочерним элементам.
В качестве контейнера,
OffsetBoxсам по себе не реагирует на события мыши.Параметры: -
mouseeventmatplotlib.backend_bases.MouseEvent
Возвращает: -
containsbool -
Присутствуют ли какие-либо значения в радиусе.
-
detailsdict -
Словарь, специфичный для элемента, содержащий детали контекста события, такие как точки, содержащиеся в радиусе выбора. Подробности см. в отдельных подклассах элемента.
См. также
-
-
draw(self, renderer)[source] -
Обновляет положение дочерних элементов при необходимости и отображает их в заданном renderer.
-
get_children(self)[source] -
Возвращает список дочерних элементов
Artist.
-
get_extent(self, renderer)[source] -
Возвращает кортеж
width, height, xdescent, ydescentпрямоугольника.
-
get_extent_offsets(self, renderer)[source] -
Обновляет смещение дочерних элементов и возвращает область прямоугольника.
Параметры: -
rendererRendererBase subclass
Возвращает: - ширина
- высота
- смещение_по_x
- смещение_по_y
- список пар (смещение_по_x, смещение_по_y)
-
-
get_offset(self, width, height, xdescent, ydescent, renderer)[source] -
Возвращает смещение в виде кортежа (x, y).
Параметры области должны быть указаны для обработки случаев, когда смещение определяется динамически вызываемым объектом (см.
set_offset).Параметры: - ширина, высота, смещение_по_x, смещение_по_y
-
Параметры области.
-
rendererRendererBase subclass
-
get_visible_children(self)[source] -
Возвращает список видимых дочерних элементов
Artist.
-
get_window_extent(self, renderer)[source] -
Возвращает область прямоугольника (
Bbox) в пространстве отображения.
-
set_figure(self, fig)[source] -
Устанавливает
FigureдляOffsetBoxи всех его дочерних элементов.Параметры: -
figFigure
-
-
set_height(self, height)[source] -
Устанавливает высоту прямоугольника.
Параметры: -
heightfloat
-
-
set_offset(self, xy)[source] -
Устанавливает смещение.
Параметры: -
xy(float, float) or callable -
Координаты смещения (x, y) в единицах отображения. Их можно указать явно как кортеж (x, y) или с помощью функции, преобразующей область в смещение. Эта функция должна иметь следующий синтаксис:
def offset(width, height, xdescent, ydescent, renderer) -> (float, float)
-
-
set_width(self, width)[source] -
Устанавливает ширину прямоугольника.
Параметры: -
widthfloat
-
-
-
class matplotlib.offsetbox.OffsetImage(arr, zoom=1, cmap=None, norm=None, interpolation=None, origin=None, filternorm=True, filterrad=4.0, resample=False, dpi_cor=True, **kwargs)[source] -
Основы:
matplotlib.offsetbox.OffsetBox-
draw(self, renderer)[source] -
Обновляет положение дочерних элементов при необходимости и отрисовывает их в заданном renderer.
-
get_children(self)[source] -
Возвращает список дочерних элементов
Artist.
-
get_data(self)[source]
-
get_extent(self, renderer)[source] -
Возвращает кортеж
width, height, xdescent, ydescentобласти.
-
get_offset(self)[source] -
Возвращает смещение контейнера.
-
get_window_extent(self, renderer)[source] -
Возвращает ограничивающую рамку в пространстве отображения.
-
get_zoom(self)[source]
-
set_data(self, arr)[source]
-
set_zoom(self, zoom)[source]
-
-
class matplotlib.offsetbox.PackerBase(pad=None, sep=None, width=None, height=None, align=None, mode=None, children=None)[source] -
Основы:
matplotlib.offsetbox.OffsetBoxПараметры: -
padfloat, optional -
Отступ границы в пунктах.
-
sepfloat, optional -
Интервал между элементами в пунктах.
-
width, heightfloat, optional -
Ширина и высота контейнерной области в пикселях, вычисляется, если None.
-
align{'top', 'bottom', 'left', 'right', 'center', 'baseline'} -
Выравнивание областей.
-
mode{'fixed', 'expand', 'equal'} -
Режим укладки.
- 'fixed' укладывает заданные
Artistsплотно с интервалом sep. - 'expand' использует максимальную доступную область для распределения объектов с равными интервалами между ними.
- 'equal': Каждый объект занимает равную долю доступного пространства и выравнивается по левому краю (или верхнему краю) в нём.
- 'fixed' укладывает заданные
-
childrenlist of Artist -
Укладываемые объекты.
Примечания
pad и sep указаны в пунктах и будут масштабироваться с разрешением рендерера, в то время как width и height в пикселях и поэтому не масштабируются.
-
-
class matplotlib.offsetbox.PaddedBox(child, pad=None, draw_frame=False, patch_attrs=None)[source] -
Основы:
matplotlib.offsetbox.OffsetBoxКонтейнер для добавления отступа вокруг
Artist.Контейнер
PaddedBoxсодержитFancyBboxPatch, используемый для визуализации при рендеринге.Параметры: -
childArtist -
Вложенный
Artist. -
padfloat -
Отступ в пунктах. Будет масштабироваться с разрешением рендерера. В отличие от width и height, которые указаны в пикселях и поэтому не масштабируются.
-
draw_framebool -
Отрисовывать ли вложенный
FancyBboxPatch. -
patch_attrsdict or None -
Дополнительные параметры, передаваемые вложенному
FancyBboxPatch.
-
draw(self, renderer)[source] -
Обновляет положение дочерних элементов при необходимости и отрисовывает их в заданном renderer.
-
draw_frame(self, renderer)[source]
-
get_extent_offsets(self, renderer)[source] -
Обновляет смещение дочерних элементов и возвращает область контейнера.
Параметры: -
rendererRendererBase subclass
Возвращает: - width
- height
- xdescent
- ydescent
- список пар (xoffset, yoffset)
-
-
update_frame(self, bbox, fontsize=None)[source]
-
-
class matplotlib.offsetbox.TextArea(s, textprops=None, multilinebaseline=None, minimumdescent=True)[source] -
Основы:
matplotlib.offsetbox.OffsetBoxTextArea содержит один экземпляр Text. Текст размещается в координатах (0, 0) с выравниванием по основанию и левому краю. Ширина и высота TextArea соответствуют ширине и высоте его дочернего текста.
Параметры: -
sstr -
Текст для отображения.
-
textpropsdict, optional -
Словарь ключевых параметров, которые будут переданы экземпляру
Textвнутри TextArea. -
multilinebaselinebool, optional -
Если
True, основание многострочного текста корректируется так, чтобы оно (приблизительно) центрировалось относительно однострочного текста. -
minimumdescentbool, optional -
Если
True, размер поля имеет минимальный спуск "p".
-
draw(self, renderer)[source] -
Обновить положение дочерних элементов при необходимости и нарисовать их на заданном renderer.
-
get_extent(self, renderer)[source] -
Возвращает кортеж
width, height, xdescent, ydescentполя.
-
get_minimumdescent(self)[source] -
Получить минимальный спуск.
-
get_multilinebaseline(self)[source] -
Получить multilinebaseline.
-
get_offset(self)[source] -
Возвращает смещение контейнера.
-
get_text(self)[source] -
Возвращает строковое представление текста этого поля.
-
get_window_extent(self, renderer)[source] -
Возвращает область отображения в пространстве отображения.
-
set_minimumdescent(self, t)[source] -
Установить минимальный спуск.
Если True, размер однострочного текста корректируется так, чтобы он имел минимальный спуск "p".
-
set_multilinebaseline(self, t)[source] -
Установить multilinebaseline.
Если True, основание многострочного текста корректируется таким образом, чтобы оно (приблизительно) центрировалось относительно однострочного текста.
-
set_offset(self, xy)[source] -
Установить смещение контейнера.
Параметры: -
xy(float, float) -
Координаты смещения (x, y) в единицах отображения.
-
-
set_text(self, s)[source] -
Установить текст этого поля в виде строки.
-
set_transform(self, t)[source] -
set_transform игнорируется.
-
-
class matplotlib.offsetbox.VPacker(pad=None, sep=None, width=None, height=None, align='baseline', mode='fixed', children=None)[source] -
Основы:
matplotlib.offsetbox.PackerBaseVPacker располагает свои дочерние элементы вертикально. Он автоматически корректирует относительное положение дочерних элементов во время рисования.
Параметры: -
padfloat, optional -
Поля границы в пунктах.
-
sepfloat, optional -
Интервал между элементами в пунктах.
-
width, heightfloat, optional -
Ширина и высота контейнерной области в пикселях, вычисляются, если None.
-
align{'top', 'bottom', 'left', 'right', 'center', 'baseline'} -
Выравнивание полей.
-
mode{'fixed', 'expand', 'equal'} -
Режим упаковки.
- 'fixed' упаковывает заданные
Artistsплотно с интервалом sep. - 'expand' использует максимальное доступное пространство для распределения элементов с одинаковым интервалом между ними.
- 'equal': Каждый элемент занимает равную часть доступного пространства и выравнивается по левому краю (или верхнему краю) в нём.
- 'fixed' упаковывает заданные
-
childrenlist of Artist -
Элементы для упаковки.
Примечания
pad и sep указаны в пунктах и будут масштабироваться с разрешением dpi рендерера, в то время как width и height указаны в пикселях.
-
get_extent_offsets(self, renderer)[source] -
Обновить смещение дочерних элементов и вернуть размер поля.
Параметры: -
rendererRendererBase subclass
Возвращаемое значение: - width
- height
- xdescent
- ydescent
- список пар (xoffset, yoffset)
-
-
-
matplotlib.offsetbox.bbox_artist(*args, **kwargs)[source]
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.3.3/api/offsetbox_api.html