Ответ 1
Gappy, который пахнет как FAQ 7.22 - так что попробуйте print(qplot(1:10))
.
Возможный дубликат:
Сгенерировать несколько графических объектов из R-функции
Очень странная вещь, которая происходит со мной: следующий код не может печатать на pdf-устройстве:
outnames <- c("1.pdf", "2.pdf")
for (n in outnames){
pdf(n)
qplot(1:10)
dev.off()
}
ничего не печатает в pdf, даже если создается файл PDF. Тем не менее,
pdf(outnames[2])
qplot(1:10)
dev.off()
будет работать отлично. Любая идея почему? Воспроизводится в R 2.11.1.
Gappy, который пахнет как FAQ 7.22 - так что попробуйте print(qplot(1:10))
.
@Dirk объясняет, почему это происходит (автоматическая печать отключена), но альтернатива открытию устройства, создание графика на устройстве, закрытие устройства ggsave()
. Например:
p1 <- qplot(1:10)
ggsave("p1.pdf", plot = p1)
или через цикл:
outnames <- c("1.pdf", "2.pdf")
for (n in outnames){
p2 <- qplot(1:10)
ggsave(n, plot = p2)
}
В конце этого мы имеем все сгенерированные графики, которые мы просили.
> list.files(pattern = ".pdf$")
[1] "1.pdf" "2.pdf"
[3] "p1.pdf"