如何在R中分离两个图?

php*_*ash 23 plot r

每当我运行此代码时,第一个绘图将简单地覆盖前一个.在R中有没有办法分开得到两块地块?

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

plot(pcs)
title(main='sdf',xlab='sdf',ylab='xcv')
Run Code Online (Sandbox Code Playgroud)

Ric*_*ton 39

如果您只想看到两个不同的绘图窗口同时打开,请使用dev.new,例如

plot(1:10)
dev.new()
plot(10:1)
Run Code Online (Sandbox Code Playgroud)

如果你想在同一窗口中绘制两个图,那么,正如Shane所提到的,设置mfrow参数.

par(mfrow = c(2,1))
plot(1:10)
plot(10:1)
Run Code Online (Sandbox Code Playgroud)

如果你想尝试一些更高级的东西,那么你可以看一下格子图形或ggplot,这两者都非常适合创建条件图(不同帧中不同数据子集出现的图).

格子示例:

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)
Run Code Online (Sandbox Code Playgroud)

一个ggplot的例子.(您需要先从CRAN下载ggplot.)

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


Sha*_*ane 14

par在绘图之前尝试使用.

 par(mfrow = c(2, 1))
Run Code Online (Sandbox Code Playgroud)