hexbin
From hexbin v1.29.0
by Nicholas LewinKoh
Bivariate Binning into Hexagon Cells
Creates a "hexbin"
object. Basic components are a cell id and
a count of points falling in each occupied cell.
Basic methods are show()
, plot()
and summary()
, but also erode
.
- Keywords
- dplot
Usage
hexbin(x, y, xbins = 30, shape = 1,
xbnds = range(x), ybnds = range(y),
xlab = NULL, ylab = NULL, IDs = FALSE)
Arguments
- x, y
- vectors giving the coordinates of the bivariate data
points to be binned. Alternatively a single plotting structure can
be specified: see
xy.coords
.NA
's are allowed and silently omitted. - xbins
- the number of bins partitioning the range of xbnds.
- shape
- the shape = yheight/xwidth of the plotting regions.
- xbnds, ybnds
- horizontal and vertical limits of the binning region in x or y units respectively; must be numeric vector of length 2.
- xlab, ylab
- optional character strings used as labels for
x
andy
. IfNULL
, sensible defaults are used. - IDs
- logical indicating if the individual cell
IDs should be returned, see also below.
Details
Returns counts for non-empty cells only. The plot shape must be maintained for hexagons to appear with equal sides. Some calculations are in single precision.
Note that when plotting a hexbin
object, the
Value
- an S4 object of class
"hexbin"
. It has the following slots: cell vector of cell ids that can be mapped into the (x,y) bin centers in data units. count vector of counts in the cells. xcm The x center of mass (average of x values) for the cell. ycm The y center of mass (average of y values) for the cell. xbins number of hexagons across the x axis. hexagon inner diameter =diff(xbnds)/xbins in x units shape plot shape which is yheight(inches) / xwidth(inches) xbnds x coordinate bounds for binning and plotting ybnds y coordinate bounds for binning and plotting dimen The i and j limits of cnt treated as a matrix cnt[i,j] n number of (non NA) (x,y) points, i.e., sum(* @count)
.ncells number of cells, i.e., length(* @count)
, etccall the function call. xlab, ylab character strings to be used as axis labels. cID of class, "integer or NULL"
, only ifIDs
was true, an integer vector of lengthn
wherecID[i]
is the cell number of the i-th original point(x[i], y[i])
. Consequently, thecell
andcount
slots are the same as thenames
and entries oftable(cID)
, see the example.
References
Carr, D. B. et al. (1987) Scatterplot Matrix Techniques for Large $N$. JASA 83, 398, 424--436.
See Also
Examples
set.seed(101)
x <- rnorm(10000)
y <- rnorm(10000)
(bin <- hexbin(x, y))
## or
plot(hexbin(x, y + x*(x+1)/4),
main = "(X, X(X+1)/4 + Y) where X,Y ~ rnorm(10000)")
## Using plot method for hexbin objects:
plot(bin, style = "nested.lattice")
hbi <- hexbin(y ~ x, xbins = 80, IDs= TRUE)
str(hbi)
tI <- table(hbi@cID)
stopifnot(names(tI) == hbi@cell,
tI == hbi@count)
## NA's now work too:
x[runif(6, 0, length(x))] <- NA
y[runif(7, 0, length(y))] <- NA
hbN <- hexbin(x,y)
summary(hbN)
Community examples
Looks like there are no examples yet.