2017-04-22 211 views
0

我试图在一个绘图内绘制两个locfit模型,但是我无法获得第二个locfit模型来绘制置信区间。我创建了两个locfit型号:R用置信区间绘制多个locfit模型

1_fit = locfit(Y~Time,data=data_1) 
2_fit = locfit(Y~Time,data=data_2) 

每个人都可以在自己的就好了绘制使用以下的置信区间:

plot(1_fit,band="local",type = "l", xlab = "Time", ylab = "Y-Axis",ylim=c(0,22), 
    col = "red",lwd = 5,font=3,main="Local Poly Fit 1",cex.lab=1.5, cex.axis=1.5, 
    cex.main=1.5, cex.sub=1.5) 

然而,当我试图绘制一个额外的locfit模型使用的情节:

lines(2_fit,col="blue") 

我只能添加locfit行,而不是置信区间。我一直试图做的事:

lines(2_fit,band="local",col="blue") 

但我得到这个消息,并没有置信区间:

Warning message: In plot.xy(xy.coords(x, y), type = type, ...) : "band" is not a graphical parameter

我也看着使用lines.locfit,但没有运气因为R只是说它找不到函数lines.locfit。

我周围的工作放在同一个窗口中两条曲线:

par(mfrow=c(2,1)) 

但想避免这种情况,因为它会使曲线更具有可比性,如果他们在同一地块内。

+0

你总是可以使用'par(new = TRUE)',然后在另一个之上绘制一个。可能需要设置xlim/ylim以确保匹配。 '1_fit'不是R中的合法名称 –

+0

或者,使用'predict'来提取配置项并直接绘图 –

+0

par(new = TRUE)诀窍!非常感谢!作为一个方面说明,1_fit只是一个临时名称,实际上并没有在我的代码中使用它,但无论如何要知道它不合法。 – user3221962

回答

0

答案由Richard Telford在评论中提供。下面的代码能够完成我需要的东西:

plot(1_fit,band="local",type = "l", xlab = "Time", ylab = "Y-Axis",ylim=c(0,22), xlim=c(0,12), col = "red",lwd = 5,font=3,main="Local Poly Fit 1",cex.lab=1.5, cex.axis=1.5, cex.main=1.5, cex.sub=1.5)` 

    par(new = TRUE) 

    plot(2_fit,band="local",type = "l", xlab = "Time", ylab = "Y-Axis",ylim=c(0,22), xlim=c(0,12),col = "blue",lwd = 5,font=3,main="Local Poly Fit 1",cex.lab=1.5, cex.axis=1.5, cex.main=1.5, cex.sub=1.5)` 

我需要确保ylimxlim都是平等的,以及主,ylab和xlab。理查德1_fit的一个旁注是不是一个合法的名字,我在这里用它作为占位符的名字,但似乎有很好的知识传递。