# panel.violin: Panel Function to create Violin Plots In lattice: Trellis Graphics for R

## Description

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

## Usage

 ```1 2 3 4 5 6 7 8``` ```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

`bwplot`, `density`
 ```1 2 3 4 5 6``` ```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) } ) ```