No se puede imprimir en ggplot charts pdf

Posible duplicado:
Genera múltiples gráficos desde dentro de una función R

Me ocurre algo muy extraño: el siguiente código no se puede imprimir en el dispositivo pdf:

outnames <- c("1.pdf", "2.pdf") for (n in outnames){ pdf(n) qplot(1:10) dev.off() } 

no imprimirá nada en pdf, aunque se haya generado un archivo pdf. Sin embargo,

 pdf(outnames[2]) qplot(1:10) dev.off() 

funcionará perfectamente bien ¿Alguna idea de por qué? Reproducido en R 2.11.1.

Gappy, huele como la FAQ 7.22 , así que intente print(qplot(1:10)) .

@Dirk explica por qué sucede esto (impresión automática desactivada), pero una alternativa para abrir el dispositivo, generar el trazado en el dispositivo, cerrar el dispositivo es ggsave() . Por ejemplo:

 p1 <- qplot(1:10) ggsave("p1.pdf", plot = p1) 

o a través de un bucle:

 outnames <- c("1.pdf", "2.pdf") for (n in outnames){ p2 <- qplot(1:10) ggsave(n, plot = p2) } 

Al final de eso, tenemos todas las plots generadas que pedimos.

 > list.files(pattern = ".pdf$") [1] "1.pdf" "2.pdf" [3] "p1.pdf"