Як використовувати facet_wrap у r (з прикладами)


Функцію facet_wrap() можна використовувати для створення багатопанельних графіків у ggplot2.

Ця функція використовує такий базовий синтаксис:

 library (ggplot2)

ggplot(df, aes (x_var, y_var)) +
  geom_point() +
  facet_wrap(vars(category_var))

У наведених нижче прикладах показано, як використовувати цю функцію з вбудованим набором даних mpg у R:

 #view first six rows of mpg dataset
head(mpg)

manufacturer model displ year cyl trans drv cty hwy fl class
										
audi a4 1.8 1999 4 auto(l5) f 18 29 p compact
audi a4 1.8 1999 4 manual(m5) f 21 29 p compact
audi a4 2.0 2008 4 manual(m6) f 20 31 p compact
audi a4 2.0 2008 4 auto(front) f 21 30 p compact
audi a4 2.8 1999 6 auto(l5) f 16 26 p compact
audi a4 2.8 1999 6 manual(m5) f 18 26 p compact

Приклад 1: базова функція facet_wrap().

Наступний код показує, як створити кілька діаграм розсіювання в ggplot2, використовуючи displ як змінну осі x, hwy як змінну осі y і class як змінну групування:

 ggplot(mpg, aes (displ, hwy)) +
  geom_point() +
  facet_wrap(vars(class))

Приклад 2: використання спеціальних міток

У наступному коді показано, як використовувати функцію facet_wrap() із настроюваними мітками для заголовків сюжетів:

 #define custom labels
plot_names <- c('2seater' = "2 Seater",
                'compact' = "Compact Vehicle",
                'midsize' = "Midsize Vehicle",
                'minivan' = "Minivan",
                'pickup' = "Pickup Truck",
                'subcompact' = "Subcompact Vehicle",
                'suv' = "Sport Utility Vehicle")

#use facet_wrap with custom plot labels
ggplot(mpg, aes (displ, hwy)) +
  geom_point() +
  facet_wrap(vars(class), labeller = as_labeller (plot_names)) 

facet_wrap із спеціальними мітками в R

Приклад 3. Використовуйте власні шкали

У наведеному нижче коді показано, як використовувати функцію facet_wrap() із спеціальними масштабами для кожного окремого графіка:

 #use facet_wrap with custom scales
ggplot(mpg, aes (displ, hwy)) +
  geom_point() +
  facet_wrap(vars(class), scales=' free ') 

Приклад 4: використання спеціальної команди

У наведеному нижче коді показано, як використовувати функцію facet_wrap() із власним упорядкуванням для окремих графіків:

 #define order for plots
mpg <- within(mpg, class <- factor(class, levels=c(' compact ', ' 2seater ', ' suv ',
                                                   ' subcompact ', ' pickup ',
                                                   ' minivan ', ' midsize ')))

#use facet_wrap with custom order
ggplot(mpg, aes (displ, hwy)) +
  geom_point() +
  facet_wrap(vars(class)) 

face_wrap() із спеціальною командою в R

Зауважте, що ділянки з’являються в тому порядку, який ми вказали.

Додаткові ресурси

Як змінити розмір шрифту в ggplot2
Як видалити легенду в ggplot2
Як обертати мітки осей у ggplot2

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *