labeller
Combine labellers into a single rule keyed by facet variable.
rules is a dict of var-name -> labeller. Variables not listed fall back to the labeller passed via default.
Usage
labeller(
rules: (:),
default: none,
)Parameters
| Parameter | Default | Description |
|---|---|---|
rules |
(:) |
Dict mapping facet variable names to labellers. |
default |
none |
Labeller used for variables absent from rules. |
Returns
Labeller dictionary consumed by facet-wrap and facet-grid.
Examples
Mix labellers per facet variable: rows show var: level, columns show level only.
#let d = ()
#for sp in ("a", "b") {
for sex in ("F", "M") {
d.push((sp: sp, sex: sex, x: 1, y: 1))
d.push((sp: sp, sex: sex, x: 2, y: 2))
}
}
#plot(
data: d,
mapping: aes(x: "x", y: "y"),
layers: (geom-point(size: 2pt),),
facet: facet-grid(
rows: "sex",
columns: "sp",
labeller: labeller(rules: (sex: label-both(), sp: label-value())),
),
width: 10cm,
height: 6cm,
)Set default to a fallback labeller for variables not listed in rules.
#let d = ()
#for sp in ("a", "b") {
for sex in ("F", "M") {
d.push((sp: sp, sex: sex, x: 1, y: 1))
d.push((sp: sp, sex: sex, x: 2, y: 2))
}
}
#plot(
data: d,
mapping: aes(x: "x", y: "y"),
layers: (geom-point(size: 2pt),),
facet: facet-grid(
rows: "sex",
columns: "sp",
labeller: labeller(
rules: (sex: label-both()),
default: label-context(),
),
),
width: 10cm,
height: 6cm,
)