我有以下示例(与我的数据格式相似):
set.seed(1)
RandData <- runif(8760*2)
Locations <- rep(c('UK','France'),each=8760)
Date = seq(from=as.POSIXct("1991-01-01 00:00"),
to=as.POSIXct("1991-12-31 23:00"), length=8760)
Final <- data.frame(Loc = Locations,
Doy = as.numeric(format(Date,format = "%j")),
Tod = as.numeric(format(Date,format = "%H")),
Temp = RandData)
require(mgcv)
mod1 <- gam(Temp ~ Loc + s(Doy) + s(Doy,by = Loc) +
s(Tod) + s(Tod,by = Loc),data = Final)
plot(mod1,pages = 1, scale = 0)
从这个模型中,绘制的结果首先显示了平均温度变化作为一年中一天的函数,然后是每个位置的温度与这个平均值的变化量。一天中的时间也是如此。
问题在于 y 轴没有显示正确的值范围,即第一个图没有显示这些位置的平均温度。如何更改绘图以显示 (1) 两个位置的平均温度和 (2) 每个位置的温度与平均值相比,而不是某个任意数字。
如果我没有明确表达我的意图,请告诉我,我会尽力提供一个更好的例子。