Laden...
Schritt für Schritt
Um ein Säulen- oder Balkendiagramm zu erstellen, nutzen wir die Funktion barplot()
. Diese erfordert mindestens ein Argument, nämlich die Höhe des Balkens, z.B. 5:
barplot(5)
Dadurch erhalten wir einen großen Balken, der den gesamten Plot ausfüllt.
Verwenden wir an dieser Stelle einen Vektor, werden entsprechend viele Balken nebeneinander geplottet:
x <- c(5,2,3,6,4)
barplot(x)
Zu beachten ist dabei, dass die x-Koordinaten der Balken nicht wie vielleicht erwartet bei jeweils den vollen Zahlen, also hier 1, 2, 3, 4 und 5 liegen. Das zeigt sich, wenn man die x-Achse zusätzlich einblendet:
axis(1)
Diese x-Koordianten brauchen wir aber, wenn wir z.B. Text in Form der jeweiligen Werte oder etwa Fehlerbalken einfügen wollen. Um die tatsächlichen Positionen der Balken zu bekommen, speichern wir den Barplot in ein Objekt, z.B. "bp", und erhalten so die exakten x-Koordinaten, auf denen die Balken mittig liegen:
bp <- barplot(x)
bp
[,1]
[1,] 0.7
[2,] 1.9
[3,] 3.1
[4,] 4.3
[5,] 5.5
Wir können dem Barplot jetzt die Werte als Text hinzufügen, indem wir die text()
-Funktion verwenden. Die erforderlichen x-Koordinaten entnehmen wir dem Objekt bp
, die y-Koordinaten entsprechen x
, der eingeblendete Text (lables
) entspricht ebenfalls x
und mit pos=1
legen wir fest, dass der Text genau unterhalb der angegebenen Koordianten geplottet wird (2: links, 3: oben, 4: rechts, ohne: exakt auf der Koordinate):
text(bp,x,labels=x,pos=1)
Ist x
eine Matrix, werden die Balken standardmäßig gestapelt (beside=FALSE
) oder gruppiert nebeneinander (beside=TRUE
) dargestellt:
x <- rbind(c(5,2,3,6,4),c(5,8,7,4,6))
x
[,1] [,2] [,3] [,4] [,5]
[1,] 5 2 3 6 4
[2,] 5 8 7 4 6
par(mfrow=c(1,2))
barplot(x)
barplot(x,beside=TRUE)
In diesem Video gibt es weitere Beispiele und Erläuterungen: Balkendiagramm R