2016-06-29 3 views
1

Я хотел бы настроить пределы y на графиках функций сглаживания GAM и коэффициентов, чтобы легче сравнивать эффекты двух разных моделей GAM для разных сезонов. При использовании опции ylim в функции plot.gam я могу изменить ось y только на функцию сглаживания, но не на факторы.Как изменить ось y на диаграммы MGCV GAM?

Например:

library(mgcv) 
data(cars) 
Gam1 <- gam(Price~s(Mileage)+factor(Cylinder), data=cars, family="gaussian") 

plot.gam(Gam1, shade=T, pages=1, all.terms=T, rug=FALSE) 
plot.gam(Gam1, shade=T, pages=1, ylim=c(-8000,8000), all.terms=T, rug=FALSE) 

Во втором участке, только у-пределы на более плавного изменения, но не на факторе. Что здесь происходит и как я могу это исправить?

ответ

1

Насколько я знаю plot.gam() код, это трудно понять. Я думаю, вам лучше сделать два сюжета отдельно, используя plot() и termplot().

library(caret); library(mgcv) 
data(cars) 
Gam1 <- gam(Price ~ s(Mileage) + as.factor(Cylinder), data=cars, family="gaussian") 

par(mfrow=c(1,2)) 
plot(Gam1, shade=T, all.terms=F, rug=FALSE, ylim=c(-5000, 8000)) 
termplot(Gam1, se=T, ylim=c(-5000, 30000), ask=F, col.term = 1, col.se = 1) 
par(mfrow=c(1,1)) 

enter image description here

+0

Да! Это сработало отлично. Спасибо за вашу помощь! – anorca

Смежные вопросы