bagplot {aplpack} | R Documentation |
compute.bagplot()
computes an object
describing a bagplot of a bivariate data set.
plot.bagplot()
plots a bagplot object.
bagplot()
computes and plots a bagplot.
bagplot(x, y, factor = 3, approx.limit = 300, show.outlier = TRUE, show.whiskers = TRUE, show.looppoints = TRUE, show.bagpoints = TRUE, show.loophull = TRUE, show.baghull = TRUE, create.plot = TRUE, add = FALSE, pch = 16, cex = 0.4, dkmethod = 2, precision = 1, verbose = FALSE, debug.plots = "no", col.loophull="#aaccff", col.looppoints="#3355ff", col.baghull="#7799ff", col.bagpoints="#000088", transparency=FALSE, ... ) compute.bagplot(x, y, factor = 3, approx.limit = 300, dkmethod = 2, precision = 1, verbose = FALSE, debug.plots = "no") plot.bagplot(x, show.outlier = TRUE, show.whiskers = TRUE, show.looppoints = TRUE, show.bagpoints = TRUE, show.loophull = TRUE, show.baghull = TRUE, add = FALSE, pch = 16, cex = 0.4, verbose = FALSE, col.loophull="#aaccff", col.looppoints="#3355ff", col.baghull="#7799ff", col.bagpoints="#000088", transparency=FALSE,...)
x |
x values of a data set;
in bagplot : an object of class bagplot
computed by compute.bagplot |
y |
y values of the data set |
factor |
factor defining the loop |
approx.limit |
precision of approximation, default: 300 |
show.outlier |
if TRUE outlier are shown |
show.whiskers |
if TRUE whiskers are shown |
show.looppoints |
if TRUE loop points are plottet |
show.bagpoints |
if TRUE bag points are plottet |
show.loophull |
if TRUE the loop is plotted |
show.baghull |
if TRUE the bag is plotted |
create.plot |
if FALSE no plot is created |
add |
if TRUE the bagplot is added to an existing plot |
pch |
sets the plotting character |
cex |
sets characters size |
dkmethod |
1 or 2, there are two method of approximating the bag, currently under construction |
precision |
precision of approximation, default: 1 |
verbose |
automatic commenting of calculations |
debug.plots |
developers' tool for debugging |
col.loophull |
color of loop hull |
col.looppoints |
color of the points of the loop |
col.baghull |
color of bag hull |
col.bagpoints |
color of the points of the bag |
transparency |
see section details |
... |
additional graphical parameters |
A bagplot is a bivariate generalization of the well known
boxplot. It has been proposed by Rousseeuw, Ruts, and Tukey.
In the bivariate case the box of the boxplot changes to a
convex hull, the bag of bagplot. In the bag are 50 percent
of all points. The fence separates points in the fence from
points outside. It is computed by increasing the
the bag. The loop is defined as the convex polygon containing
all points inside the fence.
If all points are on a straight line you get a classical
boxplot.
bagplot()
plots bagplots that are very similar
to the one described in Rousseeuw et al.
Remarks:
The two dimensional median is approximated.
There are known difficulties with small data sets
(But I think it is not wise to make a (graphical)
summary of e.g. 10 points.)
In case people want to plot multiple (overlappIng) bagplots, it is convenient if the plots are semi-transparent. For this reason
the transparency
flag has been added to the bagplot
command.
If transparency==TRUE
the alpha layer is set to '99' (hex).
This causes the bagplots to appear semi-transparent, but ONLY if the output device is PDF and opened using:
pdf(file="filename.pdf", version="1.4")
.
For this reason, the default is transparency==FALSE
.
This feature as well as the arguments
to specify different colors has been proposed by Wouter Meuleman.
compute.bagplot
returns an object of class
bagplot
that could be plotted by
plot.bagplot()
.
The development of the function has not been finished. Version 02/2006
Peter Wolf
P. J. Rousseeuw, I. Ruts, J. W. Tukey (1999): The bagplot: a bivariate boxplot, The American Statistician, vol. 53, no. 4, 382–387
# example: 100 random points and one outlier dat<-cbind(rnorm(100)+100,rnorm(100)+300) dat<-rbind(dat,c(105,295)) bagplot(dat,factor=2.5,create.plot=TRUE,approx.limit=300, show.outlier=TRUE,show.looppoints=TRUE, show.bagpoints=TRUE,dkmethod=2, show.whiskers=TRUE,show.loophull=TRUE, show.baghull=TRUE,verbose=FALSE) # example of Rousseeuw et al., see R-package rpart cardata <- structure(as.integer(c(2560, 2345, 1845, 2260, 2440, 2285, 2275, 2350, 2295, 1900, 2390, 2075, 2330, 3320, 2885, 3310, 2695, 2170, 2710, 2775, 2840, 2485, 2670, 2640, 2655, 3065, 2750, 2920, 2780, 2745, 3110, 2920, 2645, 2575, 2935, 2920, 2985, 3265, 2880, 2975, 3450, 3145, 3190, 3610, 2885, 3480, 3200, 2765, 3220, 3480, 3325, 3855, 3850, 3195, 3735, 3665, 3735, 3415, 3185, 3690, 97, 114, 81, 91, 113, 97, 97, 98, 109, 73, 97, 89, 109, 305, 153, 302, 133, 97, 125, 146, 107, 109, 121, 151, 133, 181, 141, 132, 133, 122, 181, 146, 151, 116, 135, 122, 141, 163, 151, 153, 202, 180, 182, 232, 143, 180, 180, 151, 189, 180, 231, 305, 302, 151, 202, 182, 181, 143, 146, 146)), .Dim = as.integer(c(60, 2)), .Dimnames = list(NULL, c("Weight", "Disp."))) bagplot(cardata,factor=3,show.baghull=TRUE, show.loophull=TRUE,precision=1,dkmethod=2) title("car data Chambers/Hastie 1992") # points of y=x*x bagplot(x=1:30,y=(1:30)^2,verbose=FALSE,dkmethod=2) # one dimensional subspace bagplot(x=1:100,y=1:100)