vioplot {vioplot} | R Documentation |
Produce violin plot(s) of the given (grouped) values.
vioplot( x, ..., range=1.5, h, ylim, names, horizontal=FALSE, col="magenta", border="black", lty=1, lwd=1, rectCol="black", colMed="white", pchMed=19, at, add=FALSE, wex=1, drawRect=TRUE)
x |
data vector |
... |
additional data vectors |
range |
a factor to calculate the upper/lower adjacent values |
h |
the height for the density estimator, if omit as explained in sm.density, h will be set to an optimum |
ylim |
y limits |
names |
one label, or a vector of labels for the datas must match the number of datas given |
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 |
drawRect |
logical. the box is drawn if TRUE . |
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. |
horizontal |
logical. horizontal or vertical violins |
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.
Daniel Adler dadler@uni-goettingen.de
Romain Francois francoisromain@free.fr ; http://francoisromain.free.fr : horizontal violins and additionnal graphical parameters
Hintze, J. L. and R. D. Nelson (1998). Violin plots: a box plot-density trace synergism. The American Statistician, 52(2):181-4.
# 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)