2 Boxplots in 1 Grafik

Wie erstelle ich Grafiken, was ist zu beachten?

Moderatoren: EDi, jogo

Antworten
sonsch
Beiträge: 9
Registriert: Di Okt 27, 2020 5:03 pm

2 Boxplots in 1 Grafik

Beitrag von sonsch »

Hallo!
Ich würde gerne 2 meiner Boxplots in einer Graphik darstellen. Bin über den Befehl "par()" gestoßen, hat aber leider nicht funktioniert. Kann mir da jemand weiterhelfen? :oops:

Meine Boxplots sehen so aus:

Code: Alles auswählen

# 1. Boxplot
ggplot(h2o2_fusarien, aes(x = Einwirkzeit, y = Reduktion.log, fill=Belastung) )%>%
  +geom_boxplot()%>%
  +stat_boxplot(geom = "errorbar")%>%
  +theme(axis.title.y = element_text(angle=0,margin=margin(t=0,r=0,b=0,l=10)))%>%
  +geom_hline(yintercept = 4, color = "red", lwd = 0.5)%>%
  +ggtitle("H2O2 3% Fusarien")

#2. Boxplot
ggplot(h2o2_aspergillen, aes(x = Einwirkzeit, y = Reduktion.log, fill=Belastung) )%>%
  +geom_boxplot()%>%
  +stat_boxplot(geom = "errorbar")%>%
  +theme(axis.title.y = element_text(angle=0,margin=margin(t=0,r=0,b=0,l=10)))%>%
  +geom_hline(yintercept = 4, color = "red", lwd = 0.5)%>%
  +ggtitle("H2O2 3% Aspergillen")
Ich habe mich dann ein bisschen mit dem Befehl "par()" gespielt, aber es hat leider nichts geklappt. Unter anderem habe ich den Befehl einfach darübergeschrieben (?) :

Code: Alles auswählen

par(mfrow=c(2,1))
ggplot(h2o2_fusarien, aes(x = Einwirkzeit, y = Reduktion.log, fill=Belastung) )%>%
  +geom_boxplot()%>%
  +stat_boxplot(geom = "errorbar")%>%
  +theme(axis.title.y = element_text(angle=0,margin=margin(t=0,r=0,b=0,l=10)))%>%
  +geom_hline(yintercept = 4, color = "red", lwd = 0.5)%>%
  +ggtitle("H2O2 3% Fusarien")
ggplot(h2o2_aspergillen, aes(x = Einwirkzeit, y = Reduktion.log, fill=Belastung) )%>%
  +geom_boxplot()%>%
  +stat_boxplot(geom = "errorbar")%>%
  +theme(axis.title.y = element_text(angle=0,margin=margin(t=0,r=0,b=0,l=10)))%>%
  +geom_hline(yintercept = 4, color = "red", lwd = 0.5)%>%
  +ggtitle("H2O2 3% Aspergillen")
Benutzeravatar
student
Beiträge: 674
Registriert: Fr Okt 07, 2016 9:52 am

Re: 2 Boxplots in 1 Grafik

Beitrag von student »

Ich habe hier mal etwas zum Histogramm gemacht, allerdings unter Verzicht von ggplot(). Vielleicht hilft es trotzdem weiter...
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)
sonsch
Beiträge: 9
Registriert: Di Okt 27, 2020 5:03 pm

Re: 2 Boxplots in 1 Grafik

Beitrag von sonsch »

Vielen Dank für die Antwort und den Link zum Video!

Mit "boxplot()" funktioniert es, mit meinen "ggplot()"-Varianten hab ichs leider noch nicht hinbekommen.

Also so klappts mal:

Code: Alles auswählen

par(mfrow=c(1,2))
boxplot(h2o2_fusarien$Reduktion.log~h2o2_fusarien$Einwirkzeit)
boxplot(h2o2_aspergillen$Reduktion.log~h2o2_aspergillen$Einwirkzeit)
par(mfrow=c(1,1))
LG
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: 2 Boxplots in 1 Grafik

Beitrag von bigben »

par und ggplot gehören zwei verschiedenen Welten an. Das wird nix. Such mal nach ggarange() im Paket ggpubr.
LG, Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
sonsch
Beiträge: 9
Registriert: Di Okt 27, 2020 5:03 pm

Re: 2 Boxplots in 1 Grafik

Beitrag von sonsch »

Aaah! Super danke! Hat mir sehr geholfen! :D

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

Re: 2 Boxplots in 1 Grafik

Beitrag von bigben »

So, jetzt sitze ich an einem richtigen Computer mit einem richtigen Keyboard. Es gibt in R verschiedene Grafiksysteme, die Du gedanklich komplett voneinander trennen musst. Die zwei mit Abstand häufigsten sind base und ggplot. Ersteres wird mit R gemeinsam installiert und umfasst Befehle wie plot, boxplot, hist, par, dev etc. Letzteres muss man sich zu seinem R zusätzlich installieren. Es umfasst Kommandos wie ggplot, geom_point, geom_histogram und ggsave. Das ist wie Lego und Playmobil -- mit beiden lässt sich schön spielen, aber die Männchen von dem einen wollen einfach nicht in die Autos von dem anderen passen.
Anstelle von ggarrange aus ggpubr hätte ich Dir auch plot_grid aus dem Paket cowplot empfehlen können. Schau Dir am besten cowplot und ggpubr an, wenn Du mit ggplot2 arbeiten möchtest.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
sonsch
Beiträge: 9
Registriert: Di Okt 27, 2020 5:03 pm

Re: 2 Boxplots in 1 Grafik

Beitrag von sonsch »

Okay verstehe! Danke für die anschauliche Erklärung! :D

Werde mir beide Pakete anschauen! ;)

LG
Antworten