barplot ist wirklich eine komische Funktion. Wenn ich sowas einmal bräuchte, würde ich es mir schnell selbst programmieren, das geht recht leicht und ist extrem flexibel.
Code: Alles auswählen
messung <- data.frame(id = 1:3,
mittel = c(3.2, 1.5, 5.6),
stdabw = c(.5, .9, 1.2))
plot(messung$id, messung$mittel, ylim=c(0,8), main="toller Plot")
for(i in 1:nrow(messung)){
id <- messung$id[i]
mittel <- messung$mittel[i]
untere <- messung$mittel[i] - messung$stdabw[i]
obere <- messung$mittel[i] + messung$stdabw[i]
lines(x = c(id, id), y = c(untere, obere), type="l")
print(i)
}
Wenn man lieber auf vorgefertigte Funktionen zurückgreifen möchte gibt es davon unzählige in vielen Paketen. Im Paket Hmisc findet man da was und im Paket psych aber bestimmt noch in unzähligen anderen.
https://lmgtfy.com/?q=R+error+bars&s=l
Ansonsten gibt es den ganz großen Trend, Grafiken mit dem Paket ggplot2 zu machen. Als Anfänger für eine einzige Grafik muss man überlegen, ob man da einsteigen will. Wenn ja, hilft geom_errorbar oder geom_errorbarh weiter. Ganz klarer Pluspunkt: Man muss sich dann mit der Funktion barplot nie wieder herumschlagen.
Code: Alles auswählen
messung <- data.frame(id = 1:3,
mittel = c(3.2, 1.5, 5.6),
stdabw = c(.5, .9, 1.2))
library(ggplot2)
ggplot(messung) +
geom_bar(aes(x=id, y=mittel), stat = "identity", fill = "grey") +
geom_errorbar(aes(x = id, ymin = mittel - stdabw, ymax = mittel + stdabw), width=.3)
LG,
Bernhard