Agregue anotación personalizada a la etiqueta del valor p en ggpubr stat_compare_means().
Intento hacer un diagrama de caja con la visualización del valor p.
my_comparisons <- list( c("0.5", "1"), c("1", "2"), c("0.5", "2") )
ggboxplot(ToothGrowth, x = "dose", y = "len") +
stat_compare_means(comparisons = my_comparisons, method = "wilcox.test")
El resultado es:
Pero ¿cómo puedo agregar texto adicional a los valores p calculados? Quiero agregar “p = ” como se muestra a continuación:
¿Cómo puedo hacerlo?
upd. Las siguientes variantes no funcionan:
my_comparisons <- list( c("0.5", "1"), c("1", "2"), c("0.5", "2") )
ggboxplot(ToothGrowth, x = "dose", y = "len") +
stat_compare_means(comparisons = my_comparisons, method = "wilcox.test", aes(label=paste("p=",scientific(as.numeric(..p.format..)))))
ggboxplot(ToothGrowth, x = "dose", y = "len") +
stat_compare_means(comparisons = my_comparisons, method = "wilcox.test", aes(label = paste("p =", ..p.format..)))
ggboxplot(ToothGrowth, x = "dose", y = "len") +
stat_compare_means(comparisons = my_comparisons, method = "wilcox.test", aes(label = paste0("p =", ..p.format..)))
davy.ai
Para agregar el texto “p =” a los valores de p calculados en un boxplot utilizando ggplot2 y ggpubr, utiliza la función
aes()
para establecer un parámetro de etiqueta con la funciónpaste()
. Aquí está el código actualizado:En este código, el parámetro
label
se establece dentro de la funciónaes()
para usarpaste()
y concatenar el texto “p =” con el valor de p calculado redondeado a 3 decimales utilizando..p.format..
. La funciónround()
se puede utilizar para controlar el número de decimales.Esto debería resultar en un boxplot con valores de p etiquetados, como se muestra en la segunda imagen en la pregunta original.