📢 Nuovo Corso Tailwind Completo disponibile!

Subplot in Matplotlib

I sottografici, noti anche come subplots, consentono di creare più grafici all’interno di una singola figura in Matplotlib. Questo è particolarmente utile quando si desidera confrontare o visualizzare più insiemi di dati in modo efficace. In questo articolo, esploreremo come creare e personalizzare i sottografici in Matplotlib.

Creare Sottografici

Per creare sottografici in Matplotlib, è possibile utilizzare la funzione subplots(). Questa funzione restituisce due oggetti: la figura (figure) e un array di assi (axes) corrispondenti ai singoli sottografici. Ecco come farlo:

import matplotlib.pyplot as plt

# Creazione di una figura con 2x2 sottografici
fig, axes = plt.subplots(nrows=2, ncols=2)

# Ora abbiamo un array di assi (axes) che rappresenta i sottografici

In questo esempio, abbiamo creato una figura con una griglia 2x2 di sottografici. L’array axes contiene quattro assi, uno per ciascun sottografico.

Personalizzazione dei Sottografici

Ogni sottografico può essere personalizzato in modo indipendente. Ad esempio, è possibile impostare titoli, etichette degli assi e personalizzare lo stile dei grafici per ciascun sottografico. Ecco un esempio di come personalizzare i sottografici:

import matplotlib.pyplot as plt
import numpy as np

# Creazione di una figura con 2x2 sottografici
fig, axes = plt.subplots(nrows=2, ncols=2)

# Dati da visualizzare
x = np.linspace(0, 2 * np.pi, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tan(x)
y4 = np.exp(x)

# Personalizzazione del primo sottografico
axes[0, 0].plot(x, y1)
axes[0, 0].set_title('Grafico Sinusoide')

# Personalizzazione del secondo sottografico
axes[0, 1].plot(x, y2)
axes[0, 1].set_title('Grafico Cosinusoide')

# Personalizzazione del terzo sottografico
axes[1, 0].plot(x, y3)
axes[1, 0].set_title('Grafico Tangente')

# Personalizzazione del quarto sottografico
axes[1, 1].plot(x, y4)
axes[1, 1].set_title('Grafico Esponenziale')

# Aggiunta delle etichette agli assi
axes[1, 0].set_xlabel('Valori di X')
axes[1, 1].set_xlabel('Valori di X')
axes[0, 0].set_ylabel('Valori di Y')

# Visualizzazione della figura con i sottografici
plt.tight_layout()  # Ottimizza il layout dei sottografici
plt.show()

In questo esempio, abbiamo creato quattro sottografici e personalizzato ciascuno di essi con titoli, etichette degli assi e stili di grafico diversi.

Condividere gli Assi

Matplotlib permette anche di condividere gli assi tra i sottografici. Questo è utile quando si desidera confrontare dati su scale simili. Ecco come farlo:

import matplotlib.pyplot as plt
import numpy as np

# Creazione di una figura con 2x2 sottografici e condivisione degli assi y
fig, axes = plt.subplots(nrows=2, ncols=2, sharey=True)

# Dati da visualizzare
x = np.linspace(0, 2 * np.pi, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tan(x)
y4 = np.exp(x)

# Personalizzazione dei sottografici (come nell'esempio precedente)

# Visualizzazione della figura con i sottografici
plt.tight_layout()
plt.show()

Nell’esempio sopra, abbiamo utilizzato sharey=True per condividere l’asse y tra tutti i sottografici.

Conclusioni

I sottografici sono uno strumento potente per la creazione di grafici multipli all’interno di una singola figura in Matplotlib. Puoi personalizzare e organizzare i sottografici in base alle tue esigenze specifiche per visualizzare e confrontare i dati in modo chiaro ed efficace.