R: Panel Function to create Violin Plots

F_2_panel.violin {lattice} | R Documentation

## Panel Function to create Violin Plots

### Description

This is a panel function that can create a violin plot. It is typically used in a high-level call to `bwplot`.

### Usage

    panel.violin(x, y, box.ratio = 1, box.width,
                 horizontal = TRUE,
                 alpha, border, lty, lwd, col,
                 varwidth = FALSE,
                 bw, adjust, kernel, window,
                 width, n = 50, from, to, cut,
                 na.rm, ...,
                 identifier = "violin")

### Arguments

`x, y` | numeric vector or factor. Violin plots are drawn for each unique value of `y` (`x`) if `horizontal` is `TRUE` (`FALSE`)
`box.ratio` | ratio of the thickness of each violin and inter violin space
`box.width` | thickness of the violins in absolute units; overrides `box.ratio`. Useful for specifying thickness when the categorical variable is not a factor, as use of `box.ratio` alone cannot achieve a thickness greater than 1.
`horizontal` | logical. If FALSE, the plot is ‘transposed’ in the sense that the behaviours of `x` and `y` are switched. `x` is now the ‘factor’. See documentation of `bwplot` for a fuller explanation.
`alpha, border, lty, lwd, col` | graphical parameters controlling the violin. Defaults are taken from the `"plot.polygon"` settings.
`varwidth` | logical. If `FALSE`, the densities are scaled separately for each group, so that the maximum value of the density reaches the limit of the allocated space for each violin (as determined by `box.ratio`). If `TRUE`, densities across violins will have comparable scale.
`bw, adjust, kernel, window, width, n, from, to, cut, na.rm` | arguments to `density`, passed on as appropriate
`...` | arguments passed on to `density`.
`identifier` | A character string that is prepended to the names of grobs that are created by this panel function.

### Details

Creates Violin plot of `x` for every level of `y`. Note that most arguments controlling the display can be supplied to the high-level (typically `bwplot`) call directly.

### Author(s)

Deepayan Sarkar Deepayan.Sarkar@R-project.org

### See Also

`bwplot`, `density`

### Examples

    bwplot(voice.part ~ height, singer,
           panel = function(..., box.ratio) {
               panel.violin(..., col = "transparent",
                            varwidth = FALSE, box.ratio = box.ratio)
               panel.bwplot(..., fill = NULL, box.ratio = .1)
           } )

[Package lattice version 0.20-6 Index]