static const double x2[5]
static const double x1[5]
#define ClassDef(name, id)
Collection abstract base class.
A TGraph is an object made of two arrays X and Y with npoints each.
virtual Bool_t Multiply(TF1 *f1, Double_t c1=1)
Performs the operation:
Int_t fNcells
number of bins(1D), cells (2D) +U/Overflows
virtual Bool_t Divide(TF1 *f1, Double_t c1=1)
Performs the operation: this = this/(c1*f1) if errors are defined (see TH1::Sumw2),...
Helper class to represent a bin in the TH2Poly histogram.
Double_t GetXMin()
Returns the minimum value for the x coordinates of the bin.
Bool_t GetChanged() const
Double_t GetYMax()
Returns the maximum value for the y coordinates of the bin.
Double_t GetArea()
Returns the area of the bin.
Double_t GetYMin()
Returns the minimum value for the y coordinates of the bin.
Double_t fContent
Bin content.
Bool_t IsInside(Double_t x, Double_t y) const
Return "true" if the point (x,y) is inside the bin.
Double_t fXmax
X maximum value.
void SetContent(Double_t content)
Int_t fNumber
Bin number of the bin in TH2Poly.
TH2PolyBin()
Default constructor.
Double_t fYmax
Y maximum value.
Double_t GetXMax()
Returns the maximum value for the x coordinates of the bin.
Double_t GetContent() const
Double_t fYmin
Y minimum value.
void SetChanged(Bool_t flag)
Int_t GetBinNumber() const
Double_t fXmin
X minimum value.
TObject * GetPolygon() const
virtual ~TH2PolyBin()
Destructor.
TObject * fPoly
Object holding the polygon definition.
Bool_t fChanged
For the 3D Painter.
2D Histogram with Polygonal Bins
Double_t Integral(Option_t *option="") const
Returns the integral of bin contents.
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...
Int_t Fill(Double_t)
Invalid Fill method.
virtual Double_t GetBinError(Int_t, Int_t, Int_t) const
TList * GetBins()
Returns the TList of all bins in the histogram.
void ClearBinContents()
Clears the contents of all bins in the histogram.
Double_t fOverflow[kNOverflow]
Overflow bins.
Bool_t fFloat
When set to kTRUE, allows the histogram to expand if a bin outside the limits is added.
virtual void SetBinError(Int_t bin, Double_t error)
Set the bin Error.
Bool_t IsIntersecting(TH2PolyBin *bin, Double_t xclipl, Double_t xclipr, Double_t yclipb, Double_t yclipt)
Returns kTRUE if the input bin is intersecting with the input rectangle (xclipl, xclipr,...
void Honeycomb(Double_t xstart, Double_t ystart, Double_t a, Int_t k, Int_t s)
Bins the histogram using a honeycomb structure.
void SetFloat(Bool_t flag=true)
When set to kTRUE, allows the histogram to expand if a bin outside the limits is added.
virtual void GetStats(Double_t *stats) const
Fill the array stats from the contents of this histogram The array stats must be correctly dimensione...
Bool_t GetBinContentChanged() const
virtual TH2PolyBin * CreateBin(TObject *poly)
Create appropriate histogram bin.
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...
Bool_t * fIsEmpty
[fNCells] The array that returns true if the cell at the given coordinate is empty
TList * fBins
List of bins. The list owns the contained objects.
void AddBinToPartition(TH2PolyBin *bin)
Adds the input bin into the partition cell matrix.
Bool_t fBinContentChanged
!For the 3D Painter
Int_t GetNumberOfBins() const
void SetBinContentChanged(Bool_t flag)
virtual Double_t GetBinContent(Int_t, Int_t, Int_t) const
virtual ~TH2Poly()
Destructor.
Int_t Fill(const char *, const char *, Double_t)
Increment cell defined by namex,namey by a weight w.
virtual Int_t Fill(Double_t x, Double_t y)
Increment the bin containing (x,y) by 1.
Bool_t * fCompletelyInside
[fNCells] The array that returns true if the cell at the given coordinate is completely inside a bin
TH2Poly()
Default Constructor. No boundaries specified.
Bool_t IsInsideBin(Int_t binnr, Double_t x, Double_t y)
Return "true" if the point (x,y) is inside the bin of binnr.
Bool_t fNewBinAdded
!For the 3D Painter
void SavePrimitive(std::ostream &out, Option_t *option="")
Save primitive as a C++ statement(s) on output stream out.
TObject * Clone(const char *newname="") const
Make a complete copy of the underlying object.
virtual void SetBinContent(Int_t, Int_t, Double_t)
virtual void Reset(Option_t *option)
Reset this histogram: contents, errors, etc.
const char * GetBinTitle(Int_t bin) const
Returns the bin title.
virtual void SetBinError(Int_t, Int_t, Double_t)
See convention for numbering bins in TH1::GetBin.
void SetNewBinAdded(Bool_t flag)
void ChangePartition(Int_t n, Int_t m)
Changes the number of partition cells in the histogram.
virtual Double_t GetBinError(Int_t, Int_t) const
virtual Double_t Interpolate(Double_t, Double_t)
NOT IMPLEMENTED for TH2Poly.
virtual void SetBinContent(Int_t, Int_t, Int_t, Double_t)
Double_t GetMinimum() const
Returns the minimum value of the histogram.
const char * GetBinName(Int_t bin) const
Returns the bin name.
virtual Double_t GetBinContent(Int_t, Int_t) const
virtual Bool_t Multiply(TF1 *, Double_t)
NOT IMPLEMENTED for TH2Poly.
Int_t fNCells
Number of partition cells: fCellX*fCellY.
virtual Double_t GetBinContent(Int_t bin) const
Returns the content of the input bin For the overflow/underflow/sea bins:
void Initialize(Double_t xlow, Double_t xup, Double_t ylow, Double_t yup, Int_t n, Int_t m)
Initializes the TH2Poly object. This method is called by the constructor.
Int_t fCellX
Number of partition cells in the x-direction of the histogram.
virtual Bool_t Add(const TH1 *h1, Double_t c1)
Performs the operation: this = this + c1*h1.
virtual Int_t AddBin(TObject *poly)
Adds a new bin to the histogram.
virtual void Scale(Double_t c1=1, Option_t *option="")
Multiply this histogram by a constant c1.
Long64_t Merge(TCollection *)
Merge TH2Polys Given the special nature of the TH2Poly, the merge is implemented in terms of subseque...
Bool_t IsIntersectingPolygon(Int_t bn, Double_t *x, Double_t *y, Double_t xclipl, Double_t xclipr, Double_t yclipb, Double_t yclipt)
Returns kTRUE if the input polygon (bn, x, y) is intersecting with the input rectangle (xclipl,...
Int_t Fill(Double_t, const char *, Double_t)
Increment cell defined by x,namey by a weight w.
virtual TH1 * FFT(TH1 *, Option_t *)
NOT IMPLEMENTED for TH2Poly.
virtual Double_t GetBinError(Int_t bin) const
Returns the value of error associated to bin number bin.
virtual void SetBinError(Int_t, Int_t, Int_t, Double_t)
See convention for numbering bins in TH1::GetBin.
void FillN(Int_t, const Double_t *, const Double_t *, Int_t)
Fill this histogram with an array x and weights w.
Double_t Integral(Int_t, Int_t, Int_t, Int_t, const Option_t *) const
virtual TH1 * GetAsymmetry(TH1 *, Double_t, Double_t)
NOT IMPLEMENTED for TH2Poly.
Double_t Integral(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, const Option_t *) const
virtual void SetBinContent(Int_t bin, Double_t content)
Sets the contents of the input bin to the input content Negative values between -1 and -9 are for the...
Double_t GetMaximum() const
Returns the maximum value of the histogram.
Int_t Fill(const char *, Double_t, Double_t)
Increment cell defined by namex,y by a weight w.
Bool_t GetNewBinAdded() const
Int_t FindBin(Double_t x, Double_t y, Double_t z=0)
Returns the bin number of the bin at the given coordinate.
virtual Double_t ComputeIntegral(Bool_t)
NOT IMPLEMENTED for TH2Poly.
Double_t fStepY
Dimensions of a partition cell.
void FillN(Int_t ntimes, const Double_t *x, const Double_t *y, const Double_t *w, Int_t stride=1)
Fills a 2-D histogram with an array of values and weights.
TList * fCells
[fNCells] The array of TLists that store the bins that intersect with each cell. List do not own the ...
virtual Bool_t Divide(TF1 *, Double_t)
Performs the operation: this = this / c1*f1. NOT IMPLEMENTED for TH2Poly.
Int_t fCellY
Number of partition cells in the y-direction of the histogram.
Double_t Integral(Int_t, Int_t, const Option_t *) const
Service class for 2-Dim histogram classes.
virtual Double_t Interpolate(Double_t x) const
illegal for a TH2
A TMultiGraph is a collection of TGraph (or derived) objects.
Mother of all ROOT objects.
The most important graphics class in the ROOT system.
static constexpr double s