Logo ROOT   6.18/05
Reference Guide
TH2.h
Go to the documentation of this file.
1// @(#)root/hist:$Id$
2// Author: Rene Brun 26/12/94
3
4/*************************************************************************
5 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6 * All rights reserved. *
7 * *
8 * For the licensing terms see $ROOTSYS/LICENSE. *
9 * For the list of contributors see $ROOTSYS/README/CREDITS. *
10 *************************************************************************/
11
12#ifndef ROOT_TH2
13#define ROOT_TH2
14
15
16//////////////////////////////////////////////////////////////////////////
17// //
18// TH2 //
19// //
20// 2-Dim histogram base class. //
21// //
22//////////////////////////////////////////////////////////////////////////
23
24#include "TH1.h"
25#include "TMatrixFBasefwd.h"
26#include "TMatrixDBasefwd.h"
27
28class TProfile;
29
30class TH2 : public TH1 {
31
32protected:
33 Double_t fScalefactor; //Scale factor
34 Double_t fTsumwy; //Total Sum of weight*Y
35 Double_t fTsumwy2; //Total Sum of weight*Y*Y
36 Double_t fTsumwxy; //Total Sum of weight*X*Y
37
38 TH2();
39 TH2(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
40 ,Int_t nbinsy,Double_t ylow,Double_t yup);
41 TH2(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
42 ,Int_t nbinsy,Double_t ylow,Double_t yup);
43 TH2(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
44 ,Int_t nbinsy,const Double_t *ybins);
45 TH2(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
46 ,Int_t nbinsy,const Double_t *ybins);
47 TH2(const char *name,const char *title,Int_t nbinsx,const Float_t *xbins
48 ,Int_t nbinsy,const Float_t *ybins);
49
51 virtual TH1D *DoProjection(bool onX, const char *name, Int_t firstbin, Int_t lastbin, Option_t *option) const;
52 virtual TProfile *DoProfile(bool onX, const char *name, Int_t firstbin, Int_t lastbin, Option_t *option) const;
53 virtual TH1D *DoQuantiles(bool onX, const char *name, Double_t prob) const;
54 virtual void DoFitSlices(bool onX, TF1 *f1, Int_t firstbin, Int_t lastbin, Int_t cut, Option_t *option, TObjArray* arr);
55
56 Int_t BufferFill(Double_t, Double_t) {return -2;} //may not use
57 Int_t Fill(Double_t); //MayNotUse
58 Int_t Fill(const char*, Double_t) { return Fill(0);} //MayNotUse
59
60private:
61
62 TH2(const TH2&);
63 TH2& operator=(const TH2&); // Not implemented
64
65public:
66 virtual ~TH2();
67 virtual Int_t BufferEmpty(Int_t action=0);
68 virtual void Copy(TObject &hnew) const;
69 virtual Int_t Fill(Double_t x, Double_t y);
70 virtual Int_t Fill(Double_t x, Double_t y, Double_t w);
71 virtual Int_t Fill(Double_t x, const char *namey, Double_t w);
72 virtual Int_t Fill(const char *namex, Double_t y, Double_t w);
73 virtual Int_t Fill(const char *namex, const char *namey, Double_t w);
74 virtual void FillN(Int_t, const Double_t *, const Double_t *, Int_t) {;} //MayNotUse
75 virtual void FillN(Int_t ntimes, const Double_t *x, const Double_t *y, const Double_t *w, Int_t stride=1);
76 virtual void FillRandom(const char *fname, Int_t ntimes=5000);
77 virtual void FillRandom(TH1 *h, Int_t ntimes=5000);
78 virtual void FitSlicesX(TF1 *f1=0,Int_t firstybin=0, Int_t lastybin=-1, Int_t cut=0, Option_t *option="QNR", TObjArray* arr = 0);
79 virtual void FitSlicesY(TF1 *f1=0,Int_t firstxbin=0, Int_t lastxbin=-1, Int_t cut=0, Option_t *option="QNR", TObjArray* arr = 0);
80 virtual Int_t GetBin(Int_t binx, Int_t biny, Int_t binz = 0) const;
81 virtual Double_t GetBinWithContent2(Double_t c, Int_t &binx, Int_t &biny, Int_t firstxbin=1, Int_t lastxbin=-1,Int_t firstybin=1, Int_t lastybin=-1, Double_t maxdiff=0) const;
82 virtual Double_t GetBinContent(Int_t bin) const { return TH1::GetBinContent(bin); }
83 virtual Double_t GetBinContent(Int_t binx, Int_t biny) const { return TH1::GetBinContent( GetBin(binx, biny) ); }
84 virtual Double_t GetBinContent(Int_t binx, Int_t biny, Int_t) const { return TH1::GetBinContent( GetBin(binx, biny) ); }
87 virtual Double_t GetBinErrorLow(Int_t binx, Int_t biny) { return TH1::GetBinErrorLow( GetBin(binx, biny) ); }
88 virtual Double_t GetBinErrorUp(Int_t binx, Int_t biny) { return TH1::GetBinErrorUp( GetBin(binx, biny) ); }
89 virtual Double_t GetCorrelationFactor(Int_t axis1=1,Int_t axis2=2) const;
90 virtual Double_t GetCovariance(Int_t axis1=1,Int_t axis2=2) const;
91 virtual void GetRandom2(Double_t &x, Double_t &y);
92 virtual void GetStats(Double_t *stats) const;
93 virtual Double_t Integral(Option_t *option="") const;
94 //virtual Double_t Integral(Int_t, Int_t, Option_t * ="") const {return 0;}
95 using TH1::Integral;
96 virtual Double_t Integral(Int_t binx1, Int_t binx2, Int_t biny1, Int_t biny2, Option_t *option="") const;
97 virtual Double_t Integral(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, Option_t * ="") const {return 0;}
99 virtual Double_t IntegralAndError(Int_t binx1, Int_t binx2, Int_t biny1, Int_t biny2, Double_t & err, Option_t *option="") const;
103 virtual Double_t KolmogorovTest(const TH1 *h2, Option_t *option="") const;
104 virtual TH2 *RebinX(Int_t ngroup=2, const char *newname=""); // *MENU*
105 virtual TH2 *RebinY(Int_t ngroup=2, const char *newname=""); // *MENU*
106 virtual TH2 *Rebin(Int_t ngroup=2, const char*newname="", const Double_t *xbins=0); // re-implementation of the TH1 function using RebinX
107 virtual TH2 *Rebin2D(Int_t nxgroup=2, Int_t nygroup=2, const char *newname=""); // *MENU*
108 TProfile *ProfileX(const char *name="_pfx", Int_t firstybin=1, Int_t lastybin=-1, Option_t *option="") const; // *MENU*
109 TProfile *ProfileY(const char *name="_pfy", Int_t firstxbin=1, Int_t lastxbin=-1, Option_t *option="") const; // *MENU*
110 TH1D *ProjectionX(const char *name="_px", Int_t firstybin=0, Int_t lastybin=-1, Option_t *option="") const; // *MENU*
111 TH1D *ProjectionY(const char *name="_py", Int_t firstxbin=0, Int_t lastxbin=-1, Option_t *option="") const; // *MENU*
112 virtual void PutStats(Double_t *stats);
113 TH1D *QuantilesX(Double_t prob = 0.5, const char * name = "_qx" ) const;
114 TH1D *QuantilesY(Double_t prob = 0.5, const char * name = "_qy" ) const;
115 virtual void Reset(Option_t *option="");
116 virtual void SetBinContent(Int_t bin, Double_t content);
117 virtual void SetBinContent(Int_t binx, Int_t biny, Double_t content) { SetBinContent(GetBin(binx, biny), content); }
118 virtual void SetBinContent(Int_t binx, Int_t biny, Int_t, Double_t content) { SetBinContent(GetBin(binx, biny), content); }
119 virtual void SetShowProjectionX(Int_t nbins=1); // *MENU*
120 virtual void SetShowProjectionY(Int_t nbins=1); // *MENU*
121 virtual TH1 *ShowBackground(Int_t niter=20, Option_t *option="same");
122 virtual Int_t ShowPeaks(Double_t sigma=2, Option_t *option="", Double_t threshold=0.05); // *MENU*
123 virtual void Smooth(Int_t ntimes=1, Option_t *option=""); // *MENU*
124
125 ClassDef(TH2,5) //2-Dim histogram base class
126};
127
128
129//______________________________________________________________________________
130
131class TH2C : public TH2, public TArrayC {
132
133public:
134 TH2C();
135 TH2C(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
136 ,Int_t nbinsy,Double_t ylow,Double_t yup);
137 TH2C(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
138 ,Int_t nbinsy,Double_t ylow,Double_t yup);
139 TH2C(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
140 ,Int_t nbinsy,const Double_t *ybins);
141 TH2C(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
142 ,Int_t nbinsy,const Double_t *ybins);
143 TH2C(const char *name,const char *title,Int_t nbinsx,const Float_t *xbins
144 ,Int_t nbinsy,const Float_t *ybins);
145 TH2C(const TH2C &h2c);
146 virtual ~TH2C();
147 virtual void AddBinContent(Int_t bin);
148 virtual void AddBinContent(Int_t bin, Double_t w);
149 virtual void Copy(TObject &hnew) const;
150 virtual void Reset(Option_t *option="");
151 virtual void SetBinsLength(Int_t n=-1);
152 TH2C& operator=(const TH2C &h1);
153 friend TH2C operator*(Float_t c1, TH2C &h1);
154 friend TH2C operator*(TH2C &h1, Float_t c1) {return operator*(c1,h1);}
155 friend TH2C operator+(TH2C &h1, TH2C &h2);
156 friend TH2C operator-(TH2C &h1, TH2C &h2);
157 friend TH2C operator*(TH2C &h1, TH2C &h2);
158 friend TH2C operator/(TH2C &h1, TH2C &h2);
159
160protected:
161 virtual Double_t RetrieveBinContent(Int_t bin) const { return Double_t (fArray[bin]); }
162 virtual void UpdateBinContent(Int_t bin, Double_t content) { fArray[bin] = Char_t (content); }
163
164 ClassDef(TH2C,4) //2-Dim histograms (one char per channel)
165};
166
167
168//______________________________________________________________________________
169
170class TH2S : public TH2, public TArrayS {
171
172public:
173 TH2S();
174 TH2S(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
175 ,Int_t nbinsy,Double_t ylow,Double_t yup);
176 TH2S(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
177 ,Int_t nbinsy,Double_t ylow,Double_t yup);
178 TH2S(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
179 ,Int_t nbinsy,const Double_t *ybins);
180 TH2S(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
181 ,Int_t nbinsy,const Double_t *ybins);
182 TH2S(const char *name,const char *title,Int_t nbinsx,const Float_t *xbins
183 ,Int_t nbinsy,const Float_t *ybins);
184 TH2S(const TH2S &h2s);
185 virtual ~TH2S();
186 virtual void AddBinContent(Int_t bin);
187 virtual void AddBinContent(Int_t bin, Double_t w);
188 virtual void Copy(TObject &hnew) const;
189 virtual void Reset(Option_t *option="");
190 virtual void SetBinsLength(Int_t n=-1);
191 TH2S& operator=(const TH2S &h1);
192 friend TH2S operator*(Float_t c1, TH2S &h1);
193 friend TH2S operator*(TH2S &h1, Float_t c1) {return operator*(c1,h1);}
194 friend TH2S operator+(TH2S &h1, TH2S &h2);
195 friend TH2S operator-(TH2S &h1, TH2S &h2);
196 friend TH2S operator*(TH2S &h1, TH2S &h2);
197 friend TH2S operator/(TH2S &h1, TH2S &h2);
198
199protected:
200 virtual Double_t RetrieveBinContent(Int_t bin) const { return Double_t (fArray[bin]); }
201 virtual void UpdateBinContent(Int_t bin, Double_t content) { fArray[bin] = Short_t (content); }
202
203 ClassDef(TH2S,4) //2-Dim histograms (one short per channel)
204};
205
206
207//______________________________________________________________________________
208
209class TH2I : public TH2, public TArrayI {
210
211public:
212 TH2I();
213 TH2I(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
214 ,Int_t nbinsy,Double_t ylow,Double_t yup);
215 TH2I(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
216 ,Int_t nbinsy,Double_t ylow,Double_t yup);
217 TH2I(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
218 ,Int_t nbinsy,const Double_t *ybins);
219 TH2I(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
220 ,Int_t nbinsy,const Double_t *ybins);
221 TH2I(const char *name,const char *title,Int_t nbinsx,const Float_t *xbins
222 ,Int_t nbinsy,const Float_t *ybins);
223 TH2I(const TH2I &h2i);
224 virtual ~TH2I();
225 virtual void AddBinContent(Int_t bin);
226 virtual void AddBinContent(Int_t bin, Double_t w);
227 virtual void Copy(TObject &hnew) const;
228 virtual void Reset(Option_t *option="");
229 virtual void SetBinsLength(Int_t n=-1);
230 TH2I& operator=(const TH2I &h1);
231 friend TH2I operator*(Float_t c1, TH2I &h1);
232 friend TH2I operator*(TH2I &h1, Float_t c1) {return operator*(c1,h1);}
233 friend TH2I operator+(TH2I &h1, TH2I &h2);
234 friend TH2I operator-(TH2I &h1, TH2I &h2);
235 friend TH2I operator*(TH2I &h1, TH2I &h2);
236 friend TH2I operator/(TH2I &h1, TH2I &h2);
237
238protected:
239 virtual Double_t RetrieveBinContent(Int_t bin) const { return Double_t (fArray[bin]); }
240 virtual void UpdateBinContent(Int_t bin, Double_t content) { fArray[bin] = Int_t (content); }
241
242 ClassDef(TH2I,4) //2-Dim histograms (one 32 bits integer per channel)
243};
244
245
246//______________________________________________________________________________
247
248class TH2F : public TH2, public TArrayF {
249
250public:
251 TH2F();
252 TH2F(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
253 ,Int_t nbinsy,Double_t ylow,Double_t yup);
254 TH2F(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
255 ,Int_t nbinsy,Double_t ylow,Double_t yup);
256 TH2F(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
257 ,Int_t nbinsy,const Double_t *ybins);
258 TH2F(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
259 ,Int_t nbinsy,const Double_t *ybins);
260 TH2F(const char *name,const char *title,Int_t nbinsx,const Float_t *xbins
261 ,Int_t nbinsy,const Float_t *ybins);
262 TH2F(const TMatrixFBase &m);
263 TH2F(const TH2F &h2f);
264 virtual ~TH2F();
265 virtual void AddBinContent(Int_t bin) {++fArray[bin];}
266 virtual void AddBinContent(Int_t bin, Double_t w)
267 {fArray[bin] += Float_t (w);}
268 virtual void Copy(TObject &hnew) const;
269 virtual void Reset(Option_t *option="");
270 virtual void SetBinsLength(Int_t n=-1);
271 TH2F& operator=(const TH2F &h1);
272 friend TH2F operator*(Float_t c1, TH2F &h1);
273 friend TH2F operator*(TH2F &h1, Float_t c1);
274 friend TH2F operator+(TH2F &h1, TH2F &h2);
275 friend TH2F operator-(TH2F &h1, TH2F &h2);
276 friend TH2F operator*(TH2F &h1, TH2F &h2);
277 friend TH2F operator/(TH2F &h1, TH2F &h2);
278
279protected:
280 virtual Double_t RetrieveBinContent(Int_t bin) const { return Double_t (fArray[bin]); }
281 virtual void UpdateBinContent(Int_t bin, Double_t content) { fArray[bin] = Float_t (content); }
282
283 ClassDef(TH2F,4) //2-Dim histograms (one float per channel)
284};
285
286
287//______________________________________________________________________________
288
289class TH2D : public TH2, public TArrayD {
290
291public:
292 TH2D();
293 TH2D(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
294 ,Int_t nbinsy,Double_t ylow,Double_t yup);
295 TH2D(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
296 ,Int_t nbinsy,Double_t ylow,Double_t yup);
297 TH2D(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double_t xup
298 ,Int_t nbinsy,const Double_t *ybins);
299 TH2D(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins
300 ,Int_t nbinsy,const Double_t *ybins);
301 TH2D(const char *name,const char *title,Int_t nbinsx,const Float_t *xbins
302 ,Int_t nbinsy,const Float_t *ybins);
303 TH2D(const TMatrixDBase &m);
304 TH2D(const TH2D &h2d);
305 virtual ~TH2D();
306 virtual void AddBinContent(Int_t bin) {++fArray[bin];}
307 virtual void AddBinContent(Int_t bin, Double_t w)
308 {fArray[bin] += Double_t (w);}
309 virtual void Copy(TObject &hnew) const;
310 virtual void Reset(Option_t *option="");
311 virtual void SetBinsLength(Int_t n=-1);
312 TH2D& operator=(const TH2D &h1);
313 friend TH2D operator*(Float_t c1, TH2D &h1);
314 friend TH2D operator*(TH2D &h1, Float_t c1) {return operator*(c1,h1);}
315 friend TH2D operator+(TH2D &h1, TH2D &h2);
316 friend TH2D operator-(TH2D &h1, TH2D &h2);
317 friend TH2D operator*(TH2D &h1, TH2D &h2);
318 friend TH2D operator/(TH2D &h1, TH2D &h2);
319
320protected:
321 virtual Double_t RetrieveBinContent(Int_t bin) const { return fArray[bin]; }
322 virtual void UpdateBinContent(Int_t bin, Double_t content) { fArray[bin] = content; }
323
324 ClassDef(TH2D,4) //2-Dim histograms (one double per channel)
325};
326
327#endif
328
#define c(i)
Definition: RSha256.hxx:101
#define h(i)
Definition: RSha256.hxx:106
int Int_t
Definition: RtypesCore.h:41
char Char_t
Definition: RtypesCore.h:29
short Short_t
Definition: RtypesCore.h:35
double Double_t
Definition: RtypesCore.h:55
float Float_t
Definition: RtypesCore.h:53
const char Option_t
Definition: RtypesCore.h:62
#define ClassDef(name, id)
Definition: Rtypes.h:326
char name[80]
Definition: TGX11.cxx:109
Array of chars or bytes (8 bits per element).
Definition: TArrayC.h:27
Char_t * fArray
Definition: TArrayC.h:30
Array of doubles (64 bits per element).
Definition: TArrayD.h:27
Double_t * fArray
Definition: TArrayD.h:30
void Reset()
Definition: TArrayD.h:47
Array of floats (32 bits per element).
Definition: TArrayF.h:27
Float_t * fArray
Definition: TArrayF.h:30
void Reset()
Definition: TArrayF.h:47
Array of integers (32 bits per element).
Definition: TArrayI.h:27
Int_t * fArray
Definition: TArrayI.h:30
void Reset()
Definition: TArrayI.h:47
Array of shorts (16 bits per element).
Definition: TArrayS.h:27
void Reset()
Definition: TArrayS.h:47
Short_t * fArray
Definition: TArrayS.h:30
1-Dim function class
Definition: TF1.h:211
1-D histogram with a double per channel (see TH1 documentation)}
Definition: TH1.h:614
The TH1 histogram class.
Definition: TH1.h:56
virtual Double_t IntegralAndError(Int_t binx1, Int_t binx2, Double_t &err, Option_t *option="") const
Return integral of bin contents in range [binx1,binx2] and its error.
Definition: TH1.cxx:7440
virtual Double_t GetBinErrorLow(Int_t bin) const
Return lower error associated to bin number bin.
Definition: TH1.cxx:8492
virtual Double_t Integral(Option_t *option="") const
Return integral of bin contents.
Definition: TH1.cxx:7413
virtual Double_t GetBinContent(Int_t bin) const
Return content of bin number bin.
Definition: TH1.cxx:4882
virtual Double_t GetBinErrorUp(Int_t bin) const
Return upper error associated to bin number bin.
Definition: TH1.cxx:8523
2-D histogram with a byte per channel (see TH1 documentation)
Definition: TH2.h:131
virtual void Reset(Option_t *option="")
Reset this histogram: contents, errors, etc.
Definition: TH2.cxx:2786
friend TH2C operator-(TH2C &h1, TH2C &h2)
Operator -.
Definition: TH2.cxx:2877
friend TH2C operator+(TH2C &h1, TH2C &h2)
Operator +.
Definition: TH2.cxx:2865
virtual void AddBinContent(Int_t bin)
Increment bin content by 1.
Definition: TH2.cxx:2756
friend TH2C operator/(TH2C &h1, TH2C &h2)
Operator /.
Definition: TH2.cxx:2901
virtual ~TH2C()
Destructor.
Definition: TH2.cxx:2677
virtual void SetBinsLength(Int_t n=-1)
Set total number of bins including under/overflow Reallocate bin contents array.
Definition: TH2.cxx:2797
TH2C()
Constructor.
Definition: TH2.cxx:2667
TH2C & operator=(const TH2C &h1)
Operator =.
Definition: TH2.cxx:2843
virtual void Copy(TObject &hnew) const
Copy.
Definition: TH2.cxx:2777
virtual void UpdateBinContent(Int_t bin, Double_t content)
Raw update of bin content on internal data structure see convention for numbering bins in TH1::GetBin...
Definition: TH2.h:162
friend TH2C operator*(Float_t c1, TH2C &h1)
Operator *.
Definition: TH2.cxx:2853
friend TH2C operator*(TH2C &h1, Float_t c1)
Definition: TH2.h:154
virtual Double_t RetrieveBinContent(Int_t bin) const
Raw retrieval of bin content on internal data structure see convention for numbering bins in TH1::Get...
Definition: TH2.h:161
2-D histogram with a double per channel (see TH1 documentation)}
Definition: TH2.h:289
virtual void AddBinContent(Int_t bin, Double_t w)
Increment bin content by a weight w.
Definition: TH2.h:307
virtual void SetBinsLength(Int_t n=-1)
Set total number of bins including under/overflow Reallocate bin contents array.
Definition: TH2.cxx:3787
friend TH2D operator-(TH2D &h1, TH2D &h2)
Operator -.
Definition: TH2.cxx:3868
virtual void AddBinContent(Int_t bin)
Increment bin content by 1.
Definition: TH2.h:306
friend TH2D operator*(Float_t c1, TH2D &h1)
Operator *.
Definition: TH2.cxx:3844
virtual Double_t RetrieveBinContent(Int_t bin) const
Raw retrieval of bin content on internal data structure see convention for numbering bins in TH1::Get...
Definition: TH2.h:321
virtual ~TH2D()
Destructor.
Definition: TH2.cxx:3668
friend TH2D operator/(TH2D &h1, TH2D &h2)
Operator /.
Definition: TH2.cxx:3892
virtual void Copy(TObject &hnew) const
Copy.
Definition: TH2.cxx:3767
friend TH2D operator+(TH2D &h1, TH2D &h2)
Operator +.
Definition: TH2.cxx:3856
virtual void UpdateBinContent(Int_t bin, Double_t content)
Raw update of bin content on internal data structure see convention for numbering bins in TH1::GetBin...
Definition: TH2.h:322
friend TH2D operator*(TH2D &h1, Float_t c1)
Definition: TH2.h:314
TH2D()
Constructor.
Definition: TH2.cxx:3658
TH2D & operator=(const TH2D &h1)
Operator =.
Definition: TH2.cxx:3833
2-D histogram with a float per channel (see TH1 documentation)}
Definition: TH2.h:248
TH2F()
Constructor.
Definition: TH2.cxx:3394
friend TH2F operator*(Float_t c1, TH2F &h1)
Operator *.
Definition: TH2.cxx:3578
TH2F & operator=(const TH2F &h1)
Operator =.
Definition: TH2.cxx:3568
virtual ~TH2F()
Destructor.
Definition: TH2.cxx:3404
virtual void SetBinsLength(Int_t n=-1)
Set total number of bins including under/overflow Reallocate bin contents array.
Definition: TH2.cxx:3522
virtual void Copy(TObject &hnew) const
Copy.
Definition: TH2.cxx:3502
virtual void AddBinContent(Int_t bin, Double_t w)
Increment bin content by a weight w.
Definition: TH2.h:266
virtual Double_t RetrieveBinContent(Int_t bin) const
Raw retrieval of bin content on internal data structure see convention for numbering bins in TH1::Get...
Definition: TH2.h:280
friend TH2F operator-(TH2F &h1, TH2F &h2)
Operator -.
Definition: TH2.cxx:3614
friend TH2F operator/(TH2F &h1, TH2F &h2)
Operator /.
Definition: TH2.cxx:3638
virtual void UpdateBinContent(Int_t bin, Double_t content)
Raw update of bin content on internal data structure see convention for numbering bins in TH1::GetBin...
Definition: TH2.h:281
virtual void AddBinContent(Int_t bin)
Increment bin content by 1.
Definition: TH2.h:265
friend TH2F operator+(TH2F &h1, TH2F &h2)
Operator +.
Definition: TH2.cxx:3602
2-D histogram with an int per channel (see TH1 documentation)}
Definition: TH2.h:209
friend TH2I operator/(TH2I &h1, TH2I &h2)
Operator /.
Definition: TH2.cxx:3374
friend TH2I operator-(TH2I &h1, TH2I &h2)
Operator -.
Definition: TH2.cxx:3350
TH2I()
Constructor.
Definition: TH2.cxx:3175
virtual void Copy(TObject &hnew) const
Copy.
Definition: TH2.cxx:3285
virtual void SetBinsLength(Int_t n=-1)
Set total number of bins including under/overflow Reallocate bin contents array.
Definition: TH2.cxx:3305
virtual void UpdateBinContent(Int_t bin, Double_t content)
Raw update of bin content on internal data structure see convention for numbering bins in TH1::GetBin...
Definition: TH2.h:240
friend TH2I operator*(TH2I &h1, Float_t c1)
Definition: TH2.h:232
friend TH2I operator*(Float_t c1, TH2I &h1)
Operator *.
Definition: TH2.cxx:3326
virtual void AddBinContent(Int_t bin)
Increment bin content by 1.
Definition: TH2.cxx:3264
virtual ~TH2I()
Destructor.
Definition: TH2.cxx:3185
virtual Double_t RetrieveBinContent(Int_t bin) const
Raw retrieval of bin content on internal data structure see convention for numbering bins in TH1::Get...
Definition: TH2.h:239
friend TH2I operator+(TH2I &h1, TH2I &h2)
Operator +.
Definition: TH2.cxx:3338
TH2I & operator=(const TH2I &h1)
Operator =.
Definition: TH2.cxx:3316
2-D histogram with a short per channel (see TH1 documentation)
Definition: TH2.h:170
virtual void SetBinsLength(Int_t n=-1)
Set total number of bins including under/overflow Reallocate bin contents array.
Definition: TH2.cxx:3051
virtual Double_t RetrieveBinContent(Int_t bin) const
Raw retrieval of bin content on internal data structure see convention for numbering bins in TH1::Get...
Definition: TH2.h:200
TH2S & operator=(const TH2S &h1)
Operator =.
Definition: TH2.cxx:3097
friend TH2S operator+(TH2S &h1, TH2S &h2)
Operator +.
Definition: TH2.cxx:3119
TH2S()
Constructor.
Definition: TH2.cxx:2921
friend TH2S operator-(TH2S &h1, TH2S &h2)
Operator -.
Definition: TH2.cxx:3131
friend TH2S operator*(Float_t c1, TH2S &h1)
Operator *.
Definition: TH2.cxx:3107
virtual ~TH2S()
Destructor.
Definition: TH2.cxx:2931
friend TH2S operator/(TH2S &h1, TH2S &h2)
Operator /.
Definition: TH2.cxx:3155
virtual void Copy(TObject &hnew) const
Copy.
Definition: TH2.cxx:3031
friend TH2S operator*(TH2S &h1, Float_t c1)
Definition: TH2.h:193
virtual void UpdateBinContent(Int_t bin, Double_t content)
Raw update of bin content on internal data structure see convention for numbering bins in TH1::GetBin...
Definition: TH2.h:201
virtual void AddBinContent(Int_t bin)
Increment bin content by 1.
Definition: TH2.cxx:3010
Service class for 2-Dim histogram classes.
Definition: TH2.h:30
Int_t Fill(const char *, Double_t)
Increment bin with namex with a weight w.
Definition: TH2.h:58
virtual void PutStats(Double_t *stats)
Replace current statistics with the values in array stats.
Definition: TH2.cxx:2306
TH1D * ProjectionY(const char *name="_py", Int_t firstxbin=0, Int_t lastxbin=-1, Option_t *option="") const
Project a 2-D histogram into a 1-D histogram along Y.
Definition: TH2.cxx:2297
virtual Int_t BufferEmpty(Int_t action=0)
Fill histogram with all entries in the buffer.
Definition: TH2.cxx:177
virtual Double_t GetCorrelationFactor(Int_t axis1=1, Int_t axis2=2) const
Return correlation factor between axis1 and axis2.
Definition: TH2.cxx:980
virtual TProfile * DoProfile(bool onX, const char *name, Int_t firstbin, Int_t lastbin, Option_t *option) const
Definition: TH2.cxx:1708
virtual Double_t GetBinWithContent2(Double_t c, Int_t &binx, Int_t &biny, Int_t firstxbin=1, Int_t lastxbin=-1, Int_t firstybin=1, Int_t lastybin=-1, Double_t maxdiff=0) const
compute first cell (binx,biny) in the range [firstxbin,lastxbin][firstybin,lastybin] for which diff =...
Definition: TH2.cxx:952
TProfile * ProfileX(const char *name="_pfx", Int_t firstybin=1, Int_t lastybin=-1, Option_t *option="") const
Project a 2-D histogram into a profile histogram along X.
Definition: TH2.cxx:1931
TH1D * QuantilesY(Double_t prob=0.5, const char *name="_qy") const
Compute the Y distribution of quantiles in the other variable X name is the name of the returned hist...
Definition: TH2.cxx:2339
TProfile * ProfileY(const char *name="_pfy", Int_t firstxbin=1, Int_t lastxbin=-1, Option_t *option="") const
Project a 2-D histogram into a profile histogram along Y.
Definition: TH2.cxx:1981
virtual void Reset(Option_t *option="")
Reset this histogram: contents, errors, etc.
Definition: TH2.cxx:2424
virtual TH1D * DoQuantiles(bool onX, const char *name, Double_t prob) const
Implementation of quantiles for x or y.
Definition: TH2.cxx:2348
Int_t BufferFill(Double_t, Double_t)
accumulate arguments in buffer.
Definition: TH2.h:56
Double_t fTsumwxy
Definition: TH2.h:36
Int_t Fill(Double_t)
Invalid Fill method.
Definition: TH2.cxx:292
virtual Double_t Integral(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, Option_t *="") const
Definition: TH2.h:97
virtual TH1 * ShowBackground(Int_t niter=20, Option_t *option="same")
This function calculates the background spectrum in this histogram.
Definition: TH2.cxx:2485
virtual Int_t ShowPeaks(Double_t sigma=2, Option_t *option="", Double_t threshold=0.05)
Interface to TSpectrum2::Search the function finds peaks in this histogram where the width is > sigma...
Definition: TH2.cxx:2501
virtual void DoFitSlices(bool onX, TF1 *f1, Int_t firstbin, Int_t lastbin, Int_t cut, Option_t *option, TObjArray *arr)
Definition: TH2.cxx:693
TH1D * QuantilesX(Double_t prob=0.5, const char *name="_qx") const
Compute the X distribution of quantiles in the other variable Y name is the name of the returned hist...
Definition: TH2.cxx:2326
virtual TH2 * RebinX(Int_t ngroup=2, const char *newname="")
Rebin only the X axis see Rebin2D.
Definition: TH2.cxx:1470
virtual void SetShowProjectionY(Int_t nbins=1)
When the mouse is moved in a pad containing a 2-d view of this histogram a second canvas shows the pr...
Definition: TH2.cxx:2472
virtual void FillRandom(const char *fname, Int_t ntimes=5000)
Fill histogram following distribution in function fname.
Definition: TH2.cxx:597
virtual Double_t GetBinErrorUp(Int_t binx, Int_t biny)
Definition: TH2.h:88
virtual TH2 * Rebin(Int_t ngroup=2, const char *newname="", const Double_t *xbins=0)
Override TH1::Rebin as TH2::RebinX Rebinning in variable binning as for TH1 is not allowed If a non-n...
Definition: TH2.cxx:1491
Double_t fScalefactor
Definition: TH2.h:33
virtual void GetStats(Double_t *stats) const
Fill the array stats from the contents of this histogram The array stats must be correctly dimensione...
Definition: TH2.cxx:1083
virtual TH1D * DoProjection(bool onX, const char *name, Int_t firstbin, Int_t lastbin, Option_t *option) const
Internal (protected) method for performing projection on the X or Y axis called by ProjectionX or Pro...
Definition: TH2.cxx:1991
Double_t fTsumwy2
Definition: TH2.h:35
virtual Double_t GetBinContent(Int_t binx, Int_t biny, Int_t) const
Definition: TH2.h:84
virtual Double_t GetCovariance(Int_t axis1=1, Int_t axis2=2) const
Return covariance between axis1 and axis2.
Definition: TH2.cxx:998
virtual void GetRandom2(Double_t &x, Double_t &y)
Return 2 random numbers along axis x and y distributed according the cell-contents of a 2-dim histogr...
Definition: TH2.cxx:1030
virtual void Smooth(Int_t ntimes=1, Option_t *option="")
Smooth bin contents of this 2-d histogram using kernel algorithms similar to the ones used in the ras...
Definition: TH2.cxx:2530
TH2 & operator=(const TH2 &)
virtual void FillN(Int_t, const Double_t *, const Double_t *, Int_t)
Fill this histogram with an array x and weights w.
Definition: TH2.h:74
TH1D * ProjectionX(const char *name="_px", Int_t firstybin=0, Int_t lastybin=-1, Option_t *option="") const
Project a 2-D histogram into a 1-D histogram along X.
Definition: TH2.cxx:2257
virtual void FitSlicesX(TF1 *f1=0, Int_t firstybin=0, Int_t lastybin=-1, Int_t cut=0, Option_t *option="QNR", TObjArray *arr=0)
Project slices along X in case of a 2-D histogram, then fit each slice with function f1 and make a hi...
Definition: TH2.cxx:851
virtual Int_t GetBin(Int_t binx, Int_t biny, Int_t binz=0) const
Return Global bin number corresponding to binx,y,z.
Definition: TH2.cxx:921
virtual Double_t Integral(Option_t *option="") const
Return integral of bin contents.
Definition: TH2.cxx:1142
virtual Double_t IntegralAndError(Int_t binx1, Int_t binx2, Int_t biny1, Int_t biny2, Double_t &err, Option_t *option="") const
Return integral of bin contents in range [firstxbin,lastxbin],[firstybin,lastybin] for a 2-D histogra...
Definition: TH2.cxx:1171
virtual Double_t KolmogorovTest(const TH1 *h2, Option_t *option="") const
Statistical test of compatibility in shape between THIS histogram and h2, using Kolmogorov test.
Definition: TH2.cxx:1298
virtual Double_t Interpolate(Double_t x)
illegal for a TH2
Definition: TH2.cxx:1180
Double_t fTsumwy
Definition: TH2.h:34
TH2()
Constructor.
Definition: TH2.cxx:60
virtual void SetBinContent(Int_t binx, Int_t biny, Double_t content)
Definition: TH2.h:117
virtual void SetShowProjectionX(Int_t nbins=1)
When the mouse is moved in a pad containing a 2-d view of this histogram a second canvas shows the pr...
Definition: TH2.cxx:2457
virtual void FitSlicesY(TF1 *f1=0, Int_t firstxbin=0, Int_t lastxbin=-1, Int_t cut=0, Option_t *option="QNR", TObjArray *arr=0)
Project slices along Y in case of a 2-D histogram, then fit each slice with function f1 and make a hi...
Definition: TH2.cxx:916
virtual Double_t GetBinContent(Int_t binx, Int_t biny) const
Definition: TH2.h:83
virtual Double_t GetBinErrorLow(Int_t binx, Int_t biny)
Definition: TH2.h:87
virtual Double_t GetBinContent(Int_t bin) const
Return content of bin number bin.
Definition: TH2.h:82
virtual TH2 * Rebin2D(Int_t nxgroup=2, Int_t nygroup=2, const char *newname="")
Rebin this histogram grouping nxgroup/nygroup bins along the xaxis/yaxis together.
Definition: TH2.cxx:1526
virtual Int_t BufferFill(Double_t x, Double_t y, Double_t w)
accumulate arguments in buffer.
Definition: TH2.cxx:251
virtual void SetBinContent(Int_t bin, Double_t content)
Set bin content.
Definition: TH2.cxx:2440
virtual ~TH2()
Destructor.
Definition: TH2.cxx:164
virtual void SetBinContent(Int_t binx, Int_t biny, Int_t, Double_t content)
Definition: TH2.h:118
virtual TH2 * RebinY(Int_t ngroup=2, const char *newname="")
Rebin only the Y axis see Rebin2D.
Definition: TH2.cxx:1480
virtual void Copy(TObject &hnew) const
Copy.
Definition: TH2.cxx:279
Linear Algebra Package.
Definition: TMatrixTBase.h:85
An array of TObjects.
Definition: TObjArray.h:37
Mother of all ROOT objects.
Definition: TObject.h:37
Profile Histogram.
Definition: TProfile.h:32
const Double_t sigma
return c1
Definition: legend1.C:41
Double_t y[n]
Definition: legend1.C:17
Double_t x[n]
Definition: legend1.C:17
const Int_t n
Definition: legend1.C:16
TH1F * h1
Definition: legend1.C:5
TF1 * f1
Definition: legend1.C:11
auto * m
Definition: textangle.C:8