Raincloud-Plot in R: Verteilung, Boxplot und Rohdaten in einem
R
ggplot2
Visualisierung
Wahlen
Autor:in
DI Dr. Johannes Hofrichter
Veröffentlichungsdatum
20. Juli 2026
Ein Raincloud-Plot zeigt drei Sichten auf dieselben Daten gleichzeitig: die Dichtekurve als „Wolke”, den Boxplot mit Median und Quartilen und die einzelnen Rohwerte als „Regen” darunter.
Der klassische Boxplot fasst eine Verteilung auf fünf Kennzahlen zusammen – praktisch, aber er verschweigt, wie die Werte tatsächlich liegen. Zwei völlig verschiedene Verteilungen können denselben Boxplot ergeben. Der Raincloud-Plot umgeht das, indem er Dichtekurve, Boxplot und Rohdaten übereinanderlegt: Form, Streuung und jeder einzelne Punkt auf einen Blick. Ich zeige das an der Wahlbeteiligung bei der Nationalratswahl 2024, heruntergebrochen auf jede einzelne Gemeinde und gruppiert nach Bundesland.
Die Daten
Die Rohdaten kommen vom Bundesministerium für Inneres (endgültiges Ergebnis der Nationalratswahl 2024). Das ist eine Excel-Datei mit einer Zeile je Gemeinde, die ich mit read_excel() einlese.
Aus der Gemeindekennziffer (GKZ) filtere ich die echten Gemeinden heraus – Bundesland-Summen und Wahlkarten-Zeilen fliegen raus. Aus dem zweiten Zeichen der GKZ leite ich das Bundesland ab und berechne die Wahlbeteiligung als Anteil der abgegebenen an den wahlberechtigten Stimmen. Zum Schluss sortiere ich die Bundesländer nach ihrer Median-Wahlbeteiligung, damit die y-Achse später eine sinnvolle Reihenfolge hat.
Die „Wolke” entsteht durch stat_halfeye() aus dem Paket ggdist – eine halbe Dichtekurve mit zwei Intervallbändern (50 % und 95 %). Über justification = -0.15 schiebe ich sie nach oben, darunter setze ich mit geom_boxplot() einen schmalen Boxplot und mit geom_point() den „Regen” der einzelnen Gemeinden, leicht nach unten versetzt und transparent. Die Spectral-Palette gibt jedem Bundesland eine eigene Farbe.
Die Grafik liest sich so: Die obere Wolke zeigt die Form der Verteilung, der Boxplot in der Mitte Median und Quartile, jeder Punkt unten ist eine Gemeinde. Bundesländer mit breiter Wolke und weit gestreuten Punkten sind in sich uneinheitlicher als solche mit kompakter Verteilung. Als Variante können Sie statt des Boxplots nur das Intervallband zeigen oder die Punkte mit geom_jitter() stärker auffächern.
Eigene Daten so darstellen?
Aussagekräftige Grafiken sind für mich der sichtbare Teil einer sauberen Datenanalyse. Wenn Sie ggplot2 und ggdist selbst beherrschen möchten, ist der Visualisierungskurs der richtige Einstieg. Weitere moderne Diagrammtypen zeige ich im Ridgeline-Plot, im Dumbbell-Chart und im Bump-Chart.