Matplotlib barh capstyle 'round' 不工作?

Matplotlib barh capstyle 'round' not working?

我创建了一个包含 xerr 的 barh 图。对于错误栏的上限,我想要圆边。我尝试在 error_kw 中设置 capstyle,但没有成功。

bars = ax.barh(range(3), [1,2,3], 
        xerr=[0.5,0.4,0.3], 
        align='center', color='silver', height=0.5,
        capsize=12, error_kw={'elinewidth':1, 'solid_capstyle':'round'})

之后我还尝试访问 Line2D 对象以更改 capstyle,但也没有成功。

bars.errorbar.lines[1][0].set_solid_capstyle('round')

有人可以提示我这里做错了什么吗?

我现在发现问题了,我必须访问帽的私有属性。而不是方法

cap.set_solid_capstyle('round')

我必须访问私有属性:

cap._marker._capstyle = "round"

无论如何感谢您的评论@tmdavison