Datenpunkte/-werte über den Säulen im Barplot

Wie erstelle ich Grafiken, was ist zu beachten?

Moderatoren: EDi, jogo

Antworten
julia.schwantje
Beiträge: 3
Registriert: So Okt 18, 2020 2:59 pm

Datenpunkte/-werte über den Säulen im Barplot

Beitrag von julia.schwantje »

Hey Leute,

ich wollte für einen Bericht in der Uni ein Säulendiagramm mit RStudio erstellen, dabei wollte ich Zwei Säulen nebeneinander darstellen, einmal die durchschnittliche Vegetationshöhe und die maximale pro Aufnahme. Das hat auch geklappt aber der Übersichtshalber würde ich gerne die passenden Datenpunkte der Säulen darunter oder in die Säule schreiben. Kann mir da jemand eventuell helfen?

ab<-cbind(c(72.4,124),c(50.6,128),
c(39.5,103),c(45.2,150),
c(81.7,135),c(85.75,143),
c(63.75,125),c(45,120),
c(51.38,133))

bb<-(barplot(ab, beside=T, xlim = c(0,30), xlab="Aufnahmefläche",
names.arg = Aufnahme, ylim=c(0,180),
col=c("ForestGreen","Firebrick1"),
ylab = "Deckung in %", main="Vertikale Vegetationsstruktur"))



legend("topleft",
inset = 0.02,
legend = c("durchschnittliche Wuchshöhe", "maximale Wuchshöhe"),
pch=c(16,16),
col = c("ForestGreen", "Firebrick1"),
lty = c(0, 0),
cex = 0.7,
box.lty = 0.5, plot=TRUE)

soweit war mein Ansatz.
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Datenpunkte/-werte über den Säulen im Barplot

Beitrag von bigben »

Hi!

Dein Codebeispiel führt zu einer Fehlermeldung:

Code: Alles auswählen

Fehler in barplot.default(ab, beside = T, xlim = c(0, 30), xlab = "Aufnahmefläche",  : 
  Objekt 'Aufnahme' nicht gefunden
Sehr gute Hinweise für funktionierende Minimalbeispiele gibt EDi sind einem Thread im FAQ-Unterforum.

Wahrscheinlich lohnt es sich nicht, sich mit den Besonderheiten der barplot Funktion auseinanderzusetzen. Die meisten hier im Forum stützen sich für veröffentlichungsfähige Grafiken auf das Grafiksystem ggplot2, für das sich in Deinem Fall hilfreiches hier findet: https://stackoverflow.com/questions/120 ... th-ggplot2

Könnte ungefähr so aussehen:

Code: Alles auswählen

ab<-cbind(c(72.4,124),c(50.6,128),
          c(39.5,103),c(45.2,150),
          c(81.7,135),c(85.75,143),
          c(63.75,125),c(45,120),
          c(51.38,133))

ab <- data.frame(X = c(ab[1,], ab[2,]), id = rep(LETTERS[1:9], 2), measure = gl(n=2, k=9))
print(ab)

library(ggplot2)
ggplot(ab) +
  geom_col(aes(x=id, y= X, fill = measure), position = "dodge") +
  geom_text(aes(x = id, y= X+5, label = X, fill = measure), position=position_dodge(width=0.9)) +
  scale_fill_manual(values=c("ForestGreen", "Firebrick1"))
Rplot.jpeg
HTH,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Benutzeravatar
student
Beiträge: 674
Registriert: Fr Okt 07, 2016 9:52 am

Re: Datenpunkte/-werte über den Säulen im Barplot

Beitrag von student »

Da habe ich hier auch noch etwas, nur über die R-Basis-Grafik. Auch hier wird über die text-Funktion "Labels" über den Balken abgebildet. Vielleicht hilft es ja weiter...

Code: Alles auswählen

> # Label erstellen, wobei die Labels die Häufigkeit darstellen. Diese können wir
ebenfalls als y-Position nutzen.
> Label <- c(6,6,5,4,3,2,2,2,1,1)
> # Um die x-Achsen-Koordinaten zu erhalten, wird der barplot in Diagramm abgelegt:
> Diagramm <- barplot(Tabelle, main = "Verbrauch in Meilen pro Gallone", xlab = "Verbrauchklasse", ylab = "Anzahl Fahrzeuge", ylim = c(0,7))
> # Nun werden die labels über die text-Funktion hinzugefügt:
> text(Diagramm[,1], Label + 0.1, labels = Label, pos = 3)
Grafik siehe obigen Link.
Viele Grüße,
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube

Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Datenpunkte/-werte über den Säulen im Barplot

Beitrag von bigben »

Eine Variante, die visuell mal was anderes ist, könnten sonst noch Lollipops sein:

Bild

Die Beispielgrafik stammt aus einer Vignette des Pakets ggpubr: https://rpkgs.datanovia.com/ggpubr/
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Antworten