¿Cómo separar dos plots en R?

Cada vez que ejecuto este código, la primera gráfica simplemente sobrescribe la anterior. ¿No hay forma de que R se separe para obtener dos ttwigs?

plot(pc) title(main='abc',xlab='xx',ylab='yy') plot(pcs) title(main='sdf',xlab='sdf',ylab='xcv') 

Si solo desea ver dos ventanas de trazado diferentes abiertas al mismo tiempo, use dev.new , por ej.

 plot(1:10) dev.new() plot(10:1) 

Si desea dibujar dos trazados en la misma ventana, entonces, como mencionó Shane, establezca el parámetro mfrow .

 par(mfrow = c(2,1)) plot(1:10) plot(10:1) 

Si quieres probar algo un poco más avanzado, puedes echar un vistazo a los gráficos de celosía o ggplot, que son excelentes para crear gráficos condicionados (gráficos donde diferentes subconjuntos de datos aparecen en marcos diferentes).

Un ejemplo de celosía:

 library(lattice) dfr <- data.frame( x = rep(1:10, 2), y = c(1:10, 10:1), grp = rep(letters[1:2], each = 10) ) xyplot(y ~ x | grp, data = dfr) 

Un ejemplo ggplot. (Primero deberá descargar ggplot de CRAN).

 library(ggplot2) qplot(x, y, data = dfr, facets = grp ~ .) #or equivalently ggplot(dfr, aes(x, y)) + geom_point() + facet_grid(grp ~ .) 

Intenta usar par antes de trazar.

  par(mfrow = c(2, 1)) 

También puedes probar el comando de diseño:

Pruebe el layout(1:2)

 plot(A) plot(B) 

Pruebe el comando x11() antes de cada plot, aquí hay un ejemplo:

 x11() plot(1:10) x11() plot(rnorm(10)) 

Esto conducirá a diferentes ventanas de ttwig. Puede agregar el comando “par” a cualquiera de estas ventanas x11() y obtener más variedad de plots, es decir, 4 plots en una ventana, mientras que una gran plot en otra ventana.

Si desea las 2 plots en ventanas o archivos separados, puede seleccionar nuevos dispositivos antes de llamar a cada comando de trazado. Ver:

? Dispositivos

Y,

? dev.cur

Una respuesta alternativa es asignar la ttwig como un objeto, luego puede mostrarla cuando desee, es decir,

 abcplot<-plot(pc) title(main='abc',xlab='xx',ylab='yy') sdfplot<-plot(pcs) title(main='sdf',xlab='sdf',ylab='xcv') abcplot # Displays the abc plot sdfplot # Displays the sdf plot abcplot # Displays the abc plot again