R中XY图上的多轴/刻度

时间:2012-02-06 15:29:30

标签: r

如何使用plot()将XY图中的第二行绘制到不同的比例(如此示例)(紫色线)?

enter image description here

第一行(红色)的R代码如下:

p <- sqlQuery(ch,"SELECT wl,param1 FROM qryPlot ORDER BY wl")
plot(p$wl,p$param1,axes=T,xlim=c(400,800),ylim=c(0,100),type="l",col="red")

2 个答案:

答案 0 :(得分:9)

以下是一般概念:

plot(1:10)
par(new=T)
plot(1:10, rep(50, 10), type='l', axes=F, xlab=NA, ylab=NA)
axis(4)

enter image description here

答案 1 :(得分:1)

我稍微将@johncolby的答案扩展到了这个:

x<-1:20
y1<-sqrt(x)
y2<-sqrt(x)*x
plot(x,y1,ylim=c(0,25),col="blue")
par(new=TRUE)
plot(x,y2,ylim=c(0,100),col="red",axes=FALSE)
axis(4)

axes=FALSE in second plot()命令=防止标签第二轴打印在左侧)

结果如下:

enter image description here

要解决的问题很少:两个y轴的标签都印在左侧。