Во-первых, извините, если кто-то уже задавал этот вопрос об этом сюжете (я уже просмотрел несколько сообщений stackoverflow).
На графике представлены четыре столбчатых диаграммы среднего значения с допустимой погрешностью (запас = среднее + -станд * 1,96), представленной вертикальными линиями поверх них.
В любом случае, проблема, с которой я столкнулся, заключается в том, что моя диаграмма столбцов выглядит нормально без параметра yerr.
Однако, как только я ввожу параметр yerr, yerr = df.std (axis = 1), в plt.bar, среднее значение столбцы значений становятся маленькими и центрируются вокруг нуля. см. изображение.
Честно говоря, я не знаю, в чем проблема. Я также пробовал экспериментировать с доверительными интервалами, и я все еще получаю тот же график, когда вводится параметр yerr.
upper=[1.96*s[i] for i in range(4)], lower=[(-1.96)*s[i] for i in range(4)],
ci=list(zip(lower,upper))
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
np.random.seed(12345)
df = pd.DataFrame([np.random.normal(32000,200000,3650),
np.random.normal(43000,100000,3650),
np.random.normal(43500,140000,3650),
np.random.normal(48000,70000,3650)],
index=[1992,1993,1994,1995])
plt.figure(figsize=(8,8))
xt = [1992,1993,1994,1995]
plt.xticks(xt)
bar_plot = plt.bar(df.index, df.mean(axis=1),capsize=10)
#bar_plot = plt.bar(df.index, df.mean(axis=1),,yerr=df.std(axis=1)*1.96, capsize=10)
plt.show()