Seite 2 von 2

Re: Mehrere Grafiken in einer Abbildung darstellen (ggplot)

Verfasst: Mi Mai 25, 2022 11:29 am
von schubbiaschwilli
Ganz ehrlich: Ich verstehe hier gar nichts mehr und bin raus.
Ich denke aber, das Problem liegt darin, dass man das Problem momentan nicht beschreiben kann - Wenn man ja wüsste, was man machen muss, müsste man es ja nur machen.

Dank&Gruß
Schubbiaschwilli

Re: Mehrere Grafiken in einer Abbildung darstellen (ggplot)

Verfasst: Mi Mai 25, 2022 9:41 pm
von EDi
Ganz ehrlich: Ich verstehe hier gar nichts mehr und bin raus.
Ich hab von Anfang an nichts verstanden und mich zurückgehalten.
Ohne ein reproduziebares Beispiel kommen wir hier vermutlich nicht weiter.

Ich habe mal ein gemacht indem die Daten als Liste abgelegt sind, vielleicht hilft dir das ja weiter...

Code: Alles auswählen

library("ggplot2")

# generates some random data
generate_data <- function(unused) {
  n <- 100
  x <- runif(n)
  y <- x * runif(1, -5, 5) + rnorm(n, 0, runif(1, 0.1, 3))
  data.frame(x, y)
}
generate_data()

# create a list of data.frames
datalist <- lapply(1:10, generate_data)
datalist[[1]]

# plot ONE data.frame
generate_plot <- function(df) {
  ggplot(data = df, aes(x = x, y = y)) +
           geom_point()
}
generate_plot(datalist[[1]])

# create list of plots
plotlist <- lapply(datalist, generate_plot)
plotlist[[2]]



# save all plots into one pdf
library("gridExtra")
ggsave(
  filename = "plots.pdf", 
  plot = gridExtra::marrangeGrob(plotlist, nrow = 1, ncol = 1, top = NULL)
)

# or the first two as separate plots
for (i in 1:2) {
  ggsave(
    filename = paste0("plot", i, ".pdf"), 
    plot = plotlist[[i]]
  )
}