Spec-Zone.ru › Matplotlib 3.4

matplotlib.axes.Axes.legend

Axes.legend(*args, **kwargs)[source]

Размещение легенды на оси.

Варианты вызова:

legend()
legend(labels)
legend(handles, labels)

Варианты вызова соответствуют трём способам использования данного метода:

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

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

В этом случае метки берутся из объекта-графического элемента. Вы можете указать их либо при создании объекта, либо вызвав метод set_label() для объекта-графического элемента:

ax.plot([1, 2, 3], label='Inline label')
ax.legend()

или:

line, = ax.plot([1, 2, 3])
line.set_label('Label via method')
ax.legend()

Конкретные линии можно исключить из автоматического выбора элементов для легенды, задав метку, начинающуюся с нижнего подчёркивания. Это значение по умолчанию для всех объектов-графических элементов, поэтому вызов Axes.legend без аргументов и без ручного задания меток не приведет к отображению легенды.

2. Подпись существующих элементов графика

Для создания легенды для линий, которые уже существуют на оси (например, через plot), просто вызовите эту функцию со списком строк, по одной для каждого элемента легенды. Например:

ax.plot([1, 2, 3])
ax.legend(['A simple line'])

Примечание: Этот вариант вызова не рекомендуется, так как связь между элементами графика и метками определяется только порядком и может быть легко спутана.

3. Явное определение элементов в легенде

Для полного контроля над тем, какие объекты-графические элементы имеют запись в легенде, можно передать последовательность объектов-графических элементов легенды, за которой следует последовательность меток легенды соответственно:

ax.legend([line1, line2, line3], ['label1', 'label2', 'label3'])
Параметры:
handlesпоследовательность Artist, необязательно

Список объектов-графических элементов (линии, области), которые необходимо добавить в легенду. Используйте это вместе с labels, если вам нужен полный контроль над отображением элементов в легенде, и автоматический механизм, описанный выше, не подходит.

Длина handles и labels должна быть одинаковой в этом случае. Если они не равны, они усекаются до меньшей длины.

labelsсписок str, необязательно

Список меток, которые необходимо отобразить рядом с объектами-графическими элементами. Используйте это вместе с handles, если вам нужен полный контроль над отображением элементов в легенде, и автоматический механизм, описанный выше, не подходит.

Возвращаемое значение:
Legend
END_OF_DOCUMENT_MARKER
Другие параметры:
locстрока или пара чисел с плавающей точкой, по умолчанию: rcParams["legend.loc"] (по умолчанию: 'best') ('best' для осей, 'верхний правый' для графиков)

Расположение легенды.

Строки 'upper left', 'upper right', 'lower left', 'lower right' размещают легенду в соответствующем углу осей/графика.

Строки 'upper center', 'lower center', 'center left', 'center right' размещают легенду в центре соответствующей стороны осей/графика.

Строка 'center' размещает легенду в центре осей/графика.

Строка 'best' размещает легенду в таком расположении из девяти возможных, чтобы перекрытие с другими отрисованными элементами было минимальным. Этот вариант может быть довольно медленным для графиков с большим объемом данных; ваша скорость построения графиков может улучшиться, если вы укажете конкретное расположение.

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

Для обратной совместимости, 'center right' (но не другие расположения) также может быть написано 'right', и каждое расположение в виде "строки" также может быть задано числовым значением:

Расположение (строка) Код расположения
'best' 0
'верхний правый' 1
'верхний левый' 2
'нижний левый' 3
'нижний правый' 4
'правый' 5
'центр слева' 6
'центр справа' 7
'нижний центр' 8
'верхний центр' 9
'центр' 10
bbox_to_anchorBboxBase, кортеж из 2 или 4 чисел с плавающей точкой

Прямоугольник, используемый для позиционирования легенды совместно с параметром loc. По умолчанию axes.bbox (если вызывается как метод для Axes.legend) или figure.bbox (если Figure.legend). Этот параметр позволяет произвольно размещать легенду.

Координаты прямоугольника интерпретируются в системе координат, заданной параметром bbox_transform, по умолчанию в координатах осей или графика, в зависимости от того, какой метод legend вызывается.

Если задается кортеж из 4 чисел или BboxBase, то он задает прямоугольник (x, y, width, height) в котором размещается легенда. Чтобы разместить легенду в лучшем расположении в правом нижнем квадранте осей (или графика):

