Spec-Zone.ru › Matplotlib 3.6

matplotlib.legend_handler

Стандартные обработчики легенды.

Важно

Это низкоуровневый API легенды, который большинству конечных пользователей не нужен.

Мы рекомендуем ознакомиться с руководством по легендам перед чтением данной документации.

Обработчики легенды должны быть вызываемым объектом со следующей сигнатурой.

legend_handler(legend, orig_handle, fontsize, handlebox)

Где legend — сама легенда, orig_handle — исходный график, fontsize — размер шрифта в пикселях, а handlebox — экземпляр OffsetBox. Внутри вызова вы должны создать соответствующие элементы (используя соответствующие свойства из legend и/или orig_handle) и добавить их в handlebox. Элементы должны быть масштабированы в соответствии с размером шрифта (обратите внимание, что размер указан в пикселях, т. е. это значение, масштабированное с учётом DPI).

Этот модуль включает в себя определение нескольких классов обработчиков легенды, полученных от базового класса (HandlerBase) со следующим методом:

def legend_artist(self, legend, orig_handle, fontsize, handlebox)
classmatplotlib.legend_handler.HandlerBase(xpad=0.0, ypad=0.0, update_func=None)[source]

Базовый класс для стандартных обработчиков легенды.

Производные классы должны переопределять метод create_artists, который имеет следующую сигнатуру:

def create_artists(self, legend, orig_handle,
                   xdescent, ydescent, width, height, fontsize,
                   trans):

Переопределенный метод должен создавать элементы с заданным преобразованием, которые подходят по заданным размерам (xdescent, ydescent, width, height), которые при необходимости масштабируются с учётом размера шрифта.

adjust_drawing_area(legend, orig_handle, xdescent, ydescent, width, height, fontsize)[source]
create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
legend_artist(legend, orig_handle, fontsize, handlebox)[source]

Возвращает элемент, который создаёт этот HandlerBase для данного исходного элемента/обработчика.

Параметры:
legendLegend

Легенда, для которой создаются эти элементы легенды.

orig_handlematplotlib.artist.Artist или аналогичный

Объект, для которого создаются эти элементы легенды.

fontsizeint

Размер шрифта в пикселях. Создаваемые элементы должны быть масштабированы в соответствии с заданным размером шрифта.

handleboxmatplotlib.offsetbox.OffsetBox

Прямоугольник, созданный для размещения элементов этой записи легенды. Элементы, созданные в методе legend_artist, должны быть добавлены в этот handlebox внутри этого метода.

update_prop(legend_handle, orig_handle, legend)[source]
classmatplotlib.legend_handler.HandlerCircleCollection(yoffsets=None, sizes=None, **kwargs)[source]

Обработчик для CircleCollection.

Параметры:
numpointsint

Количество точек для отображения в записи легенды.

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

Список длиной numpoints с отступами по оси y для каждой точки в записи легенды.

**kwargs

Ключевые аргументы, переданные в HandlerNpoints.

