I have the following dataframe in pandas:
>>>name Hour trt_level stress date value
0 D43 9 H control 2019-06-07 0.4561
1 D43 10 H control 2019-06-07 0.3216
2 D42 8 M stress 2019-06-07 0.2143
3 D42 9 M stress 2019-06-07 0.1342
4 D21 8 L stress 2019-06-07 0.3214
...
I want to create line chart with error-bar,with mse/std, something that will look like this:
from : https://matplotlib.org/1.2.1/examples/pylab_examples/errorbar_demo.htmlbut in my case: the X-axis should be hour, the y axis the values, and three lines, one for each level of treatment (trt_level) so line for H,M,L.
In order to do that I have used function groupby and agg :
data = df.groupby(['trt_level','Hour']).agg([np.mean, np.std])
data.head()
>>> value
mean std
trt_level Hour
H 7 0.231 0.0058
8 0.212 0.0094
9 0.431 0.1154
...
wwhich gav eme database with the treamtnet and hour as index and mean and std of the value, but the problem is that when I try to plot it I get only one line without the std on top:
data = data['value']
qual.plot(kind = "line", y = "mean", legend = False,
xerr = "std", title = "test", color='green')
When my desired result should have three lines with the std on top (better if could be MES and not std but for this question I focus more on the three lines and the displaying of the std)
My end goal is to get chart that is more like this (sorry for the horrible draw):
but for all the hours



