matplotlib.pyplot.violinplot#

matplotlib.pyplot.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]#

绘制小提琴图。

dataset 的每一列或序列 dataset 中的每个向量绘制一个小提琴图。每个填充区域都延伸以表示整个数据范围,并可选择在均值、中位数、最小值、最大值和用户指定的分位数处添加线。

参数:
dataset数组或向量序列。

输入数据。

positions类数组,默认值: [1, 2, ..., n]

小提琴图的位置;即垂直小提琴图的 x 轴坐标(或水平小提琴图的 y 轴坐标)。

vert布尔值,可选

自 3.10 版本弃用:请改用 orientation

如果在弃用期内提供此参数,它将覆盖 orientation 参数。

如果为 True,则垂直绘制小提琴图。如果为 False,则水平绘制小提琴图。

orientation{'vertical', 'horizontal'},默认值: 'vertical'

如果为 'horizontal',则水平绘制小提琴图。否则,垂直绘制小提琴图。

自 3.10 版本新增。

widths浮点数或类数组,默认值:0.5

每个小提琴的最大宽度,单位为 positions 轴。默认值为 0.5,在使用默认 positions 时,这是可用空间的一半。

showmeans布尔值,默认值:False

是否用线条显示均值。

showextrema布尔值,默认值:True

是否用线条显示极值。

showmedians布尔值,默认值:False

是否用线条显示中位数。

quantiles数组类对象, 默认: None

如果不是None,则为每个小提琴设置一个浮点数列表,取值范围为 [0, 1],表示该小提琴将渲染的分位数。

points整型, 默认: 100

评估每个高斯核密度估计的点数。

bw_method{'scott', 'silverman'} 或 float 或 callable,默认值: 'scott'

用于计算估计器带宽的方法。如果为浮点数,将直接用作 kde.factor。如果为可调用对象,它应接受一个 matplotlib.mlab.GaussianKDE 实例作为其唯一参数并返回一个浮点数。

side{'both', 'low', 'high'},默认值:'both'

'both' 绘制标准小提琴图。'low'/'high' 仅绘制位置值下方/上方的一侧。

data可索引对象,可选

如果给出,以下参数也接受字符串 s,如果 sdata 中的键,则解释为 data[s]

数据集

返回:
字典

一个字典,将小提琴图的每个组件映射到相应的已创建集合实例列表。该字典包含以下键:

  • bodies: 包含每个小提琴填充区域的 PolyCollection 实例列表。

  • cmeans: 一个 LineCollection 实例,标记每个小提琴分布的平均值。

  • cmins: 一个 LineCollection 实例,标记每个小提琴分布的底部。

  • cmaxes: 一个 LineCollection 实例,标记每个小提琴分布的顶部。

  • cbars: 一个 LineCollection 实例,标记每个小提琴分布的中心。

  • cmedians: 一个 LineCollection 实例,标记每个小提琴分布的中位数。

  • cquantiles: 一个 LineCollection 实例,用于识别每个小提琴分布的分位数。

另请参阅

Axes.violin

从预计算的统计数据绘制小提琴图。

箱线图

绘制箱线图。

备注

注意

这是 pyplot 封装器,用于 axes.Axes.violinplot

使用 matplotlib.pyplot.violinplot 的示例#

箱线图与小提琴图比较

箱线图与小提琴图比较

小提琴图自定义

小提琴图自定义

小提琴图基础

小提琴图基础