matplotlib.pyplot.legend
-
matplotlib.pyplot.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. Если shadow включен и 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)
Примеры использования matplotlib.pyplot.legend
© 2012–2017 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
http://matplotlib.org/2.1.0/api/_as_gen/matplotlib.pyplot.legend.html