loc='best', bbox_to_anchor=(0.5, 0., 0.5, 0.5)

Кортеж из 2 чисел (x, y) размещает угол легенды, заданный параметром loc, в координатах x, y. Например, чтобы поместить верхний правый угол легенды в центр осей (или графика) можно использовать следующие параметры:

loc='upper right', bbox_to_anchor=(0.5, 0.5)
ncolцелое число, по умолчанию: 1

Количество столбцов в легенде.

propNone или matplotlib.font_manager.FontProperties или словарь

Свойства шрифта легенды. Если None (по умолчанию), будут использоваться текущие значения matplotlib.rcParams.

fontsizeцелое число или {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}

Размер шрифта легенды. Если значение является числом, размер будет абсолютным размером шрифта в пунктах. Строковые значения относительны к текущему размеру шрифта по умолчанию. Этот параметр используется только если параметр prop не задан.

labelcolorстрока или список

Цвет текста в легенде. Допустимая строка цвета (например, 'red'), или список строковых представлений цветов. Цвет подписи также можно сделать соответствующим цвету линии или маркера, используя 'linecolor', 'markerfacecolor' (или 'mfc'), или 'markeredgecolor' (или 'mec').

numpointsцелое число, по умолчанию: rcParams["legend.numpoints"] (по умолчанию: 1)

Количество маркеров в легенде при создании записи легенды для Line2D (линии).

scatterpointsцелое число, по умолчанию: rcParams["legend.scatterpoints"] (по умолчанию: 1)

Количество маркеров в легенде при создании записи легенды для PathCollection (графика точек).

scatteryoffsetsитерируемый объект чисел с плавающей точкой, по умолчанию: [0.375, 0.5, 0.3125]

Вертикальное смещение (относительно размера шрифта) для маркеров, созданных для записи легенды графика точек. 0.0 — внизу текста легенды, 1.0 — вверху. Чтобы все маркеры были на одной высоте, установите значение [0.5].

markerscaleчисло с плавающей точкой, по умолчанию: rcParams["legend.markerscale"] (по умолчанию: 1.0)

Относительный размер маркеров легенды по сравнению с первоначально отрисованными.

markerfirstбулево значение, по умолчанию: True

Если True, маркер легенды размещается слева от подписи легенды. Если False, маркер легенды размещается справа от подписи легенды.

frameonбулево значение, по умолчанию: rcParams["legend.frameon"] (по умолчанию: True)

Определяет, должна ли легенда быть нарисована на области (рамке).

fancyboxбулево значение, по умолчанию: rcParams["legend.fancybox"] (по умолчанию: True)

Определяет, должны ли быть закруглены углы вокруг FancyBboxPatch, составляющей фон легенды.

shadowбулево значение, по умолчанию: rcParams["legend.shadow"] (по умолчанию: False)

Определяет, должна ли быть отрисована тень за легендой.

framealphaчисло с плавающей точкой, по умолчанию: rcParams["legend.framealpha"] (по умолчанию: 0.8)

Альфа-прозрачность фона легенды. Если shadow включен и framealpha равен None, значение по умолчанию игнорируется.

facecolor"inherit" или цвет, по умолчанию: rcParams["legend.facecolor"] (по умолчанию: 'inherit')

Цвет фона легенды. Если "inherit", использовать rcParams["axes.facecolor"] (по умолчанию: 'white').

edgecolor"inherit" или цвет, по умолчанию: rcParams["legend.edgecolor"] (по умолчанию: '0.8')

Цвет границы области фона легенды. Если "inherit", использовать rcParams["axes.edgecolor"] (по умолчанию: 'black').

mode{"expand", None}

Если mode равен "expand", легенда будет расширена по горизонтали, чтобы заполнить область осей (или bbox_to_anchor, если он определяет размер легенды).

bbox_transformNone или matplotlib.transforms.Transform

Преобразование для прямоугольника (bbox_to_anchor). Для значения None (по умолчанию) будет использоваться преобразование осей transAxes.

titleстрока или None

Заголовок легенды. По умолчанию заголовок отсутствует (None).

title_fontsizeцелое число или {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}, по умолчанию: rcParams["legend.title_fontsize"] (по умолчанию: None)

