stat_bagplot {gggda} | R Documentation |
Bagplots
Description
Construct medians, bags, fences, and outlier specifications for bagplots.
Usage
stat_bagplot(
mapping = NULL,
data = NULL,
geom = "bagplot",
position = "identity",
fraction = 0.5,
coef = 3,
median = TRUE,
fence = TRUE,
outliers = TRUE,
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 |
geom |
The geometric object to use to display 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
|
fraction |
Fraction of the data to include in the bag. |
coef |
Scale factor of the fence relative to the bag. |
median , fence , outliers |
Logical indicators whether to include median, fence, and outliers in the composite output. |
show.legend |
logical. Should this layer be included in the legends?
|
inherit.aes |
If |
... |
Arguments passed on to
|
Details
A bagplot comprises a single, often filled, depth contour (the "bag") overlaid with the hull of its union with the data points contained in its scaled expansion from the depth median (the "fence") and a scatterplot of outliers beyond the fence (the "loop"). Rousseeuw &al (1999) suggest the term "bag-and-bolster plot" evocative of the "box-and-whisker plot".
While the depth median can be obtained using stat_center()
, the data
depth values used to compute it are also used to demarcate the bag, so it
is implemented separately in StatBagplot$compute_group()
for efficiency.
stat_bagplot()
is designed to pair with geom_bagplot()
, analogously to
the pairing of ggplot2::stat_boxplot()
with ggplot2::geom_boxplot()
. In
particular, GeomBagplot
is the only ggproto
that recognizes the
computed variable component
, used by StatBagplot
to separate data for
the four bagplot elements.
Value
Multidimensional position aesthetics
This statistical transformation is compatible with the convenience function
aes_coord()
.
Some transformations (e.g. stat_center()
) commute with projection to the
lower (1 or 2)-dimensional biplot space. If they detect aesthetics of the
form ..coord[0-9]+
, then ..coord1
and ..coord2
are converted to x
and
y
while any remaining are ignored.
Other transformations (e.g. stat_spantree()
) yield different results in a
lower-dimensional biplot when they are computed before versus after
projection. If the stat layer detects these aesthetics, then the
transformation is performed before projection, and the results in the first
two dimensions are returned as x
and y
.
A small number of transformations (stat_rule()
) are incompatible with
these aesthetics but will accept aes_coord()
without warning.
Computed variables
These are calculated during the statistical transformation and can be accessed with delayed evaluation.
component
the component of the composite plot; used internally
References
Rousseeuw PJ, Ruts I, & Tukey JW (1999) "The Bagplot: A Bivariate Boxplot". The American Statistician, 53(4): 382–387. doi:10.1080/00031305.1999.10474494
See Also
Other stat layers:
stat_center()
,
stat_chull()
,
stat_cone()
,
stat_depth()
,
stat_rule()
,
stat_scale()
,
stat_spantree()
Examples
# petroleum rock base plot
p <- ggplot(rock, aes(area, shape, size = peri)) + theme_bw()
# scatterplot
p + geom_point()
# NB: Non-standard aesthetics are handled as in version > 3.5.1; see:
# https://github.com/tidyverse/ggplot2/issues/6191
# custom bag fraction, coefficient, and aesthetics
p + stat_bagplot(fraction = .4, coef = 1.5,
outlier_gp = list(shape = "asterisk"))
# invisible fence
p + stat_bagplot(fence = FALSE)