У меня есть boost::histogram
со 100 ячейками в диапазоне [-3,5,3,5]. Я заполняю его вектором данных qp
. Поскольку я работаю с periodi c B C, все значения q в qp
находятся в [-3,5,3.5].
auto h = boost::histogram::make_histogram(boost::histogram::axis::regular<>(100, -3.5, 3.5));
for (auto&& value : qp)
h(value.first);
В целях безопасности я считаю все баллов в корзине с
int samplesize = 0;
for (auto&& it : indexed(h))
samplesize += *it;
Я готовлю данные для сюжета
for (auto&& it : indexed(h)) {
const auto bin = it.bin(0_c);
double xaxis = bin.lower();
double density = *it / samplesize;
const std::pair<double, double> paar = std::make_pair(xaxis,density);
printToStream(file, paar);
}
Результат меня смущает. Это должно быть нормализованное распределение вероятностей, но это определенно не так (значения на оси у очень низкие)
Есть ли boost
метод, с помощью которого я автоматически получаю (нормализованную) относительную частоту?