Ответы:
Из ggplot2 2.0.0вы можете использовать margin =аргумент element_text()для изменения расстояния между названием оси и цифрой. Установка значений marginна tоп, rпролете, bottom и lEFT стороны элемента.
ggplot(mpg, aes(cty, hwy)) + geom_point()+
theme(axis.title.y = element_text(margin = margin(t = 0, r = 20, b = 0, l = 0)))
marginтакже может использоваться для других element_textэлементов (см. ?theme), таких как axis.text.x, axis.text.yи title.
margin =аргумент не работает?
theme_bw. Извините, размещение всего кода нечитабельно / беспорядочно ...
theme_bw()то theme_bw()следует использовать перед theme()функцией, потому что в предопределенных темах для заголовков осей уже есть аргумент.
На основе этого сообщения на форуме: https://groups.google.com/forum/#!topic/ggplot2/mK9DR3dKIBU
Похоже, что проще всего добавить разрыв строки (\ n) перед осью x и после меток оси y. Кажется, намного проще (хотя и глупее), чем решения, опубликованные выше.
ggplot(mpg, aes(cty, hwy)) +
geom_point() +
xlab("\nYour_x_Label") + ylab("Your_y_Label\n")
Надеюсь, это поможет!
facet_grid, в то время как ответ, предложенный Адамом Б, работает (например, разрыв строки с использованием \ n)