Hoe je een gegroepeerde boxplot in r maakt met ggplot2
Boxplots zijn handig voor het visualiseren van de vijfcijferige samenvatting van een dataset, waaronder:
- Minimum
- Het eerste kwartiel
- De mediaan
- Het derde kwartiel
- Het maximum
Gerelateerd: Een zachte introductie tot boxplots
Gelukkig is het eenvoudig om boxplots in R te maken met behulp van de ggplot2- visualisatiebibliotheek.
Het omvat ook het maken van boxplots gegroepeerd op een bepaalde variabele in een dataset. Stel dat we bijvoorbeeld de volgende dataset hebben die de efficiëntieverbetering weergeeft van 150 basketbalspelers uit drie verschillende teams op basis van twee verschillende trainingsprogramma’s:
#define variables team=rep(c('A', 'B', 'C'), each =50) program=rep(c('low', 'high'), each =25) increase=seq(1:150)+sample(1:100, 100, replace= TRUE ) #create dataset using variables data=data.frame(team, program, increase) #view first six rows of dataset head(data) team program increase 1 A low 62 2 A low 37 3 A low 49 4 A low 60 5 A low 64 6 A low 105
We kunnen de volgende code gebruiken om boxplots te maken die de toename in spelersefficiëntie weergeven, gegroepeerd per team en gevuld op basis van het trainingsschema:
library (ggplot2) ggplot(data, aes(x=team, y=increase, fill=program)) + geom_boxplot ()
We kunnen een vergelijkbare syntaxis gebruiken om boxplots te maken die de toename in spelersefficiëntie weergeven, gegroepeerd op trainingsprogramma en ingevuld per team:
library (ggplot2) ggplot(data, aes(x=program, y=increase, fill=team)) + geom_boxplot ()
Een soortgelijk alternatief is het gebruik van faceting , waarbij elke subgroep in een eigen paneel wordt weergegeven:
library (ggplot2) ggplot(data, aes(x=team, y=increase, fill=program)) + geom_boxplot () + facet_wrap (~program)
Afhankelijk van de gegevens waarmee u werkt, voldoet het maken van facetten wel of niet aan uw visualisatiebehoeften.
Aanvullende bronnen
Hoe uitbijters in boxplots in R te verwijderen
Hoe zij-aan-zij-plots te maken in ggplot2
Een complete gids voor de beste ggplot2-thema’s