ggplot: Comment augmenter l'espacement entre les parcelles à facettes?


113

J'ai plusieurs histogrammes à facettes (obtenus avec la commande ci-dessous) qui sont joliment tracés l'un sous l'autre. Je voudrais augmenter l'espacement entre eux, cependant, ils sont serrés.

J'ai regardé la doc mais je n'ai pas trouvé de paramètre pour cela.

qplot (Happiness.Level, Number.of.Answers, data=mydata, geom="histogram") + facet_grid (Location ~ .) 

Un commentaire secondaire que j'ai trouvé une autre façon d'aborder cela (utilisé un face_wrap au lieu de facet_grid et le graphique résultant est plus beau). Je suis toujours intéressé s'il existe un moyen de répondre à la question initiale.
wishihadabettername

2
Essayez theme_get () pour une multitude d'options cachées que vous pouvez ajuster avec opts ()
Brandon Bertelsen

Réponses:


168

Utilisez la fonction de thème :

library(grid)

p + theme(panel.spacing = unit(2, "lines"))

Voir aussi ici: Tracés de découpage générés par ggplot2



8
En raison d'une autre mise à jour, l'incantation est maintenanttheme(panel.margin = unit(2, "lines"))
David

11
Mise à jour - est maintenanttheme(panel.spacing = unit(1, "lines"))
Mr.ecos

Cela fonctionne sans le gridpackage. D'après mon expérience, les étiquettes x de deux parcelles côte à côte se chevauchent souvent (la plus grande étiquette sur la gauche et la plus petite étiquette sur la droite). Une solution pour corriger la sortie consiste à ggsaveutiliser une largeur supérieure à la valeur par défaut. Mais je trouve theme(panel.spacing = unit(1, "lines"))plus agréable car cela fonctionne également pour la fenêtre de tracé contextuelle.
PatrickT
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.