空圆圈带误差条

4
我该如何用Python画出空心圆和误差条的图形?我发现对于散点图可以使用facecolors='none'来实现,但是对于误差线图则不起作用。我还尝试了使用mfc='none'来实现空心圆,但误差线仍然在圆内部可见。请问如何让圆完全为空心,而误差线只从圆的外部延伸出来(误差条比数据点的大小更大)?谢谢!

你的意思是实际数值吗?这并不重要,例如一个数据点可以是(10,10),x和y的误差线可以分别为2和2。 - JohnDoe122
2个回答

2

一种选择是使用与背景颜色相同的mfc绘制,例如mfc='w':

y = [1,2,3,4]
yerr=[.1,.2,.3,.4]

plt.figure(figsize=(10,6))
plt.errorbar(x=y,y=y, yerr=yerr, ms=30, marker='o', mfc='w')

输出结果:

输入图像描述

然而,如上所示存在风险,当标记大小大于误差时,您将无法看到误差条。


2
实际上我需要它们是透明的。我想这样做的主要原因是因为我有多个点重叠,所以这个解决方案仍然会隐藏在后面的点。 - JohnDoe122

0

当背景为白色时,将mfc设置为背景颜色很容易。更一般的解决方案如下:

y = [1,2,3,4]
yerr=[.1,.2,.3,.4]

plt.figure(figsize=(10,6))
(plotline, _, _) = plt.errorbar(x=y,y=y, yerr=yerr, ms=30, marker='o', )
plotline.set_markerfacecolor('none')
plotline.set_markeredgewidth(0.5)

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接