簡體   English   中英

ggpubr:更改stat_compare_means Kruskal-Wallis p值的字體大小

[英]ggpubr: change font size of stat_compare_means Kruskal-Wallis p-values

如何更改下圖中stat_compare_means的字體大小? 即,更改“Kruskal-Wallis,p = 1.5e-09”和其他p值字體大小? 我想使用比默認字體小的字體大小...

按照數據示例...

library(ggpubr)
data("ToothGrowth")
compare_means(len ~ dose,  data = ToothGrowth)

# Visualize: Specify the comparisons I want
my_comparisons <- list( c("0.5", "1"), c("1", "2"), c("0.5", "2") )

# Plotting
ggboxplot(ToothGrowth, x = "dose", y = "len",
          color = "dose", palette = "jco")+ 
stat_compare_means(comparisons = my_comparisons)+ # Add pairwise comparisons p-value
stat_compare_means(label.y = 50)     # Add global p-value

情節:

在此輸入圖像描述

your_font_size <- 2

p <- ggboxplot(ToothGrowth, x = "dose", y = "len", color = "dose", palette = "jco") + 
 stat_compare_means(comparisons = my_comparisons) + 
 stat_compare_means(label.y = 50, size = your_font_size)

p$layers[[2]]$aes_params$textsize <- your_font_size
p

在此輸入圖像描述

解決方案有點豐富,但有效。 我找不到另一種方法來覆蓋第一次調用stat_compare_means后創建的geom_signif圖層的textsize參數。

參數存儲在這里: p$layers[[2]]$aes_params$textsize ,可以手動修改。

如果您需要對另一個圖層的操作進行此操作,其中圖層的順序可能與此示例不同,您可以使用gginnards包中的which_layer函數來使用以下代碼檢測此圖層(或任何其他圖層)。

感謝@KGee指出which_layer函數是從版本0.3.0開始從ggpmisc包中ggpmisc

library(gginnards)
which_layers(p, "GeomSignif")
## [1] 2

如上所示更改textsize參數。

p$layers[[which_layers(p, "GeomSignif")]]$aes_params$textsize <- your_font_size

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM