Les données:
df <- data.frame(
type = c("T", "F", "P", "T", "F", "P", "T", "F", "P", "T", "F", "P"),
size = c("50%", "50%", "50%", "100%", "100%", "100%", "150%", "150%", "150%", "200%", "200%", "200%"),
amount = c(48.4, 48.1, 46.8, 25.9, 26, 24.9, 21.1, 21.4, 20.1, 20.8, 21.5, 16.5)
)
J'ai besoin de tracer un bargraph des données ci-dessus en utilisant ggplot (axe x -> type
, axe y -> amount
, grouper par size
). Lorsque j'ai utilisé le code suivant, je n'obtiens pas la variable type
et ainsi que size
dans l'ordre indiqué dans les données. Veuillez consulter la figure. J'ai utilisé le code suivant pour cela.
ggplot(df, aes(type, amount , fill=type, group=type, shape=type, facets=size)) +
geom_bar(width=0.5, position = position_dodge(width=0.6)) +
facet_grid(.~size) +
theme_bw() +
scale_fill_manual(values = c("darkblue","steelblue1","steelblue4"),
labels = c("T", "F", "P"))
.
Pour résoudre le problème de commande, j'ai utilisé une méthode factorielle pour la variable «type» en utilisant ce qui suit. Veuillez également consulter la figure.
temp$new = factor(temp$type, levels=c("T","F","P"), labels=c("T","F","P"))
Cependant, maintenant je ne sais pas comment fixer l'ordre de la variable size
. Ce devrait être 50%, 100%. 150% et 200%.