So erstellen sie einen violinplot in ggplot2 (mit beispielen)
Sie können die folgenden Methoden verwenden, um einen Geigenplot in ggplot2 zu erstellen:
Methode 1: Geigenplots nach Gruppen erstellen
ggplot(df, aes(x=group_var, y=values_var, fill=group_var)) +
geom_violin() +
Methode 2: Erstellen Sie horizontale Geigenpfade nach Gruppen
ggplot(df, aes(x=group_var, y=values_var, fill=group_var)) +
geom_violin() +
coordinate_flip()
Methode 3: Erstellen Sie Violindiagramme nach Gruppen und zeigen Sie den Medianwert an
ggplot(df, aes(x=group_var, y=values_var, fill=group_var)) +
geom_violin() +
stat_summary(fun=median, geom=' point ', size= 2 )
Die folgenden Beispiele zeigen, wie jede Methode in der Praxis mit dem folgenden Datenrahmen in R verwendet wird:
#make this example reproducible
set. seeds (1)
#create data frame
df <- data. frame (team=rep(c(' A ', ' B ', ' C '), each= 100 ),
points=c(rnorm(100, mean=10),
rnorm(100, mean=15),
rnorm(100, mean=20)))
#view head of data frame
head(df)
team points
1 A 9.373546
2 A 10.183643
3 A 9.164371
4 A 11.595281
5 A 10.329508
6 A 9.179532
Hinweis : Wir haben die Funktion set.seed() verwendet, um sicherzustellen, dass dieses Beispiel reproduzierbar ist.
Beispiel 1: Geigendurchzeichnungen nach Gruppe erstellen
Wir können die folgende Syntax verwenden, um Geigendiagramme zu erstellen, die die Verteilung der Punktevariablen , gruppiert nach der Teamvariablen , zeigen:
library (ggplot2)
#create violin plot to visualize distribution of points by team
ggplot(df, aes(x=team, y=points, fill=team)) +
geom_violin()
Die x-Achse zeigt jedes Team und die y-Achse zeigt die Verteilung der von jedem Team erzielten Punkte.
Beispiel 2: Geigenspuren nach Gruppe erstellen
Um horizontale Geigendiagramme zu erstellen, die die Verteilung der Punktevariablen gruppiert nach der Teamvariablen zeigen, fügen Sie einfach die Funktion coord_flip() hinzu:
library (ggplot2)
#create horizontal violin plots to visualize distribution of points by team
ggplot(df, aes(x=team, y=points, fill=team)) +
geom_violin() +
coordinate_flip()
Die y-Achse zeigt jedes Team und die x-Achse zeigt die Verteilung der von jedem Team erzielten Punkte.
Beispiel 3: Geigendiagramme nach Gruppen erstellen und den Medianwert anzeigen
Der folgende Code zeigt, wie Violindiagramme erstellt werden, die die Verteilung der Punktevariablen , gruppiert nach der Teamvariablen , zeigen, wobei der mittlere Punktwert durch einen Kreis dargestellt wird:
library (ggplot2)
#create violin plots and display median points value as circle
ggplot(df, aes(x=team, y=points, fill=team)) +
geom_violin() +
stat_summary(fun=median, geom=' point ', size= 2 )
Der mittlere Punktwert für jedes Team wird durch einen kleinen Kreis innerhalb jedes Geigendiagramms dargestellt.
Hinweis : Um den Kreis zu vergrößern, erhöhen Sie einfach den Wert des Größenarguments in der Funktion stat_summary() .
Zusätzliche Ressourcen
Die folgenden Tutorials erklären, wie Sie andere häufige Aufgaben in ggplot2 ausführen:
So ändern Sie die Schriftgröße in ggplot2
So entfernen Sie eine Legende in ggplot2
So drehen Sie Achsenbeschriftungen in ggplot2