Je voudrais tracer quelques barplots les uns sur les autres en utilisant facet_grid:
library(ggplot2)
df <- group_by(mpg, manufacturer) %>%
summarise(cty = mean(cty), hwy = mean(hwy)) %>%
ungroup()
df <- melt(df, id.vars = "manufacturer")
ggplot() +
geom_bar(data =df, aes(x = variable, y = value), stat = "identity") +
facet_grid(manufacturer ~ ., switch = "y")
J'utilise l'argument switch
de ggplot2::facet_grid()
pour permettre aux étiquettes de facette d'être affichées sur l'axe des y plutôt qu'en haut de chaque facette. Le problème est que les étiquettes des facettes sont tracées verticalement et donc rognées. Existe-t-il un moyen de tracer les étiquettes des facettes horizontalement? Toutes les questions que j'ai trouvées jusqu'à présent concernaient uniquement la rotation des étiquettes de l'axe des x, pas les étiquettes des facettes.
Il vous suffit d'ajouter la theme()
et de spécifier l'angle dans strip.text.y
library(ggplot2)
df <- group_by(mpg, manufacturer) %>%
summarise(cty = mean(cty), hwy = mean(hwy)) %>%
ungroup()
df <- melt(df, id.vars = "manufacturer")
ggplot() +
geom_bar(data =df, aes(x = variable, y = value), stat = "identity") +
facet_grid(manufacturer ~ ., switch = "y")+
theme(strip.text.y = element_text(angle = 180))