View source: R/position-nudge-center.R
position_nudge_keep | R Documentation |
The function position_nudge_keep()
has an additional parameters
compared to position_nudge
, obey_grouping
and
by default the same behaviour when the values passed as arguments to x
and y
have length one.
position_nudge_keep(
x = 0,
y = 0,
obey_grouping = NULL,
kept.origin = c("original", "none")
)
x , y |
Amount of vertical and horizontal distance to move. A numeric
vector of length 1, or of the same length as rows there are in |
obey_grouping |
A logical flag indicating whether to obey or not groupings of the observations. By default, grouping is obeyed when both of the variables mapped to x and y are continuous numeric and ignored otherwise. |
kept.origin |
One of |
When x
or y
have length > 1, they are treated
specially. If the lengths is the same as there are rows in data, the nudges
are applied in the order of the rows in data. When they are shorter, they
are recycled and applied to the data values after ordering. This makes it
possible to have alternating mudging right and left or up and down. If
obey_grouping = TRUE
is passed in the call, the alternation will
take place within groups.
As other position functions from package 'ggpp', position_nudge_keep()
by default renames and keeps the original positions of the observations in
data
making it possible to draw connecting segments or conencting
arrows.
A "Position"
object.
Irrespective of the action, the ordering of rows in data
is
preserved.
Other position adjustments:
position_dodgenudge()
,
position_jitternudge()
,
position_nudge_center()
,
position_nudge_line()
,
position_nudge_to()
,
position_stacknudge()
df <- data.frame(
x = c(1,3,2,5,4,2.5),
y = c("abc","cd","d","c","bcd","a")
)
# Plain nudging, same as with ggplot2::position_nudge()
ggplot(df, aes(x, y, label = y)) +
geom_point() +
geom_text_s(hjust = "left", vjust = "bottom",
position = position_nudge_keep(x = 0.2, y = 0.2))
# alternating nudging
ggplot(df, aes(x, y, label = y)) +
geom_point() +
geom_text_s(position = position_nudge_keep(x = c(0.2, -0.2)))
# direct nudging
ggplot(df, aes(x, y, label = y)) +
geom_point() +
geom_text_s(position = position_nudge_keep(x = rep_len(c(0.2, -0.2), 6)))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.