ggpubr: изменить размер шрифта stat_compare_means p-значения Крускала-Уоллиса
Как я могу изменить размер шрифта stat_compare_means
на участке ниже? Т.е. изменить "Крускал-Уоллис, 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
Участок:
1 ответ
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
Решение немного обильно, но работает. Я не мог найти другой способ переписать textsize
параметр geom_signif
слой, который создается после первого вызова stat_compare_means
,
Параметр хранится здесь: p$layers[[2]]$aes_params$textsize
и может быть изменен вручную.
Если вам нужна эта манипуляция для другого графика, в котором порядок слоев может отличаться от этого примера, вы можете использовать which_layer
функция от gginnards
Пакет для обнаружения этого слоя (или любого другого), используя следующий код.
Спасибо KGee за указание на то, что which_layer
функция была перемещена из ggpmisc
Пакет от версии 0.3.0.
library(gginnards)
which_layers(p, "GeomSignif")
## [1] 2
Изменить textsize
аргумент, как показано выше.
p$layers[[which_layers(p, "GeomSignif")]]$aes_params$textsize <- your_font_size