Issue
Is is possible to set the same linestyle to matplotlib errorbars than to the datapoints linestyle?
In the example below, two lines are plotted, one of them is dashed because of the ls='-.' parameter. However, the errorbar are solid lines. Is is possible to modify the style/look of the errorbars to match the results line?
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()
Solution
It is trivial, changing the linestyle of the errorbars only require a simple .set_linestyle
call:
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('-.')
Answered By - CT Zhu
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.