Panda: come creare un grafico a barre per visualizzare i 10 valori principali


Puoi utilizzare la seguente sintassi di base per creare un grafico a barre in panda che includa solo i 10 valori più frequenti in una colonna specifica:

 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')

L’esempio seguente mostra come utilizzare questa sintassi nella pratica.

Esempio: crea un grafico a barre in Pandas per visualizzare i primi 10 valori

Supponiamo di avere il seguente DataFrame panda che contiene informazioni sul nome della squadra e sui punti segnati da 500 diversi giocatori di basket:

 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

Possiamo utilizzare la seguente sintassi per creare un grafico a barre che mostri i 10 valori più frequenti nella colonna squadra :

 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 ') 

Il grafico a barre contiene solo i nomi delle 10 squadre più frequenti.

L’asse x mostra il nome della squadra e l’asse y mostra la frequenza.

Tieni presente che possiamo anche personalizzare la trama per renderla esteticamente più gradevole:

 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 ')

Nota che l’argomento edgecolor ha aggiunto un bordo nero attorno a ciascuna barra e l’argomento rot ha ruotato le etichette dell’asse x di 90 gradi per renderle più facili da leggere.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni nei panda:

Panda: come creare un grafico a barre in pila
Panda: come annotare le barre in un grafico a barre
Panda: come tracciare più colonne su un grafico a barre

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *