Como mudar a posição de uma lenda em seaborn
Para alterar a posição de uma legenda em um gráfico marinho, você pode usar o comando plt.legend() .
Por exemplo, você pode usar a seguinte sintaxe para colocar a legenda no canto superior direito do gráfico:
plt. legend (loc=' upper right ')
O local padrão é “melhor” – é aqui que o Matplotlib encontra automaticamente um local para a legenda com base em onde evita cobrir os pontos de dados.
No entanto, você pode especificar um dos seguintes locais de legenda:
- Canto superior direito
- no canto superior esquerdo
- no canto inferior esquerdo
- no canto inferior direito
- CERTO
- centro-esquerda
- Centro-direita
- centro inferior
- centro superior
- Centro
Você também pode usar o argumento bbox_to_anchor() para colocar a legenda fora do gráfico. Por exemplo, você pode usar a seguinte sintaxe para colocar a legenda no canto superior direito fora do gráfico:
plt. legend (bbox_to_anchor=( 1.05 , 1 ), loc=' upper left ', borderaxespad= 0 )
Os exemplos a seguir mostram como usar cada um desses métodos na prática.
Exemplo 1: Altere a posição da legenda dentro do gráfico Seaborn
O código a seguir mostra como colocar a legenda na parte central direita de um gráfico de dispersão marinho:
import pandas as pd import seaborn as sns import matplotlib. pyplot as plt #create fake data df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B']}) #create scatterplot sns. scatterplot (data=df, x=' points ', y=' assists ', hue=' team ') #place legend in center right of plot plt. legend (loc=' center right ', title=' Team ')
E o código a seguir mostra como colocar a legenda no canto superior esquerdo de um gráfico de dispersão marinho:
#create scatterplot sns. scatterplot (data=df, x=' points ', y=' assists ', hue=' team ') #place legend in upper left of plot plt. legend (loc=' upper left ', title=' Team ')
Exemplo 2: Alterar a posição da legenda fora do gráfico Seaborn
Para colocar a legenda fora de um gráfico marinho, podemos usar o argumento bbox_to_anchor() .
Por exemplo, veja como colocar a legenda fora do canto superior direito do gráfico:
import pandas as pd import seaborn as sns import matplotlib. pyplot as plt #create fake data df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B']}) #create scatterplot sns. scatterplot (data=df, x=' points ', y=' assists ', hue=' team ') #place legend outside top right corner of plot plt. legend (bbox_to_anchor=( 1.02 , 1 ), loc=' upper left ', borderaxespad= 0 )
E veja como colocar a legenda fora do canto inferior direito do gráfico:
#create scatterplot sns. scatterplot (data=df, x=' points ', y=' assists ', hue=' team ') #place legend outside bottom right corner of plot plt. legend (bbox_to_anchor=( 1.02 , 0.15 ), loc=' upper left ', borderaxespad= 0 )
Consulte a documentação do matplotlib para uma explicação detalhada do argumento bbox_to_anchor() .
Recursos adicionais
Como ajustar o tamanho da figura de um gráfico Seaborn
Como alterar os rótulos dos eixos em um gráfico Seaborn
Como alterar o tamanho da fonte da legenda em um gráfico Seaborn