matplotlib.pyplot.figlegend #

matplotlib.pyplot. figlegend ( * args , ** kwargs ) [fonte] #

Coloque uma legenda na figura.

Assinaturas de chamada:

figlegend()
figlegend(handles, labels)
figlegend(handles=handles)
figlegend(labels)

As assinaturas de chamada correspondem às seguintes maneiras diferentes de usar este método:

1. Detecção automática de elementos a serem mostrados na legenda

Os elementos a serem adicionados à legenda são determinados automaticamente, quando você não passa nenhum argumento extra.

Nesse caso, os rótulos são retirados do artista. Você pode especificá-los na criação do artista ou chamando o set_label()método no artista:

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

ou:

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

Linhas específicas podem ser excluídas da seleção automática do elemento da legenda definindo um rótulo começando com um sublinhado. Isso é padrão para todos os artistas, portanto, chamar Figure.legendsem nenhum argumento e sem definir os rótulos manualmente resultará em nenhuma legenda sendo desenhada.

2. Listar explicitamente os artistas e gravadoras na legenda

Para controle total de quais artistas têm uma entrada de legenda, é possível passar um iterável de legenda de artistas seguido por um iterável de rótulos de legenda, respectivamente:

fig.figlegend([line1, line2, line3], ['label1', 'label2', 'label3'])

3. Listar explicitamente os artistas na legenda

Isso é semelhante ao 2, mas os rótulos são retirados das propriedades do rótulo dos artistas. Exemplo:

line1, = ax1.plot([1, 2, 3], label='label1')
line2, = ax2.plot([1, 2, 3], label='label2')
fig.figlegend(handles=[line1, line2])

4. Rotular elementos de plotagem existentes

Desanimado

Essa assinatura de chamada é desencorajada, porque a relação entre os elementos do gráfico e os rótulos é apenas implícita por sua ordem e pode ser facilmente confundida.

Para criar uma legenda para todos os artistas em todos os Axes, chame esta função com um iterável de strings, uma para cada item da legenda. Por exemplo:

fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.plot([1, 3, 5], color='blue')
ax2.plot([2, 4, 6], color='red')
fig.figlegend(['the blues', 'the reds'])
Parâmetros :
lida com a lista de Artist, opcional

Uma lista de artistas (linhas, patches) a serem adicionados à legenda. Use isso junto com etiquetas , se você precisar de controle total sobre o que é mostrado na legenda e o mecanismo automático descrito acima não for suficiente.

O comprimento das alças e etiquetas deve ser o mesmo neste caso. Se não estiverem, eles serão truncados para o menor comprimento.

lista de rótulos de str, opcional

Uma lista de rótulos para mostrar ao lado dos artistas. Use junto com alças , caso precise de controle total sobre o que é mostrado na legenda e o mecanismo automático descrito acima não for suficiente.

Devoluções :
Legend
Outros Parâmetros :
loc str ou par de floats, padrão: rcParams["legend.loc"](padrão: 'best') ('melhor' para eixos, 'canto superior direito' para figuras)

A localização da lenda.

As strings colocam a legenda no canto correspondente dos eixos/figura.'upper left', 'upper right', 'lower left', 'lower right'

As strings colocam a legenda no centro da aresta correspondente dos eixos/figura.'upper center', 'lower center', 'center left', 'center right'

A string 'center'coloca a legenda no centro dos eixos/figura.

O barbante 'best'coloca a legenda no local, entre os nove locais definidos até o momento, com o mínimo de sobreposição com outros artistas sorteados. Esta opção pode ser bastante lenta para gráficos com grandes quantidades de dados; sua velocidade de plotagem pode se beneficiar ao fornecer um local específico.

A localização também pode ser uma tupla de 2 dando as coordenadas do canto inferior esquerdo da legenda nas coordenadas dos eixos (caso em que bbox_to_anchor será ignorado).

Para compatibilidade com versões anteriores, (mas nenhum outro local) também pode ser escrito , e cada local de "string" também pode ser fornecido como um valor numérico:'center right''right'

