Fehlerbalken in barplot()

Wie erstelle ich Grafiken, was ist zu beachten?

Moderatoren: EDi, jogo

Antworten
Karuna
Beiträge: 8
Registriert: Mi Jan 20, 2021 9:44 am

Fehlerbalken in barplot()

Beitrag von Karuna »

Hallo Leute,

hätte da mal eine Frage, ich komme leider nicht weiter. Ich arbeite mit barplot() um meine Säulendiagramme zu erstellen. Das klappt auch gut. Für die Fehlerbalken arbeite ich mit arrows(). Da gibt es nur ein Problem: wenn ich die Funktion wie folgt eingebe, erscheint der Fehlerbalken von der ersten Säule an allen drei Säulen, bzw. nicht am richtigen Platz. Wie kann ich R sagen, dass es den ersten arrow nur am ersten plot und auch genau auf dem ersten Plot einfügen soll?

bplot <- barplot(c(mean(a),mean(b), mean(c)) ### barplot mit 3 Säulen

arrows(bplot, mean(a)+sd(a), bplot, mean(a) - sd(a), ### x=bplot -> Fehlerbalken von a an ALLEN Säulen
angle=90, code=3, length = 0.1)

arrows(mean(a), mean(a)+sd(a),mean(a), mean(a) - sd(a), #### x = mean(a) -> nur einen Fehlerbalken, aber leider nicht auf der ersten Säule
angle=90, code=3, length = 0.1) sondern irgendwo dazwischen....


Vielen lieben Dank schonmal im Voraus :) Bleibt gesund!!

Karuna
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Fehlerbalken in barplot()

Beitrag von bigben »

Hallo Karuna,

solche Fragen am besten immer mit einem reproduzierbaren Beispiel posten.

Ich glaube, das hier sollte passen:

Code: Alles auswählen

a <-  rnorm(20,5,2)
b <-  rnorm(20,7,3)

bplot <-  barplot(c(a = mean(a), b = mean(b)), ylim = c(0,12))
arrows(x0 = bplot[1], y0 = mean(a)-sd(a), y1=mean(a)+sd(a), 
       angle=90, code=3, length = 0.1)
arrows(x0 = bplot[2], y0 = mean(b)-sd(b), y1=mean(b)+sd(b),
       angle=90, code=3, length = 0.1)
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Karuna
Beiträge: 8
Registriert: Mi Jan 20, 2021 9:44 am

Re: Fehlerbalken in barplot()

Beitrag von Karuna »

Ha!! Es funktioniert!!

Super toll, danke!
Antworten