【发布时间】:2021-11-01 10:09:55
【问题描述】:
所以基本上我想改变我情节中每把小提琴的平均线、最小线和最大线的颜色。
我知道我可以通过使用字典来更改情节中所有小提琴的颜色:
violin_parts = ax_lst[0].violinplot(tmp_list, showmedians=True, quantiles=[[0.99], [0.99], [0.99],[0.99]])
for partname in ('cbars','cmins','cmaxes','cmedians','cquantiles'):
vp = violin_parts[partname]
vp.set_edgecolor("#3498db")
vp.set_linewidth(1.6)
vp.set_alpha(1)
问题在于,使用这种方法,我无法编辑每把小提琴的单独线条,而且我似乎找不到解决方法。出于某种原因,只有主体本身可以作为所有小提琴的迭代器访问。
【问题讨论】:
-
matplotlib.org/stable/gallery/statistics/…
violin_parts是一个dict,其值中有matplotlib.collections;好像你会有索引并分配你想要的。该问题未提供完整的minimal reproducible example。'cbars','cmins','cmaxes','cmeans','cmedians'只有一个集合,这意味着您将无法单独分配它们。bodies是一个集合列表,因此可以单独分配每个集合。
标签: python matplotlib violin-plot