facet_ragged {ggragged} | R Documentation |
Lay out panels in a ragged grid
Description
These facets create layouts in-between ggplot2::facet_wrap()
and
ggplot2::facet_grid()
. Panels are arranged into groups stacked along the
defining dimension, but remain independent in the other dimension, allowing
for a grid with ragged edges. This can be useful, for example, to represent
nested or partially crossed relationships between faceting variables.
Usage
facet_ragged_rows(
rows,
cols,
...,
scales = "fixed",
switch = NULL,
labeller = "label_value"
)
facet_ragged_cols(
rows,
cols,
...,
scales = "fixed",
switch = NULL,
labeller = "label_value"
)
Arguments
rows , cols |
A set of variables or expressions quoted by |
... |
Arguments reserved for future use. |
scales |
Should all panels share the same scales ( |
switch |
By default, facet labels are positioned to the top and right
of the panels. Use |
labeller |
A function that takes one data frame of labels and
returns a list or data frame of character vectors. Each input
column corresponds to one factor. Thus there will be more than
one with |
Value
A Facet
that can be added to a ggplot
.
Examples
p <- ggplot(Indometh, aes(time, conc)) + geom_line()
# Panels for each subject, with cohorts on separate rows
p + facet_ragged_rows(
vars(Cohort = 1 + Subject %in% 3:6),
vars(Subject = as.character(Subject)),
labeller = label_both
)
# Independent y-axes between rows of cohorts
p + facet_ragged_rows(
vars(Cohort = 1 + Subject %in% 3:6),
vars(Subject = as.character(Subject)),
labeller = label_both,
scales = "free_y"
)
# Panels for each subject, with cohorts in separate columns
p + facet_ragged_cols(
vars(Subject = as.character(Subject)),
vars(Cohort = 1 + Subject %in% 3:6),
labeller = label_both
)
# Independent y-axes for all subjects
p + facet_ragged_cols(
vars(Subject = as.character(Subject)),
vars(Cohort = 1 + Subject %in% 3:6),
labeller = label_both,
scales = "free_y"
)