create_collection(orig_handle, sizes, offsets, offset_transform)[source]
END_OF_DOCUMENT_MARKER ```
classmatplotlib.legend_handler.HandlerErrorbar(xerr_size=0.5, yerr_size=None, marker_pad=0.3, numpoints=None, **kwargs)[source]

Обработчик для Элементов с ошибками.

Параметры:
marker_padfloat

Отступ между точками в элементе легенды.

numpointsint

Количество точек для отображения в элементе легенды.

**kwargs

Ключевые аргументы, передаваемые в HandlerBase.

create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
get_err_size(legend, xdescent, ydescent, width, height, fontsize)[source]
classmatplotlib.legend_handler.HandlerLine2D(marker_pad=0.3, numpoints=None, **kwargs)[source]

Обработчик для экземпляров Line2D.

См. также

HandlerLine2DCompound

Более раннее реализация обработчика, которая использовала один объект для линии и другой для маркеров.

Параметры:
marker_padfloat

Отступ между точками в элементе легенды.

numpointsint

Количество точек для отображения в элементе легенды.

**kwargs

Ключевые аргументы, передаваемые в HandlerBase.

create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
classmatplotlib.legend_handler.HandlerLine2DCompound(marker_pad=0.3, numpoints=None, **kwargs)[source]

Исходный обработчик для экземпляров Line2D, который использует комбинацию объекта только для линии с объектом только для маркера. Возможно, в будущем будет устаревшим.

Параметры:
marker_padfloat

Отступ между точками в элементе легенды.

numpointsint

Количество точек для отображения в элементе легенды.

**kwargs

Ключевые аргументы, передаваемые в HandlerBase.

create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
classmatplotlib.legend_handler.HandlerLineCollection(marker_pad=0.3, numpoints=None, **kwargs)[source]

Обработчик экземпляров LineCollection.

Параметры:
marker_padfloat

Отступ между точками в элементе легенды.

numpointsint

Количество точек для отображения в элементе легенды.

**kwargs

Параметры ключевых слов, передаваемые обработчику HandlerBase.

create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
get_numpoints(legend)[source]
classmatplotlib.legend_handler.HandlerNpoints(marker_pad=0.3, numpoints=None, **kwargs)[source]

Обработчик легенды, который отображает numpoints точек в элементе легенды.

Параметры:
marker_padfloat

Отступ между точками в элементе легенды.

numpointsint

Количество точек для отображения в элементе легенды.

**kwargs

Параметры ключевых слов, передаваемые обработчику HandlerBase.

get_numpoints(legend)[source]
get_xdata(legend, xdescent, ydescent, width, height, fontsize)[source]
classmatplotlib.legend_handler.HandlerNpointsYoffsets(numpoints=None, yoffsets=None, **kwargs)[source]

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

Параметры:
numpointsint

Количество точек для отображения в элементе легенды.

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

Список длиной numpoints смещений по оси y для каждой точки в элементе легенды.

**kwargs

Параметры ключевых слов, передаваемые обработчику HandlerNpoints.

get_ydata(legend, xdescent, ydescent, width, height, fontsize)[source]
classmatplotlib.legend_handler.HandlerPatch(patch_func=None, **kwargs)[source]

Обработчик для экземпляров Patch.

Параметры:
patch_funcфункция, необязательно

Функция, создающая элемент ключа легенды. patch_func должна иметь следующий сигнатуру:

def patch_func(legend=legend, orig_handle=orig_handle,
               xdescent=xdescent, ydescent=ydescent,
               width=width, height=height, fontsize=fontsize)

Впоследствии созданный элемент будет иметь вызов метода update_prop , и к нему будет применено соответствующее преобразование.

**kwargs

Параметры ключевых слов, передаваемые обработчику HandlerBase.

create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
END_OF_DOCUMENT_MARKER
классmatplotlib.legend_handler.HandlerPathCollection(yoffsets=None, sizes=None, **kwargs)[source]

Обработчик для PathCollection, используемых в scatter.

Параметры:
numpointsint

Количество точек, отображаемых в элементе легенды.

yoffsetsмассив float

Список из numpoints значений смещений по оси y для каждой точки в элементе легенды.

**kwargs

Ключевые аргументы, передаваемые в HandlerNpoints.

create_collection(orig_handle, sizes, offsets, offset_transform)[source]
классmatplotlib.legend_handler.HandlerPolyCollection(xpad=0.0, ypad=0.0, update_func=None)[source]

Обработчик для PolyCollection, используемых в fill_between и stackplot.

create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
классmatplotlib.legend_handler.HandlerRegularPolyCollection(yoffsets=None, sizes=None, **kwargs)[source]

Обработчик для RegularPolyCollection.

Параметры:
numpointsint

Количество точек, отображаемых в элементе легенды.

yoffsetsмассив float

Список из numpoints значений смещений по оси y для каждой точки в элементе легенды.

**kwargs

Ключевые аргументы, передаваемые в HandlerNpoints.

create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
create_collection(orig_handle, sizes, offsets, offset_transform)[source]
get_numpoints(legend)[source]
get_sizes(legend, orig_handle, xdescent, ydescent, width, height, fontsize)[source]
update_prop(legend_handle, orig_handle, legend)[source]
END_OF_DOCUMENT_MARKER
classmatplotlib.legend_handler.HandlerStem(marker_pad=0.3, numpoints=None, bottom=None, yoffsets=None, **kwargs)[source]

Обработчик для графиков, созданных с помощью stem.

Параметры:
marker_padfloat, по умолчанию: 0.3

Отступ между точками в элементе легенды.

numpointsint, необязательно

Количество точек для отображения в элементе легенды.

bottomfloat, необязательно
yoffsetsмассив чисел с плавающей точкой, необязательно

Список длиной numpoints смещений по оси y для каждой точки в элементе легенды.

**kwargs

Ключевые аргументы, передаваемые в HandlerNpointsYoffsets.

create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
get_ydata(legend, xdescent, ydescent, width, height, fontsize)[source]
classmatplotlib.legend_handler.HandlerStepPatch(xpad=0.0, ypad=0.0, update_func=None)[source]

Обработчик для экземпляров StepPatch.

create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
classmatplotlib.legend_handler.HandlerTuple(ndivide=1, pad=None, **kwargs)[source]

Обработчик для Кортежей.

Параметры:
ndivideint, по умолчанию: 1

Количество разделов для разбиения области легенды. Если None, используется длина входного кортежа.

padfloat, по умолчанию: rcParams["legend.borderpad"] (по умолчанию: 0.4)

Отступ в единицах, являющихся долей размера шрифта.

**kwargs

Ключевые аргументы, передаваемые в HandlerBase.

create_artists(legend, orig_handle, xdescent, ydescent, width, height, fontsize, trans)[source]
matplotlib.legend_handler.update_from_first_child(tgt, src)[source]

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

Spec-Zone.ru

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