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="")