1

我正在尝试绘制包含交互的模型的预测值。我想将 x 轴值(因子)的位置移近图表的中心。目前使用 sjPlot,plot_model()函数,我尝试过使用grid.breaks=,但这仅适用于数值。此外,我尝试的一切,这些值似乎只沿着主要网格线绘制。有没有办法在主要网格线之间绘制?或者有没有办法在ggplot2中做到这一点?TIA

library("sjPlot")
data("mtcars")
mtcars$gear <- factor(mtcars$gear)
mtcars <- subset(mtcars,!gear=="3")
mtcars$gear <- factor(mtcars$gear)
levels(mtcars$gear)
m_gear <- lm(mpg ~ gear*wt, data = mtcars)
plot_model(m_gear, type = "int", grid.breaks = 0.5)

图形输出

4

1 回答 1

0

您可以使用 coord_cartesian。当您有因子时,它们在 x 轴上被编码为 1,2,因此设置超出该范围的限制将为您提供所需的内容,请参阅:

plot_model(m_gear, type = "int") + coord_cartesian(expand = TRUE,xlim=c(0,3))

在此处输入图像描述

plot_model(m_gear, type = "int") + coord_cartesian(expand = TRUE,xlim=c(0.5,2.5))

在此处输入图像描述

于 2019-11-26T10:21:35.620 回答