matplotlib中的legend()—显⽰图例
源⾃  matplotlib中的legend()——⽤于显⽰图例 -- 博客园
legend()的⼀个⽤法:
当我们有多个 axes时,我们如何把它们的图例放在⼀起呢??
我们可以这么做:
import numpy as np
x = np.arange(1, 11)
fig = plt.figure(1)
ax1 = plt.subplot(2, 1, 1)
ax2 = plt.subplot(2, 1, 2)
l1, = ax1.plot(x, x*x, 'r')            #这⾥关键哦
l2, = ax2.plot(x, x*x, 'b')          # 注意
plt.legend([l1, l2], ['first', 'second'], loc = 'upper right')            #其中,loc表⽰位置的;
plt.show()
在legend的参数中, loc参数设置图例的显⽰位置的:
'best'        : 0, (only implemented for axes legends)(⾃适应⽅式)
'upper right'  : 1,
'upper left'  : 2,
'lower left'  : 3,
'lower right'  : 4,
'right'        : 5,
'center left'  : 6,
'center right' : 7,
'lower center' : 8,
'upper center' : 9,
'center'      : 10,
另外,还有控制位置的重要参数:bbox_to_anchor(num1, num2),  bbox_to_anchor被赋予的⼆元组中,第⼀个数值⽤于控制legend的左右移动,值越⼤越向右边移动,第⼆个数值⽤于控制legend的上下移动,值越⼤,越向上移动。
其它参数看这⾥有:
Keyword
Description
loc
a location code
prop
the font property (matplotlib.font_manager.FontProperties 对象)
eg
song_font = matplotlib.font_manager.FontProperties(fname='', size=8)
fontsize
the font size (和prop互斥,不可同时使⽤)
markerscale
the relative size of legend markers vs. original
numpoints
the number of points in the legend for line
scatterpoints
the number of points in the legend for scatter plot
scatteryoffsets
a list of yoffsets for scatter symbols in legend
frameon
if True, draw a frame around the legend. If None, use rc fancybox
if True, draw a frame with a round fancybox. If None, use rc shadowmatplotlib中subplot
if True, draw a shadow behind legend
ncol
number of columns
borderpad
the fractional whitespace inside the legend border labelspacing
the vertical space between the legend entries handlelength
the length of the legend handles
handleheight
the length of the legend handles
handletextpad
the pad between the legend handle and text borderaxespad
the pad between the axes and legend border columnspacing
the spacing between columns
title
the legend title
bbox_to_anchor
the bbox that the legend will be anchored.
bbox_transform
the transform for the bbox. transAxes if None.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。