Creates one or more kernel density estimates using a combination of the Botev (2010) bandwidth selector and the Abramson (1982) adaptive kernel bandwidth modifier.
kde(x, ...)# S3 method for default
kde(x, from = NA, to = NA, bw = NA, adaptive = TRUE,
log = FALSE, n = 512, plot = TRUE, pch = NA, xlab = "age [Ma]",
ylab = "", kde.col = rgb(1, 0, 1, 0.6), hist.col = rgb(0, 1, 0, 0.2),
show.hist = TRUE, bty = "n", binwidth = NA, ncol = NA, ...)
# S3 method for UPb
kde(x, from = NA, to = NA, bw = NA, adaptive = TRUE,
log = FALSE, n = 512, plot = TRUE, pch = NA, xlab = "age [Ma]",
ylab = "", kde.col = rgb(1, 0, 1, 0.6), hist.col = rgb(0, 1, 0, 0.2),
show.hist = TRUE, bty = "n", binwidth = NA, ncol = NA, type = 4,
cutoff.76 = 1100, cutoff.disc = c(-15, 5), ...)
# S3 method for detritals
kde(x, from = NA, to = NA, bw = NA, adaptive = TRUE,
log = FALSE, n = 512, plot = TRUE, pch = NA, xlab = "age [Ma]",
ylab = "", kde.col = rgb(1, 0, 1, 0.6), hist.col = rgb(0, 1, 0, 0.2),
show.hist = TRUE, bty = "n", binwidth = NA, ncol = NA,
samebandwidth = TRUE, normalise = TRUE, ...)
# S3 method for PbPb
kde(x, from = NA, to = NA, bw = NA, adaptive = TRUE,
log = FALSE, n = 512, plot = TRUE, pch = NA, xlab = "age [Ma]",
ylab = "", kde.col = rgb(1, 0, 1, 0.6), hist.col = rgb(0, 1, 0, 0.2),
show.hist = TRUE, bty = "n", binwidth = NA, ncol = NA, i2i = FALSE,
...)
# S3 method for ArAr
kde(x, from = NA, to = NA, bw = NA, adaptive = TRUE,
log = FALSE, n = 512, plot = TRUE, pch = NA, xlab = "age [Ma]",
ylab = "", kde.col = rgb(1, 0, 1, 0.6), hist.col = rgb(0, 1, 0, 0.2),
show.hist = TRUE, bty = "n", binwidth = NA, ncol = NA, i2i = FALSE,
...)
# S3 method for ReOs
kde(x, from = NA, to = NA, bw = NA, adaptive = TRUE,
log = FALSE, n = 512, plot = TRUE, pch = NA, xlab = "age [Ma]",
ylab = "", kde.col = rgb(1, 0, 1, 0.6), hist.col = rgb(0, 1, 0, 0.2),
show.hist = TRUE, bty = "n", binwidth = NA, ncol = NA, i2i = TRUE,
...)
# S3 method for SmNd
kde(x, from = NA, to = NA, bw = NA, adaptive = TRUE,
log = FALSE, n = 512, plot = TRUE, pch = NA, xlab = "age [Ma]",
ylab = "", kde.col = rgb(1, 0, 1, 0.6), hist.col = rgb(0, 1, 0, 0.2),
show.hist = TRUE, bty = "n", binwidth = NA, ncol = NA, i2i = TRUE,
...)
# S3 method for RbSr
kde(x, from = NA, to = NA, bw = NA, adaptive = TRUE,
log = FALSE, n = 512, plot = TRUE, pch = NA, xlab = "age [Ma]",
ylab = "", kde.col = rgb(1, 0, 1, 0.6), hist.col = rgb(0, 1, 0, 0.2),
show.hist = TRUE, bty = "n", binwidth = NA, ncol = NA, i2i = TRUE,
...)
# S3 method for LuHf
kde(x, from = NA, to = NA, bw = NA, adaptive = TRUE,
log = FALSE, n = 512, plot = TRUE, pch = NA, xlab = "age [Ma]",
ylab = "", kde.col = rgb(1, 0, 1, 0.6), hist.col = rgb(0, 1, 0, 0.2),
show.hist = TRUE, bty = "n", binwidth = NA, ncol = NA, i2i = TRUE,
...)
# S3 method for UThHe
kde(x, from = NA, to = NA, bw = NA, adaptive = TRUE,
log = FALSE, n = 512, plot = TRUE, pch = NA, xlab = "age [Ma]",
ylab = "", kde.col = rgb(1, 0, 1, 0.6), hist.col = rgb(0, 1, 0, 0.2),
show.hist = TRUE, bty = "n", binwidth = NA, ncol = NA, ...)
# S3 method for fissiontracks
kde(x, from = NA, to = NA, bw = NA,
adaptive = TRUE, log = FALSE, n = 512, plot = TRUE, pch = NA,
xlab = "age [Ma]", ylab = "", kde.col = rgb(1, 0, 1, 0.6),
hist.col = rgb(0, 1, 0, 0.2), show.hist = TRUE, bty = "n",
binwidth = NA, ncol = NA, ...)
a vector of numbers OR an object of class UPb
,
PbPb
, ArAr
, ReOs
, SmNd
,
RbSr
, UThHe
, fissiontracks
or
detrital
optional arguments to be passed on to density
minimum age of the time axis. If NULL
, this is set
automatically
maximum age of the time axis. If NULL
, this is set
automatically
the bandwidth of the KDE. If NULL
, bw
will be calculated
automatically using botev()
logical flag controlling if the adaptive KDE modifier of Abramson (1982) is used
transform the ages to a log scale if TRUE
horizontal resolution of the density estimate
show the KDE as a plot
the symbol used to show the samples. May be a vector.
Set pch=NA
to turn them off.
the x-axis label
the y-axis label
the fill colour of the KDE specified as a four
element vector of r, g, b, alpha
values
the fill colour of the histogram specified as a four element vector of r, g, b, alpha values
logical flag indicating whether a histogram should be added to the KDE
change to "o"
, "l"
, "7"
,
"c"
, "u"
, or "]"
if you want to draw a box
around the plot
scalar width of the histogram bins, in Myr if
x$log = FALSE
, or as a fractional value if
x$log = TRUE
. Sturges' Rule is used if
binwidth = NA
scalar value indicating the number of columns over
which the KDEs should be divided. This option is only used if
x
has class detritals
.
scalar indicating whether to plot the
type
=1), the
type
=2), the
type
=3), the
type
=4), or the (Wetherill) concordia age
(type
=5)
the age (in Ma) below which the
type=4
.
two element vector with the maximum and minimum
percentage discordance allowed between the
cutoff.76
) or
between the cutoff.76
). Set
cutoff.disc=NA
if you do not want to use this filter.
logical flag indicating whether the same
bandwidth should be used for all samples. If
samebandwidth = TRUE
and bw = NULL
, then the
function will use the median bandwidth of all the samples.
logical flag indicating whether or not the KDEs should all integrate to the same value.
`isochron to intercept': calculates the initial (aka
`inherited', `excess', or `common')
i2i
to FALSE
uses the default values stored in settings('iratio',...)
or zero (for the Pb-Pb method).
if plot = TRUE
, returns an object of class KDE
, i.e. a
list containing the following items:
horizontal plot coordinates
vertical plot coordinates
the base bandwidth of the density estimate
the data values from the input to the kde
function
or, if x
has class =detritals
, an object of class
KDEs
, i.e. a list containing the following items:
a named list with objects of class KDE
the beginning of the common time scale
the end of the common time scale
the maximum probability density of all the KDEs
the x-axis label to be used by plot.KDEs
Abramson, I.S., 1982. On bandwidth variation in kernel estimates-a square root law. The annals of Statistics, pp.1217-1223.
Botev, Z. I., J. F. Grotowski, and D. P. Kroese. "Kernel density estimation via diffusion." The Annals of Statistics 38.5 (2010): 2916-2957.
Vermeesch, P., 2012. On the visualisation of detrital age distributions. Chemical Geology, 312, pp.190-194.
# NOT RUN {
data(examples)
kde(examples$DZ[['N1']],kernel="epanechnikov")
kde(examples$DZ,from=0,to=3000)
# }
Run the code above in your browser using DataLab