Learn R Programming

aplpack (version 1.3.0)

plothulls: plothulls for data peeling

Description

plothulls plots convex hulls of a bivariate data set.

Usage

plothulls(x, y, fraction, n.hull = 1, main, add = FALSE, col.hull, 
    lty.hull, lwd.hull, density = 0, ...)

Arguments

x

two column matrix of the coordinates of points of x-values of a data set

y

if x is one dimensional then y contains the y-values of the data set

fraction

... of points that lies inside the hull to be plotted

n.hull

number of directions sequential hulls to be plotted

main

title for the graphics

add

if TRUE no new plot is initialized

col.hull

color(s) of the hull(s)

lty.hull

line type(s) of the hull(s)

lwd.hull

line width(s) of the hull(s)

density

density argument of polygon() that draws the hulls

...

further arguments used in the call of plot() or points()

Value

The hull(s) are stored as a list of matrices with two columns, the innermost first and so on.

Details

The function plothulls computes hulls of a bivariate data set using the function chull. After finding a hull the hull maybe plotted. Then the data points of the hull will be removed and the hull of the remaining points is computed. The style of plotting a hull depends on the setting of col.hull, lty.hull, lwd.hull and density. density=NA has the effect that the regions of the hulls are filled by a color. Using fraction you can plot a single hull. n.hull defines the number of hull that should be drawn one after the other.

References

Green, P.J. (1981): Peeling bivariate data. In: Interpreting Multivariate Data, V. Barnett (ed.), pp 3-19, Wiley. Porzio, Giovanni C., Ragozini, Giancarlo (2000): Peeling multvariate data sets: a new approach. Quanderni di Statistica, Vol. 2.

See Also

bagplot

Examples

Run this code
# NOT RUN {
  # 10 hulls computed from the faithful data and plotted
  plothulls(faithful, n.hull=10, lty.hull=1)
  # plotting additionally a hull with 90 percent of points within the hull
  plot(faithful)
  plothulls(faithful, fraction=.90, add=TRUE, col.hull="red", lwd.hull=3)
  # hull with 10 percent of points within the hull 
  plothulls(faithful, fraction=.10, col.hull="red", lwd.hull=3)
  # first 3 hulls of the cars data set
  n <- 3
  plothulls(cars, n.hull=n, col.hull=1:n, lty.hull=1:n)
  # 5 hulls represented by colored regions
  n <- 5
  cols <- heat.colors(9)[3:(3+n-1)]
  plothulls(cars, n.hull=n, col.hull=cols, lty.hull=1:n, density=NA, col=0)
  points(cars, pch=17, cex=1)
  # 6 hulls: regions colored and boundaries shown
  n <- 6
  cols <- rainbow(n)
  plothulls(cars, n.hull=n, col.hull=cols, lty.hull=1:n, density=NA, col=0)
  plothulls(cars, n.hull=n, add=TRUE, col.hull=1, lwd.hull=2, lty=1, col=0)
# }

Run the code above in your browser using DataLab