Модульні уроки (2/2)
Налаштування та грані
Окрім визначення геометрії та естетики, ggplot2 дозволяє вам повністю налаштувати візуальний вигляд ділянки, додаючи заголовки, змінюючи теми та фасетування (розбиваючи ділянки на підпанелі).
Заголовки та мітки: labs()
Щоб додати головний заголовок, підзаголовки та налаштувати мітки осей або заголовки легенд, ми додаємо шар labs():
ggplot(df, aes(x = age, y = income)) +
geom_point() +
labs(
title = "Income by Age",
subtitle = "2026 census data",
x = "Age (years)",
y = "Annual Income (EUR)",
color = "Gender"
)Візуальні теми: theme_*()
ggplot2 містить кілька попередньо запакованих тем, які змінюють фон, лінії сітки та типографіку. Some of the most common ones are:
theme_gray()(тема за замовчуванням зі світло-сірим фоном).theme_minimal()(чистий білий фон із тонкими лініями сітки).theme_classic()(простий класичний стиль, без фонових ліній сітки).
ggplot(df, aes(x = age, y = income)) +
geom_point() +
theme_minimal() # Applies a clean, modern styleПоділ діаграм на підпанелі: facet_wrap()
Огранювання дозволяє розділити один графік на кілька підділянок (панелей), розташованих поруч, на основі значення категоріальної змінної.
Основна функція — facet_wrap() і використовує позначення формули R (~ variable_name):
# Creates a separate subplot for each department
ggplot(df, aes(x = age, y = income)) +
geom_point() +
facet_wrap(~ department)Спробуйте самі
Вправа 1: Додайте заголовки та осі
Враховуючи діаграму розсіювання, додайте шар labs(), встановивши для заголовка (title) значення «Title», для мітки осі x — «Age» і для мітки осі Y — «Income».
Показати підказку
Використовуйте labs(title = 'Title', x = 'Age', y = 'Income'), поєднуючи його з '+'.
Рішення доступне після 3 спроб
Вправа 2. Застосуйте чисту тему
Застосуйте графічну тему theme_minimal() до діаграми розсіювання нижче, щоб покращити її візуальну естетику.
Показати підказку
Використовуйте знак «+» і додайте функцію theme_minimal().
Рішення доступне після 3 спроб
Вправа 3: Розділіть графік за допомогою facet_wrap
Використовуйте функцію facet_wrap(), щоб розділити точкову діаграму на різні панелі на основі стовпця відділу.
Показати підказку
Використовуйте facet_wrap(~ department), щоб розділити графік.
Рішення доступне після 3 спроб
Вправа 4: перевернути осі координат
Щоб зробити стовпчасту діаграму з багатьма категоріями читабельною, ви можете перевернути осі x і y. Додайте шар coord_flip() до гістограми.
Показати підказку
Використовуйте coord_flip() для конвеєра ggplot з «+».
Рішення доступне після 3 спроб
Вправа 5: завершіть готовий до публікації сюжет
Створіть повний графік на df: зіставте вік із x, дохід із y, а колір із статтю в geom_point(). Розділіть графік за допомогою facet_wrap() за відділами, додайте labs() із назвою «Зарплата за віком» і, нарешті, застосуйте theme_minimal().
Показати підказку
Об’єднайте всі шари за допомогою '+': ggplot(...) + geom_point() + facet_wrap(~ department) + labs(title = 'Salary by Age') + theme_minimal()
Рішення доступне після 3 спроб