1 #ifndef _theplu_yat_statistics_histogram_
2 #define _theplu_yat_statistics_histogram_
29 #include "AveragerWeighted.h"
30 #include "yat/utility/concept_check.h"
31 #include "yat/utility/iterator_traits.h"
33 #include <boost/concept_check.hpp>
41 namespace statistics {
102 int add(
const double x,
const double weight=1.0);
189 double xmax(
void)
const;
196 double xmin(
void)
const;
220 size_t bin(
double d);
222 std::vector<double> histogram_;
236 template<
typename ForwardIterator>
238 ForwardIterator first, ForwardIterator last)
240 BOOST_CONCEPT_ASSERT((boost::ForwardIterator<ForwardIterator>));
243 while (first!=last) {
254 std::ostream& operator<<(std::ostream& s,
const Histogram&);
void normalize(bool choice=true)
Normalizing the histogram.
data_reference data(Iter iter) const
Definition: iterator_traits.h:434
Concept check for Data Iterator.
Definition: concept_check.h:224
Definition: iterator_traits.h:406
int add(const double x, const double weight=1.0)
Add a data point to the histogram.
Class to calulate averages with weights.
Definition: AveragerWeighted.h:65
const Histogram & operator=(const Histogram &)
double operator[](size_t k) const
void add(Histogram &h, ForwardIterator first, ForwardIterator last)
Definition: Histogram.h:237
size_t nof_bins(void) const
double observation_value(const size_t k) const
Histograms provide a convenient way of presenting the distribution of a set of data.
Definition: Histogram.h:52
weight_reference weight(Iter iter) const
Definition: iterator_traits.h:440
double spacing(void) const
const Histogram & operator+=(const Histogram &rhs)
Addition operator.
const AveragerWeighted & averager_histogram(void) const
Average of events fitting within histogram.
const AveragerWeighted & averager_all(void) const
Average of all events presented to the histogram.
void rescale(double factor)