A violin plot is an easy to read substitute for a box plot that replaces the box shape with a kernel density estimate of the data, and optionally overlays the data points itself. The original boxplot shape is still included as a grey box/line in the center of the violin.
Violin plots are a superset of box plots, and give a much richer understanding of the data distribution, while not taking more space. You will be able to instantly spot too-sparse data, or multi-modal distributions, which could go unnoticed in boxplots.
violinplot is meant as a direct substitute for boxplot (excluding
named arguments). Additional constructor parameters include the width
of the plot, the bandwidth of the kernel density estimation, and the
X-axis position of the violin plot.
For more information about violin plots, read "Violin plots: a box plot-density trace synergism" by J. L. Hintze and R. D. Nelson in The American Statistician, vol. 52, no. 2, pp. 181-184, 1998 (DOI: 10.2307/2685478).
For a simple call:
load carbig MPG Origin
Origin = cellstr(Origin);
figure
vs = violinplot(MPG, Origin);
ylabel('Fuel Economy in MPG');
xlim([0.5, 7.5]);You can also play around with the different options, and tune your violin plots to your liking.
grouporder={'England','Sweden','Japan','Italy','Germany','France','USA'};
color = jet(length(grouporder));
pos = 3;
vs = Violin({MPG(strcmp(Origin, grouporder{pos}))},...
pos,...
'HalfViolin','right',...% left, full
'QuartileStyle','shadow',... % boxplot, none
'DataStyle', 'histogram',... % scatter, none
'ShowNotches', false,...
'ShowMean', false,...
'ShowMedian', true,...
'ViolinColor', {color(pos,:)},...
'Orientation', 'horizontal');
ylim(pos + [-.5, 0.5])
yticks(pos)
yticklabels(grouporder{pos})If you want to cite this repository, use
Bechtold, Bastian, 2016. Violin Plots for Matlab, Github Project
https://github.com/bastibe/Violinplot-Matlab, DOI: 10.5281/zenodo.4559847
Citar como
bastibe (2025). Violinplot-Matlab (https://github.com/bastibe/Violinplot-Matlab), GitHub. Recuperado .
Compatibilidad con la versión de MATLAB
Compatibilidad con las plataformas
Windows macOS LinuxEtiquetas
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Descubra Live Editor
Cree scripts con código, salida y texto formateado en un documento ejecutable.
test_cases
No se pueden descargar versiones que utilicen la rama predeterminada de GitHub
| Versión | Publicado | Notas de la versión | |
|---|---|---|---|
| 1.0.0 |
|


