【问题标题】:Differing color of points & line in plot.gamm()plot.gamma() 中点和线的不同颜色
【发布时间】:2015-08-06 20:00:27
【问题描述】:

我使用mgcv 运行了一个包含大型数据集(超过 20,000 个案例)的 GAMM 模型。由于大量数据点,很难在图中看到残差点之间的平滑线。是否可以为点和平滑拟合线指定不同的颜色?

这里是从mgcv 文档中采用的示例:

library(mgcv)

## simple examples using gamm as alternative to gam
set.seed(0) 
dat <- gamSim(1,n=200,scale=2)
b <- gamm(y~s(x0)+s(x1)+s(x2)+s(x3),data=dat)
plot(b$gam, pages=1, residuals=T, col='#FF8000', shade=T, shade.col='gray90')

plot(absbmidiffLog.GAMM$gam, pages=1, residuals=T, pch=19, cex=0.01, scheme=1, 
     col='#FF8000', shade=T,shade.col='gray90')

我查看了 visreg 包,但它似乎不适用于 gamma 对象。

【问题讨论】:

  • See this,可能会很有帮助。那里显示的图表似乎是您想要生成的。
  • 我已经对此进行了调查,但我无法使其与 gamma 一起使用。似乎gamma.model$gam 的结构与gam.model 不同。

标签: r


【解决方案1】:

我还发现选择 2 种不同颜色非常困难/不可能。 我的解决方法是稍后添加点,即首先使用 residuals=FALSE 调用 plot.gam,然后使用基本 R points() 调用添加点。 这只有在您将游戏图转移到适当的平均值时才能正常工作。这是其中一个术语的代码。 (使用 for 循环将所有四个都放在一个页面上)

library(mgcv)

## simple examples using gamm as alternative to gam
set.seed(0) 
dat <- gamSim(1,n=200,scale=2)
b <- gamm(y~s(x0)+s(x1)+s(x2)+s(x3),data=dat)
plot(b$gam, select=3, shift = coef(b$gam)[1], residuals=FALSE, col='#FF8000',  shade=T, shade.col='gray90')
points(y~x3, data=dat,pch=20,cex=0.75,col=rgb(1,0.65,0,0.25))

【讨论】:

    猜你喜欢
    • 2018-06-17
    • 2016-08-14
    • 1970-01-01
    • 2016-08-23
    • 1970-01-01
    • 2020-09-24
    • 2020-12-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多