2010-04-21 5 views
4

Je ne suis pas sûr de ce que je fais de mal ici. J'ai cette parcelle:Essayer de conserver des barres pleines dans un tracé à facettes

ggplot(data.PE5, aes(ybands,fill=factor(decide))) + geom_bar(position="dodge") 

qui produit:

Ensuite, je veux facette d'un facteur, la création de deux parcelles w/esquivé empilés, des barres de couleur

ggplot(data.PE5, aes(ybands,fill=factor(decide))) + geom_bar(position="dodge") + 
facet_grid(~group_label) 

Cependant, je perdre la coloration basée sur le facteur, que je veux garder:

+0

Quel est le résultat de str (data.PE5)? Un exemple similaire ci-dessous fonctionne très bien et les couleurs sont également conservées dans le diagramme à facettes. ggplot (mtcars, aes (CYL, fill = facteur (h))) + \t \t geom_bar (position = "esquiver", binwidth = 1) + \t \t facet_grid (~ vitesse) – learnr

Répondre

2

Si vous déplacez le fill dans le geom_bar, cela devrait fonctionner. Comme:

ggplot(data.PE5, aes(ybands)) + geom_bar(aes(fill=factor(decide)),position="dodge") + facet_grid(~group_label) 

La raison est la façon dont ggplot2 construit des parcelles comme la grammaire (je pense).

+1

Vous ne devriez pas avoir à faites cela - peu importe où vous définissez l'esthétique de remplissage tant que cette couche particulière hérite ou la définit. Un exemple reproductible serait utile ... – hadley

Questions connexes