如何在geom_text和stat_cor之间的ggplot中进行字体匹配?

问题描述

我在 R 中做了一个线性回归图,并想将一些统计输出放在图中。 stat_cor 函数允许我添加 R2 和 p 值,但它不允许您添加斜率或斜率误差。我可以使用 geom_text 添加后两个,但是 stat_corgeom_text间的字体不同。在我看来,stat_cor 字体看起来更干净,那么我怎样才能让 geom_text 看起来像 stat_cor 字体?

示例数据集:

library(ggplot2)
library(ggpubr)

beer <- read.csv("http://users.stat.umn.edu/~helwig/notes/MNbeer.csv")

ggplot(data = beer,aes(x = ABV,y = IBU)) +
  stat_smooth(method = 'lm') +
  geom_point() +
  theme_bw() +
  theme(panel.grid = element_blank(),text = element_text(size = 14,color = "black"),axis.text.x = element_text(size = 14,axis.text.y = element_text(size = 14,color = 'black')) +
  stat_cor(aes(label = paste(..rr.label..,..p.label..,sep = "~`,`~")),label.x = 4,size = 4)

这里是我得到斜率及其标准误差的地方

model <- lm(IBU~ABV,data = beer)
summary(model)

我使用 geom_text 将斜率 ± SE 添加到下面的图中,但是它们是 stat_cor 输出geom_text 输出间的字体差异。

ggplot(data = beer,y = IBU)) +
  stat_smooth(method = 'lm') +
  geom_point() +
  geom_text(x = 4.45,y = 88,label = 'Slope = 19.79 ± 2.67',size = 4.5) +
  theme_bw() +
  theme(panel.grid = element_blank(),size = 4)

理想图的 R2、p 值和斜率 ± SE 均采用与 stat_cor 相同的字体。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)