将错误栏添加到Pandas图中的单个列

时间:2018-12-01 02:25:24

标签: python pandas dataframe matplotlib plot

我有一个看起来像这样的数据框:

df = pd.DataFrame({'Pred': [10, 9.5, 9.8], 'Actual': [10.2, 9.9, 9.1], 'STD': [0.1, 0.2, 0.6]})

    Pred    Actual  STD
0   10.0    10.2    0.1
1   9.5     9.9     0.2
2   9.8     9.1     0.6

我想仅在STD列而不是Pred列上使用Actual来制作带有误差线的条形图。到目前为止,我有这个:

df.plot.bar(yerr='STD', capsize=4)

enter image description here

但是这会在ActualPred上都添加错误条。是否有直接方法告诉熊猫将erorr栏添加到单个列中?

1 个答案:

答案 0 :(得分:2)

您可以使用

import matplotlib.pyplot as plt
fig, ax = plt.subplots()
errors=df.STD.to_frame('Pred')
df[['Actual','Pred']].plot.bar(yerr=errors, ax=ax)

enter image description here