matplotlib.axes.Axes.legend
-
Axes.legend(*args, **kwargs) -
Размещает легенду на оси.
Чтобы создать легенду для линий, которые уже существуют на оси (например, с помощью plot), просто вызовите эту функцию с итерируемым объектом строк, по одной для каждого элемента легенды. Например:
ax.plot([1, 2, 3]) ax.legend(['A simple line'])
Однако, для того чтобы сохранить соответствие между «меткой» и элементом легенды, предпочтительно указать метку либо при создании объекта, либо вызвав метод
set_label()для объекта:line, = ax.plot([1, 2, 3], label='Inline label') # Overwrite the label by calling the method. line.set_label('Label via method') ax.legend()Конкретные линии могут быть исключены из автоматического выбора элементов легенды, если метка начинается с символа подчеркивания. Это значение по умолчанию для всех объектов, поэтому вызов
legend()без аргументов и без ручного задания меток приведет к тому, что легенда не будет отображена.Для полного контроля над тем, какие объекты имеют запись в легенде, можно передать итерируемый объект объектов легенды, за которым следует итерируемый объект меток легенды соответственно:
legend((line1, line2, line3), ('label1', 'label2', 'label3'))
Параметры: loc : int или строка или пара чисел с плавающей точкой, по умолчанию: ‘верхний правый’
Расположение легенды. Возможные значения:
Строковое значение расположения Код расположения ‘лучшее’ 0 ‘верхний правый’ 1 ‘верхний левый’ 2 ‘нижний левый’ 3 ‘нижний правый’ 4 ‘правый’ 5 ‘центр слева’ 6 ‘центр справа’ 7 ‘нижний центр’ 8 ‘верхний центр’ 9 ‘центр’ 10 В качестве альтернативы можно использовать 2-кортеж, задающий
x, yлевого нижнего угла легенды в координатах осей (в этом случаеbbox_to_anchorбудет проигнорировано).bbox_to_anchor :
matplotlib.transforms.BboxBaseили кортеж чисел с плавающей точкойЗадать произвольное расположение легенды в координатах
bbox_transform(по умолчанию — координаты осей).Например, чтобы поместить верхний правый угол легенды в центр осей, можно использовать следующие ключевые слова:
loc='upper right', bbox_to_anchor=(0.5, 0.5)
ncol : целое число
Количество столбцов в легенде. По умолчанию 1.
prop : None или
matplotlib.font_manager.FontPropertiesили словарьСвойства шрифта легенды. Если None (по умолчанию), будут использованы текущие настройки
matplotlib.rcParams.fontsize : целое число или число с плавающей точкой или {‘xx-small’, ‘x-small’, ‘small’, ‘medium’, ‘large’, ‘x-large’, ‘xx-large’}
Управляет размером шрифта легенды. Если значение является числовым, размер будет абсолютным размером шрифта в пунктах. Строковые значения относительны к текущему размеру шрифта по умолчанию. Этот параметр используется только если
propне указан.numpoints : None или целое число
Количество маркеров на точке в легенде при создании записи легенды для линии/
matplotlib.lines.Line2D. По умолчаниюNone, которое примет значение изlegend.numpointsrcParam.scatterpoints : None или целое число
Количество маркеров на точке в легенде при создании записи легенды для диаграммы рассеяния/
matplotlib.collections.PathCollection. По умолчаниюNone, которое примет значение изlegend.scatterpointsrcParam.scatteryoffsets : итерируемый список чисел с плавающей точкой
Вертикальное смещение (относительно размера шрифта) для маркеров, созданных для записи легенды диаграммы рассеяния. 0.0 — в основании текста легенды, 1.0 — вверху. Чтобы расположить все маркеры на одной высоте, установите в
[0.5]. По умолчанию[0.375, 0.5, 0.3125].markerscale : None или целое число или число с плавающей точкой
Относительный размер маркеров легенды по сравнению с первоначально нарисованными. По умолчанию
None, который примет значение изlegend.markerscalercParam.markerfirst : bool
Если True, маркер легенды размещается слева от метки легенды. Если False, маркер легенды размещается справа от метки легенды. По умолчанию True.
frameon : None или bool
Определяет, должна ли легенда быть нарисована на области (рамке). По умолчанию
None, которое примет значение изlegend.frameonrcParam.fancybox : None или bool
Определяет, должны ли быть включены закругленные края вокруг
FancyBboxPatch, составляющих фоновый прямоугольник легенды. По умолчаниюNone, которое примет значение изlegend.fancyboxrcParam.shadow : None или bool
Определяет, должен ли быть нарисован оттенок за легендой. По умолчанию
None, который примет значение изlegend.shadowrcParam.framealpha : None или число с плавающей точкой
Управляет альфа-прозрачностью фона легенды. По умолчанию
None, которое примет значение изlegend.framealpharcParam. Если оттенок включен и framealpha равноNone, значение по умолчанию игнорируется.facecolor : None или “inherit” или цветовое значение
Управляет цветом фона легенды. По умолчанию
None, которое примет значение изlegend.facecolorrcParam. Если"inherit", примет значение изaxes.facecolorrcParam.edgecolor : None или “inherit” или цветовое значение
Управляет цветом границы фоновой области легенды. По умолчанию
None, которое примет значение изlegend.edgecolorrcParam. Если"inherit", примет значение изaxes.edgecolorrcParam.mode : {“expand”, None}
Если
modeустановлено в"expand", легенда будет горизонтально расширена, чтобы заполнить область осей (илиbbox_to_anchorесли определяет размер легенды).bbox_transform : None или
matplotlib.transforms.TransformПреобразование для области (
bbox_to_anchor). Для значенияNone(по умолчанию) будет использоваться преобразование осейtransAxes.title : строка или None
Заголовок легенды. По умолчанию заголовок отсутствует (
None).borderpad : число с плавающей точкой или None
Пробел внутри рамки легенды. Измеряется в единицах размера шрифта. По умолчанию
None, которое примет значение изlegend.borderpadrcParam.labelspacing : число с плавающей точкой или None
Вертикальное расстояние между записями легенды. Измеряется в единицах размера шрифта. По умолчанию
None, которое примет значение изlegend.labelspacingrcParam.handlelength : число с плавающей точкой или None
Длина маркеров легенды. Измеряется в единицах размера шрифта. По умолчанию
None, которое примет значение изlegend.handlelengthrcParam.handletextpad : число с плавающей точкой или None
Отступ между маркером легенды и текстом. Измеряется в единицах размера шрифта. По умолчанию
None, которое примет значение изlegend.handletextpadrcParam.borderaxespad : число с плавающей точкой или None
Отступ между осями и границей легенды. Измеряется в единицах размера шрифта. По умолчанию
None, которое примет значение изlegend.borderaxespadrcParam.columnspacing : число с плавающей точкой или None
Расстояние между столбцами. Измеряется в единицах размера шрифта. По умолчанию
None, которое примет значение изlegend.columnspacingrcParam.handler_map : словарь или None
Пользовательский словарь, сопоставляющий экземпляры или типы обработчику легенды. Это
handler_mapобновляет словарь обработчиков по умолчанию, находящийся по адресуmatplotlib.legend.Legend.get_legend_handler_map().Примечания
Не все типы элементов поддерживаются командой легенды. Подробности см. в Руководство по легендам.
Примеры
(Исходный код, png, pdf)
© 2012–2017 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
http://matplotlib.org/2.1.0/api/_as_gen/matplotlib.axes.Axes.legend.html