Ricerca…


Funzione Boxplot

Matplotlib ha la propria implementazione di boxplot . Gli aspetti rilevanti di questa funzione sono che, per impostazione predefinita, il grafico a scatole mostra la mediana (percentile 50%) con una linea rossa. La scatola rappresenta Q1 e Q3 (percentili 25 e 75), e i baffi danno un'idea del range dei dati (possibilmente a Q1 - 1.5 IQR; Q3 + 1.5 IQR, essendo IQR l'intervallo interquartile, ma questo manca di conferma). Si noti inoltre che i campioni oltre questo intervallo sono indicati come indicatori (questi sono chiamati volantini).

NOTA: non tutte le implementazioni di boxplot seguono le stesse regole. Forse il diagramma del boxplot più comune usa i baffi per rappresentare il minimo e il massimo (rendendo inesistenti i volantini). Si noti inoltre che questa trama è talvolta chiamato plot box-and-whisker e schema box-and-whisker.

La seguente ricetta mostra alcune delle cose che puoi fare con l'attuale implementazione di matplotlib di boxplot:

import matplotlib.pyplot as plt
import numpy as np

X1 = np.random.normal(0, 1, 500)
X2 = np.random.normal(0.3, 1, 500)

# The most simple boxplot
plt.boxplot(X1)
plt.show()

# Changing some of its features
plt.boxplot(X1, notch=True, sym="o") # Use sym="" to shown no fliers; also showfliers=False
plt.show()

# Showing multiple boxplots on the same window
plt.boxplot((X1, X2), notch=True, sym="o", labels=["Set 1", "Set 2"])
plt.show()

# Hidding features of the boxplot
plt.boxplot(X2, notch=False, showfliers=False, showbox=False, showcaps=False, positions=[4], labels=["Set 2"])
plt.show()

# Advanced customization of the boxplot
line_props = dict(color="r", alpha=0.3)
bbox_props = dict(color="g", alpha=0.9, linestyle="dashdot")
flier_props = dict(marker="o", markersize=17)
plt.boxplot(X1, notch=True, whiskerprops=line_props, boxprops=bbox_props, flierprops=flier_props)
plt.show()

Questo risulta nei seguenti grafici:

Boxplot matplotlib predefinito

  1. Boxplot matplotlib predefinito

Modifica di alcune funzionalità del boxplot utilizzando gli argomenti della funzione

  1. Modifica di alcune funzionalità del boxplot utilizzando gli argomenti della funzione

Boxplot multiplo nella stessa finestra del grafico

  1. Boxplot multiplo nella stessa finestra del grafico

Hidding alcune caratteristiche del boxplot

  1. Hidding alcune caratteristiche del boxplot

Personalizzazione avanzata di un boxplot utilizzando oggetti di scena

  1. Personalizzazione avanzata di un boxplot utilizzando oggetti di scena

Se hai intenzione di fare alcune personalizzazioni avanzate del tuo boxplot dovresti sapere che i dizionari dei puntelli che hai costruito (per esempio):

line_props = dict(color="r", alpha=0.3)
bbox_props = dict(color="g", alpha=0.9, linestyle="dashdot")
flier_props = dict(marker="o", markersize=17)
plt.boxplot(X1, notch=True, whiskerprops=line_props, boxprops=bbox_props, flierprops=flier_props)
plt.show()

... si riferiscono principalmente (se non tutti) a oggetti Line2D . Ciò significa che solo gli argomenti disponibili in quella classe sono modificabili. Noterai l'esistenza di parole chiave come whiskerprops , boxprops , flierprops e capprops . Questi sono gli elementi necessari per fornire un dizionario di oggetti di scena per personalizzarlo ulteriormente.

NOTA: un'ulteriore personalizzazione del boxplot che utilizza questa implementazione potrebbe rivelarsi difficile. In alcuni casi l'uso di altri elementi matplotlib come le patch per costruire il proprio boxplot può essere vantaggioso (ad esempio, modifiche considerevoli all'elemento box).



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow