2017-04-22 38 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的一個旁註是不是一個合法的名字,我在這裏用它作爲佔位符的名字,但似乎有很好的知識傳遞。