Увеличить расстояние между текстом и заголовком по оси y

Заголовок оси Y слишком близко к тексту оси.

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

ggplot output

Я попытался изменить значение многих параметров с помощью theme(), но никто не помогает.

Ответ 1

В ggplot2 2.0.0 вы можете использовать аргумент margin = element_text(), чтобы изменить расстояние между заголовком оси и цифрами. Задайте значения margin на t op, r ight, b ottom и l eft стороне элемента.

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.

Ответ 2

На основании этого сообщения на форуме: 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")

Надеюсь, что это поможет!