matplotlib.axes.Axes.violinplot#
- Axes.violinplot(dataset, positions=None, *, vert=None, orientation='vertical', widths=0.5, showmeans=False, showextrema=True, showmedians=False, quantiles=None, points=100, bw_method=None, side='both', data=None)[source]#
 Make a violin plot.
Make a violin plot for each column of dataset or each vector in sequence dataset. Each filled area extends to represent the entire data range, with optional lines at the mean, the median, the minimum, the maximum, and user-specified quantiles.
- Parameters:
 - datasetArray or a sequence of vectors.
 The input data.
- positionsarray-like, default: [1, 2, ..., n]
 The positions of the violins; i.e. coordinates on the x-axis for vertical violins (or y-axis for horizontal violins).
- vertbool, optional
 Deprecated since version 3.10: Use orientation instead.
If this is given during the deprecation period, it overrides the orientation parameter.
If True, plots the violins vertically. If False, plots the violins horizontally.
- orientation{'vertical', 'horizontal'}, default: 'vertical'
 If 'horizontal', plots the violins horizontally. Otherwise, plots the violins vertically.
Added in version 3.10.
- widthsfloat or array-like, default: 0.5
 The maximum width of each violin in units of the positions axis. The default is 0.5, which is half the available space when using default positions.
- showmeansbool, default: False
 Whether to show the mean with a line.
- showextremabool, default: True
 Whether to show extrema with a line.
- showmediansbool, default: False
 Whether to show the median with a line.
- quantilesarray-like, default: None
 If not None, set a list of floats in interval [0, 1] for each violin, which stands for the quantiles that will be rendered for that violin.
- pointsint, default: 100
 The number of points to evaluate each of the gaussian kernel density estimations at.
- bw_method{'scott', 'silverman'} or float or callable, default: 'scott'
 The method used to calculate the estimator bandwidth. If a float, this will be used directly as
kde.factor. If a callable, it should take amatplotlib.mlab.GaussianKDEinstance as its only parameter and return a float.- side{'both', 'low', 'high'}, default: 'both'
 'both' plots standard violins. 'low'/'high' only plots the side below/above the positions value.
- dataindexable object, optional
 If given, the following parameters also accept a string
s, which is interpreted asdata[s]ifsis a key indata:dataset
- Returns:
 - dict
 A dictionary mapping each component of the violinplot to a list of the corresponding collection instances created. The dictionary has the following keys:
bodies: A list of thePolyCollectioninstances containing the filled area of each violin.cmeans: ALineCollectioninstance that marks the mean values of each of the violin's distribution.cmins: ALineCollectioninstance that marks the bottom of each violin's distribution.cmaxes: ALineCollectioninstance that marks the top of each violin's distribution.cbars: ALineCollectioninstance that marks the centers of each violin's distribution.cmedians: ALineCollectioninstance that marks the median values of each of the violin's distribution.cquantiles: ALineCollectioninstance created to identify the quantile values of each of the violin's distribution.
See also
Axes.violinDraw a violin from pre-computed statistics.
boxplotDraw a box and whisker plot.