我正在使用 emmeans 包和 emmip 函数来绘制来自 clmm 对象的预测概率。据我了解,emmip 在后台使用 ggplot。我正在尝试跨几个预测变量的级别绘制预测。这只是一个外观问题,但是否可以将图中的变量名称设置(或覆盖)为更具可读性的标签值?
我找到了一种使用 sjlabelled 包添加变量标签的方法,类似于在基本 R 中已经实现的用于将标签添加到变量级别的方法:
library(sjlabelled)
dat$language_oth_home <- set_label(dat$language_oth_home, label = "Other Language at Home")
但 emmip 不认识它。
我想尝试使用正确标签自动执行的示例图是:
emmip(mmod_stundvis_fin_em, st_understand_vision_dev_2 ~ visit|language_oth_home|randomization_group) +
xlab("Visit (0 = Pre-, 1 = Post-)") +
ylab("Probability") +
scale_color_manual(name="Response Category",
labels=c("Strongly Agree", "Agree", "Disagree", "Strongly Disagree"),
values=c("#0371b1", "#91c6de", "#f4a682", "#c90120"))
最好自动显示“治疗组:控制”,而不是现在的“随机化组:控制”。
我看到的唯一替代方法是事后手动更改图像编辑应用程序中的文本(这将非常耗时),或者更改数据框中的实际变量名称(这也不理想,因为它会破坏很多编码)。