随着时间的推移,我正在收集数据,我想在同一情节的两项研究中进行绘图。对我来说,问题是随着时间的推移数据如何收集并添加到绘图中的顺序。例如,以下代码将同一组随机值绘制两次,并为每项研究添加两行:
# 2 figures arranged in 2 rows
par(mfrow=c(2,1))
set.seed(123)
A = sample(seq(from = -2, to = 2, by = 0.1), size = 10, replace = TRUE)
plot(seq(1:10),A, main="Plot 1")
abline(1.2,0, col="red") #First line added
abline(-0.3,0, col="blue") #Third line added
plot(seq(1:10),A, main="Plot 2")
abline(0.7,0, col="green") #Second line added
abline(-0.5,0, col="purple") #Fourth line added
我需要做的是在开始时执行两个绘图命令,然后按红色,绿色,蓝色,紫色的顺序执行4行的添加。即在顶部研究中添加一条线,在底部研究中添加一条线,并且在两项研究之间出现新数据。即 - 我希望代码执行如下:
plot(seq(1:10),A, main="Plot 1")
plot(seq(1:10),A, main="Plot 2")
#Wait awhile
abline(1.2,0, col="red") #First line added
abline(0.7,0, col="green") #Second line added
#Wait awhile
abline(-0.3,0, col="blue") #Third line added
abline(-0.5,0, col="purple") #Fourth line added
我如何在R中做到这一点,希望使用情节,而不是更深奥的情节图库之一。
答案 0 :(得分:0)
最简单的方法是每次都重新创建整个图。创建2个图,然后当第一个附加数据进入时,重绘第一个图并添加线,然后重绘第二个图并重新绘制线。当更多数据进入时:重绘第一个图表添加第一行,添加第二行,...
如果你真的坚持不重绘图,那么你可以绘制第一个图并使用par1 <- par(no.readonly=TRUE)
之类的东西保存图形选项。然后绘制第二个图并再次保存选项par2 <- par(no.readonly=TRUE)
。
现在您可以首先使用par(mfg=c(1,1))
重置绘图参数,然后返回第1个图。
例如:
par(mfrow=c(2,1))
plot( 1:10, 1:10 )
par1 <- par(no.readonly=TRUE)
plot( 101:110, 110:101 )
par2 <- par(no.readonly=TRUE)
par(par1)
par(mfg=c(1,1))
abline(h=5)
par(par2)
par(mfg=c(2,1))
abline(h=105)
您可以继续使用par(mfg=...
来回,但请记住也要设置图形参数。
答案 1 :(得分:0)
查看mfg
函数的par()
参数。例如:
A <- sample(seq(from=-2, to=2, by=0.1), size=10, replace=TRUE)
par(mfrow=c(2, 1))
plot(seq(1:10), A, main="Plot 1")
abline(1.2, 0, col="red")
plot(seq(1:10), A, main="Plot 2")
abline(0.7, 0, col="green")
par(mfg=c(1, 1))
abline(-0.3, 0, col="blue")
par(mfg=c(2, 1))
abline(-0.5, 0, col="purple")