geom_vector {gggda} | R Documentation |
Vectors from the origin
Description
geom_vector()
renders arrows from the origin to points,
optionally with text radiating outward.
Usage
geom_vector(
mapping = NULL,
data = NULL,
stat = "identity",
position = "identity",
arrow = default_arrow,
lineend = "round",
linejoin = "mitre",
vector_labels = TRUE,
...,
label.colour = NULL,
label.color = NULL,
label.alpha = NULL,
parse = FALSE,
check_overlap = FALSE,
na.rm = FALSE,
show.legend = NA,
inherit.aes = TRUE
)
Arguments
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
|
arrow |
Specification for arrows, as created by |
lineend |
Line end style (round, butt, square). |
linejoin |
Line join style (round, mitre, bevel). |
vector_labels |
Logical; whether to include labels radiating outward from the vectors. |
... |
Additional arguments passed to |
label.colour , label.color , label.alpha |
Default aesthetics for 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 |
Details
Vectors are positions relative to some common reference point, in this case the origin; they comprise direction and magnitude. Vectors are usually represented with arrows rather than markers (points).
Vectors are commonly used to represent numerical variables in biplots, as
by Gabriel (1971) and Greenacre (2010). Gardner & le Roux (2002) refer to
these as Gabriel biplots. This layer, with optional radiating text labels,
is adapted from ggbiplot()
in the off-CRAN extensions of the same name
(Vu, 2014; Telford, 2017; Gegzna, 2018).
Value
Aesthetics
geom_vector()
understands the following aesthetics (required aesthetics
are in bold):
-
x
-
y
-
alpha
-
colour
-
linetype
-
label
-
size
-
angle
-
hjust
-
vjust
-
family
-
fontface
-
lineheight
-
group
References
Gabriel KR (1971) "The biplot graphic display of matrices with application to principal component analysis". Biometrika 58(3), 453–467. doi:10.1093/biomet/58.3.453
Greenacre MJ (2010) Biplots in Practice. Fundacion BBVA, ISBN: 978-84-923846. https://www.fbbva.es/microsite/multivariate-statistics/biplots.html
Gardner S, le Roux N (2002) "Biplot Methodology for Discriminant Analysis Based upon Robust Methods and Principal Curves". Classification, Clustering, and Data Analysis: Recent Advances and Applications: 169–176. https://link.springer.com/chapter/10.1007/978-3-642-56181-8_18
Vincent Q. Vu (2014). ggbiplot: A 'ggplot2' based biplot. R package version
0.55. https://github.com/vqv/ggbiplot, experimental
branch
Richard J Telford (2017). ggbiplot: A 'ggplot2' based biplot. R package
version 0.6. https://github.com/richardjtelford/ggbiplot (fork),
experimental
branch
Vilmantas Gegzna (2018). ggbiplot: A 'ggplot2' based biplot. R package
version 0.55. https://github.com/forked-packages/ggbiplot (fork), experimental
branch
See Also
Other geom layers:
geom_axis()
,
geom_bagplot()
,
geom_isoline()
,
geom_lineranges()
,
geom_rule()
,
geom_text_radiate()
Examples
# multidimensional scaling of covariances
ability.cov$cov %>%
cov2cor() %>%
eigen() %>% getElement("vectors") %>%
as.data.frame() %>%
transform(test = rownames(ability.cov$cov)) ->
ability_cor_eigen
ability_cor_eigen %>%
ggplot(aes(-V1, V2, label = test)) +
coord_square() + theme_void() +
geom_vector(check_overlap = TRUE) +
scale_y_continuous(expand = expansion(mult = .2)) +
ggtitle("Ability and intelligence test covariances")
# multidimensional scaling of correlations
ability.cov$cov %>%
eigen() %>% getElement("vectors") %>%
as.data.frame() %>%
transform(test = rownames(ability.cov$cov)) ->
ability_cor_eigen
ability_cor_eigen %>%
ggplot(aes(-V1, -V2, label = test)) +
coord_square() + theme_void() +
geom_vector(check_overlap = TRUE) +
expand_limits(x = c(-1, 1), y = c(-1, 1)) +
ggtitle("Ability and intelligence test covariances")