Вы можете использовать следующий синтаксис для изменения положения метки оси в ggplot2:
theme(axis. title.x = element_text(margin=margin(t= 20 )), #add margin to x-axis title
axis. title.y = element_text(margin=margin(r= 60 ))) #add margin to y-axis title
Обратите внимание, что вы можете указать t , r , b , l для аргумента поля, который обозначает верх, право, низ и лево.
В следующих примерах показано, как использовать этот синтаксис на практике.
Пример 1: установка положения метки оси X
Предположим, мы создаем следующую диаграмму рассеяния, используя ggplot2:
library (ggplot2)
#create data frame
df <- data.frame(x=c(1, 2, 4, 5, 7, 8, 9, 10),
y=c(12, 17, 27, 39, 50, 57, 66, 80))
#create scatterplot of x vs. y
ggplot(df, aes(x=x, y=y)) +
geom_point()

Мы можем добавить отступ в верхней части заголовка по оси X, чтобы заголовок по оси X отображался дальше от оси:
#create scatterplot of x vs. y with margin added on x-axis title
ggplot(df, aes(x=x, y=y)) +
geom_point() +
theme(axis. title.x = element_text(margin = margin(t = 70 )))

Обратите внимание, что мы добавили значительный интервал между заголовком по оси X и осью X.
Пример 2: установка положения метки оси Y
Мы можем использовать следующий код, чтобы добавить поле справа от заголовка оси Y, чтобы заголовок оси Y отображался дальше от оси:
#create scatterplot of x vs. y with margin added on y-axis title
ggplot(df, aes(x=x, y=y)) +
geom_point() +
theme(axis. title.y = element_text(margin = margin(r = 70 )))

Обратите внимание, что мы добавили значительный интервал между заголовком оси Y и осью Y.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие часто используемые операции в ggplot2:
Как повернуть метки осей в ggplot2
Как установить разрывы осей в ggplot2
Как установить пределы оси в ggplot2
Как изменить метки легенды в ggplot2