重叠和错开两个Y轴不同的图

时间:2019-04-09 07:11:52

标签: r plot

我正在寻找有关在同一图中绘制两个具有不同y轴比例(一个是mmHg,另一个是m / s)的相似波形的建议。但是,我想错开彼此的图。

例如,使用以下内容:

set.seed(123)  
y <- sin(2*pi*x)  
g <- sin(2*pi*x)+ rnorm(200, sd=0.1)

plot(y,type="l",
     ann = F,
     axes = F)  
axis(side = 2)  

par(new = T)

plot(g,type="l",
     ann = F,
     axes = F)  
axis(side = 4)

礼物:

resultant plot

我想实现这样的目标(请参见下面的链接):

what I would like to achive

如何实现?

1 个答案:

答案 0 :(得分:1)

这是一个有点作弊的解决方案:

x <- seq(from = 1, to = 3, by = 0.01)
y <- sin(2*pi*x)  
set.seed(123)  
g <- sin(2*pi*x)+ rnorm(length(x), sd=0.1)

stagger <- 2
glabels <- c(-1, 0, 1)

plot(c(min(y),max(y)+stagger) ~ c(1,length(y)), type="n", axes=FALSE, ann=FALSE)
lines(y)
axis(side = 2, at = min(y):max(y))  

par(new = T)
lines(g+stagger)
axis(side = 4, at = glabels + stagger, labels = glabels)

结果:enter image description here

可能有更好的方法来生成g的y轴的位置和标签。