Calculates and plots highest density regions in two dimensions, including the bivariate HDR boxplot.
hdr.2d(x, y, prob = c(50, 95, 99), den = NULL, kde.package = c("ash",
"ks"), h = NULL, xextend = 0.15, yextend = 0.15)hdr.boxplot.2d(x, y, prob = c(50, 99), kde.package = c("ash", "ks"),
h = NULL, xextend = 0.15, yextend = 0.15, xlab = "", ylab = "",
shadecols = gray((length(prob):1)/(length(prob) + 1)), pointcol = 1,
...)
# S3 method for hdr2d
plot(x, shaded = TRUE, show.points = FALSE,
outside.points = FALSE, pch = 20,
shadecols = gray((length(x$alpha):1)/(length(x$alpha) + 1)),
pointcol = 1, ...)
Numeric vector
Numeric vector of same length as x
.
Probability coverage required for HDRs
Bivariate density estimate (a list with elements x, y and z where
x and y are grid values and z is a matrix of density values). If
NULL
, the density is estimated.
Package to be used in calculating the kernel density
estimate when den=NULL
.
Proportion of range of x
. The density is estimated on
a grid extended by xextend
beyond the range of x
.
Proportion of range of y
. The density is estimated on
a grid extended by yextend
beyond the range of y
.
Label for x-axis.
Label for y-axis.
Colors for shaded regions
Color for outliers and mode
Other arguments to be passed to plot.
If TRUE
, the HDR contours are shown as shaded regions.
If TRUE
, the observations are plotted over the top
of the HDR contours.
If TRUE
, the observations lying outside the
largest HDR are shown.
The plotting character used for observations.
Some information about the HDRs is returned. See code for details.
The density is estimated using kernel density estimation. Either
ash2
or kde
is used to do the
calculations. Then Hyndman's (1996) density quantile algorithm is used to
compute the HDRs.
hdr.2d
returns an object of class hdr2d
containing all the
information needed to compute the HDR contours. This object can be plotted
using plot.hdr2d
.
hdr.boxplot.2d
produces a bivariate HDR boxplot. This is a special
case of applying plot.hdr2d
to an object computed using
hdr.2d
.
Hyndman, R.J. (1996) Computing and graphing highest density regions American Statistician, 50, 120-126.
# NOT RUN {
x <- c(rnorm(200,0,1),rnorm(200,4,1))
y <- c(rnorm(200,0,1),rnorm(200,4,1))
hdr.boxplot.2d(x,y)
hdrinfo <- hdr.2d(x,y)
plot(hdrinfo, pointcol="red", show.points=TRUE, pch=3)
# }
Run the code above in your browser using DataLab