Facet-plotruimtes

Gevorderde datavisualisatie met ggplot2

Rick Scavetta

Founder, Scavetta Academy

Facetten en variabele plotruimtes

Redenen om geen consistente plotruimtes te gebruiken:

Variabeletype Subsets bevatten
Continu Sterk verschillende bereiken
Categoraal Andere groepen
Gevorderde datavisualisatie met ggplot2

De plotruimte aanpassen...

ggplot(msleep2, aes(bodywt_log,
                    brainwt_log)) +
  geom_point(alpha = 0.6, shape = 16) +
  coord_fixed() +
  facet_grid(rows = vars(vore), 
             cols = vars(conservation))

Gevorderde datavisualisatie met ggplot2

... maar niet met vaste schalen

ggplot(msleep2, aes(bodywt_log,
                         brainwt_log)) +
  geom_point(alpha = 0.6, shape = 16) +
  coord_fixed() +
  facet_grid(rows = vars(vore), 
             cols = vars(conservation),
             scales = "free_x")
Error: coord_fixed doesn't support free scales
Gevorderde datavisualisatie met ggplot2

De plotruimte aanpassen

ggplot(msleep2, aes(bodywt_log, 
                    brainwt_log)) +
  geom_point(alpha = 0.6, shape = 16) +
  facet_grid(rows = vars(vore), 
             cols = vars(conservation),
             scales = "free_x") 

Gevorderde datavisualisatie met ggplot2

De plotruimte aanpassen

ggplot(msleep2, aes(bodywt_log, 
                    brainwt_log)) +
  geom_point(alpha = 0.6, shape = 16) +
  facet_grid(rows = vars(vore), 
             cols = vars(conservation),
             scales = "free_y") 

Gevorderde datavisualisatie met ggplot2

De plotruimte aanpassen

ggplot(msleep2, aes(bodywt_log, 
                    brainwt_log)) +
  geom_point(alpha = 0.6, shape = 16) +
  facet_grid(rows = vars(vore), 
             cols = vars(conservation),
             scales = "free") 

Gevorderde datavisualisatie met ggplot2

De plotruimte aanpassen

ggplot(msleep2, aes(x = bodywt_log, 
                    y = name)) +
  geom_point() +
  facet_grid(rows = vars(vore))

Gevorderde datavisualisatie met ggplot2

De plotruimte aanpassen

ggplot(msleep2, aes(x = bodywt_log, 
                    y = name)) +
  geom_point() +
  # Free the y scales and space
  facet_grid(rows = vars(vore), 
             scales = "free_y")

Gevorderde datavisualisatie met ggplot2

De plotruimte aanpassen

ggplot(msleep2, aes(x = bodywt_log, 
                    y = name)) +
  geom_point() +
  # Free the y scales and space
  facet_grid(rows = vars(vore),
             scales = "free_y", 
             space = "free_y")

Gevorderde datavisualisatie met ggplot2

Laatste aanpassingen

msleep2 <- msleep2 %>% 
  # Arrange from lo to hi weight
  arrange(-bodywt_log) %>% 
  # Redefine factor levels in order
  mutate(name = as_factor(name)) 

# New order is reflected in y axis
ggplot(msleep2, aes(x = bodywt_log,
                    y = name)) +
  geom_point() +
  # Free the y scales and space
  facet_grid(rows = vars(vore),
             scales = "free_y", 
             space = "free_y")

Gevorderde datavisualisatie met ggplot2

Laten we oefenen!

Gevorderde datavisualisatie met ggplot2

Preparing Video For Download...