matplotlib.pyplot.violinplot(dataset, positions=None, vert=True, widths=0.5, showmeans=False, showextrema=True, showmedians=False, points=100, bw_method=None, hold=None, data=None)
参数 | 类型 | 描述 |
---|---|---|
dataset | Array or a sequence of vectors. | 输入数据 |
positions | array-like, default = [1, 2, …, n] | Sets the positions of the violins. The ticks and limits are automatically set to match the positions. |
vert | bool, default = True | 为真则垂直,为假则横向 |
widths | array-like, default = 0.5 | Either a scalar or a vector that sets the maximal width of each violin. The default is 0.5, which uses about half of the available horizontal space. |
showmeans | bool, default = False | If True, will toggle rendering of the means. |
showextrema | bool, default = True | If True, will toggle rendering of the extrema. |
showmedians | bool, default = False | If True, will toggle rendering of the medians. |
points | scalar, default = 100 | Defines the number of points to evaluate each of the gaussian kernel density estimations at. |
bw_method | str, scalar or callable, optional | The method used to calculate the estimator bandwidth. This can be ‘scott’, ‘silverman’, a scalar constant or a callable. If a scalar, this will be used directly as kde.factor. If a callable, it should take a GaussianKDE instance as its only parameter and return a scalar. If None (default), ‘scott’ is used. |
返回一个字典
bodies: A list of the matplotlib.collections.PolyCollection instances containing the filled area of each violin.
cmeans: A matplotlib.collections.LineCollection instance created to identify the mean values of each of the violin’s distribution.
cmins: A matplotlib.collections.LineCollection instance created to identify the bottom of each violin’s distribution.
cmaxes: A matplotlib.collections.LineCollection instance created to identify the top of each violin’s distribution.
cbars: A matplotlib.collections.LineCollection instance created to identify the centers of each violin’s distribution.
cmedians: A matplotlib.collections.LineCollection instance created to identify the median values of each of the violin’s distribution.
修改内容,因为violin图里面包含了很多图形对象,所以没有color参数来调整.需要对作图之后的返回对象来控制各个图像对象的颜色.
test = plt.violinplot(list)
len(test["bodies"])
test["bodies"][0].set_color("red")
对象的具体可参考
class matplotlib.collections.PolyCollection(verts, sizes=None, closed=True, **kwargs)