Как сохранить графики в пределах для l oop в R - PullRequest
1 голос
/ 09 января 2020

У меня есть следующий воспроизводимый код, который создает серию графиков:

N <- 199
K <- N+1
x <- rep(0,N)
x[1] <- 0.5
time <- c(1:K)

G <- c(2.7, 2.9, 3.0, 3.5, 3.82, 3.83, 3.84, 3.85)
for (g in G) {
  for (t in 1:N) {
    x[t+1] = g*x[t]*(1-x[t])
  }
  plot(time,x, main = g, type="l", xlim=c(0,100), col="blue")
}

Это создает 8 графиков, и я хочу сохранить каждый в виде файлов .png. Я пытаюсь сделать что-то вроде:

png("graph_", g, ".png")
plot(time, x, ...)
dev.off

между концом циклов for(g in G) и for(t in 1:N) в приведенном выше коде, так что я создаю серию файлов с именем: graph_2.7.png, graph_3.0.png, ... graph_3.85.png

Я не уверен, нужно ли мне создавать список и вставлять каждый результат в указанный список или немного изменить мой синтаксис

1 Ответ

1 голос
/ 09 января 2020

Вы были очень близки. Вам нужно paste имя файла вместе в png.

N <- 199
K <- N+1
x <- rep(0,N)
x[1] <- 0.5
time <- c(1:K)

G <- c(2.7, 2.9, 3.0, 3.5, 3.82, 3.83, 3.84, 3.85)
for (g in G) {
  for (t in 1:N) {
    x[t+1] = g*x[t]*(1-x[t])
   }
   png(file = paste0("graph_", g, ".png"))
   plot(time,x, main = g, type="l", xlim=c(0,100), col="blue")
   dev.off()
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...