R 具有相同X轴和Y轴的两个绘图

R 具有相同X轴和Y轴的两个绘图,r,set,scatter-plot,R,Set,Scatter Plot,显示的图由以下R代码生成 png("test.png") plot(data[,4],data[,3],type='l',col="green") par(new=TRUE) plot(data[,4],data[,2],type='l',col="red") dev.off() 两个图的Y轴范围不同,如图所示被覆盖。是否有人可以帮助为两个绘图设置相同的Y轴范围 您可以使用以下方法: 画第一幅图 呼叫par(new=TRUE) 在第一个绘图的顶部绘制第二个绘图。第二个绘图不绘制默认轴(轴=FA

显示的图由以下R代码生成

png("test.png")
plot(data[,4],data[,3],type='l',col="green")
par(new=TRUE)
plot(data[,4],data[,2],type='l',col="red")
dev.off()
两个图的Y轴范围不同,如图所示被覆盖。是否有人可以帮助为两个绘图设置相同的Y轴范围


您可以使用以下方法:

  • 画第一幅图
  • 呼叫
    par(new=TRUE)
  • 在第一个绘图的顶部绘制第二个绘图。第二个绘图不绘制默认轴
    (轴=FALSE)
  • 如果第二个图的y轴与第一个图的y轴不同,则可以使用
    axis()
    函数在右侧绘制第二个y轴以表示比例

    例如,您可以执行以下操作:

     data <- matrix(rnorm(4*100),ncol=4)
     par(mar=c(5, 6, 2, 4))
     plot(1:100,data[,3], lwd=3, col="green", ann=FALSE, las=2,type='l')
     mtext("I am at left", side=2, line=3.5)
     par(new=TRUE)
     plot(1:100,data[,2], ann=FALSE, axes=FALSE,col='red',type='l')
     mtext("I am at right)", side=4, line=2)
     title("Using par(new=TRUE) \n same X and different or not Y axis ")
     axis(4)
    

    data如果y比例大部分重叠,则可以绘制包含整个范围的初始绘图(不在其上绘制任何内容)以定义轴,然后绘制线

    set.seed(5)
    data <- data.frame(1:60, rnorm(60, 0.6, 0.1), rnorm(60, 0.65, 0.15), 
                       seq(2,120,by=2))
    

    尝试使用lines()添加第二行。为什么不为第二行使用
    axes=FALSE
    plot(range(data[,4]), range(c(data[,3],data[,2])), type='n')
    lines(data[,4], data[,3], type='l', col='green')
    lines(data[,4], data[,2], type='l', col='red')