Side-by-side boxplots maken in r (met voorbeelden)


Side-by-side boxplots kunnen worden gebruikt om snel overeenkomsten en verschillen tussen verschillende distributies te visualiseren.

In deze zelfstudie wordt uitgelegd hoe u boxplots naast elkaar kunt maken in R en ggplot2 met behulp van het volgende dataframe:

 #create data frame
df <- data. frame (team=rep(c(' A ', ' B ', ' C '), each= 8 ),
                 points=c(5, 5, 6, 6, 8, 9, 13, 15,
                          11, 11, 12, 14, 15, 19, 22, 24,
                          19, 23, 23, 23, 24, 26, 29, 33))

#view first 10 rows
head(df, 10)

   team points
1 to 5
2 to 5
3 to 6
4 to 6
5 to 8
6 to 9
7 to 13
8 to 15
9 B 11
10 B 11

Zij-aan-zij R-gebaseerde boxplots

De volgende code laat zien hoe u boxplots naast elkaar maakt in basis R:

 #create vertical side-by-side boxplots
boxplot(df$points ~ df$team,
        col=' steelblue ',
        main=' Points by Team ',
        xlab=' Team ',
        ylab=' Points ') 

Zij-aan-zij R-gebaseerde boxplots

We kunnen het argument horizontaal=TRUE gebruiken om de boxplots horizontaal in plaats van verticaal weer te geven:

 #create horizontal side-by-side boxplots
boxplot(df$points ~ df$team,
        col=' steelblue ',
        main=' Points by Team ',
        xlab=' Points ',
        ylab=' Team ',
        horizontal= TRUE ) 

Boxplots naast elkaar in ggplot2

De volgende code laat zien hoe u verticale boxplots naast elkaar kunt maken in ggplot2:

 library (ggplot2)

#create vertical side-by-side boxplots
ggplot(df, aes(x=team, y=points, fill=team)) +
  geom_boxplot() +
  ggtitle(' Points by Team ') 

En we kunnen het argument coord_flip() gebruiken om de boxplots horizontaal weer te geven in plaats van verticaal:

 library (ggplot2)

#create horizontal side-by-side boxplots
ggplot(df, aes(x=team, y=points, fill=team)) +
  geom_boxplot() +
  coordinate_flip() +
  ggtitle(' Points by Team ') 

Aanvullende bronnen

Hoe maak je een staafdiagram in R
Hoe teken je meerdere lijnen in R
Hoe maak je een bevolkingspiramide in R

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert