Plots rectangles on a grid
tableplot.Rd
Plots rectangles on a grid- a barchart/mosaic variant which facilitates pairwise comparisons.
Usage
table_plot(rectw, recth, col="grey50", gapx = NULL, gapy = NULL,
spacex = 0.03, spacey = 0.03, xjust = "center", yjust = "center",
xruler = NULL, yruler = NULL, color.ruler = "grey32",
pch0=1,xlab=NULL,ylab=NULL, plot=TRUE,...)
Arguments
- rectw
An n*m matrix of rectangle widths, or a vector of m column widths.
- recth
An n*m matrix of rectangle heights, or a vector of n row heights.
- col
Rectangle fill colours.
- gapx
Gaps in the x-direction. If provided should be a vector of length m-1.
- gapy
Gaps in the x-direction. If provided should be a vector of length n-1.
- spacex
A single value- extra space between columns as a fraction of maximum row total of rectw .
- spacey
A single value- extra space between rows as a fraction of maximum column total of recth .
- xjust
Horizontal justification of rectangles- "center", "left", or "right".
- yjust
Vertical justification of rectangles- "center", "bottom", or "top".
- xruler
Specifies position of rulers drawn parallel to x-axis. Values are a subset of ("top","center","bottom")
- yruler
Specifies position of rulers drawn parallel to y-axis. Values are a subset of ("left","center","right")
- color.ruler
Color for the rulers.
- pch0
Symbol for zero cell size. May be NULL.
- xlab
X label
- ylab
Y label
- plot
If TRUE, draw tge plot. Otherwise returns a matrix where each row is the coordinates of a the calculated rectangle.
- ...
Passed to plot.
References
See overview
See also
See also barplot
, mosaicplot
Examples
if (FALSE) {
require(PairViz)
tab <- apply(HairEyeColor, c(1, 2), sum)
dev.new()
par(mar=c(3,3,1,1))
par(cex=.6,mgp=c(2, -.5, 0))
table_plot(sqrt(tab),sqrt(tab))
# this table plot has cells with widths and heights proportional to the square root of cell counts.
tabp <- prop.table(tab,2)
table_plot(apply(tab,2,sum),tabp) # make cell widths proportional to
#margin totals, heights to conditional prob
cols <- 2:5
table_plot(apply(tab,2,sum),tabp, yjust="bottom",col=cols,yruler=c("left","right"))
# add colours, rulers and bottom-justify
# The result is similar to the mosaic, without the mosaic effect of equalizing gaps.
#In the table version the rectangles line up across rows,
#so comparing heights, ie. conditional probs is easier.
o <- hpaths(1:4)[2,]
table_plot(apply(tab,2,sum)[o],tabp[,o], yjust="bottom",col=cols,yruler=c("left","right"))
# Permutes the columns so all pairs of columns can be compared.
#In the second permutation can easily see that
#p(black|blue eyes)> p(black|green eyes)
dev.new()
par(mar=c(3,3,1,1))
par(mgp=c(2, -.5, 0))
mosaicplot(t(tab)[,nrow(tab):1],col=rev(cols),main="")
# mosaic- good for seeing deviations from independence. hard to compare conditional probs,
# except for those in the bottom and top rows.
}