Matplotlib - Trama di violino

I grafici del violino sono simili ai grafici a scatole, tranne per il fatto che mostrano anche la densità di probabilità dei dati a valori diversi. Questi grafici includono un marker per la mediana dei dati e un riquadro che indica l'intervallo interquartile, come nei box plot standard. Sovrapposta a questo box plot c'è una stima della densità del kernel. Come i box plot, i grafici per violino vengono utilizzati per rappresentare il confronto di una distribuzione variabile (o distribuzione campione) tra diverse "categorie".

La trama di un violino è più istruttiva di una semplice trama a scatola. Infatti, mentre un box plot mostra solo statistiche riassuntive come media / mediana e intervalli interquartili, il grafico del violino mostra la distribuzione completa dei dati.

import matplotlib.pyplot as plt

np.random.seed(10)
collectn_1 = np.random.normal(100, 10, 200)
collectn_2 = np.random.normal(80, 30, 200)
collectn_3 = np.random.normal(90, 20, 200)
collectn_4 = np.random.normal(70, 25, 200)

## combine these different collections into a list
data_to_plot = [collectn_1, collectn_2, collectn_3, collectn_4]

# Create a figure instance
fig = plt.figure()

# Create an axes instance
ax = fig.add_axes([0,0,1,1])

# Create the boxplot
bp = ax.violinplot(data_to_plot)
plt.show()