Fazer a Lenda do Terreno de Dispersão em Matplotlib

Fazer a Lenda do Terreno de Dispersão em Matplotlib

  1. Adicionar uma legenda ao gráfico de dispersão 2D em Matplotlib
  2. Adicionar uma lenda ao gráfico de dispersão 3D em Matplotlib

A legenda é simplesmente a descrição de vários elementos de uma figura. Podemos gerar uma legenda do gráfico de dispersão utilizando a função matplotlib.pyplot.legend.

Adicionar uma legenda ao gráfico de dispersão 2D em Matplotlib

import numpy as np
import matplotlib.pyplot as plt 

x=[1,2,3,4,5]

y1=[i**2 for i in x]
y2=[2*i+1 for i in x]

plt.scatter(x,y1,marker="x",color='r',label="x**2")
plt.scatter(x,y2,marker="o",color='b',label="2*x+1")
plt.legend()
plt.show()

Resultado:

Adicionar legenda a um gráfico de dispersão 2D

Temos duas parcelas de dispersão separadas na figura: uma representada por x e outra pela marca o. Atribuímos o label a cada gráfico de dispersão utilizado como uma etiqueta enquanto geramos a legenda. Depois, criamos a legenda na figura utilizando a função legend() e finalmente exibimos a figura inteira utilizando o método show().

Podemos também passar directamente um array de etiquetas como argumento para o método legend() e alterar a posição da legenda utilizando o parâmetro loc do método legend().

import numpy as np
import matplotlib.pyplot as plt 

x=[1,2,3,4,5]

y1=[i**2 for i in x]
y2=[2*i+1 for i in x]

plt.scatter(x,y1,marker="x",color='r')
plt.scatter(x,y2,marker="o",color='b')
plt.legend(("x**2","2*x+1"),loc="center left")
plt.show()

Resultado:

Adicionar legenda a um gráfico de dispersão 2D especificando a localização em Matplotlib

Este processo cria uma figura com duas parcelas de dispersão e uma lenda colocada no centro à esquerda da caixa de fronteira dos eixos.

Adicionar uma lenda ao gráfico de dispersão 3D em Matplotlib

import matplotlib.pyplot as plt

x=[1,2,3,4,5]
y=[2,1,4,5,6]

z1=[i+j for (i,j) in zip(x, y)]
z2=[3*i-j for (i,j) in zip(x, y)]

axes = plt.subplot(111, projection='3d')
axes.plot(x,y,z1,"x",label="x+y")
axes.plot(x,y,z2,"o",label="3*x-y")

plt.legend(loc="upper left")
plt.show()

Resultado:

Adicionar legenda a um gráfico de dispersão 3D

Para criar uma legenda para o gráfico de dispersão 3D, utilizamos o método plot() em vez do método scatter(); é porque o método legend() não suporta Patch3DCollection devolvido pelo método scatter() da instância Axes3D.

Artigo relacionado - Matplotlib Scatter Plot

  • Como plotar a lista de coordenadas X,y em Matplotlib
  • Definir Cor para Scatterplot em Matplotlib
  • Pontos de Lote em Matplotlib
  • Pontos de dispersão de etiquetas Matplotlib
  • Artigo relacionado - Matplotlib Legend

  • Como colocar a lenda fora do terreno em Matplotlib
  • Como mudar o tamanho da fonte Legenda em Matplotlib
  • Como criar uma única legenda para todos os subquadros em Matplotlib
  • Como mudar a largura de linha das linhas em Matplotlib Legend
  • Como remover a lenda em Matplotlib
  • Título da legenda do Matplotlib