0

我在 R 中使用 sjPlot 包已经有一段时间了,我非常喜欢它。然而,最近,我遇到了一些我自己无法解决的问题。

(1) 使用 sjp.glmer(fe.prob),x 轴标签/间距似乎源自待绘制的固定因子。我可以使用“axis.lim”更改 y 轴限制,但是,我很难更改 x 轴限制。

(2) 自上次更新(我认为是 10.1.17)以来,配色方案略有变化。结果我几乎看不到我的信心带。从理论上讲,我可以更改背景以使它们更明显。但是,我正在寻找的是改变置信带的实际颜色。我怀疑可以使用 sjp.setTheme 更改这个,但我不知道如何。

(3) 同样自上次更新以来(我认为),“fe.prob”类型的 sjp.glmer 的 y 轴被标记为百分比(1% 到 100%)而不是小数(0 到 1)。任何提示我如何将其切换回小数?

这是一个示例行:

sjp.glmer(Model, 
          type = "fe.prob",
          vars = "Var1", 
          show.scatter = FALSE, 
          geom.colors = "Black", 
          width = 7.9, height = 6.8, 
          facet.grid = FALSE, 
          show.ci = TRUE, 
          axis.lim = c(0,1)) 

下面也是我的 Sjp.SetTheme 设置。

我希望这能说明问题: 示例图

任何帮助表示赞赏。

最好的,小号

sjp.setTheme(base = theme_grey(),
             geom.outline.color = "black",
             theme.font = 'Times',
             geom.outline.size = 1, 
             geom.label.size = 2,
             geom.label.color = "black",
             title.color = "black", 
             title.size = 1.0, 
             axis.title.size = 1.0,
             axis.title.color =  "black",
             axis.angle.x = 0,
             axis.textsize.x = 1.0,
             axis.textsize.y = 1.0,
             axis.textcolor = "black")
4

1 回答 1

3

您请求的问题不能直接通过修改sjp.glmer- 但是,您可以使用返回的 ggplot-object 进行进一步操作。

library(sjPlot)
library(lme4)
library(ggplot2)
library(sjmisc)

# create binary response
sleepstudy$Reaction.dicho <- dicho(sleepstudy$Reaction, dich.by = "median")
# fit model
fit <- glmer(Reaction.dicho ~ Days + (Days | Subject),
             data = sleepstudy, family = binomial("logit"))

p <- sjp.glmer(fit, type = "fe.prob", vars = "Days", 
               show.scatter = FALSE, geom.colors = "Black", 
               facet.grid = FALSE, show.ci = TRUE)

# get first plot of all created plots (in this case, just one plot)
# and change x-axis-limits and use another metric on y-scale
p$plot.list[[1]] + xlim(0, 4) + scale_y_continuous(limits = c(0, 1))

在此处输入图像描述

尽管如此,置信带的透明度非常高,但我不太确定如何更改 stat_smooth 的 alpha 级别。我会寻找解决方案...

于 2017-01-26T12:09:02.240 回答