| coplot {graphics} | R Documentation |
This function produces two variants of the conditioning plots discussed in the reference below.
coplot(formula, data, given.values, panel = points, rows, columns,
show.given = TRUE, col = par("fg"), pch = par("pch"),
bar.bg = c(num = gray(0.8), fac = gray(0.95)),
xlab = c(x.name, paste("Given :", a.name)),
ylab = c(y.name, paste("Given :", b.name)),
subscripts = FALSE,
axlabels = function(f) abbreviate(levels(f)),
number = 6, overlap = 0.5, xlim, ylim, ...)
co.intervals(x, number = 6, overlap = 0.5)
formula |
a formula describing the form of conditioning plot. A
formula of the form y ~ x | a indicates that plots of
y versus x should be produced conditional on the
variable a. A formula of the form y ~ x| a * b
indicates that plots of y versus x should be produced
conditional on the two variables a and b.
All three or four variables may be either numeric or factors. When x or y are factors, the result is almost as if
as.numeric() was applied, whereas for factor
a or b, the conditioning (and its graphics if
show.given is true) are adapted.
|
data |
a data frame containing values for any variables in the
formula. By default the environment where coplot was called
from is used. |
given.values |
a value or list of two values which determine how
the conditioning on a and b is to take place.
When there is no b (i.e., conditioning only on a),
usually this is a matrix with two columns each row of which gives an
interval, to be conditioned on, but is can also be a single vector
of numbers or a set of factor levels (if the variable being
conditioned on is a factor). In this case (no b),
the result of co.intervals can be used directly as
given.values argument.
|
panel |
a function(x, y, col, pch, ...)
which gives the action to be carried out in
each panel of the display. The default is points. |
rows |
the panels of the plot are laid out in a rows by
columns array. rows gives the number of rows in the
array. |
columns |
the number of columns in the panel layout array. |
show.given |
logical (possibly of length 2 for 2 conditioning
variables): should conditioning plots be shown for the
corresponding conditioning variables (default TRUE) |
col |
a vector of colors to be used to plot the points. If too short, the values are recycled. |
pch |
a vector of plotting symbols or characters. If too short, the values are recycled. |
bar.bg |
a named vector with components "num" and
"fac" giving the background colors for the (shingle) bars,
for numeric and factor conditioning variables respectively. |
xlab |
character; labels to use for the x axis and the first conditioning variable. If only one label is given, it is used for the x axis and the default label is used for the conditioning variable. |
ylab |
character; labels to use for the y axis and any second conditioning variable. |
subscripts |
logical: if true the panel function is given an
additional (third) argument subscripts giving the subscripts
of the data passed to that panel. |
axlabels |
function for creating axis (tick) labels when x or y are factors. |
number |
integer; the number of conditioning intervals,
for a and b, possibly of length 2. It is only used if the
corresponding conditioning variable is not a factor. |
overlap |
numeric < 1; the fraction of overlap of the conditioning variables, possibly of length 2 for x and y direction. When overlap < 0, there will be gaps between the data slices. |
xlim |
the range for the x axis. |
ylim |
the range for the y axis. |
... |
additional arguments to the panel function. |
x |
a numeric vector. |
In the case of a single conditioning variable a, when both
rows and columns are unspecified, a “close to
square” layout is chosen with columns >= rows.
In the case of multiple rows, the order of the panel
plots is from the bottom and from the left (corresponding to
increasing a, typically).
A panel function should not attempt to start a new plot, but just plot
within a given coordinate system: thus plot and boxplot
are not panel functions.
co.intervals(., number, .) returns a (number x
2) matrix, say ci, where ci[k,] is
the range of x values for the k-th interval.
Chambers, J. M. (1992) Data for models. Chapter 3 of Statistical Models in S eds J. M. Chambers and T. J. Hastie, Wadsworth & Brooks/Cole.
Cleveland, W. S. (1993) Visualizing Data. New Jersey: Summit Press.
## Tonga Trench Earthquakes
data(quakes)
coplot(lat ~ long | depth, data = quakes)
given.depth <- co.intervals(quakes$depth, number=4, overlap=.1)
coplot(lat ~ long | depth, data = quakes, given.v=given.depth, rows=1)
## Conditioning on 2 variables:
ll.dm <- lat ~ long | depth * mag
coplot(ll.dm, data = quakes)
coplot(ll.dm, data = quakes, number=c(4,7), show.given=c(TRUE,FALSE))
coplot(ll.dm, data = quakes, number=c(3,7),
overlap=c(-.5,.1)) # negative overlap DROPS values
data(warpbreaks)
## given two factors
Index <- seq(length=nrow(warpbreaks)) # to get nicer default labels
coplot(breaks ~ Index | wool * tension, data = warpbreaks, show.given = 0:1)
coplot(breaks ~ Index | wool * tension, data = warpbreaks,
col = "red", bg = "pink", pch = 21, bar.bg = c(fac = "light blue"))
## Example with empty panels:
data(state)
attach(data.frame(state.x77))#> don't need 'data' arg. below
coplot(Life.Exp ~ Income | Illiteracy * state.region, number = 3,
panel = function(x, y, ...) panel.smooth(x, y, span = .8, ...))
## y ~ factor -- not really sensical, but 'show off':
coplot(Life.Exp ~ state.region | Income * state.division,
panel = panel.smooth)
detach() # data.frame(state.x77)