matplotlib.offsetbox
Контейнерный элемент-графический объект OffsetBox. Его дочерние графические объекты предназначены для отрисовки в относительных позициях к OffsetBox. [VH]Packer, DrawingArea и TextArea являются производными от OffsetBox.
Класс [VH]Packer автоматически настраивает относительные позиции своих дочерних элементов, которые должны быть экземплярами OffsetBox. Это используется для выравнивания похожих графических объектов, например, в легенде.
DrawingArea может содержать любой графический объект в качестве дочернего элемента. DrawingArea имеет фиксированную ширину и высоту. Позиция дочерних элементов относительно родительского элемента фиксирована. TextArea содержит единственный объект Text. Ширина и высота TextArea соответствуют ширине и высоте содержащегося текстового элемента.
-
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] -
Базовый класс:
matplotlib.offsetbox.OffsetBoxКонтейнерный элемент, размещаемый в соответствии с расположением легенды loc. AnchoredOffsetbox имеет один дочерний элемент. При необходимости нескольких дочерних элементов, используйте другой класс OffsetBox для их объединения. По умолчанию контейнер привязан к родительским осям. Вы можете явно указать bbox_to_anchor.
loc — строка или целое число, определяющие расположение легенды. Допустимые коды расположения:
'upper right' : 1, 'upper left' : 2, 'lower left' : 3, 'lower right' : 4, 'right' : 5, (same as 'center right', for back-compatibility) 'center left' : 6, 'center right' : 7, 'lower center' : 8, 'upper center' : 9, 'center' : 10,
-
padpad around the child for drawing a frame. given in - доля от размера шрифта.
borderpad: отступ между рамкой контейнера и bbox_to_anchor,
child: экземпляр OffsetBox, который будет привязан.
prop: свойства шрифта. Используются только для определения отступов.
frameon: отрисовывать рамку контейнера, если True.
bbox_to_anchor: область для привязки. Если None, используется self.axes.bbox.
bbox_transform: преобразование, используемое для bbox_to_anchor.
-
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] -
отрисовать графический объект
-
get_bbox_to_anchor(self)[source] -
возвращает область, к которой будет привязана легенда
-
get_child(self)[source] -
возвращает дочерний элемент
-
get_children(self)[source] -
возвращает список дочерних элементов
-
get_extent(self, renderer)[source] -
возвращает область графического объекта. Возвращается область дочернего элемента с добавленным отступом
-
get_window_extent(self, renderer)[source] -
получить область в пространстве отображения.
-
set_bbox_to_anchor(self, bbox, transform=None)[source] -
установить область для привязки дочернего элемента.
bbox может быть экземпляром Bbox, списком [left, bottom, width, height] или списком [left, bottom], где ширина и высота предполагаются равными нулю. Область будет преобразована в координаты отображения с помощью заданного преобразования.
-
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] -
Базовый класс:
matplotlib.offsetbox.AnchoredOffsetboxAnchoredOffsetbox с текстом.
Параметры: -
sstr -
Текст.
-
locstr -
Код расположения.
-
padfloat, optional -
Отступ между текстом и рамкой в долях от размера шрифта.
-
borderpadfloat, optional -
Отступ между рамкой и осями (или bbox_to_anchor).
-
propdictionary, optional, default: None -
Словарь ключевых параметров, которые будут переданы экземпляру
Text, содержащемуся внутри AnchoredText.
Примечания
Также разрешены другие ключевые параметры
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 вместо Text.
offsetbox : экземпляр OffsetBox
-
xycoordssame as Annotation but can be a tuple of two - строки, интерпретируемые как координаты x и y.
-
boxcoordssimilar to textcoords as Annotation but can be a - кортеж из двух строк, интерпретируемых как координаты x и y.
-
box_alignmenta tuple of two floats for a vertical and - горизонтальное выравнивание offset-боксов относительно boxcoords. Левый нижний угол — (0.0), правый верхний — (1.1).
другие параметры идентичны параметрам аннотации.
-
property anncoords
-
contains(self, mouseevent)[source] -
Проверка, содержит ли элемент события мыши.
Параметры: -
mouseeventmatplotlib.backend_bases.MouseEvent
Возвращает: -
containsbool -
Включают ли какие-либо значения радиус.
-
detailsdict -
Словарь, специфичный для элемента, содержащий подробности контекста события, такие как точки, включённые в радиус выбора. Подробности см. в соответствующих подклассах элемента.
См. также
-
set_contains, get_contains
-
-
draw(self, renderer)[source] -
Отрисовка объекта
Annotationв заданном renderer.
-
get_fontsize(self, s=None)[source] -
возвращает размер шрифта в пунктах
-
set_figure(self, fig)[source] -
Устанавливает экземпляр
Figure, к которому принадлежит элемент.Параметры: -
figFigure
-
-
set_fontsize(self, s=None)[source] -
установка размера шрифта в пунктах
-
update_positions(self, renderer)[source] -
Обновляет пиксельные координаты аннотированной точки и текста.
-
property xyann
-
zorder = 3
-
-
class matplotlib.offsetbox.AuxTransformBox(aux_transform)[source] -
Bases:
matplotlib.offsetbox.OffsetBoxOffset-бокс с aux_transform. Его дочерние элементы будут сначала преобразовываться с помощью aux_transform, а затем смещаться. Абсолютные координаты aux_transform имеют значение, так как они будут автоматически корректироваться для того, чтобы левая нижняя точка ограничивающего прямоугольника дочерних элементов была установлена в (0, 0) перед преобразованием смещения.
Он аналогичен области рисования, за исключением того, что границы области не определены заранее, а вычисляются на основе области окна дочерних элементов. Кроме того, границы дочерних элементов будут вычисляться в преобразованных координатах.
-
add_artist(self, a)[source] -
Добавление любого элемента
Artistв контейнерный бокс
-
draw(self, renderer)[source] -
Отрисовка дочерних элементов
-
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] -
Базовый класс для перетаскиваемого объекта (легенды, offsetbox).
Основывается на:
objectПроизводные классы должны переопределить следующие методы:
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 artist_picker(self, artist, evt): '''The picker method that will be used.''' return self.ref_artist.contains(evt) def finalize_offset(self): '''Called when the mouse is released.'''В текущей реализации
DraggableLegendиDraggableAnnotation,update_offsetразмещает объекты в координатах отображения, аfinalize_offsetпересчитывает их положение в координатах осей и устанавливает соответствующее свойство.-
artist_picker(self, artist, evt)[source]
-
disconnect(self)[source] -
Отключить обработчики событий.
-
finalize_offset(self)[source]
-
on_motion(self, evt)[source]
-
on_motion_blit(self, evt)[source]
-
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] -
Основывается на:
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] -
Основывается на:
matplotlib.offsetbox.OffsetBoxDrawingArea может содержать любой объект-графический элемент в качестве дочернего элемента. DrawingArea имеет фиксированную ширину и высоту. Положение дочерних элементов относительно родительского элемента фиксировано. Дочерние элементы могут быть обрезаны по границам родительского элемента.
width, height : ширина и высота контейнерной области. xdescent, ydescent : спуск области в направлениях x и y. clip : нужно ли обрезать дочерние элементы
-
add_artist(self, a)[source] -
Добавить любой
Artistв контейнерную область
-
property clip_children -
Если дочерние элементы DrawingArea должны обрезаться границами DrawingArea.
-
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] -
Основа:
matplotlib.artist.ArtistOffsetBox — это простой контейнерный элемент. Дочерние элементы должны быть нарисованы относительно родительского элемента.
-
property axes -
Экземпляр
Axes, в котором находится элемент, или None.
-
contains(self, mouseevent)[source] -
Делегирует проверку нахождения курсора дочерним элементам.
Как контейнер,
OffsetBoxсам по себе не реагирует на события мыши.Параметры: -
mouseeventmatplotlib.backend_bases.MouseEvent
Возвращает: -
containsbool -
Включает ли радиус какие-либо значения.
-
detailsdict -
Словарь, специфичный для элемента, содержащий подробности контекста события, такие как точки, попадающие в радиус выбора. Для получения подробностей см. отдельные подклассы Artist.
См. также
-
-
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
Возвращает: - ширина
- высота
- xdescent
- ydescent
- список пар (смещение_x, смещение_y)
-
-
get_offset(self, width, height, xdescent, ydescent, renderer)[source] -
Возвращает смещение в виде кортежа (x, y).
Параметры размеров необходимо предоставить для обработки случаев, когда смещение определяется вызываемой функцией (см.
set_offset).Параметры: - ширина, высота, xdescent, ydescent
-
Параметры размеров.
-
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=1, filterrad=4.0, resample=False, dpi_cor=True, **kwargs)[source] -
Bases:
matplotlib.offsetbox.OffsetBox-
draw(self, renderer)[source] -
Отобразить потомков
-
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] -
Bases:
matplotlib.offsetbox.OffsetBoxParameters: -
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 - в пикселях и поэтому не масштабируются.
-
-
class matplotlib.offsetbox.PaddedBox(child, pad=None, draw_frame=False, patch_attrs=None)[source] -
Bases:
matplotlib.offsetbox.OffsetBoxКонтейнер для добавления отступа вокруг
Artist.The
PaddedBoxсодержитFancyBboxPatch, который используется для визуализации при рендеринге.Parameters: -
childArtist -
Содержимое
Artist. -
padfloat -
Отступ в пунктах. Он будет масштабироваться с разрешением dpi рендерера. В отличие от width и hight, которые заданы в пикселях и поэтому не масштабируются.
-
draw_framebool -
Отображать ли содержимое
FancyBboxPatch. -
patch_attrsdict or None -
Дополнительные параметры, передаваемые содержащемуся
FancyBboxPatch.
-
draw(self, renderer)[source] -
Обновить расположение дочерних элементов при необходимости и отобразить их для заданного renderer.
-
draw_frame(self, renderer)[source]
-
get_extent_offsets(self, renderer)[source] -
Обновить смещение дочерних элементов и вернуть область прямоугольника.
Parameters: -
rendererRendererBase subclass
Returns: - 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 содержит одну строку текста. Текст размещается в координатах (0, 0) с выравниванием по левому краю и нижней строке. Ширина и высота TextArea равны ширине и высоте его дочернего элемента — текста.
Параметры: -
sstr -
Строка, которая должна быть отображена.
-
textpropsdictionary, optional, default: None -
Словарь ключевых параметров, которые будут переданы экземпляру
Textвнутри TextArea. -
multilinebaselinebool, optional -
Если
True, нижняя строка многострочного текста корректируется так, чтобы она (приблизительно) была выровнена по центру с однострочным текстом. -
minimumdescentbool, optional -
Если
True, у области есть минимальное значение спуска "p".
-
draw(self, renderer)[source] -
Отрисовка дочерних элементов
-
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 должны быть заданы в пунктах и будут масштабироваться с разрешением рендерера, а width и height должны быть в пикселях.
-
get_extent_offsets(self, renderer)[source] -
Обновить смещение дочерних элементов и вернуть область области.
Параметры: -
rendererRendererBase subclass
Возвращает: - ширина
- высота
- 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.2.2/api/offsetbox_api.html