Como plotar duas colunas do pandas dataframe
Existem duas maneiras comuns de plotar os valores de duas colunas em um DataFrame do pandas:
Método 1: plotar duas colunas como pontos em um gráfico de dispersão
import matplotlib. pyplot as plt
plt. scatter (df[' column1 '], df[' column2 '])
Método 2: plotar duas colunas como linhas em um gráfico de linhas
df. plot (x=' column1 ',y=[' column2 ',' column3 '])
Os exemplos a seguir mostram como usar cada método na prática.
Exemplo 1: plotar duas colunas em um gráfico de dispersão
Suponha que temos o seguinte DataFrame do pandas que contém informações sobre vários jogadores de basquete:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
' points ': [18, 22, 19, 14, 14, 11, 20, 28],
' assists ': [5, 7, 7, 9, 12, 9, 9, 4]})
#view DataFrame
print (df)
team points assists
0 to 18 5
1 B 22 7
2 C 19 7
3 D 14 9
4 E 14 12
5 F 11 9
6 G 20 9
7:28 a.m. 4
Podemos usar o código a seguir para criar um gráfico de dispersão que exibe a coluna de pontos no eixo x e a coluna de assistências no eixo y:
import matplotlib. pyplot as plt
#create scatterplot
plt. scatter (df[' points '], df[' assists '])
#add axis labels
plt. xlabel (' Points ')
plt. ylabel (' Assists ')
O eixo X contém os valores da coluna de pontos e o eixo Y contém os valores da coluna de assistências .
Exemplo 2: plotar duas colunas em um gráfico de linhas
Suponha que temos o seguinte DataFrame do pandas que contém informações sobre pontos marcados e pontos permitidos por um time de basquete em seis jogos diferentes:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' game ': [1, 2, 3, 4, 5, 6],
' points_for ': [99, 94, 92, 90, 87, 85],
' points_against ': [89, 76, 78, 78, 85, 87]})
#view DataFrame
print (df)
game points_for points_against
0 1 99 89
1 2 94 76
2 3 92 78
3 4 90 78
4 5 87 85
5 6 85 87
Podemos usar o código a seguir para criar um gráfico de linhas que exibe os valores de point_for em uma linha e points_against em outra linha enquanto usamos o valor de game no eixo x:
#plot points_for and points_against columns on same y-axis
df. plot (x=' game ', y=[' points_for ', ' points_against '])
A linha azul representa os valores da coluna points_for em cada jogo e a linha laranja representa os valores da coluna points_against em cada jogo.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:
Como usar Groupby e Plot no Pandas
Como traçar a distribuição dos valores das colunas no Pandas
Como ajustar o tamanho da figura de um gráfico de panda