geom_hdr_rug_fun {ggdensity} | R Documentation |
Compute and plot the highest density regions (HDRs) of specified univariate pdf(s).
Note, the plotted objects have probabilities mapped to the alpha
aesthetic by default.
stat_hdr_rug_fun(
mapping = NULL,
data = NULL,
geom = "hdr_rug_fun",
position = "identity",
...,
fun_x = NULL,
fun_y = NULL,
args_x = list(),
args_y = list(),
probs = c(0.99, 0.95, 0.8, 0.5),
xlim = NULL,
ylim = NULL,
n = 512,
na.rm = FALSE,
show.legend = NA,
inherit.aes = TRUE
)
geom_hdr_rug_fun(
mapping = NULL,
data = NULL,
stat = "hdr_rug_fun",
position = "identity",
...,
outside = FALSE,
sides = "bl",
length = unit(0.03, "npc"),
na.rm = FALSE,
show.legend = TRUE,
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 |
geom |
The geometric object to use to display the data, either as a
|
position |
Position adjustment, either as a string naming the adjustment
(e.g. |
... |
Other arguments passed on to |
fun_x , fun_y |
Functions, the univariate probability density function for the x- and/or y-axis. First argument must be vectorized. |
args_x , args_y |
Named list of additional arguments passed on to |
probs |
Probabilities to compute highest density regions for. |
xlim , ylim |
Range to compute and draw regions. If |
n |
Resolution of grid defined by |
na.rm |
If |
show.legend |
logical. Should this layer be included in the legends?
|
inherit.aes |
If |
stat |
The statistical transformation to use on the data for this
layer, either as a |
outside |
logical that controls whether to move the rug tassels outside of the plot area. Default is off (FALSE). You will also need to use |
sides |
A string that controls which sides of the plot the rugs appear on.
It can be set to a string containing any of |
length |
A |
geom_hdr_rug_fun()
understands the following aesthetics (required
aesthetics are in bold):
x
y
alpha
fill
group
subgroup
The probability of the highest density region, specified
by probs
, corresponding to each point.
# Plotting data with exponential marginals
df <- data.frame(x = rexp(1e3), y = rexp(1e3))
ggplot(df, aes(x, y)) +
geom_hdr_rug_fun(fun_x = dexp, fun_y = dexp) +
geom_point(size = .5) +
coord_fixed()
# without data/aesthetic mappings
ggplot() +
geom_hdr_rug_fun(fun_x = dexp, fun_y = dexp, xlim = c(0, 7), ylim = c(0, 7)) +
coord_fixed()
# Plotting univariate normal data, estimating mean and sd
df <- data.frame(x = rnorm(1e4, mean = 1, sd = 3))
# estimating parameters
mu_hat <- mean(df$x)
sd_hat <- sd(df$x)
ggplot(df, aes(x)) +
geom_hdr_rug_fun(fun_x = dnorm, args_x = list(mean = mu_hat, sd = sd_hat)) +
geom_density()
# Equivalent to `method_norm_1d()` with `geom_hdr_rug()`
ggplot(df, aes(x)) +
geom_hdr_rug(method = method_norm_1d()) +
geom_density()