geom_rule | R Documentation |
geom_rule()
renders segments through or orthogonally
translated from the origin.
geom_rule(
mapping = NULL,
data = NULL,
stat = "identity",
position = "identity",
axis_labels = TRUE,
axis_ticks = TRUE,
axis_text = TRUE,
by = NULL,
num = NULL,
snap_rule = TRUE,
tick_length = 0.025,
text_dodge = 0.03,
label_dodge = 0.03,
...,
axis.colour = NULL,
axis.color = NULL,
axis.alpha = NULL,
label.angle = 0,
label.colour = NULL,
label.color = NULL,
label.alpha = NULL,
tick.linewidth = 0.25,
tick.colour = NULL,
tick.color = NULL,
tick.alpha = NULL,
text.size = 2.6,
text.angle = 0,
text.hjust = 0.5,
text.vjust = 0.5,
text.family = NULL,
text.fontface = NULL,
text.colour = NULL,
text.color = NULL,
text.alpha = NULL,
parse = FALSE,
check_overlap = FALSE,
na.rm = FALSE,
show.legend = NA,
inherit.aes = TRUE
)
mapping |
Set of aesthetic mappings created by |
data |
The data to be displayed in this layer. There are three options: If A A |
stat |
The statistical transformation to use on the data for this layer.
When using a
|
position |
A position adjustment to use on the data for this layer. This
can be used in various ways, including to prevent overplotting and
improving the display. The
|
axis_labels , axis_ticks , axis_text |
Logical; whether to include labels, tick marks, and text value marks along the axes. |
by , num |
Intervals between elements or number of elements; specify only one. |
snap_rule |
Logical; whether to snap rule segments to grid values. |
tick_length |
Numeric; the length of the tick marks, as a proportion of the minimum of the plot width and height. |
text_dodge |
Numeric; the orthogonal distance of tick mark text from the axis, as a proportion of the minimum of the plot width and height. |
label_dodge |
Numeric; the orthogonal distance of the axis label from the axis, as a proportion of the minimum of the plot width and height. |
... |
Additional arguments passed to |
axis.colour , axis.color , axis.alpha |
Default aesthetics for axes. Set to NULL to inherit from the data's aesthetics. |
label.angle , label.colour , label.color , label.alpha |
Default aesthetics for labels. Set to NULL to inherit from the data's aesthetics. |
tick.linewidth , tick.colour , tick.color , tick.alpha |
Default aesthetics for tick marks. Set to NULL to inherit from the data's aesthetics. |
text.size , text.angle , text.hjust , text.vjust , text.family , text.fontface , text.colour , text.color , text.alpha |
Default aesthetics for tick mark labels. Set to NULL to inherit from the data's aesthetics. |
parse |
If |
check_overlap |
If |
na.rm |
Passed to |
show.legend |
logical. Should this layer be included in the legends?
|
inherit.aes |
If |
As implemented here, a rule is just an axis that has a
fixed range, usually the limits of the data. geom_rule()
defaults to
stat = "identity"
to avoid the problem of
failing to pass referent data to the referential stat_rule()
. Therefore,
the user must provide the lower
and upper
aesthetics, which are used as
euclidean lengths in the plotting window. Meanwhile, stat_rule()
defaults
to geom = "rule"
; see stat_rule()
for details on this pairing.
A ggproto layer.
ggbiplot()
uses ggplot2::fortify()
internally to produce a single data
frame with a .matrix
column distinguishing the subjects ("rows"
) and
variables ("cols"
). The stat layers stat_rows()
and stat_cols()
simply
filter the data frame to one of these two.
The geom layers geom_rows_*()
and geom_cols_*()
call the corresponding
stat in order to render plot elements for the corresponding factor matrix.
geom_dims_*()
selects a default matrix based on common practice, e.g.
points for rows and arrows for columns.
geom_rule()
understands the following aesthetics (required aesthetics are
in bold):
x
y
lower
upper
yintercept
or xintercept
or xend
and yend
linetype
linewidth
size
hjust
vjust
colour
alpha
label
family
fontface
center
, scale
group
Other geom layers:
geom_axis()
,
geom_bagplot()
,
geom_interpolation()
,
geom_isoline()
,
geom_lineranges()
,
geom_origin()
,
geom_text_radiate()
,
geom_vector()
USJudgeRatings |>
subset(select = -c(1, 12)) |>
dist(method = "maximum") |>
cmdscale() |>
as.data.frame() |>
setNames(c("PCo1", "PCo2")) |>
transform(name = rownames(USJudgeRatings)) ->
judge_mds
USJudgeRatings |>
subset(select = c(CONT, RTEN)) |>
setNames(c("contacts", "recommendation")) ->
judge_meta
lm(as.matrix(judge_meta) ~ as.matrix(judge_mds[, seq(2)])) |>
getElement("coefficients") |>
unname() |> t() |> as.data.frame() |>
setNames(c("Intercept", "PCo1", "PCo2")) |>
transform(variable = names(judge_meta)) ->
judge_lm
ggplot(judge_mds, aes(x = PCo1, y = PCo2)) +
coord_equal() +
theme_void() +
geom_text(aes(label = name), size = 3) +
stat_rule(
data = judge_lm, referent = judge_mds,
aes(center = Intercept, label = variable)
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.