vioplot: violin plot

Description Usage Arguments Details Author(s) References See Also Examples

View source: R/vioplot.R

Description

Produce violin plot(s) of the given (grouped) values.

Usage

1
2
3
4
vioplot(x, ..., range = 1.5, ylim = NULL, names = NULL,
  horizontal = FALSE, col = "magenta", border = "black", lty = 1,
  lwd = 1, rectCol = "black", colMed = "white", pchMed = 19, at,
  add = FALSE, wex = 1, drawRect = TRUE)

Arguments

x

data vector or list of data vectors

...

unnamed parameters are additional data vectors (unless x is a list). Named parameters are additional parameters to sm.density

range

a factor to calculate the upper/lower adjacent values

ylim

y limits

names

one label, or a vector of labels for the x must match the number of x given

horizontal

logical. horizontal or vertical violins

col, border, lty, lwd

Graphical parameters for the violin passed to lines and polygon

rectCol, colMed, pchMed

Graphical parameters to control the look of the box

at

position of each violin. Default to 1:n

add

logical. if FALSE (default) a new plot is created

wex

relative expansion of the violin.

drawRect

logical. the box is drawn if TRUE.

Details

A violin plot is a combination of a box plot and a kernel density plot. Specifically, it starts with a box plot. It then adds a rotated kernel density plot to each side of the box plot.

Author(s)

Daniel Adler dadler@uni-goettingen.de, Romain Francois francoisromain@free.fr ; http://francoisromain.free.fr : horizontal violins and additional graphical parameters, Ilia Kats ilia-kats@gmx.net

References

Hintze, J. L. and R. D. Nelson (1998). Violin plots: a box plot-density trace synergism. The American Statistician, 52(2):181-4.

See Also

boxplot, sm.density

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
## box- vs violin-plot
par(mfrow=c(2,1))
mu<-2
si<-0.6
bimodal<-c(rnorm(1000,-mu,si),rnorm(1000,mu,si))
uniform<-runif(2000,-4,4)
normal<-rnorm(2000,0,3)
vioplot(bimodal,uniform,normal)
boxplot(bimodal,uniform,normal)
## add to an existing plot
x <- rnorm(100)
y <- rnorm(100)
plot(x, y, xlim=c(-5,5), ylim=c(-5,5))
vioplot(x, col="tomato", horizontal=TRUE, at=-4, add=TRUE,lty=2, rectCol="gray")
vioplot(y, col="cyan", horizontal=FALSE, at=-4, add=TRUE,lty=2)

ilia-kats/imisc documentation built on May 18, 2019, 3:43 a.m.