R: Mosaic Displays for 'glmlist' and 'logllmlist' Objects

mosaic.glmlist {vcdExtra} | R Documentation

## Mosaic Displays for `glmlist` and `logllmlist` Objects

### Description

This function provides a convenient interface for viewing mosaic displays associated with a collection of glm models for freqency tables that have been stored in a `glmlist` or `loglmlist` object. You can plot either selected models individually, or mosaics for all models in an array of viewports.

### Usage

    ## S3 method for class 'glmlist'
    mosaic(x, selection,
      panel=mosaic,
      type=c("observed", "expected"),
      legend=ask | !missing(selection),
      main=NULL,
      ask=TRUE, graphics=TRUE, rows, cols, newpage=TRUE,
      ...)

    ## S3 method for class 'loglmlist'
    mosaic(x, selection,
      panel=mosaic,
      type=c("observed", "expected"),
      legend=ask | !missing(selection),
      main=NULL,
      ask=TRUE, graphics=TRUE, rows, cols, newpage=TRUE,
      ...)

### Arguments

`x` | a `glmlist` or `loglmlist` object
`selection` | the index or name of one `glm` or `loglm` object in `x`. If no selection is specified, a menu of models is presented or all models are plotted.
`panel` | a `strucplot` panel function, typicially `mosaic` or `sieve`
`type` | a character string indicating whether the `"observed"` or the `"expected"` values of the table should be visualized
`legend` | logical: show a legend for residuals in the mosaic display(s)? The default behavior is to include a legend when only a single plot is shown, i.e., if `ask` is `TRUE` or a `selection` has been specified.
`main` | either a logical, or a vector of character strings used for plotting the main title. If main is a logical and `TRUE`, the name of the selected glm object is used.
`ask` | logical: should the function display a menu of models, when one is not specified in `selection`? If `selection` is not supplied and `ask` is `TRUE` (the default), a menu of model names is presented; if `ask` is `FALSE`, mosaics for all models are plotted in an array.
`graphics` | logical: use a graphic dialog box when `ask=TRUE`?
`rows,cols` | when `ask=FALSE`, the number of rows and columns in which to plot the mosaics.
`newpage` | start a new page? (only applies to `ask=FALSE`)
`...` | other arguments passed to `mosaic.glm` and ultimately to `mosaic`.

### Details

Most details of the plots produced can be controlled via ... arguments as shown in some of the examples below. In particular, with `panel=sieve` you need to also pass `gp=shading_Friendly` to get a color version.

### Value

Returns the result of `mosaic.glm`.

### Author(s)

Michael Friendly

### References

David Meyer, Achim Zeileis, and Kurt Hornik (2006). The Strucplot Framework: Visualizing Multi-Way Contingency Tables with vcd. Journal of Statistical Software, 17(3), 1-48. http://www.jstatsoft.org/v17/i03/, available as `vignette("strucplot", package="vcd")`.

### See Also

`glmlist`, `loglmlist`, `Kway`

`mosaic.glm`, `mosaic`, `strucplot`, for the many parameters that control the details of mosaic plots.

### Examples

    data(JobSatisfaction, package="vcd")

    # view all pairwise mosaics
    pairs(xtabs(Freq~management+supervisor+own, data=JobSatisfaction),
        shade=TRUE, diag_panel=pairs_diagonal_mosaic)

    modSat <- Kway(Freq ~ management+supervisor+own, data=JobSatisfaction,
                   family=poisson, prefix="JobSat")
    names(modSat)

    ## Not run:
    mosaic(modSat)              # uses menu, if interactive()

    ## End(Not run)
    mosaic(modSat, "JobSat.1")  # model label
    mosaic(modSat, 2)           # model index

    # supply a formula to determine the order of variables in the mosaic
    mosaic(modSat, 2, formula=~own+supervisor+management)

    mosaic(modSat, ask=FALSE)   # uses viewports

    # use a different panel function, label the observed valued in the cells
    mosaic(modSat, 1, main=TRUE, panel=sieve, gp=shading_Friendly, labeling=labeling_values)

    data(Mental)
    indep <- glm(Freq ~ mental+ses,
                    family = poisson, data = Mental)
    Cscore <- as.numeric(Mental$ses)
    Rscore <- as.numeric(Mental$mental)

    coleff <- glm(Freq ~ mental + ses + Rscore:ses,
                    family = poisson, data = Mental)
    roweff <- glm(Freq ~ mental + ses + mental:Cscore,
                    family = poisson, data = Mental)
    linlin <- glm(Freq ~ mental + ses + Rscore:Cscore,
                    family = poisson, data = Mental)

    # assign names for the plot labels
    modMental <- glmlist(Indep=indep, ColEff=coleff, RowEff=roweff, `Lin x Lin`=linlin)
    mosaic(modMental, ask=FALSE, margins=c(3,1,1,2), labeling_args=list(abbreviate_labs=5))

[Package vcdExtra version 0.7-1 Index]