r - 将样本大小 (n) 添加到每个方面散点图 (R, ggpubr)
问题描述
以 mtcars 数据集为例,我正在使用此代码。
library(ggplot2)
library(ggpubr)
ggscatter(mtcars, x = "qsec", y = "disp", facet.by = "cyl", add = "reg.line", add.params = list(color = "blue", fill = "lightblue"), conf.int = TRUE, cor.method = "spearman", cor.coef = TRUE)
我想将样本量添加到每个方面,以便它显示“n =”样本量。我尝试了以下修改,但没有运气。请问有人对如何解决这个问题有任何建议吗?
library(ggplot2)
library(ggpubr)
give.n <- function(x){return(c(y = min(mtcars$disp), label = length(x)))}
ggscatter(mtcars, x = "qsec", y = "disp", facet.by = "cyl", add = "reg.line", add.params = list(color = "blue", fill = "lightblue"), conf.int = TRUE, cor.method = "spearman", cor.coef = TRUE) + geom_text(paste0("n = ", (data = give.n, aes(cyl, disp, label = n), vjust = 2))
解决方案
让事情变得更简单的建议:为圆柱体 + 样本大小创建一个新列,并将其用于构面标题。
library(ggpubr)
library(dplyr)
mtcars %>%
group_by(cyl) %>%
mutate(n = paste0("cyl = ", cyl, ", n = ", n())) %>%
ggscatter(., x = "qsec", y = "disp", facet.by = "n", add = "reg.line",
add.params = list(color = "blue", fill = "lightblue"), conf.int = TRUE,
cor.method = "spearman", cor.coef = TRUE)
结果:
推荐阅读
- c++ - C++:我有两个数组,其中第一个和最后一个元素具有相同的内存地址
- sql - 原始查询不接受带日期的 where 条件
- firebase - 如何修复在颤振应用程序的 dart 文件中导入 firebase auth 后出现的 firebase 错误?
- postgresql - 第二次触发结果消失
- pip - 为什么执行“pip3 缓存清除”时出错?
- c# - 如何使用 Nswag 为我的 API DTO(基于生成器)设置不同的名称?
- fortran - 为什么我会在 Fortran 中收到 Unclassifiable statement at 1 和 unexpected junk 等这些错误?
- android - timezoneinfo.converttime 是否仅适用于 xamarin froms 的某些设备?
- python - 百万行 Pandas df 上的模糊正则表达式匹配
- java - java.lang.NullPointerException : org.openqa.selenium.OutputType)”,因为“screenShot”为空