Cadeia de Localização

Código de localização

'melhor'

0

'canto superior direito'

1

'superior esquerdo'

2

'inferior esquerdo'

3

'inferior direito'

4

'certo'

5

'centro esquerda'

6

'centro direita'

7

'centro inferior'

8

'centro superior'

9

'Centro'

10

bbox_to_anchor BboxBase, 2 tuplas ou 4 tuplas de floats

Caixa que serve para posicionar a legenda em conjunto com loc . O padrão é axes.bbox(se chamado como um método para Axes.legend) ou figure.bbox(se Figure.legend). Este argumento permite a colocação arbitrária da legenda.

As coordenadas Bbox são interpretadas no sistema de coordenadas fornecido por bbox_transform , com as coordenadas padrão Transform Axes ou Figure, dependendo de qual legendé chamada.

Se uma tupla 4 ou BboxBasefor fornecida, ela especifica a bbox em que a legenda é colocada. Para colocar a legenda na melhor localização no quadrante inferior direito dos eixos (ou figura):(x, y, width, height)

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

Uma tupla 2 coloca o canto da legenda especificada por loc em x, y. Por exemplo, para colocar o canto superior direito da legenda no centro dos eixos (ou figura), as seguintes palavras-chave podem ser usadas:(x, y)

loc='upper right', bbox_to_anchor=(0.5, 0.5)
ncols int, padrão: 1

O número de colunas que a legenda possui.

Para compatibilidade com versões anteriores, a ortografia ncol também é suportada, mas é desencorajada. Se ambos forem fornecidos, ncols terá precedência.

prop Nenhum ou matplotlib.font_manager.FontPropertiesou dict

As propriedades da fonte da legenda. Se Nenhum (padrão), a corrente matplotlib.rcParamsserá usada.

fontsize int ou {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}

O tamanho da fonte da legenda. Se o valor for numérico, o tamanho será o tamanho absoluto da fonte em pontos. Os valores de string são relativos ao tamanho de fonte padrão atual. Este argumento só é usado se prop não for especificado.

labelcolor str ou lista, padrão: rcParams["legend.labelcolor"](padrão: 'None')

A cor do texto na legenda. Uma sequência de cores válida (por exemplo, 'vermelho') ou uma lista de sequências de cores. A labelcolor também pode ser feita para combinar com a cor da linha ou marcador usando 'linecolor', 'markerfacecolor' (ou 'mfc') ou 'markeredgecolor' (ou 'mec').

Labelcolor pode ser definido globalmente usando rcParams["legend.labelcolor"](padrão: 'None'). Se Nenhum, use rcParams["text.color"](padrão: 'black').

numpoints int, padrão: rcParams["legend.numpoints"](padrão: 1)

O número de pontos de marcador na legenda ao criar uma entrada de legenda para uma Line2D(linha).

pontos de dispersão int, padrão: rcParams["legend.scatterpoints"](padrão: 1)

O número de pontos de marcador na legenda ao criar uma entrada de legenda para um PathCollection(gráfico de dispersão).

scatteryoffsets iterável de floats, padrão:[0.375, 0.5, 0.3125]

O deslocamento vertical (relativo ao tamanho da fonte) para os marcadores criados para uma entrada de legenda do gráfico de dispersão. 0.0 está na base do texto da legenda e 1.0 está no topo. Para desenhar todos os marcadores na mesma altura, defina como [0.5].

float de escala de marcador , padrão: rcParams["legend.markerscale"](padrão: 1.0)

O tamanho relativo dos marcadores de legenda em comparação com os originalmente desenhados.

marcadorprimeiro bool, padrão: True

Se True , o marcador de legenda é colocado à esquerda do rótulo da legenda. Se False , o marcador de legenda é colocado à direita do rótulo da legenda.

frameon bool, padrão: rcParams["legend.frameon"](padrão: True)

Se a legenda deve ser desenhada em um patch (quadro).

