ROOT   Reference Guide
simple.cxx
Go to the documentation of this file.
1/// \file
2/// \ingroup tutorial_v7
3///
4/// \macro_code
5///
6/// \date 2015-03-22
7/// \warning This is part of the ROOT 7 prototype! It will change without notice. It might trigger earthquakes. Feedback
8/// is welcome!
9/// \author Axel Naumann <axel@cern.ch>
10
11/*************************************************************************
14 * *
15 * For the licensing terms see $ROOTSYS/LICENSE. * 16 * For the list of contributors see$ROOTSYS/README/CREDITS. *
17 *************************************************************************/
18
19#include "ROOT/RHist.hxx"
20#include "ROOT/RFit.hxx"
21#include "ROOT/RFile.hxx"
22
23void simple()
24{
25 using namespace ROOT::Experimental;
26
27 // Create a 2D histogram with an X axis with equidistant bins, and a y axis
28 // with irregular binning.
29 RAxisConfig xAxis(100, 0., 1.);
30 RAxisConfig yAxis({0., 1., 2., 3., 10.});
31 RH2D histFromVars(xAxis, yAxis);
32
33 // Or the short in-place version:
34 // Create a 2D histogram with an X axis with equidistant bins, and a y axis
35 // with irregular binning.
36 RH2D hist({100, 0., 1.}, {{0., 1., 2., 3., 10.}});
37
38 // Fill weight 1. at the coordinate 0.01, 1.02.
39 hist.Fill({0.01, 1.02});
40
41 // Fit the histogram.
42 RFunction<2> func([](const std::array<double, 2> &x, const std::span<const double> par) {
43 return par[0] * x[0] * x[0] + (par[1] - x[1]) * x[1];
44 });
45
46 auto fitResult = FitTo(hist, func, {{0., 1.}});
47
48 auto file = RFile::Recreate("hist.root");
49 file->Write("TheHist", hist);
50}
Objects used to configure the different axis types.
Definition: RAxisConfig.hxx:35
Histogram class for histograms with DIMENSIONS dimensions, where each bin count is stored by a value ...
Definition: RHist.hxx:53
void Fill(const CoordArray_t &x, Weight_t weight=(Weight_t) 1) noexcept
Add weight to the bin containing coordinate x.
Definition: RHist.hxx:140
Double_t x[n]
Definition: legend1.C:17
RFitResult FitTo(const RHist< DIMENSIONS, PRECISION, STAT... > &hist, const RFunction< DIMENSIONS > &func, std::span< const double > paramInit)
Definition: RFit.hxx:39
Definition: file.py:1