axis.title =在sjPlot包中的sjp.lmer()中不起作用

时间:2017-02-25 21:16:14

标签: r axis-labels lme4 sjplot

我正在绘制一些我正在运行的混合模型的绘图,并试图让nested-更改固定效果的x和y轴标签。如果我遗漏了一些简单的东西,请告诉我!

这是我的代码:

sjp.lmer()

模型是使用glmer()估计的正式模型。问题是无论我写什么,x和y标签都不会改变。

我认为语法是正确的,因为此代码有效:

library(sjPlot);library(lme4)

model = lmer(DV ~ IV + (1|groupingVariable), data = data, REML = F)

sjp.lmer(model, 
     type = "fe.slope", 
     vars = c("IV"),
     title = "Estimated effect of IV1 on DV", 
     geom.colors = c("black", "grey49"), 
     show.ci = T, 
     axis.title = c("IV Title", "DV Title"))

第二个是同一模型的随机效应图。这是一个错误吗?您是否可以出于某种原因不为固定效果模型指定轴标签?谢谢!

好像是一个错误。我在gitHub上提出了这个问题:

https://github.com/sjPlot/devel/issues/212

1 个答案:

答案 0 :(得分:2)

据我所知,这只是一种疏忽("错误" / bug)。查看代码here

reglinplot <- reglinplot +
  labs(title = title,
       x = sjmisc::get_label(model_data[[p_v]], def.value = p_v),
       y = response)

标签似乎是硬编码的。此外,sjp.reglinhere)的参数列表没有axis.title参数...正如您所做的那样,发布问题似乎是正确的前进方向。

但是,如果您对ggplot2包只知道一点点,那么对于该情节的攻击并不算太难。

设置示例:

library(sjPlot); library(lme4
mod <- lmer(Reaction~Days+(Days|Subject),sleepstudy)
p1 <- sjp.lmer(mod, 
     type = "fe.slope", 
     vars = "Days")  ## stripped-down (warning about colour palette)

黑客标签:

library(ggplot2)
p1$plot.list[[1]] + labs(x="hello",y="goodbye")