¿Cómo trazar estadísticas adicionales en boxplot para cada grupo?

Me gustaría ver diagramas de caja de combinación de factores yMe dijeron que usara celosía para eso. Lo probé y se parece a esto:

 Pero ahora me gustaría agregar también estadísticas ANOVA a cada uno de los grupos. Posiblemente las estadísticas deberían mostrar el valor p en cada panel (en el blanco debajo de, por ejemplo, "Australia"). ¿Cómo hacer esto en celosía? Tenga en cuenta que no insisto en celosía en absoluto ...

Código de ejemplo:

set.seed(123)
n <- 300
country <- sample(c("Europe", "Africa", "Asia", "Australia"), n, replace = TRUE)
type <- sample(c("city", "river", "village"), n, replace = TRUE)
month <- sample(c("may", "june", "july"), n, replace = TRUE)
x <- rnorm(n)
df <- data.frame(x, country, type, month)

bwplot(x ~ type|country+month, data = df, panel=function(...) {
    panel.abline(h=0, col="green")
    panel.bwplot(...)
})

El código para realizar ANOVA para uno de los grupos y paraextraer p-valor Es esto:

model <- aov(x ~ type, data = df[df$country == 'Africa' & df$month == 'may',])
p_value <- summary(model)[[1]][["Pr(>F)"]][2]

Respuestas a la pregunta(1)

Su respuesta a la pregunta