[英]How to add sample size used in plotting geom_jitter
我想在我的 stat_cor (ggpubr) 文本旁邊添加多少樣本被添加到圖表中。
我正在使用以下代碼生成圖表:
dataset = mtcars
ggplot(dataset, aes(dataset$wt, dataset$disp)) +
geom_jitter() +
geom_smooth(level=0.95, method = "loess") +
stat_cor(method="spearman") +
theme_classic()
但是,如果我想在一個圖中繪制多個圖形,它使用一個真實的數據集,其中不同的變量具有不同的缺失值,那么最好使用我的樣本大小來繪制 geom_jitter。
它有點老套(並且選項有限),但是您可以使用label.sep
參數在相關系數和 p 值之間插入樣本大小(請注意,舊版本的ggpubr
有一個label.sep
錯誤...如果這對您不起作用,請嘗試更新您的包裹)
ggplot(mtcars, aes(wt, disp)) +
geom_jitter() +
geom_smooth(level = 0.95, method = "loess") +
stat_cor(method = "spearman", label.sep = sprintf(", n = %s, ", nrow(mtcars))) +
theme_classic()
如果您擔心缺少值,則可能需要使用與nrow
不同的函數,但我會把它留給您。 這也不適用於構面(您將在每個構面中獲得相同的數字)。
對於完全靈活的解決方案,我認為您可以使用geom_text
,或者可能使用帶有geom = "text"
的stat_summary
?
或者像這個答案一樣硬核,如果沒有別的辦法的話
只是為了缺失值的完整性:
ggplot(mtcars, aes(wt, disp)) +
geom_jitter() +
geom_smooth(level = 0.95, method = "loess") +
stat_cor(method = "spearman", label.sep =
sprintf(", n = %s, ",
sum(complete.cases(mtcars[c("wt","disp")]))
)) +
theme_classic()
如示例所示,在 wt 和 disp 的完整情況下繪制 N 的值
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.