matplotlib
boxplots
Zoeken…
Boxplot-functie
Matplotlib heeft een eigen implementatie van boxplot . De relevante aspecten van deze functie is dat de boxplot standaard de mediaan (percentiel 50%) met een rode lijn toont. Het vak staat voor Q1 en Q3 (percentielen 25 en 75), en de snorharen geven een idee van het bereik van de gegevens (mogelijk bij Q1 - 1,5 IQR; Q3 + 1,5 IQR; zijnde IQR het interkwartielbereik, maar dit ontbreekt bevestiging). Merk ook op dat monsters buiten dit bereik worden weergegeven als markeringen (deze worden folders genoemd).
OPMERKING: niet alle implementaties van boxplot volgen dezelfde regels. Misschien gebruikt het meest gebruikelijke boxplot-diagram de snorharen om het minimum en maximum weer te geven (waardoor vliegers niet bestaan). Merk ook op dat deze plot soms box-and-whisker plot en box-and-whisker- diagram wordt genoemd .
Het volgende recept toont enkele dingen die u kunt doen met de huidige matplotlib-implementatie van 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()
Dit resulteert in de volgende plots:
- Standaard matplotlib boxplot
- Bepaalde functies van de boxplot wijzigen met functieargumenten
- Meerdere boxplot in hetzelfde plotvenster
- Enkele functies van de boxplot verbergen
- Geavanceerde aanpassing van een boxplot met behulp van rekwisieten
Als u van plan bent om wat geavanceerde aanpassingen aan uw boxplot te doen, moet u weten dat de props- woordenboeken die u maakt (bijvoorbeeld):
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()
... verwijs meestal (zo niet alle) naar Line2D- objecten. Dit betekent dat alleen argumenten die in die klasse beschikbaar zijn, kunnen worden gewijzigd. U zult het bestaan van trefwoorden zoals whiskerprops
, boxprops
, flierprops
en capprops
. Dit zijn de elementen die je nodig hebt om een woordenboek met rekwisieten te maken om het verder aan te passen.
OPMERKING: Verdere aanpassing van de boxplot met behulp van deze implementatie kan moeilijk blijken. In sommige gevallen kan het gebruik van andere matplotlib-elementen, zoals patches om een eigen boxplot te bouwen, voordelig zijn (bijvoorbeeld aanzienlijke wijzigingen in het box-element).