Tôi đang cố gắng để vẽ một series với thanh lỗi bất đối xứng sử dụng gấu trúc và matplotlib với đoạn mã sau:Tại sao gấu trúc áp dụng cùng một giá trị trên cả hai mặt của thanh lỗi không đối xứng?
d = {'high_delta': {1: 0.6,
2: 0.1,
3: 0.2,
4: 0.1,
5: 0.1,
6: 0.1,
7: 0.1,
8: 0.1,
9: 0.2,
10: 0.1},
'low_delta': {1: 0.2,
2: 0.1,
3: 0.1,
4: 0.1,
5: 0.1,
6: 0.1,
7: 0.1,
8: 0.1,
9: 0.1,
10: 0.4},
'p_hat': {1: 0.2,
2: 0.1,
3: 0.3,
4: 0.3,
5: 0.1,
6: 0.3,
7: 0.2,
8: 0.2,
9: 0.1,
10: 0.8}}
df = pandas.DataFrame(d)
df['p_hat'].plot(yerr=df[['low_delta', 'high_delta']].T.values)
(df.p_hat + df.high_delta).plot(style='.')
(df.p_hat - df.low_delta).plot(style='*')
Các giới hạn thấp hơn luôn dường như để phù hợp với những gì tôi mong đợi, nhưng thay vì thêm giá trị trên trên ràng buộc nó có vẻ là thêm các giá trị từ các ràng buộc thấp hơn một lần nữa.
Lỗi nên được chuyển vào matplotlib sao cho các thanh lỗi được hiển thị chính xác?
Bạn có thể viết lại bằng cách sử dụng gấu trúc không? – tacaswell
Mọi thứ hoạt động tốt nếu tôi thay thế 'df ['p_hat']. Plot()' bằng 'plt.errorbar (df.index.values, df ['p_hat']. Giá trị, yerr = df [['low_delta', ' high_delta ']]. T.values) ', nhưng tôi muốn làm công việc này trong gấu trúc hoặc ít nhất là biết tại sao nó không. – 2daaa
Tôi sẽ đưa vào một báo cáo lỗi với gấu trúc vì đây là lỗi trong gấu trúc – tacaswell