Learn R Programming

vcd (version 1.1-1)

labeling_border: Labeling Functions for Strucplots

Description

These functions generate labeling functions used for strucplots.

Usage

labeling_border(labels = TRUE, varnames = labels,
  set_labels = NULL, set_varnames = NULL, 
  tl_labels = NULL, alternate_labels = FALSE, tl_varnames = NULL, 
  gp_labels = gpar(fontsize = 12),
  gp_varnames = gpar(fontsize = 12, fontface = 2),
  rot_labels = c(0, 90, 0, 90), rot_varnames = c(0, 90, 0, 90),
  pos_labels = "center", pos_varnames = "center",
  just_labels = "center", just_varnames = pos_varnames,
  boxes = FALSE, fill_boxes = FALSE,
  offset_labels = c(0, 0, 0, 0), offset_varnames = offset_labels,
  labbl_varnames = NULL, labels_varnames = FALSE, sep = ": ",
  abbreviate = FALSE, rep = TRUE, clip = FALSE, ...)
labeling_values(value_type = c("observed", "expected", "residuals"),
                suppress = NULL, digits = 1, clip_cells = FALSE, ...)
labeling_residuals(suppress = NULL, digits = 1, clip_cells = FALSE, ...)
labeling_conditional(...)
labeling_left(rep = FALSE, pos_varnames = "left",
  pos_labels = "left", just_labels = "left", ...)
labeling_left2(tl_labels = TRUE, clip = TRUE, pos_varnames = "left",
  pos_labels = "left", just_labels = "left", ...)
labeling_cboxed(tl_labels = TRUE, boxes = TRUE, clip = TRUE,
  pos_labels = "center", ...)
labeling_lboxed(tl_labels = FALSE, boxes = TRUE, clip = TRUE,
  pos_labels = "left", just_labels = "left",
  labbl_varnames = FALSE, ...)
labeling_doubledecker(lab_pos = c("bottom", "top"), dep_varname = TRUE,
  boxes = NULL, clip = NULL, labbl_varnames = FALSE,
  rot_labels = rep.int(0, 4),
  pos_labels = c("left", "center", "left", "center"),
  just_labels = c("left", "left", "left", "center"),
  varnames = NULL, gp_varnames = gpar(fontsize = 12, fontface = 2),
  offset_varnames = c(0, -0.6, 0, 0), tl_labels = NULL, ...)

Arguments

labels
vector of logicals indicating whether labels should be drawn for a particular dimension.
varnames
vector of logicals indicating whether variable names should be drawn for a particular dimension.
set_labels
An optional character vector with named components replacing the so-specified variable names. The component names must exacty match the variable names to be replaced.
set_varnames
An optional list with named components of character vectors replacing the labels of the so-specified variables. The component names must exacty match the variable names whose labels should be replaced.
tl_labels
vector of logicals indicating whether labels should be positioned on top (column labels) / left (row labels) for a particular dimension.
alternate_labels
vector of logicals indicating whether labels should be alternated on the top/bottom (left/right) side of the plot for a particular dimension.
tl_varnames
vector of logicals indicating whether variable names should be positioned on top (column labels) / on left (row labels) for a particular dimension.
gp_labels
list of objects of class "gpar" used for drawing the labels.
gp_varnames
list of objects of class "gpar" used for drawing the variable names.
rot_labels
vector of rotation angles for the labels for each of the four sides of the plot.
rot_varnames
vector of rotation angles for the variable names for each of the four sides of the plot.
pos_labels
character string of label positions ("left", "center", "right") for each of the variables.
pos_varnames
character string of variable names positions ("left", "center", "right") for each of the four sides of the plot.
just_labels
character string of label justifications ("left", "center", "right") for each of the variables.
just_varnames
character string of variable names justifications ("left", "center", "right") for each of the four sides of the plot.
boxes
vector of logicals indicating whether boxes should be drawn around the labels for a particular dimension.
fill_boxes
Either a vector of logicals, or a vector of characters, or a list of such vectors, specifying the fill colors for the boxes. "TRUE" and "FALSE" values are transformed into "grey" and "white",
offset_labels, offset_varnames
numeric vector of length 4 indicating the offset of the labels (variable names) for each of the four sides of the plot.
labbl_varnames
vector of logicals indicating whether variable names should be drawn on the left (column variables) / on top (row variables) of the corresponding labels.
labels_varnames
vector of logicals indicating, for each dimension, whether the variable name should be added to the corresponding labels or not.
sep
separator used if any component of "labels_varnames" is TRUE.
abbreviate
vector of integers or logicals indicating, for each dimension, the number of characters the labels should be abbreviated to. TRUE means 1 character, FALSE causes no abbreviation. Values are recycled as needed.
rep
vector of logicals indicating, for each dimension, whether labels should be repeated for all conditioning strata, or appear only once.
clip
vector of integers indicating, for each dimension, whether labels should be clipped to not overlap.
lab_pos
character string switching between "top" or "bottom" position of the labels (only used for labeling_doubledecker).
dep_varname
logical or character string. If logical, this is indicating whether the name of the dependent varable should be printed or not. A character string will be printed instead of the variable name taken from the dimnames.
value_type
character string specifying which values should be displayed in the cells.
suppress
numeric vector of length 2 specifying an interval of values that are not displayed. 0 values are never displayed.
digits
integer specifying the number of digits used for rounding.
clip_cells
logical indicating whether the values should be clipped at the cell borders.
...
only used for labeling_conditional and labeling_doubledecker: parameters passed to labeling_cells and labeling_border.

