Pandas: como criar um gráfico de barras para visualizar os 10 principais valores


Você pode usar a seguinte sintaxe básica para criar um gráfico de barras no pandas que inclua apenas os 10 valores mais frequentes em uma coluna específica:

 import pandas as pd
import matplotlib. pyplot as plt

#find values with top 10 occurrences in 'my_column'
top_10 = (df[' my_column ']. value_counts ()). iloc [:10]

#create bar chart to visualize top 10 values
top_10. plot (kind='bar')

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: crie um gráfico de barras no Pandas para visualizar os 10 principais valores

Suponha que temos o seguinte DataFrame do pandas que contém informações sobre o nome do time e os pontos marcados por 500 jogadores de basquete diferentes:

 import pandas as pd
import numpy as np
from string import ascii_uppercase
import random
from random import choice

#make this example reproducible
random. seeds (1)
n.p. random . seeds (1)

#createDataFrame
df = pd. DataFrame ({' team ': [choice(ascii_uppercase) for _ in range(500)],
                   ' points ': np. random . uniform (0, 20, 500)})

#view first five rows of DataFrame
print ( df.head ())

  team points
0 E 8.340440
1 S 14.406490
2 Z 0.002287
3 Y 6.046651
4 C 2.935118

Podemos usar a seguinte sintaxe para criar um gráfico de barras que exiba os 10 valores mais frequentes na coluna da equipe :

 import matplotlib. pyplot as plt

#find teams with top 10 occurrences
top_10_teams = (df[' team ']. value_counts ()).[:10]

#create bar chart of top 10 teams
top_10_teams. plot (kind=' bar ') 

O gráfico de barras contém apenas os nomes das 10 equipes mais frequentes.

O eixo x exibe o nome da equipe e o eixo y exibe a frequência.

Observe que também podemos personalizar o enredo para torná-lo mais esteticamente agradável:

 import matplotlib. pyplot as plt

#find teams with top 10 occurrences
top_10_teams = (df[' team ']. value_counts ()).[:10]

#create bar chart of top 10 teams
top_10_teams. plot (kind=' bar ', edgecolor=' black ', rot=0)

#add axis labels
plt. xlabel (' Team ')
plt. ylabel (' Frequency ')

Observe que o argumento edgecolor adicionou uma borda preta ao redor de cada barra e o argumento rot girou os rótulos do eixo x 90 graus para torná-los mais fáceis de ler.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:

Pandas: como criar um gráfico de barras empilhadas
Pandas: como anotar barras em um gráfico de barras
Pandas: como plotar múltiplas colunas em um gráfico de barras

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *