Я пытаюсь построить распределение вероятностей, используя pandas.Series
, и я пытаюсь установить разные yerr
для каждого бара. Таким образом, я планирую следующее распределение:

Он исходит от Series
и работает нормально, за исключением yerr
. Он не может превышать 1 или 0. Поэтому я бы хотел установить разные ошибки для каждого бара. Поэтому я пошел к документации, которая доступна здесь и здесь .
По их словам, у меня есть 3 варианта использования yerr
aor xerr
:
- скаляр: Симметричные значения +/- для всех точек данных.
- скаляр: Симметричные +/- значения для всех точек данных.
- shape (2, N): Отдельные значения - и + для каждого бара. Первая строка содержит нижние ошибки, вторая строка содержит верхние ошибки.
Мне нужен последний случай. В этом случае я могу использовать DataFrame
, Series
, array-like
, dict
и str
. Таким образом, я установил массивы для каждого бара yerr
, однако он не работает должным образом. Просто чтобы повторить происходящее, я подготовил следующие примеры:
Сначала я установил pandas.Series
:
import pandas as pd
se = pd.Series(data=[0.1,0.2,0.3,0.4,0.4,0.5,0.2,0.1,0.1],
index=list('abcdefghi'))
Затем я повторяю каждый случай:
Работает как положено:
err1 = [0.2]*9
se.plot(kind="bar", width=1.0, yerr=err1)

Это работает как ожидалось:
err2 = err1
err2[3] = 0.5
se.plot(kind="bar", width=1.0, yerr=err1)

Теперь проблема: Это не работает, как ожидалось!
err_up = [0.3]*9
err_low = [0.1]*9
err3 = [err_low, err_up]
se.plot(kind="bar", width=1.0, yerr=err3)

Это не установка различных ошибок для низкого и повышенного уровня. Я нашел пример здесь и аналогичный вопрос SO здесь , хотя они используют matplotlib
вместо pandas
, он должен работать здесь.
Я рад, если у вас есть какое-то решение по этому поводу.
Спасибо.