【发布时间】:2021-12-09 00:05:24
【问题描述】:
我正在使用 texreg 包中的 plotreg() 来显示系数和 CI 估计值,但我发现我无法重现具有与其他人类似的布局的图形输出。例如,使用工作示例here:
# install.packages("texreg")
library(texreg)
# load example data
library(car)
prestige.dat <- data.frame(Prestige)
# standardizing the data
pres_mean <- mean(prestige.dat$prestige, na.rm = TRUE)
pres_sd <- sd(prestige.dat$prestige, na.rm = TRUE)
prestige.dat$prestige.std <- (prestige.dat$prestige - pres_mean) / pres_sd
inc_mean <- mean(prestige.dat$income, na.rm = TRUE)
inc_sd <- sd(prestige.dat$income, na.rm = TRUE)
prestige.dat$income.std <- (prestige.dat$income - inc_mean) / inc_sd
educ_mean <- mean(prestige.dat$education, na.rm = TRUE)
educ_sd <- sd(prestige.dat$education, na.rm = TRUE)
prestige.dat$education.std <- (prestige.dat$education - educ_mean) / educ_sd
# standardized regression
mod.std <- lm(prestige.std ~ income.std + education.std, data = prestige.dat)
# plot
plotreg(list(mod.std),
custom.coef.names = c("Intercept", "Income", "Education"),
custom.model.names = c("Model"),
reorder.coef = c(2, 3, 1),
lwd.vbars = 0)
据说,我应该制作这样的东西
我想知道是否有办法删除我的 plotreg 输出的外框并将标题 (Model) 放在图表顶部(而不是将其垂直放置在左侧 y 轴上)图)?
或者可能是包的作者已经大幅更改了默认设置,因此工作示例中使用的布局不再可用。
#更新
按照@IRTFM 的建议(更改绘图theme()),我能够使图形输出看起来与工作示例非常相似。
这样框架就被移除了,主标题现在位于图表的顶部,只是我仍然无法将 0-reference 垂直条设置为实线(我尝试在 coefplot() 中使用 [ref.line.par][4] 参数,但是它没有工作)
我使用了以下代码:
plt <- plotreg(list(mod.std),
custom.coef.names = c("Intercept", "Income", "Education"),
custom.model.names = c("Model"),
reorder.coef = c(2, 3, 1),
lwd.vbars = 0)
library(ggplot2)
plt + ggtitle("Model") +
theme(panel.border=element_blank(), strip.text=element_text(size=12, colour="transparent"), strip.background=element_rect(colour="transparent", fill="transparent"), plot.title = element_text(hjust = 0.5))
输出如下所示
【问题讨论】:
-
你能找到一个表现出相同结果的数据集,或者你能发布足够的数据来解决这个问题吗?
-
@IRTFM 我遵循董事会的规则,提出最小的示例,我只是复制了该基于网络的手册中列出的代码,使用相同的数据,但无法重现作者的图形结果。我的意思是代码有效,但它无法产生相同的布局。
-
哦。对不起。我没有意识到 Prestige 是加载的包中的数据集。这些“其他人”是谁?