fantasiabox bool, padrão: rcParams["legend.fancybox"](padrão: True)

Se bordas arredondadas devem ser habilitadas ao redor do FancyBboxPatchque compõe o plano de fundo da legenda.

shadow bool, padrão: rcParams["legend.shadow"](padrão: False)

Se deve desenhar uma sombra por trás da legenda.

framealpha float, padrão: rcParams["legend.framealpha"](padrão: 0.8)

A transparência alfa do plano de fundo da legenda. Se shadow estiver ativado e framealpha for None, o valor padrão será ignorado.

facecolor "herdar" ou cor, padrão: rcParams["legend.facecolor"](padrão: 'inherit')

A cor de fundo da legenda. Se "inherit", use rcParams["axes.facecolor"](padrão: 'white').

edgecolor "herdar" ou cor, padrão: rcParams["legend.edgecolor"](padrão: '0.8')

A cor da borda do patch de plano de fundo da legenda. Se "inherit", use take rcParams["axes.edgecolor"](padrão: 'black').

modo {"expandir", Nenhum}

Se mode for definido como "expand"a legenda será expandida horizontalmente para preencher a área dos eixos (ou bbox_to_anchor se definir o tamanho da legenda).

bbox_transform Nenhum oumatplotlib.transforms.Transform

A transformação para a caixa delimitadora ( bbox_to_anchor ). Para um valor de None(padrão) a transAxestransformação dos eixos será usada.

título str ou nenhum

O título da lenda. O padrão é nenhum título ( None).

title_fontproperties Nenhum ou matplotlib.font_manager.FontPropertiesou dict

As propriedades da fonte do título da legenda. Se Nenhum (padrão), o argumento title_fontsize será usado se presente; se title_fontsize também for None, o atual rcParams["legend.title_fontsize"](padrão: None) será usado.

title_fontsize int ou {'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'}, padrão: rcParams["legend.title_fontsize"](padrão: None)

O tamanho da fonte do título da legenda. Observação: isso não pode ser combinado com title_fontproperties . Se você deseja definir o tamanho da fonte juntamente com outras propriedades de fonte, use o parâmetro de tamanho em title_fontproperties .

alinhamento {'centro', 'esquerda', 'direita'}, padrão: 'centro'

O alinhamento do título da legenda e a caixa de entradas. As entradas são alinhadas como um único bloco, de modo que os marcadores estejam sempre alinhados.

borderpad flutuante, padrão: rcParams["legend.borderpad"](padrão: 0.4)

O espaço em branco fracionário dentro da borda da legenda, em unidades de tamanho de fonte.

labelpacing flutuante, padrão: rcParams["legend.labelspacing"](padrão: 0.5)

O espaço vertical entre as entradas de legenda, em unidades de tamanho de fonte.

handlelength float, padrão: rcParams["legend.handlelength"](padrão: 2.0)

O comprimento das alças da legenda, em unidades de tamanho de fonte.

handleheight float, padrão: rcParams["legend.handleheight"](padrão: 0.7)

A altura das alças da legenda, em unidades de tamanho de fonte.

handletextpad flutuante, padrão: rcParams["legend.handletextpad"](padrão: 0.8)

O pad entre a alça da legenda e o texto, em unidades de tamanho de fonte.

borderaxespad float, padrão: rcParams["legend.borderaxespad"](padrão: 0.5)

O pad entre os eixos e a borda da legenda, em unidades de tamanho de fonte.

espaçamento de colunas float, padrão: rcParams["legend.columnspacing"](padrão: 2.0)

O espaçamento entre colunas, em unidades de tamanho de fonte.

handler_map dict ou Nenhum

As instâncias ou tipos de mapeamento de dicionário personalizado para um manipulador de legenda. Este handler_map atualiza o mapa do manipulador padrão encontrado em matplotlib.legend.Legend.get_legend_handler_map.

Veja também

Axes.legend

Notas

Alguns artistas não são suportados por esta função. Consulte o guia Legend para obter detalhes.