Quando si inizia a lavorare con i dati in Python, uno dei passaggi più utili è imparare a creare grafici pandas in modo rapido e leggibile. Pandas, infatti, non serve soltanto per organizzare tabelle e filtrare informazioni: offre anche strumenti molto comodi per trasformare i dati in rappresentazioni visive immediate. Questo approccio è particolarmente vantaggioso per chi è alle prime armi, perché permette di ottenere risultati chiari con poche righe di codice.
In questa guida pratica di Gedemy vedremo come usare Pandas per costruire alcuni tra i grafici più comuni: grafici a linee, grafici a barre e grafici a torta. Seguiremo un percorso semplice, ma concreto, così da capire non solo come scrivere il codice, ma anche quando utilizzare ogni visualizzazione.
Come importare le librerie per creare grafici con Pandas
Per iniziare, bisogna importare le librerie necessarie. Nella maggior parte dei casi, per creare grafici pandas si usano pandas e matplotlib. Pandas si occupa della gestione dei dati, mentre Matplotlib è il motore grafico che consente di mostrare i diagrammi sullo schermo.
import pandas as pd
import matplotlib.pyplot as plt
Questa è la base di partenza per quasi tutti gli esempi. Anche se Pandas rende il lavoro molto immediato, è bene sapere che dietro molti grafici c’è proprio Matplotlib. Per questo motivo, l’importazione di entrambe le librerie è una prassi consolidata.
Creare un DataFrame di esempio per i grafici Pandas
Prima di disegnare un grafico, serve un insieme di dati ben organizzato. In Pandas, la struttura più usata è il DataFrame, cioè una tabella con righe e colonne. Per fare qualche prova, possiamo creare un piccolo dataset contenente mesi, vendite e ordini.
dati =
{
"Mese": ["Gennaio", "Febbraio", "Marzo", "Aprile"],
"Vendite": [100, 150, 130, 170],
"Ordini": [20, 25, 22, 30]
}
df = pd.DataFrame(dati)
Con questo DataFrame abbiamo già un materiale utile per realizzare diversi tipi di visualizzazione. È un esempio semplice, ma molto efficace per comprendere come creare grafici pandas senza complicazioni inutili.
Se vuoi verificare il contenuto della tabella prima di procedere, puoi stampare il DataFrame:
print(df)
Come creare un grafico a linee
Il grafico a linee è ideale quando si desidera mostrare l’andamento di un valore nel tempo o lungo una sequenza ordinata. È uno dei grafici più usati in assoluto, perché permette di individuare rapidamente crescite, cali e tendenze.
Per esempio, possiamo rappresentare l’andamento delle vendite nei vari mesi:
df.plot(
x="Mese",
y="Vendite",
kind="line",
title="Andamento delle vendite"
)
plt.show()
Con questo codice, Pandas usa la colonna Mese come asse orizzontale e la colonna Vendite come asse verticale. Il parametro kind=”line” specifica che vogliamo un grafico a linee.
Questo tipo di visualizzazione è particolarmente adatto per dati cronologici, dati mensili, settimanali o giornalieri. Se l’obiettivo è mostrare un’evoluzione, il grafico a linee è quasi sempre una scelta molto solida.
Possiamo anche personalizzare leggermente il risultato, ad esempio cambiando colore o dimensione della figura:
df.plot(
x="Mese",
y="Vendite",
kind="line",
figsize=(8, 4),
color="blue",
title="Vendite mensili"
)
plt.show()
Questa semplicità è uno dei motivi per cui molte persone scelgono Pandas quando devono iniziare a visualizzare dati senza entrare subito in strumenti più complessi.
Guida pratica al grafico a barre
Il grafico a barre è molto utile quando si vogliono confrontare valori distinti tra loro. A differenza del grafico a linee, qui l’attenzione non è tanto sull’andamento continuo, quanto sul confronto diretto tra categorie.
Se vogliamo confrontare il numero di ordini per ogni mese, possiamo usare questo codice:
df.plot(
x="Mese",
y="Ordini",
kind="bar",
title="Numero di ordini per mese"
)
plt.show()
Il parametro kind=”bar” dice a Pandas di generare un grafico a barre verticali. È una soluzione molto leggibile quando si hanno categorie ben separate, come mesi, reparti, prodotti o aree geografiche.
Se invece vuoi confrontare più colonne nello stesso grafico, puoi selezionarle insieme:
df.plot(
x="Mese",
y=["Vendite", "Ordini"],
kind="bar",
title="Confronto tra vendite e ordini"
)
plt.show()
In questo caso, per ogni mese vedrai più barre affiancate. È una modalità molto pratica per leggere differenze e proporzioni in modo immediato. Quando si deve creare grafici pandas per un report semplice o un’analisi preliminare, il grafico a barre è spesso una delle opzioni più efficaci.
Creare un grafico a torta con Pandas in modo semplice
Il grafico a torta serve a mostrare come un totale si distribuisce tra diverse categorie. Va usato con attenzione, perché funziona bene solo quando le categorie sono poche e ben distinguibili. Se ci sono troppi valori, la lettura può diventare confusa.
Per realizzarne uno con Pandas, conviene spesso impostare una colonna come indice. Ad esempio:
df_torta = df.set_index("Mese")
df_torta["Vendite"].plot(
kind="pie",
autopct="%1.1f%%",
title="Distribuzione delle vendite"
)
plt.ylabel("")
plt.show()
Qui stiamo creando un grafico a torta basato sulle vendite, distribuite per mese. Il parametro autopct=”%1.1f%%” aggiunge le percentuali sulle fette, rendendo il grafico più chiaro. La riga plt.ylabel(“”) serve invece a rimuovere un’etichetta verticale spesso poco elegante in questo tipo di visualizzazione.
Il grafico a torta può essere utile in presentazioni rapide, dashboard essenziali o contesti in cui si vuole evidenziare il peso relativo di ogni categoria. Non è sempre la soluzione migliore, ma in alcuni casi rimane una scelta valida e intuitiva.