826 votes

Rotation et espacement des étiquettes d'axe dans ggplot2

J'ai un graphique dont l'axe des x est un facteur dont les étiquettes sont longues. Bien qu'il ne s'agisse probablement pas d'une visualisation idéale, pour l'instant, j'aimerais simplement faire pivoter ces étiquettes pour qu'elles soient verticales. J'ai résolu cette partie avec le code ci-dessous, mais comme vous pouvez le voir, les étiquettes ne sont pas totalement visibles.

data(diamonds)
diamonds$cut <- paste("Super Dee-Duper",as.character(diamonds$cut))
q <- qplot(cut,carat,data=diamonds,geom="boxplot")
q + opts(axis.text.x=theme_text(angle=-90))

alt text

Merci pour toute aide.

1366voto

Jonathan Chang Points 6231

Changez la dernière ligne en

q + theme(axis.text.x = element_text(angle = 90, hjust = 1))

Par défaut, les axes sont alignés au centre du texte, même en cas de rotation. Lorsque vous effectuez une rotation de +/- 90 degrés, vous souhaitez généralement que l'axe soit plutôt aligné sur le bord :

alt text

L'image ci-dessus provient de cet article de blog .

100voto

e3bo Points 474

Pour que le texte des étiquettes à cocher soit entièrement visible et se lise dans le même sens que l'étiquette de l'axe des y, changez la dernière ligne en

q + opts(axis.text.x=theme_text(angle=90, hjust=1))

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X