matplotlib错误栏可以设置线型吗?

tkj*_*kja 19 python plot matplotlib

是否可以将相同的linestyle设置为matplotlib错误栏而不是数据点线条样式?

在下面的示例中,绘制了两条线,其中一条是虚线,因为ls =' - .' 参数.但是,错误栏是实线.是否可以修改错误栏的样式/外观以匹配结果行?

import matplotlib.pyplot as plt
import numpy as np

x = np.array(range(0,10))
y = np.array(range(0,10))
yerr = np.array(range(1,11)) / 5.0
yerr2 = np.array(range(1,11)) / 4.0

y2 = np.array(range(0,10)) * 1.2

plt.errorbar(x, y, yerr=yerr, lw=8, errorevery=2, ls='-.')
plt.errorbar(x, y2, yerr=yerr2, lw=8, errorevery=3)
plt.show()
Run Code Online (Sandbox Code Playgroud)

CT *_*Zhu 23

这是微不足道的,改变错误栏的linestyle只需要一个简单的.set_linestyle调用:

eb1=plt.errorbar(x, y, yerr=yerr, lw=2, errorevery=2, ls='-.')
eb1[-1][0].set_linestyle('--') #eb1[-1][0] is the LineCollection objects of the errorbar lines
eb2=plt.errorbar(x, y2, yerr=yerr2, lw=2, errorevery=3)
eb2[-1][0].set_linestyle('-.')
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述