Размер шрифта заголовка легенды.

borderpadчисло с плавающей точкой, по умолчанию: rcParams["legend.borderpad"] (по умолчанию: 0.4)

Отступы внутри границы легенды, в единицах размера шрифта.

labelspacingчисло с плавающей точкой, по умолчанию: rcParams["legend.labelspacing"] (по умолчанию: 0.5)

Вертикальное расстояние между записями легенды, в единицах размера шрифта.

handlelengthчисло с плавающей точкой, по умолчанию: rcParams["legend.handlelength"] (по умолчанию: 2.0)

Длина ручек легенды, в единицах размера шрифта.

handletextpadчисло с плавающей точкой, по умолчанию: rcParams["legend.handletextpad"] (по умолчанию: 0.8)

Отступ между ручкой легенды и текстом, в единицах размера шрифта.

borderaxespadчисло с плавающей точкой, по умолчанию: rcParams["legend.borderaxespad"] (по умолчанию: 0.5)

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

columnspacingчисло с плавающей точкой, по умолчанию: rcParams["legend.columnspacing"] (по умолчанию: 2.0)

Отступ между столбцами, в единицах размера шрифта.

handler_mapсловарь или None

Пользовательский словарь, сопоставляющий экземпляры или типы с обработчиком легенды. Этот handler_map обновляет словарь обработчиков по умолчанию, найденный в matplotlib.legend.Legend.get_legend_handler_map.

См. также

Figure.legend

Примечания

Некоторые художники не поддерживаются этой функцией. Подробнее см. Руководство по легендам.

Примеры

(Исходный код, png, pdf)

../../_images/legend_00_00.png

Примеры использования matplotlib.axes.Axes.legend

Bar Label Demo

Демонстрация меток столбцов

Stacked bar chart

Сгруппированные столбчатые диаграммы

Grouped bar chart with labels

Группированные столбчатые диаграммы с метками

Plotting categorical variables

Использование категориальных переменных для построения графиков

Fill Between and Alpha

Заполнение области и альфа-каналы

Hat graph

Диаграмма шляпы

Customizing dashed line styles

Настройка стилей штриховки линий

Lines with a ticked patheffect

Линии с пометками

prop_cycle property markevery in rcParams

Свойство prop_cycle и markevery в rcParams

Scatter plots with a legend

Точечные графики с легендой

Stackplots and streamgraphs

Графики стопок и потоки

Stairs Demo

Демонстрация ступенчатых графиков

Contourf Hatching

Заполнение контуров с штриховкой

Secondary Axis

Вспомогательная ось

Plot a confidence ellipse of a two-dimensional dataset

Построение эллипса доверия двумерного набора данных

Using histograms to plot a cumulative distribution

Использование гистограмм для построения кумулятивного распределения

The histogram (hist) function with multiple data sets

Функция гистограммы (hist) с несколькими наборами данных

Bar of pie

Столбец из круговой диаграммы

Labeling a pie and a donut

Подписи на круговой и пончиковой диаграммах

Polar Legend

Легенда на полярном графике

Composing Custom Legends

Создание пользовательских легенд

Legend using pre-defined labels

Легенда с предварительно определёнными метками

Legend Demo

Демонстрация легенды

Mathtext

Mathtext

Rendering math equations using TeX

Рендеринг математических уравнений с помощью TeX

Parasite Axes demo

Демонстрация вспомогательных осей

Parasite axis demo

Демонстрация вспомогательной оси

Anatomy of a figure

Структура фигуры

Legend Picking

Выбор легенды

Patheffect Demo

Демонстрация patheffect

TickedStroke patheffect

Эффект tickedstroke patheffect

Plot 2D data on 3D plot

Построение 2D-данных на 3D-графике

Parametric Curve

Параметрическая кривая

Multiple Yaxis With Spines

Несколько осей Y с линиями

Group barchart with units

Групповая гистограмма с единицами

Simple Legend01

Простая легенда01

Simple Legend02

Простая легенда02

Usage Guide

Руководство по использованию

Constrained Layout Guide

Руководство по размещению графиков

Tight Layout guide

Руководство по обрезке графиков

Specifying Colors

Указание цветов

© 2012–2021 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.4.3/api/_as_gen/matplotlib.axes.Axes.legend.html

Spec-Zone.ru

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