Hallo ihr lieben R Profis,
ich schreibe gerade meine Bachelorarbeit, bin noch recht neu in der Arbeit mit R und versuche eine Abbildung mit ggplot2 zu erstellen. Ich habe den Datensatz einmal als kurze Excel Datei hochgeladen, weil mein .Rdata Format nicht erkannt wurde. Ich würde gerne auf der X Achse die "Subskalen" abtragen und auf der Y Achse dann die Mittelwerte dieser Subskalen. Jetzt würde ich das gerne gruppieren nach Gruppe 1 und Gruppe 2. Jetzt weiß ich nicht, wie ich bei aes die einzelnen Komponenten definieren soll, weil ich keine eigene Variable für die Gruppierung habe.
Kann mir da jemand weiterhelfen wie ich das in ggplot umsetzen kann?
Vielen lieben Dank im voraus!
Liebe Grüße
Florian
Mehrere Barplots in einer Abbildung
Mehrere Barplots in einer Abbildung
- Dateianhänge
-
- Datensatz.xlsx
- (9.83 KiB) 33-mal heruntergeladen
Re: Mehrere Barplots in einer Abbildung
Hallo,
Du schreibst richtig, dass Du eine Gruppierungsvariable brauchst. Dafür musst Du die Daten aus dem breiten in das lange Format umwandeln. Hier beispielsweise mit der Funktion melt aus dem Paket data.table:
HTH,
Bernhard
Du schreibst richtig, dass Du eine Gruppierungsvariable brauchst. Dafür musst Du die Daten aus dem breiten in das lange Format umwandeln. Hier beispielsweise mit der Funktion melt aus dem Paket data.table:
Code: Alles auswählen
daten <- read.table(sep="\t", dec = ".", header = TRUE,
text="Subskalen Mittelwerte Gruppe1 Mittelwerte Gruppe2
AnET 25.41 20.55
AnFS 49.57 55.61
AnFT 50.63 57.81
AnES 45.75 47.89
AnL 55.18 46.89
AbET 50.66 41.20
AkFT 50.96 42.24
AkEST 49.11 42.77
"
)
# Subskalen haben eine nicht-alphabetische Reihenfolge
daten$Subskalen <- factor(daten$Subskalen, labels = daten$Subskalen)
library(data.table)
setDT(daten)
d.long <- melt(daten, id.vars="Subskalen")
head(d.long, 10)
library(ggplot2)
plot1 <- ggplot(d.long,
aes(x = Subskalen, y = value, group = variable, fill = variable)) +
geom_col(position = "dodge") +
theme_minimal()
print(plot1)
#------------
# Alternative Darstellungsform, wenn es nicht immer Balken sein müssen
plot2 <- ggplot(d.long,
aes(x = Subskalen, y = value, color = variable)) +
geom_point() +
theme_minimal()
print(plot2)
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte