web-dev-qa-db-fra.com

Augmenter la distance entre le texte et le titre sur l'axe des y

Le titre de l'axe des y apparaît trop près du texte de l'axe.

ggplot(mpg, aes(cty, hwy)) + geom_point()

ggplot output

J'ai essayé de changer la valeur de nombreux paramètres avec theme() mais aucun ne semble aider.

96
Ernest A

À partir de ggplot2 2.0.0, Vous pouvez utiliser l'argument margin = De element_text() pour modifier la distance entre le titre de l'axe et les nombres. Définissez les valeurs du côté margin sur top, right, bottom et left de l'élément.

ggplot(mpg, aes(cty, hwy)) + geom_point()+
  theme(axis.title.y = element_text(margin = margin(t = 0, r = 20, b = 0, l = 0)))

margin peut également être utilisé pour d'autres éléments element_text (voir ?theme), tels que axis.text.x, axis.text.y et title.

147
Didzis Elferts

Basé sur ce message de forum: https://groups.google.com/forum/#!topic/ggplot2/mK9DR3dKIB

La chose la plus simple à faire est d’ajouter un saut de ligne (\ n) avant votre axe x et après les étiquettes de votre axe y. Cela semble beaucoup plus facile (bien que plus bête) que les solutions présentées ci-dessus.

ggplot(mpg, aes(cty, hwy)) + 
    geom_point() + 
    xlab("\nYour_x_Label") + ylab("Your_y_Label\n")

J'espère que ça t'as aidé!

79
Adam B