Figure.legend¶
- Figure.legend(**kwargs)[source]¶
Add a legend along the side of the figure.
- Parameters
handles (
listofartist, optional) – List of matplotlib artists, or a list of lists of artist instances (see thecenterkeyword). If not passed, artists with valid labels (applied by passinglabelorlabelsto a plotting command or callingset_label) are retrieved automatically. If the object is aContourSet,legend_elementsis used to select the central artist in the list (generally useful for single-color contour plots). Note that proplot’scontourandcontourfaccept a legendlabelkeyword argument.labels (
listofstr, optional) – A matching list of string labels orNoneplaceholders, or a matching list of lists (see thecenterkeyword). WhereverNoneappears in the list (or if no labels were passed at all), labels are retrieved by callingget_labelon eachArtistin the handle list. If a handle consists of a tuple group of artists, labels are inferred from the artists in the tuple (if there are multiple unique labels in the tuple group of artists, the tuple group is expanded into unique legend entries – otherwise, the tuple group elements are drawn on top of eachother). For details on matplotlib legend handlers and tuple groups, see the matplotlib legend guide.loc (
str, optional) – The legend location. Valid location keys are as follows.Location
Valid keys
left
'left','l'right
'right','r'bottom
'bottom','b'top
'top','t'space (
floatorstr, default:None) – The fixed space between the legend and the subplot grid edge. If float, units are em-widths. If string, interpreted byunits. When the tight layout algorithm is active for the figure,spaceis computed automatically (seepad). Otherwise,spaceis set to a suitable default.pad (
floatorstr, default:rc['subplots.innerpad']=1.0orrc['subplots.panelpad']=0.5) – The tight layout padding between the legend and the subplot grid. Default isrc['subplots.innerpad']for the first legend andrc['subplots.panelpad']for subsequently “stacked” legends. If float, units are em-widths. If string, interpreted byunits.row, rows – Aliases for
spanfor legends on the left or right side.col, cols – Aliases for
spanfor legends on the top or bottom side.span (
intor2-tupleofint, default:None) – Integer(s) indicating the span of the legend across rows and columns of subplots. For example,fig.legend(loc='b', col=1)draws a legend beneath the leftmost column of subplots, andfig.legend(loc='b', cols=(1, 2))draws a legend beneath the left two columns of subplots. By default the legend will span every subplot row and column.align (
{'center', 'top', 't', 'bottom', 'b', 'left', 'l', 'right', 'r'}, optional) – For outer legends only. How to align the legend against the subplot edge. The values'top'and'bottom'are valid for left and right legends and'left'and'right'are valid for top and bottom legends. The default is always'center'.width (
unit-spec, optional) – The space allocated for the legend box. This does nothing if the tight layout algorithm is active for the figure. If float, units are inches. If string, interpreted byunits.
- Other Parameters
frame, frameon (
bool, optional) – Toggles the legend frame. For centered-row legends, a frame independent from matplotlib’s built-in legend frame is created.ncol, ncols (
int, optional) – The number of columns.ncolsis an alias, added for consistency withsubplots.order (
{'C', 'F'}, optional) – Whether legend handles are drawn in row-major ('C') or column-major ('F') order. Analagous tonumpy.arrayordering. The matplotlib default was'F'but proplot changes this to'C'.center (
bool, optional) – Whether to center each legend row individually. IfTrue, we draw successive single-row legends “stacked” on top of each other. IfNone, we infer this setting fromhandles. By default,centeris set toTrueifhandlesis a list of lists (each sublist is used as a row in the legend).alphabetize (
bool, default:False) – Whether to alphabetize the legend entries according to the legend labels.title, label (
str, optional) – The legend title. Thelabelkeyword is also accepted, for consistency withcolorbar.fontsize, fontweight, fontcolor (optional) – The font size, weight, and color for the legend text. Font size is interpreted by
units. The default font size isrc['legend.fontsize'].titlefontsize, titlefontweight, titlefontcolor (optional) – The font size, weight, and color for the legend title. Font size is interpreted by
units. The default size isfontsize.borderpad, borderaxespad, handlelength, handleheight, handletextpad, labelspacing, columnspacing (
unit-spec, optional) – Various matplotliblegendspacing arguments. If float, units are em-widths. If string, interpreted byunits.a, alpha, framealpha, fc, facecolor, framecolor, ec, edgecolor, ew, edgewidth (default:
rc['legend.framealpha']=0.8,rc['legend.facecolor']='white',rc['legend.edgecolor']='black',rc['axes.linewidth']=0.6) – The opacity, face color, edge color, and edge width for the legend frame.c, color, lw, linewidth, m, marker, ls, linestyle, dashes, ms, markersize (optional) – Properties used to override the legend handles. For example, for a legend describing variations in line style ignoring variations in color, you might want to use
color='black'.handle_kw (dict-like, optional) – Additional properties used to override legend handles, e.g.
handle_kw={'edgecolor': 'black'}. Only line properties can be passed as keyword arguments.handler_map (dict-like, optional) – A dictionary mapping instances or types to a legend handler. This
handler_mapupdates the default handler map found atmatplotlib.legend.Legend.get_legend_handler_map.**kwargs – Passed to
legend.