Value

  • A function with arguments:
  • d"dimnames" attribute from the visualized contingency table, or the visualized table itself from which the "dimnames" attributes will then be extracted.
  • split_verticalvector of logicals indicating the split directions.
  • condvarsinteger vector of conditioning dimensions.

Details

These functions generate labeling functions called by strucplot for their side-effect of adding labels to the plot. They suppose that a strucplot has been drawn and the corresponding viewport structure is pushed, since the positions of the viewports are used for the label positioning. Note that the functions can also be used stand-alone as shown in the examples. All values supplied to vectorized arguments can be abbreviated by using named components which override the default component values. In addition, these defaults can be overloaded by the sequence of non-named components which are recycled as needed (see examples).

This help page only documents labeling_border and derived functions, more functions are described on the help page for labeling_cells and labeling_list.

labeling_left, labeling_left2, labeling_cboxed, and labeling_lboxed are really just wrappers to labeling_border, and good examples for the parameter usage.

labeling_residuals is a trivial wrapper for labeling_values, which in turn calls labeling_border by additionally adding the observed or expected frequencies or residuals to the cells.

References

Meyer, D., Zeileis, A., and Hornik, K. (2006), The strucplot framework: Visualizing multi-way contingency tables with vcd. Journal of Statistical Software, 17(3), 1-48. URL http://www.jstatsoft.org/v17/i03/ and available as vignette("strucplot").

See Also

labeling_cells, labeling_list, structable, grid.text

Examples

Run this code
data("Titanic")

mosaic(Titanic)

mosaic(Titanic, labeling = labeling_left)
labeling_left

mosaic(Titanic, labeling = labeling_cboxed)
labeling_cboxed

mosaic(Titanic, labeling = labeling_lboxed)
labeling_lboxed

data("PreSex")
mosaic(~ PremaritalSex + ExtramaritalSex | Gender + MaritalStatus,
  data = PreSex, labeling = labeling_conditional)

## specification of vectorized arguments 
mosaic(Titanic, labeling_args = list(abbreviate = c(Survived = TRUE)))

mosaic(Titanic, labeling_args = list(clip = TRUE, boxes = TRUE,
  fill_boxes = c(Survived = "green", "red")))

mosaic(Titanic, labeling_args = list(clip = TRUE, boxes = TRUE,
  fill_boxes = list(Sex = "red", "green")))

mosaic(Titanic, labeling_args = list(clip = TRUE, boxes = TRUE,
  fill_boxes = list(Sex = c(Male = "red", "blue"), "green")))

## change variable names
mosaic(Titanic, labeling_args = list(set_varnames = c(Sex = "Gender")))

## change labels
mosaic(Titanic, labeling_args = list(set_varnames = c(Survived = "Status"),
  set_labels = list(Survived = c("Survived", "Not Survived")), rep = FALSE))

## show frequencies
mosaic(Titanic, labeling = labeling_values)

Run the code above in your browser using DataLab