r - 如何在geom_text和stat_cor之间的ggplot中进行字体匹配?
问题描述
我在 R 中制作了一个线性回归图,并希望将一些统计输出放在图中。该stat_cor
函数允许我添加 R2 和 p 值,但它不允许您添加斜率或斜率误差。我可以添加后两者,但是字体在和geom_text
之间是不同的。在我看来,字体看起来更干净,那么我怎样才能让它看起来像字体呢?stat_cor
geom_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, color = "black"),
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)
我将斜率± SE 添加到下面的图中,但是它们是输出和输出geom_text
之间的字体差异。stat_cor
geom_text
ggplot(data = beer, aes(x = ABV, 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(),
text = element_text(size = 14, color = "black"),
axis.text.x = element_text(size = 14, color = "black"),
axis.text.y = element_text(size = 14, color = 'black')) +
stat_cor(aes(label = paste(..rr.label.., ..p.label.., sep = "~`,`~")),
label.x = 4, size = 4)
理想图形的 R2、p 值和斜率 ± SE 均采用与 相同的字体stat_cor
。
解决方案
推荐阅读
- python - 在 Python 中使用生成器对矩阵执行操作
- android - 如何修复 DefaultKotlinSourceSetKt 的初始化错误?
- swift - 无法转换类型“()->字符串?”的值 到指定类型“字符串”
- javascript - 如何强制降低 Electron 视频帧率
- c - 在不使用 & 的情况下将 int 的值发送到采用 void* 的函数
- subquery - MongoDB 等价于 SQL 子查询
- windows - 无法在 UWP 中设置复选框内容颜色
- gmail - 除了 Outlook for Mac 之外,Outlook 桌面客户端是否支持 Outlook 添加安装?
- python - 枚举 Python 变量位置
- kotlin - 用 Kotlin 序列替换同步回调