如何将sjPlot中plot_model生成的图表Y轴设置为对数刻度?
给sjPlot交互效应图设置Y轴对数刻度
plot_model(model, type="int")返回的是ggplot2对象,所以可以直接用ggplot2的工具修改轴刻度,具体操作如下:
先将生成的图表赋值给变量:
library(sjPlot) p <- plot_model(model, type = "int")添加对数刻度,两种简单方式:
- 使用
scale_y_log10()快速实现:p + scale_y_log10() - 或者用
scale_y_continuous()指定转换类型,适合需要额外调整的场景:p + scale_y_continuous(trans = "log10")
- 使用
(可选)如果希望Y轴标签显示原始数值(而非对数转换后的数值),可以搭配
scales包优化标签格式:library(scales) p + scale_y_log10(labels = label_number())
这样就能把Y轴改为对数刻度,让原本被高数值曲线遮挡的低数值曲线清晰显示出来。
内容的提问来源于stack exchange,提问作者Jonathan Schneider
相关产品推荐
相关产品推荐

