Как изменить позицию заголовка в ggplot2 (с примерами)


По умолчанию заголовки графиков в ggplot2 выравниваются по левому краю.

Однако вы можете использовать следующие методы для изменения положения заголовка:

Способ 1: центрировать заголовок

some_ggplot +
 theme(plot. title = element_text(hjust = 0.5 ))

Способ 2: Выровняйте заголовок по правому краю

some_ggplot +
 theme(plot. title = element_text(hjust = 1 ))

Способ 3: отрегулировать положение заголовка по вертикали

some_ggplot +
 theme(plot. title = element_text(vjust = 10 ))

В следующих примерах показано, как использовать каждый метод на практике со встроенным набором данных mtcars в R.

Пример 1: центрировать заголовок

В следующем коде показано, как создать диаграмму рассеяния в ggplot2 и центрировать заголовок с помощью аргумента hjust :

library (ggplot2)

#create scatterplot with centered title
ggplot(data=mtcars, aes(x=mpg, y=wt)) +
 geom_point() +
 ggtitle(" Plot Title ") +
 theme(plot. title = element_text(hjust = 0.5 ))

Обратите внимание, что заголовок выровнен по центру.

Пример 2: Выровняйте заголовок по правому краю

В следующем коде показано, как создать диаграмму рассеивания в ggplot2 и выровнять заголовок по правому краю с помощью аргумента hjust :

library (ggplot2)

#create scatterplot with right-aligned title
ggplot(data=mtcars, aes(x=mpg, y=wt)) +
 geom_point() +
 ggtitle(" Plot Title ") +
 theme(plot. title = element_text(hjust = 1 ))

Обратите внимание, что заголовок выровнен по правому краю.

Пример 3. Настройка положения заголовка по вертикали

В следующем коде показано, как создать диаграмму рассеивания в ggplot2 и переместить заголовок выше с помощью аргумента vjust :

library (ggplot2)

#create scatterplot with title moved higher up
ggplot(data=mtcars, aes(x=mpg, y=wt)) +
 geom_point() +
 ggtitle(" Plot Title ") +
 theme(plot. title = element_text(hjust = 1 , vjust = 3 ))

Обратите внимание, что заголовок переместился выше.

Вы также можете указать отрицательное значение аргумента vjust , чтобы переместить заголовок ниже:

library (ggplot2)

#create scatterplot with title moved down
ggplot(data=mtcars, aes(x=mpg, y=wt)) +
 geom_point() +
 ggtitle(" Plot Title ") +
 theme(plot. title = element_text(hjust = 1 , vjust = - 10 )) 

Обратите внимание, что заголовок теперь перемещен внутрь сюжета.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в ggplot2:

Как изменить заголовок легенды в ggplot2
Как повернуть метки осей в ggplot2
Как исправить в R: не удалось найти функцию «ggplot»