1 :关于R语言中如何叠加两个图像
方法一:使用低级作图函数进行叠加
当用plot出一个图后,接下来用points或lines在plot里面添加点或线段。
缺点:只是在原有的坐标系中添加进去点或线,没有改变坐标系的范围,导致有一些超出坐标范围的点无法表示出来,需要去修改坐标系范围。
方法二:用par()中的new参数
当用plot出一个图后,每次要叠加上第二个图前,需输入命令par(new=TRUE)。
缺点:这种做法只是将两个坐标系僵硬地不做任何变动地叠加在一起,导致坐标系混乱
解决:应当在plot图时,每次给定其坐标系的范围,这样才能使得叠加图时取得一致的结果。利用xlim=c( , )和ylim=c( , )命令即可解决。
上面两种方法都需要注意坐标标签的表示。eg:用runif产生两组数字,用图像表示两组数字的走势
x1<-round(runif(50,80,90))
x2<-round(runif(50,82,91))
分别用方法一和二:
par(mfrow=c(2,1))
plot(x1,type='l',col=colors()[100],ylab="",xlab="days")
lines(x2,col=3)
plot(x1,type='l',col=colors()[100],ylim=c(80,90),xlab="days",ylab="")
par(new=T)
plot(x2,type='l',col=3,ylim=c(80,90),xlab="",ylab="")