Service class for 2-D histogram classes.
(*) INT_MAX = 2147483647 is the maximum value for a variable of type int.
(**) LLONG_MAX = 9223372036854775807 is the maximum value for a variable of type long64.
(***) 2^24 = 16777216 is the maximum integer that can be properly represented by a float32 with 23-bit mantissa.
(****) 2^53 = 9007199254740992 is the maximum integer that can be properly represented by a double64 with 52-bit mantissa.
Public Member Functions | |
~TH2 () override | |
Destructor. | |
void | AddBinContent (Int_t bin) override |
Increment bin content by 1. | |
void | AddBinContent (Int_t bin, Double_t w) override |
Increment bin content by a weight w. | |
virtual void | AddBinContent (Int_t binx, Int_t biny) |
Increment 2D bin content by 1. | |
virtual void | AddBinContent (Int_t binx, Int_t biny, Double_t w) |
Increment 2D bin content by a weight w. | |
Int_t | BufferEmpty (Int_t action=0) override |
Fill histogram with all entries in the buffer. | |
void | Copy (TObject &hnew) const override |
Copy. | |
virtual Int_t | Fill (const char *namex, const char *namey, Double_t w) |
Increment cell defined by namex,namey by a weight w. | |
virtual Int_t | Fill (const char *namex, Double_t y, Double_t w) |
Increment cell defined by namex,y by a weight w. | |
virtual Int_t | Fill (Double_t x, const char *namey, Double_t w) |
Increment cell defined by x,namey by a weight w. | |
Int_t | Fill (Double_t x, Double_t y) override |
Increment cell defined by x,y by 1. | |
virtual Int_t | Fill (Double_t x, Double_t y, Double_t w) |
Increment cell defined by x,y by a weight w. | |
void | FillN (Int_t ntimes, const Double_t *x, const Double_t *y, const Double_t *w, Int_t stride=1) override |
Fill a 2-D histogram with an array of values and weights. | |
void | FillN (Int_t, const Double_t *, const Double_t *, Int_t) override |
Fill this histogram with an array x and weights w. | |
void | FillRandom (const char *fname, Int_t ntimes=5000, TRandom *rng=nullptr) |
Fill histogram following distribution in function fname. | |
virtual void | FillRandom (TF1 *f1, Int_t ntimes=5000, TRandom *rng=nullptr) |
void | FillRandom (TF1 *f1, Int_t ntimes=5000, TRandom *rng=nullptr) override |
Fill histogram following distribution in function fname. | |
virtual void | FillRandom (TH1 *h, Int_t ntimes=5000, TRandom *rng=nullptr) |
Fill histogram following distribution in histogram h. | |
void | FillRandom (TH1 *h, Int_t ntimes=5000, TRandom *rng=nullptr) override |
Fill histogram following distribution in histogram h. | |
virtual void | FitSlicesX (TF1 *f1=nullptr, Int_t firstybin=0, Int_t lastybin=-1, Int_t cut=0, Option_t *option="QNR", TObjArray *arr=nullptr) |
Project slices along X in case of a 2-D histogram, then fit each slice with function f1 and make a histogram for each fit parameter Only bins along Y between firstybin and lastybin are considered. | |
virtual void | FitSlicesY (TF1 *f1=nullptr, Int_t firstxbin=0, Int_t lastxbin=-1, Int_t cut=0, Option_t *option="QNR", TObjArray *arr=nullptr) |
Project slices along Y in case of a 2-D histogram, then fit each slice with function f1 and make a histogram for each fit parameter Only bins along X between firstxbin and lastxbin are considered. | |
Int_t | GetBin (Int_t binx, Int_t biny, Int_t binz=0) const override |
Return Global bin number corresponding to binx,y,z. | |
virtual Double_t | GetBinContent (Int_t bin) const |
Return content of bin number bin. | |
virtual Double_t | GetBinContent (Int_t bin, Int_t) const |
virtual Double_t | GetBinContent (Int_t bin, Int_t, Int_t) const |
Double_t | GetBinContent (Int_t binx, Int_t biny) const override |
Double_t | GetBinContent (Int_t binx, Int_t biny, Int_t) const override |
virtual Double_t | GetBinErrorLow (Int_t bin) const |
Return lower error associated to bin number bin. | |
virtual Double_t | GetBinErrorLow (Int_t binx, Int_t biny) |
virtual Double_t | GetBinErrorUp (Int_t bin) const |
Return upper error associated to bin number bin. | |
virtual Double_t | GetBinErrorUp (Int_t binx, Int_t biny) |
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 = abs(cell_content-c) <= maxdiff In case several cells in the specified range with diff=0 are found the first cell found is returned in binx,biny. | |
virtual Double_t | GetCorrelationFactor (Int_t axis1=1, Int_t axis2=2) const |
Return correlation factor between axis1 and axis2. | |
virtual Double_t | GetCovariance (Int_t axis1=1, Int_t axis2=2) const |
Return covariance between axis1 and axis2. | |
virtual void | GetRandom2 (Double_t &x, Double_t &y, TRandom *rng=nullptr) |
Return 2 random numbers along axis x and y distributed according to the cell-contents of this 2-D histogram. | |
void | GetStats (Double_t *stats) const override |
Fill the array stats from the contents of this histogram The array stats must be correctly dimensioned in the calling program. | |
virtual Double_t | Integral (Int_t binx1, Int_t binx2, Int_t biny1, Int_t biny2, Option_t *option="") const |
Return integral of bin contents in range [firstxbin,lastxbin],[firstybin,lastybin] for a 2-D histogram By default the integral is computed as the sum of bin contents in the range. | |
virtual Double_t | Integral (Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, Option_t *="") const |
Double_t | Integral (Option_t *option="") const override |
Return integral of bin contents. | |
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 histogram. | |
Double_t | Interpolate (Double_t x, Double_t y) const override |
Given a point P(x,y), Interpolate approximates the value via bilinear interpolation based on the four nearest bin centers see Wikipedia, Bilinear Interpolation Andy Mastbaum 10/8/2008 vaguely based on R.Raja 6-Sep-2008. | |
Double_t | Interpolate (Double_t x, Double_t y, Double_t z) const override |
illegal for a TH2 | |
TClass * | IsA () const override |
Double_t | KolmogorovTest (const TH1 *h2, Option_t *option="") const override |
Statistical test of compatibility in shape between THIS histogram and h2, using Kolmogorov test. | |
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. | |
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. | |
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. | |
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. | |
void | PutStats (Double_t *stats) override |
Replace current statistics with the values in array stats. | |
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 histogram prob is the probability content for the quantile (0.5 is the default for the median) An approximate error for the quantile is computed assuming that the distribution in the other variable is normal. | |
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 histogram prob is the probability content for the quantile (0.5 is the default for the median) An approximate error for the quantile is computed assuming that the distribution in the other variable is normal. | |
TH2 * | Rebin (Int_t ngroup=2, const char *newname="", const Double_t *xbins=nullptr) override |
Override TH1::Rebin as TH2::RebinX Rebinning in variable binning as for TH1 is not allowed If a non-null pointer is given an error is flagged see RebinX and Rebin2D. | |
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. | |
TH2 * | RebinX (Int_t ngroup=2, const char *newname="") override |
Rebin only the X axis see Rebin2D. | |
virtual TH2 * | RebinY (Int_t ngroup=2, const char *newname="") |
Rebin only the Y axis see Rebin2D. | |
void | Reset (Option_t *option="") override |
Reset this histogram: contents, errors, etc. | |
void | SetBinContent (Int_t bin, Double_t content) override |
Set bin content. | |
void | SetBinContent (Int_t binx, Int_t biny, Double_t content) override |
void | SetBinContent (Int_t binx, Int_t biny, Int_t, Double_t content) override |
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 projection along X corresponding to the mouse position along Y. | |
virtual void | SetShowProjectionXY (Int_t nbinsY=1, Int_t nbinsX=1) |
When the mouse is moved in a pad containing a 2-d view of this histogram two canvases show the projection along X and Y corresponding to the mouse position along Y and X, respectively. | |
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 projection along Y corresponding to the mouse position along X. | |
TH1 * | ShowBackground (Int_t niter=20, Option_t *option="same") override |
This function calculates the background spectrum in this histogram. | |
Int_t | ShowPeaks (Double_t sigma=2, Option_t *option="", Double_t threshold=0.05) override |
Interface to TSpectrum2::Search the function finds peaks in this histogram where the width is > sigma and the peak maximum greater than threshold*maximum bin content of this. | |
void | Smooth (Int_t ntimes=1, Option_t *option="") override |
Smooth bin contents of this 2-d histogram using kernel algorithms similar to the ones used in the raster graphics community. | |
void | Streamer (TBuffer &) override |
Stream an object of class TH2. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TH1 | |
~TH1 () override | |
Histogram default destructor. | |
virtual Bool_t | Add (const TH1 *h, const TH1 *h2, Double_t c1=1, Double_t c2=1) |
Replace contents of this histogram by the addition of h1 and h2. | |
virtual Bool_t | Add (const TH1 *h1, Double_t c1=1) |
Performs the operation: this = this + c1*h1 If errors are defined (see TH1::Sumw2), errors are also recalculated. | |
virtual Bool_t | Add (TF1 *h1, Double_t c1=1, Option_t *option="") |
Performs the operation: this = this + c1*f1 if errors are defined (see TH1::Sumw2), errors are also recalculated. | |
virtual Double_t | AndersonDarlingTest (const TH1 *h2, Double_t &advalue) const |
Same function as above but returning also the test statistic value. | |
virtual Double_t | AndersonDarlingTest (const TH1 *h2, Option_t *option="") const |
Statistical test of compatibility in shape between this histogram and h2, using the Anderson-Darling 2 sample test. | |
void | Browse (TBrowser *b) override |
Browse the Histogram object. | |
virtual Bool_t | CanExtendAllAxes () const |
Returns true if all axes are extendable. | |
virtual Double_t | Chi2Test (const TH1 *h2, Option_t *option="UU", Double_t *res=nullptr) const |
\( \chi^{2} \) test for comparing weighted and unweighted histograms. | |
virtual Double_t | Chi2TestX (const TH1 *h2, Double_t &chi2, Int_t &ndf, Int_t &igood, Option_t *option="UU", Double_t *res=nullptr) const |
The computation routine of the Chisquare test. | |
virtual Double_t | Chisquare (TF1 *f1, Option_t *option="") const |
Compute and return the chisquare of this histogram with respect to a function The chisquare is computed by weighting each histogram point by the bin error By default the full range of the histogram is used. | |
virtual void | ClearUnderflowAndOverflow () |
Remove all the content from the underflow and overflow bins, without changing the number of entries After calling this method, every undeflow and overflow bins will have content 0.0 The Sumw2 is also cleared, since there is no more content in the bins. | |
TObject * | Clone (const char *newname="") const override |
Make a complete copy of the underlying object. | |
virtual Double_t | ComputeIntegral (Bool_t onlyPositive=false) |
Compute integral (normalized cumulative sum of bins) w/o under/overflows The result is stored in fIntegral and used by the GetRandom functions. | |
virtual void | DirectoryAutoAdd (TDirectory *) |
Perform the automatic addition of the histogram to the given directory. | |
Int_t | DistancetoPrimitive (Int_t px, Int_t py) override |
Compute distance from point px,py to a line. | |
virtual Bool_t | Divide (const TH1 *h1) |
Divide this histogram by h1. | |
virtual Bool_t | Divide (const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1, Option_t *option="") |
Replace contents of this histogram by the division of h1 by h2. | |
virtual Bool_t | Divide (TF1 *f1, Double_t c1=1) |
Performs the operation: this = this/(c1*f1) if errors are defined (see TH1::Sumw2), errors are also recalculated. | |
void | Draw (Option_t *option="") override |
Draw this histogram with options. | |
virtual TH1 * | DrawCopy (Option_t *option="", const char *name_postfix="_copy") const |
Copy this histogram and Draw in the current pad. | |
virtual TH1 * | DrawNormalized (Option_t *option="", Double_t norm=1) const |
Draw a normalized copy of this histogram. | |
virtual void | DrawPanel () |
Display a panel with all histogram drawing options. | |
virtual void | Eval (TF1 *f1, Option_t *option="") |
Evaluate function f1 at the center of bins of this histogram. | |
void | ExecuteEvent (Int_t event, Int_t px, Int_t py) override |
Execute action corresponding to one event. | |
virtual void | ExtendAxis (Double_t x, TAxis *axis) |
Histogram is resized along axis such that x is in the axis range. | |
virtual TH1 * | FFT (TH1 *h_output, Option_t *option) |
This function allows to do discrete Fourier transforms of TH1 and TH2. | |
void | FillRandom (const char *fname, Int_t ntimes=5000, TRandom *rng=nullptr) |
Fill histogram following distribution in function fname. | |
virtual Int_t | FindBin (Double_t x, Double_t y=0, Double_t z=0) |
Return Global bin number corresponding to x,y,z. | |
virtual Int_t | FindFirstBinAbove (Double_t threshold=0, Int_t axis=1, Int_t firstBin=1, Int_t lastBin=-1) const |
Find first bin with content > threshold for axis (1=x, 2=y, 3=z) if no bins with content > threshold is found the function returns -1. | |
virtual Int_t | FindFixBin (Double_t x, Double_t y=0, Double_t z=0) const |
Return Global bin number corresponding to x,y,z. | |
virtual Int_t | FindLastBinAbove (Double_t threshold=0, Int_t axis=1, Int_t firstBin=1, Int_t lastBin=-1) const |
Find last bin with content > threshold for axis (1=x, 2=y, 3=z) if no bins with content > threshold is found the function returns -1. | |
TObject * | FindObject (const char *name) const override |
Search object named name in the list of functions. | |
TObject * | FindObject (const TObject *obj) const override |
Search object obj in the list of functions. | |
virtual TFitResultPtr | Fit (const char *formula, Option_t *option="", Option_t *goption="", Double_t xmin=0, Double_t xmax=0) |
Fit histogram with function fname. | |
virtual TFitResultPtr | Fit (TF1 *f1, Option_t *option="", Option_t *goption="", Double_t xmin=0, Double_t xmax=0) |
Fit histogram with the function pointer f1. | |
virtual void | FitPanel () |
Display a panel with all histogram fit options. | |
TH1 * | GetAsymmetry (TH1 *h2, Double_t c2=1, Double_t dc2=0) |
Return a histogram containing the asymmetry of this histogram with h2, where the asymmetry is defined as: | |
virtual Color_t | GetAxisColor (Option_t *axis="X") const |
Return the number of divisions for "axis". | |
virtual Float_t | GetBarOffset () const |
virtual Float_t | GetBarWidth () const |
virtual Double_t | GetBinCenter (Int_t bin) const |
Return bin center for 1D histogram. | |
virtual Double_t | GetBinError (Int_t bin) const |
Return value of error associated to bin number bin. | |
virtual Double_t | GetBinError (Int_t binx, Int_t biny) const |
virtual Double_t | GetBinError (Int_t binx, Int_t biny, Int_t binz) const |
virtual EBinErrorOpt | GetBinErrorOption () const |
virtual Double_t | GetBinLowEdge (Int_t bin) const |
Return bin lower edge for 1D histogram. | |
virtual Double_t | GetBinWidth (Int_t bin) const |
Return bin width for 1D histogram. | |
virtual Double_t | GetBinWithContent (Double_t c, Int_t &binx, Int_t firstx=0, Int_t lastx=0, Double_t maxdiff=0) const |
Compute first binx in the range [firstx,lastx] for which diff = abs(bin_content-c) <= maxdiff. | |
virtual void | GetBinXYZ (Int_t binglobal, Int_t &binx, Int_t &biny, Int_t &binz) const |
Return binx, biny, binz corresponding to the global bin number globalbin see TH1::GetBin function above. | |
const Double_t * | GetBuffer () const |
Int_t | GetBufferLength () const |
Int_t | GetBufferSize () const |
virtual Double_t | GetCellContent (Int_t binx, Int_t biny) const |
virtual Double_t | GetCellError (Int_t binx, Int_t biny) const |
virtual void | GetCenter (Double_t *center) const |
Fill array with center of bins for 1D histogram Better to use h1.GetXaxis()->GetCenter(center) | |
virtual Int_t | GetContour (Double_t *levels=nullptr) |
Return contour values into array levels if pointer levels is non zero. | |
virtual Double_t | GetContourLevel (Int_t level) const |
Return value of contour number level. | |
virtual Double_t | GetContourLevelPad (Int_t level) const |
Return the value of contour number "level" in Pad coordinates. | |
TH1 * | GetCumulative (Bool_t forward=kTRUE, const char *suffix="_cumulative") const |
Return a pointer to a histogram containing the cumulative content. | |
virtual Int_t | GetDimension () const |
TDirectory * | GetDirectory () const |
virtual Double_t | GetEffectiveEntries () const |
Number of effective entries of the histogram. | |
virtual Double_t | GetEntries () const |
Return the current number of entries. | |
virtual TF1 * | GetFunction (const char *name) const |
Return pointer to function with name. | |
virtual Double_t * | GetIntegral () |
Return a pointer to the array of bins integral. | |
virtual Double_t | GetKurtosis (Int_t axis=1) const |
virtual Color_t | GetLabelColor (Option_t *axis="X") const |
Return the "axis" label color. | |
virtual Style_t | GetLabelFont (Option_t *axis="X") const |
Return the "axis" label font. | |
virtual Float_t | GetLabelOffset (Option_t *axis="X") const |
Return the "axis" label offset. | |
virtual Float_t | GetLabelSize (Option_t *axis="X") const |
Return the "axis" label size. | |
TList * | GetListOfFunctions () const |
virtual void | GetLowEdge (Double_t *edge) const |
Fill array with low edge of bins for 1D histogram Better to use h1.GetXaxis()->GetLowEdge(edge) | |
virtual Double_t | GetMaximum (Double_t maxval=FLT_MAX) const |
Return maximum value smaller than maxval of bins in the range, unless the value has been overridden by TH1::SetMaximum, in which case it returns that value. | |
virtual Int_t | GetMaximumBin () const |
Return location of bin with maximum value in the range. | |
virtual Int_t | GetMaximumBin (Int_t &locmax, Int_t &locmay, Int_t &locmaz) const |
Return location of bin with maximum value in the range. | |
virtual Double_t | GetMaximumStored () const |
virtual Double_t | GetMean (Int_t axis=1) const |
For axis = 1,2 or 3 returns the mean value of the histogram along X,Y or Z axis. | |
virtual Double_t | GetMeanError (Int_t axis=1) const |
Return standard error of mean of this histogram along the X axis. | |
virtual Double_t | GetMinimum (Double_t minval=-FLT_MAX) const |
Return minimum value larger than minval of bins in the range, unless the value has been overridden by TH1::SetMinimum, in which case it returns that value. | |
virtual void | GetMinimumAndMaximum (Double_t &min, Double_t &max) const |
Retrieve the minimum and maximum values in the histogram. | |
virtual Int_t | GetMinimumBin () const |
Return location of bin with minimum value in the range. | |
virtual Int_t | GetMinimumBin (Int_t &locmix, Int_t &locmiy, Int_t &locmiz) const |
Return location of bin with minimum value in the range. | |
virtual Double_t | GetMinimumStored () const |
virtual Int_t | GetNbinsX () const |
virtual Int_t | GetNbinsY () const |
virtual Int_t | GetNbinsZ () const |
virtual Int_t | GetNcells () const |
virtual Int_t | GetNdivisions (Option_t *axis="X") const |
Return the number of divisions for "axis". | |
virtual Double_t | GetNormFactor () const |
char * | GetObjectInfo (Int_t px, Int_t py) const override |
Redefines TObject::GetObjectInfo. | |
Option_t * | GetOption () const override |
TVirtualHistPainter * | GetPainter (Option_t *option="") |
Return pointer to painter. | |
virtual Int_t | GetQuantiles (Int_t n, Double_t *xp, const Double_t *p=nullptr) |
Compute Quantiles for this histogram Quantile x_p := Q(p) is defined as the value x_p such that the cumulative probability distribution Function F of variable X yields: | |
virtual Double_t | GetRandom (TRandom *rng=nullptr) const |
Return a random number distributed according the histogram bin contents. | |
Double_t | GetRMS (Int_t axis=1) const |
This function returns the Standard Deviation (Sigma) of the distribution not the Root Mean Square (RMS). | |
Double_t | GetRMSError (Int_t axis=1) const |
virtual Double_t | GetSkewness (Int_t axis=1) const |
EStatOverflows | GetStatOverflows () const |
Get the behaviour adopted by the object about the statoverflows. See EStatOverflows for more information. | |
virtual Double_t | GetStdDev (Int_t axis=1) const |
Returns the Standard Deviation (Sigma). | |
virtual Double_t | GetStdDevError (Int_t axis=1) const |
Return error of standard deviation estimation for Normal distribution. | |
virtual Double_t | GetSumOfWeights () const |
Return the sum of weights excluding under/overflows. | |
virtual TArrayD * | GetSumw2 () |
virtual const TArrayD * | GetSumw2 () const |
virtual Int_t | GetSumw2N () const |
virtual Float_t | GetTickLength (Option_t *axis="X") const |
Return the "axis" tick length. | |
virtual Style_t | GetTitleFont (Option_t *axis="X") const |
Return the "axis" title font. | |
virtual Float_t | GetTitleOffset (Option_t *axis="X") const |
Return the "axis" title offset. | |
virtual Float_t | GetTitleSize (Option_t *axis="X") const |
Return the "axis" title size. | |
TAxis * | GetXaxis () |
const TAxis * | GetXaxis () const |
TAxis * | GetYaxis () |
const TAxis * | GetYaxis () const |
TAxis * | GetZaxis () |
const TAxis * | GetZaxis () const |
Bool_t | IsBinOverflow (Int_t bin, Int_t axis=0) const |
Return true if the bin is overflow. | |
Bool_t | IsBinUnderflow (Int_t bin, Int_t axis=0) const |
Return true if the bin is underflow. | |
virtual Bool_t | IsHighlight () const |
virtual void | LabelsDeflate (Option_t *axis="X") |
Reduce the number of bins for the axis passed in the option to the number of bins having a label. | |
virtual void | LabelsInflate (Option_t *axis="X") |
Double the number of bins for axis. | |
virtual void | LabelsOption (Option_t *option="h", Option_t *axis="X") |
Sort bins with labels or set option(s) to draw axis with labels. | |
virtual Long64_t | Merge (TCollection *list) |
Long64_t | Merge (TCollection *list, Option_t *option) |
Add all histograms in the collection to this histogram. | |
virtual Bool_t | Multiply (const TH1 *h1) |
Multiply this histogram by h1. | |
virtual Bool_t | Multiply (const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1, Option_t *option="") |
Replace contents of this histogram by multiplication of h1 by h2. | |
virtual Bool_t | Multiply (TF1 *f1, Double_t c1=1) |
Performs the operation: | |
void | Paint (Option_t *option="") override |
Control routine to paint any kind of histograms. | |
void | Print (Option_t *option="") const override |
Print some global quantities for this histogram. | |
virtual void | RebinAxis (Double_t x, TAxis *axis) |
virtual void | Rebuild (Option_t *option="") |
Using the current bin info, recompute the arrays for contents and errors. | |
void | RecursiveRemove (TObject *obj) override |
Recursively remove object from the list of functions. | |
virtual void | ResetStats () |
Reset the statistics including the number of entries and replace with values calculated from bin content. | |
void | SaveAs (const char *filename="hist", Option_t *option="") const override |
Save the histogram as .csv, .tsv or .txt. | |
void | SavePrimitive (std::ostream &out, Option_t *option="") override |
Save primitive as a C++ statement(s) on output stream out. | |
virtual void | Scale (Double_t c1=1, Option_t *option="") |
Multiply this histogram by a constant c1. | |
virtual void | SetAxisColor (Color_t color=1, Option_t *axis="X") |
Set color to draw the axis line and tick marks. | |
virtual void | SetAxisRange (Double_t xmin, Double_t xmax, Option_t *axis="X") |
Set the "axis" range. | |
virtual void | SetBarOffset (Float_t offset=0.25) |
Set the bar offset as fraction of the bin width for drawing mode "B". | |
virtual void | SetBarWidth (Float_t width=0.5) |
Set the width of bars as fraction of the bin width for drawing mode "B". | |
virtual void | SetBinError (Int_t bin, Double_t error) |
Set the bin Error Note that this resets the bin eror option to be of Normal Type and for the non-empty bin the bin error is set by default to the square root of their content. | |
virtual void | SetBinError (Int_t binx, Int_t biny, Double_t error) |
See convention for numbering bins in TH1::GetBin. | |
virtual void | SetBinError (Int_t binx, Int_t biny, Int_t binz, Double_t error) |
See convention for numbering bins in TH1::GetBin. | |
virtual void | SetBinErrorOption (EBinErrorOpt type) |
virtual void | SetBins (Int_t nx, const Double_t *xBins) |
Redefine x axis parameters with variable bin sizes. | |
virtual void | SetBins (Int_t nx, const Double_t *xBins, Int_t ny, const Double_t *yBins) |
Redefine x and y axis parameters with variable bin sizes. | |
virtual void | SetBins (Int_t nx, const Double_t *xBins, Int_t ny, const Double_t *yBins, Int_t nz, const Double_t *zBins) |
Redefine x, y and z axis parameters with variable bin sizes. | |
virtual void | SetBins (Int_t nx, Double_t xmin, Double_t xmax) |
Redefine x axis parameters. | |
virtual void | SetBins (Int_t nx, Double_t xmin, Double_t xmax, Int_t ny, Double_t ymin, Double_t ymax) |
Redefine x and y axis parameters. | |
virtual void | SetBins (Int_t nx, Double_t xmin, Double_t xmax, Int_t ny, Double_t ymin, Double_t ymax, Int_t nz, Double_t zmin, Double_t zmax) |
Redefine x, y and z axis parameters. | |
virtual void | SetBinsLength (Int_t=-1) |
virtual void | SetBuffer (Int_t buffersize, Option_t *option="") |
Set the maximum number of entries to be kept in the buffer. | |
virtual UInt_t | SetCanExtend (UInt_t extendBitMask) |
Make the histogram axes extendable / not extendable according to the bit mask returns the previous bit mask specifying which axes are extendable. | |
virtual void | SetCellContent (Int_t binx, Int_t biny, Double_t content) |
virtual void | SetCellError (Int_t binx, Int_t biny, Double_t content) |
virtual void | SetColors (Color_t linecolor=-1, Color_t markercolor=-1, Color_t fillcolor=-1) |
Shortcut to set the three histogram colors with a single call. | |
virtual void | SetContent (const Double_t *content) |
Replace bin contents by the contents of array content. | |
virtual void | SetContour (Int_t nlevels, const Double_t *levels=nullptr) |
Set the number and values of contour levels. | |
virtual void | SetContourLevel (Int_t level, Double_t value) |
Set value for one contour level. | |
virtual void | SetDirectory (TDirectory *dir) |
By default, when a histogram is created, it is added to the list of histogram objects in the current directory in memory. | |
virtual void | SetEntries (Double_t n) |
virtual void | SetError (const Double_t *error) |
Replace bin errors by values in array error. | |
virtual void | SetHighlight (Bool_t set=kTRUE) |
Set highlight (enable/disable) mode for the histogram by default highlight mode is disable. | |
virtual void | SetLabelColor (Color_t color=1, Option_t *axis="X") |
Set axis labels color. | |
virtual void | SetLabelFont (Style_t font=62, Option_t *axis="X") |
Set font number used to draw axis labels. | |
virtual void | SetLabelOffset (Float_t offset=0.005, Option_t *axis="X") |
Set offset between axis and axis' labels. | |
virtual void | SetLabelSize (Float_t size=0.02, Option_t *axis="X") |
Set size of axis' labels. | |
virtual void | SetMaximum (Double_t maximum=-1111) |
virtual void | SetMinimum (Double_t minimum=-1111) |
void | SetName (const char *name) override |
Change the name of this histogram. | |
void | SetNameTitle (const char *name, const char *title) override |
Change the name and title of this histogram. | |
virtual void | SetNdivisions (Int_t n=510, Option_t *axis="X") |
Set the number of divisions to draw an axis. | |
virtual void | SetNormFactor (Double_t factor=1) |
virtual void | SetOption (Option_t *option=" ") |
void | SetStatOverflows (EStatOverflows statOverflows) |
See GetStatOverflows for more information. | |
virtual void | SetStats (Bool_t stats=kTRUE) |
Set statistics option on/off. | |
virtual void | SetTickLength (Float_t length=0.02, Option_t *axis="X") |
Set the axis' tick marks length. | |
void | SetTitle (const char *title) override |
Change/set the title. | |
virtual void | SetTitleFont (Style_t font=62, Option_t *axis="X") |
Set the axis' title font. | |
virtual void | SetTitleOffset (Float_t offset=1, Option_t *axis="X") |
Specify a parameter offset to control the distance between the axis and the axis' title. | |
virtual void | SetTitleSize (Float_t size=0.02, Option_t *axis="X") |
Set the axis' title size. | |
virtual void | SetXTitle (const char *title) |
virtual void | SetYTitle (const char *title) |
virtual void | SetZTitle (const char *title) |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
virtual void | Sumw2 (Bool_t flag=kTRUE) |
Create structure to store sum of squares of weights. | |
void | UseCurrentStyle () override |
Copy current attributes from/to current style. | |
Public Member Functions inherited from TNamed | |
TNamed () | |
TNamed (const char *name, const char *title) | |
TNamed (const TNamed &named) | |
TNamed copy ctor. | |
TNamed (const TString &name, const TString &title) | |
virtual | ~TNamed () |
TNamed destructor. | |
void | Clear (Option_t *option="") override |
Set name and title to empty strings (""). | |
TObject * | Clone (const char *newname="") const override |
Make a clone of an object using the Streamer facility. | |
Int_t | Compare (const TObject *obj) const override |
Compare two TNamed objects. | |
void | Copy (TObject &named) const override |
Copy this to obj. | |
virtual void | FillBuffer (char *&buffer) |
Encode TNamed into output buffer. | |
const char * | GetName () const override |
Returns name of object. | |
const char * | GetTitle () const override |
Returns title of object. | |
ULong_t | Hash () const override |
Return hash value for this object. | |
TClass * | IsA () const override |
Bool_t | IsSortable () const override |
void | ls (Option_t *option="") const override |
List TNamed name and title. | |
TNamed & | operator= (const TNamed &rhs) |
TNamed assignment operator. | |
void | Print (Option_t *option="") const override |
Print TNamed name and title. | |
virtual Int_t | Sizeof () const |
Return size of the TNamed part of the TObject. | |
void | Streamer (TBuffer &) override |
Stream an object of class TObject. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TObject | |
TObject () | |
TObject constructor. | |
TObject (const TObject &object) | |
TObject copy ctor. | |
virtual | ~TObject () |
TObject destructor. | |
void | AbstractMethod (const char *method) const |
Use this method to implement an "abstract" method that you don't want to leave purely abstract. | |
virtual void | AppendPad (Option_t *option="") |
Append graphics object to current pad. | |
ULong_t | CheckedHash () |
Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. | |
virtual const char * | ClassName () const |
Returns name of class to which the object belongs. | |
virtual void | Delete (Option_t *option="") |
Delete this object. | |
virtual void | DrawClass () const |
Draw class inheritance tree of the class to which this object belongs. | |
virtual TObject * | DrawClone (Option_t *option="") const |
Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1) . | |
virtual void | Dump () const |
Dump contents of object on stdout. | |
virtual void | Error (const char *method, const char *msgfmt,...) const |
Issue error message. | |
virtual void | Execute (const char *method, const char *params, Int_t *error=nullptr) |
Execute method on this object with the given parameter string, e.g. | |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr) |
Execute method on this object with parameters stored in the TObjArray. | |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
Issue fatal error message. | |
virtual Option_t * | GetDrawOption () const |
Get option used by the graphics system to draw this object. | |
virtual const char * | GetIconName () const |
Returns mime type name of object. | |
virtual UInt_t | GetUniqueID () const |
Return the unique object id. | |
virtual Bool_t | HandleTimer (TTimer *timer) |
Execute action in response of a timer timing out. | |
Bool_t | HasInconsistentHash () const |
Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. | |
virtual void | Info (const char *method, const char *msgfmt,...) const |
Issue info message. | |
virtual Bool_t | InheritsFrom (const char *classname) const |
Returns kTRUE if object inherits from class "classname". | |
virtual Bool_t | InheritsFrom (const TClass *cl) const |
Returns kTRUE if object inherits from TClass cl. | |
virtual void | Inspect () const |
Dump contents of this object in a graphics canvas. | |
void | InvertBit (UInt_t f) |
Bool_t | IsDestructed () const |
IsDestructed. | |
virtual Bool_t | IsEqual (const TObject *obj) const |
Default equal comparison (objects are equal if they have the same address in memory). | |
virtual Bool_t | IsFolder () const |
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). | |
R__ALWAYS_INLINE Bool_t | IsOnHeap () const |
R__ALWAYS_INLINE Bool_t | IsZombie () const |
void | MayNotUse (const char *method) const |
Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). | |
virtual Bool_t | Notify () |
This method must be overridden to handle object notification (the base implementation is no-op). | |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
Use this method to declare a method obsolete. | |
void | operator delete (void *ptr) |
Operator delete. | |
void | operator delete (void *ptr, void *vp) |
Only called by placement new when throwing an exception. | |
void | operator delete[] (void *ptr) |
Operator delete []. | |
void | operator delete[] (void *ptr, void *vp) |
Only called by placement new[] when throwing an exception. | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (const TObject &rhs) |
TObject assignment operator. | |
virtual void | Pop () |
Pop on object drawn in a pad to the top of the display list. | |
virtual Int_t | Read (const char *name) |
Read contents of object with specified name from the current directory. | |
void | ResetBit (UInt_t f) |
void | SetBit (UInt_t f) |
void | SetBit (UInt_t f, Bool_t set) |
Set or unset the user status bits as specified in f. | |
virtual void | SetDrawOption (Option_t *option="") |
Set drawing option for object. | |
virtual void | SetUniqueID (UInt_t uid) |
Set the unique object id. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
Issue system error message. | |
R__ALWAYS_INLINE Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
Issue warning message. | |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) |
Write this object to the current directory. | |
virtual Int_t | Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const |
Write this object to the current directory. | |
Public Member Functions inherited from TAttLine | |
TAttLine () | |
AttLine default constructor. | |
TAttLine (Color_t lcolor, Style_t lstyle, Width_t lwidth) | |
AttLine normal constructor. | |
virtual | ~TAttLine () |
AttLine destructor. | |
void | Copy (TAttLine &attline) const |
Copy this line attributes to a new TAttLine. | |
Int_t | DistancetoLine (Int_t px, Int_t py, Double_t xp1, Double_t yp1, Double_t xp2, Double_t yp2) |
Compute distance from point px,py to a line. | |
virtual Color_t | GetLineColor () const |
Return the line color. | |
virtual Style_t | GetLineStyle () const |
Return the line style. | |
virtual Width_t | GetLineWidth () const |
Return the line width. | |
virtual void | Modify () |
Change current line attributes if necessary. | |
virtual void | ResetAttLine (Option_t *option="") |
Reset this line attributes to default values. | |
virtual void | SaveLineAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t widdef=1) |
Save line attributes as C++ statement(s) on output stream out. | |
virtual void | SetLineAttributes () |
Invoke the DialogCanvas Line attributes. | |
virtual void | SetLineColor (Color_t lcolor) |
Set the line color. | |
virtual void | SetLineColorAlpha (Color_t lcolor, Float_t lalpha) |
Set a transparent line color. | |
virtual void | SetLineStyle (Style_t lstyle) |
Set the line style. | |
virtual void | SetLineWidth (Width_t lwidth) |
Set the line width. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TAttFill | |
TAttFill () | |
AttFill default constructor. | |
TAttFill (Color_t fcolor, Style_t fstyle) | |
AttFill normal constructor. | |
virtual | ~TAttFill () |
AttFill destructor. | |
void | Copy (TAttFill &attfill) const |
Copy this fill attributes to a new TAttFill. | |
virtual Color_t | GetFillColor () const |
Return the fill area color. | |
virtual Style_t | GetFillStyle () const |
Return the fill area style. | |
virtual Bool_t | IsTransparent () const |
virtual void | Modify () |
Change current fill area attributes if necessary. | |
virtual void | ResetAttFill (Option_t *option="") |
Reset this fill attributes to default values. | |
virtual void | SaveFillAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001) |
Save fill attributes as C++ statement(s) on output stream out. | |
virtual void | SetFillAttributes () |
Invoke the DialogCanvas Fill attributes. | |
virtual void | SetFillColor (Color_t fcolor) |
Set the fill area color. | |
virtual void | SetFillColorAlpha (Color_t fcolor, Float_t falpha) |
Set a transparent fill color. | |
virtual void | SetFillStyle (Style_t fstyle) |
Set the fill area style. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Public Member Functions inherited from TAttMarker | |
TAttMarker () | |
TAttMarker default constructor. | |
TAttMarker (Color_t color, Style_t style, Size_t msize) | |
TAttMarker normal constructor. | |
virtual | ~TAttMarker () |
TAttMarker destructor. | |
void | Copy (TAttMarker &attmarker) const |
Copy this marker attributes to a new TAttMarker. | |
virtual Color_t | GetMarkerColor () const |
Return the marker color. | |
virtual Size_t | GetMarkerSize () const |
Return the marker size. | |
virtual Style_t | GetMarkerStyle () const |
Return the marker style. | |
virtual void | Modify () |
Change current marker attributes if necessary. | |
virtual void | ResetAttMarker (Option_t *toption="") |
Reset this marker attributes to the default values. | |
virtual void | SaveMarkerAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t sizdef=1) |
Save line attributes as C++ statement(s) on output stream out. | |
virtual void | SetMarkerAttributes () |
Invoke the DialogCanvas Marker attributes. | |
virtual void | SetMarkerColor (Color_t mcolor=1) |
Set the marker color. | |
virtual void | SetMarkerColorAlpha (Color_t mcolor, Float_t malpha) |
Set a transparent marker color. | |
virtual void | SetMarkerSize (Size_t msize=1) |
Set the marker size. | |
virtual void | SetMarkerStyle (Style_t mstyle=1) |
Set the marker style. | |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Static Public Member Functions | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TH1 | |
static void | AddDirectory (Bool_t add=kTRUE) |
Sets the flag controlling the automatic add of histograms in memory. | |
static Bool_t | AddDirectoryStatus () |
Static function: cannot be inlined on Windows/NT. | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static Int_t | FitOptionsMake (Option_t *option, Foption_t &Foption) |
Decode string choptin and fill fitOption structure. | |
static Int_t | GetDefaultBufferSize () |
Static function return the default buffer size for automatic histograms the parameter fgBufferSize may be changed via SetDefaultBufferSize. | |
static Bool_t | GetDefaultSumw2 () |
Return kTRUE if TH1::Sumw2 must be called when creating new histograms. | |
static void | SetDefaultBufferSize (Int_t buffersize=1000) |
Static function to set the default buffer size for automatic histograms. | |
static void | SetDefaultSumw2 (Bool_t sumw2=kTRUE) |
When this static function is called with sumw2=kTRUE , all new histograms will automatically activate the storage of the sum of squares of errors, ie TH1::Sumw2 is automatically called. | |
static void | SmoothArray (Int_t NN, Double_t *XX, Int_t ntimes=1) |
Smooth array xx, translation of Hbook routine hsmoof.F . | |
static void | StatOverflows (Bool_t flag=kTRUE) |
if flag=kTRUE, underflows and overflows are used by the Fill functions in the computation of statistics (mean value, StdDev). | |
static TH1 * | TransformHisto (TVirtualFFT *fft, TH1 *h_output, Option_t *option) |
For a given transform (first parameter), fills the histogram (second parameter) with the transform output data, specified in the third parameter If the 2nd parameter h_output is empty, a new histogram (TH1D or TH2D) is created and the user is responsible for deleting it. | |
Static Public Member Functions inherited from TNamed | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TObject | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static Longptr_t | GetDtorOnly () |
Return destructor only flag. | |
static Bool_t | GetObjectStat () |
Get status of object stat flag. | |
static void | SetDtorOnly (void *obj) |
Set destructor only flag. | |
static void | SetObjectStat (Bool_t stat) |
Turn on/off tracking of objects in the TObjectTable. | |
Static Public Member Functions inherited from TAttLine | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TAttFill | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
Static Public Member Functions inherited from TAttMarker | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
static Width_t | GetMarkerLineWidth (Style_t style) |
Internal helper function that returns the line width of the given marker style (0 = filled marker) | |
static Style_t | GetMarkerStyleBase (Style_t style) |
Internal helper function that returns the corresponding marker style with line width 1 for the given style. | |
Protected Member Functions | |
TH2 () | |
2-D histogram default constructor. | |
TH2 (const char *name, const char *title, Int_t nbinsx, const Double_t *xbins, Int_t nbinsy, const Double_t *ybins) | |
Constructor for Double_t variable bin size 2-D histograms. | |
TH2 (const char *name, const char *title, Int_t nbinsx, const Double_t *xbins, Int_t nbinsy, Double_t ylow, Double_t yup) | |
Constructor for variable bin size (along X axis) 2-D histograms using an input array of type double. | |
TH2 (const char *name, const char *title, Int_t nbinsx, const Float_t *xbins, Int_t nbinsy, const Float_t *ybins) | |
Constructor for variable bin size (along X and Y axis) 2-D histograms using input arrays of type float. | |
TH2 (const char *name, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup, Int_t nbinsy, const Double_t *ybins) | |
Constructor for Double_t variable bin size (along Y axis) 2-D histograms. | |
TH2 (const char *name, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup, Int_t nbinsy, Double_t ylow, Double_t yup) | |
Constructor for fix bin size 2-D histograms. | |
virtual Int_t | BufferFill (Double_t x, Double_t y, Double_t w) |
accumulate arguments in buffer. | |
Int_t | BufferFill (Double_t, Double_t) override |
accumulate arguments in buffer. | |
virtual void | DoFitSlices (bool onX, TF1 *f1, Int_t firstbin, Int_t lastbin, Int_t cut, Option_t *option, TObjArray *arr) |
virtual TProfile * | DoProfile (bool onX, const char *name, Int_t firstbin, Int_t lastbin, Option_t *option) const |
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 ProjectionY. | |
virtual TH1D * | DoQuantiles (bool onX, const char *name, Double_t prob) const |
Implementation of quantiles for x or y. | |
Int_t | Fill (const char *, Double_t) override |
Increment bin with namex with a weight w. | |
Int_t | Fill (Double_t) override |
Invalid Fill method. | |
Double_t | Interpolate (Double_t x) const override |
illegal for a TH2 | |
Protected Member Functions inherited from TH1 | |
TH1 () | |
Histogram default constructor. | |
TH1 (const char *name, const char *title, Int_t nbinsx, const Double_t *xbins) | |
Constructor for variable bin size histograms using an input array of type double. | |
TH1 (const char *name, const char *title, Int_t nbinsx, const Float_t *xbins) | |
Constructor for variable bin size histograms using an input array of type float. | |
TH1 (const char *name, const char *title, Int_t nbinsx, Double_t xlow, Double_t xup) | |
Constructor for fix bin size histograms. | |
virtual Int_t | AutoP2FindLimits (Double_t min, Double_t max) |
Buffer-based estimate of the histogram range using the power of 2 algorithm. | |
Int_t | AxisChoice (Option_t *axis) const |
Choose an axis according to "axis". | |
virtual void | DoFillN (Int_t ntimes, const Double_t *x, const Double_t *w, Int_t stride=1) |
Internal method to fill histogram content from a vector called directly by TH1::BufferEmpty. | |
virtual Double_t | DoIntegral (Int_t ix1, Int_t ix2, Int_t iy1, Int_t iy2, Int_t iz1, Int_t iz2, Double_t &err, Option_t *opt, Bool_t doerr=kFALSE) const |
Internal function compute integral and optionally the error between the limits specified by the bin number values working for all histograms (1D, 2D and 3D) | |
virtual Bool_t | FindNewAxisLimits (const TAxis *axis, const Double_t point, Double_t &newMin, Double_t &newMax) |
finds new limits for the axis so that point is within the range and the limits are compatible with the previous ones (see TH1::Merge). | |
UInt_t | GetAxisLabelStatus () const |
Internal function used in TH1::Fill to see which axis is full alphanumeric, i.e. | |
virtual Double_t | GetBinErrorSqUnchecked (Int_t bin) const |
Bool_t | GetStatOverflowsBehaviour () const |
Bool_t | IsEmpty () const |
Check if a histogram is empty (this is a protected method used mainly by TH1Merger ) | |
int | LoggedInconsistency (const char *name, const TH1 *h1, const TH1 *h2, bool useMerge=false) const |
virtual Double_t | RetrieveBinContent (Int_t bin) const |
Raw retrieval of bin content on internal data structure see convention for numbering bins in TH1::GetBin. | |
virtual void | SavePrimitiveHelp (std::ostream &out, const char *hname, Option_t *option="") |
Helper function for the SavePrimitive functions from TH1 or classes derived from TH1, eg TProfile, TProfile2D. | |
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. | |
Protected Member Functions inherited from TObject | |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
Interface to ErrorHandler (protected). | |
void | MakeZombie () |
Protected Attributes | |
Double_t | fScalefactor |
Scale factor. | |
Double_t | fTsumwxy |
Total Sum of weight*X*Y. | |
Double_t | fTsumwy |
Total Sum of weight*Y. | |
Double_t | fTsumwy2 |
Total Sum of weight*Y*Y. | |
Protected Attributes inherited from TH1 | |
Short_t | fBarOffset |
(1000*offset) for bar charts or legos | |
Short_t | fBarWidth |
(1000*width) for bar charts or legos | |
EBinErrorOpt | fBinStatErrOpt |
Option for bin statistical errors. | |
Double_t * | fBuffer |
[fBufferSize] entry buffer | |
Int_t | fBufferSize |
fBuffer size | |
TArrayD | fContour |
Array to display contour levels. | |
Int_t | fDimension |
! Histogram dimension (1, 2 or 3 dim) | |
TDirectory * | fDirectory |
! Pointer to directory holding this histogram | |
Double_t | fEntries |
Number of entries. | |
TList * | fFunctions |
->Pointer to list of functions (fits and user) | |
Double_t * | fIntegral |
! Integral of bins used by GetRandom | |
Double_t | fMaximum |
Maximum value for plotting. | |
Double_t | fMinimum |
Minimum value for plotting. | |
Int_t | fNcells |
Number of bins(1D), cells (2D) +U/Overflows. | |
Double_t | fNormFactor |
Normalization factor. | |
TString | fOption |
Histogram options. | |
TVirtualHistPainter * | fPainter |
! Pointer to histogram painter | |
EStatOverflows | fStatOverflows |
Per object flag to use under/overflows in statistics. | |
TArrayD | fSumw2 |
Array of sum of squares of weights. | |
Double_t | fTsumw |
Total Sum of weights. | |
Double_t | fTsumw2 |
Total Sum of squares of weights. | |
Double_t | fTsumwx |
Total Sum of weight*X. | |
Double_t | fTsumwx2 |
Total Sum of weight*X*X. | |
TAxis | fXaxis |
X axis descriptor. | |
TAxis | fYaxis |
Y axis descriptor. | |
TAxis | fZaxis |
Z axis descriptor. | |
Protected Attributes inherited from TNamed | |
TString | fName |
TString | fTitle |
Protected Attributes inherited from TAttLine | |
Color_t | fLineColor |
Line color. | |
Style_t | fLineStyle |
Line style. | |
Width_t | fLineWidth |
Line width. | |
Protected Attributes inherited from TAttFill | |
Color_t | fFillColor |
Fill area color. | |
Style_t | fFillStyle |
Fill area style. | |
Protected Attributes inherited from TAttMarker | |
Color_t | fMarkerColor |
Marker color. | |
Size_t | fMarkerSize |
Marker size. | |
Style_t | fMarkerStyle |
Marker style. | |
Private Member Functions | |
TH2 (const TH2 &)=delete | |
virtual Double_t | Integral (Int_t binx1, Int_t binx2, Option_t *option="") const |
Return integral of bin contents in range [binx1,binx2]. | |
virtual Double_t | Integral (Option_t *option="") const |
Return integral of bin contents. | |
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. | |
TH2 & | operator= (const TH2 &)=delete |
Additional Inherited Members | |
Public Types inherited from TH1 | |
enum | { kNoAxis = 0 , kXaxis = (1ULL << ( 0 )) , kYaxis = (1ULL << ( 1 )) , kZaxis = (1ULL << ( 2 )) , kAllAxes = kXaxis | kYaxis | kZaxis } |
Enumeration specifying which axes can be extended. More... | |
enum | { kNstat = 13 } |
Size of statistics data (size of array used in GetStats()/ PutStats ) More... | |
enum | EBinErrorOpt { kNormal = 0 , kPoisson = 1 , kPoisson2 = 2 } |
Enumeration specifying type of statistics for bin errors. More... | |
enum | EStatOverflows { kIgnore = 0 , kConsider = 1 , kNeutral = 2 } |
Enumeration specifying the way to treat statoverflow. More... | |
enum | EStatusBits { kNoStats = (1ULL << ( 9 )) , kUserContour = (1ULL << ( 10 )) , kLogX = (1ULL << ( 15 )) , kIsZoomed = (1ULL << ( 16 )) , kNoTitle = (1ULL << ( 17 )) , kIsAverage = (1ULL << ( 18 )) , kIsNotW = (1ULL << ( 19 )) , kAutoBinPTwo = (1ULL << ( 20 )) , kIsHighlight = (1ULL << ( 21 )) } |
TH1 status bits. More... | |
Public Types inherited from TObject | |
enum | { kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 , kBitMask = 0x00ffffff } |
enum | { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) } |
enum | EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) } |
enum | EStatusBits { kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) , kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 )) } |
Protected Types inherited from TObject | |
enum | { kOnlyPrepStep = (1ULL << ( 3 )) } |
Static Protected Member Functions inherited from TH1 | |
static Int_t | AutoP2GetBins (Int_t n) |
Auxiliary function to get the next power of 2 integer value larger then n. | |
static Double_t | AutoP2GetPower2 (Double_t x, Bool_t next=kTRUE) |
Auxiliary function to get the power of 2 next (larger) or previous (smaller) a given x. | |
static bool | CheckAxisLimits (const TAxis *a1, const TAxis *a2) |
Check that the axis limits of the histograms are the same. | |
static bool | CheckBinLabels (const TAxis *a1, const TAxis *a2) |
Check that axis have same labels. | |
static bool | CheckBinLimits (const TAxis *a1, const TAxis *a2) |
Check bin limits. | |
static int | CheckConsistency (const TH1 *h1, const TH1 *h2) |
Check histogram compatibility. | |
static bool | CheckConsistentSubAxes (const TAxis *a1, Int_t firstBin1, Int_t lastBin1, const TAxis *a2, Int_t firstBin2=0, Int_t lastBin2=0) |
Check that two sub axis are the same. | |
static bool | CheckEqualAxes (const TAxis *a1, const TAxis *a2) |
Check that the axis are the same. | |
static Bool_t | RecomputeAxisLimits (TAxis &destAxis, const TAxis &anAxis) |
Finds new limits for the axis for the Merge function. | |
static Bool_t | SameLimitsAndNBins (const TAxis &axis1, const TAxis &axis2) |
Same limits and bins. | |
Static Protected Attributes inherited from TH1 | |
static Bool_t | fgAddDirectory = kTRUE |
! Flag to add histograms to the directory | |
static Int_t | fgBufferSize = 1000 |
! Default buffer size for automatic histograms | |
static Bool_t | fgDefaultSumw2 = kFALSE |
! Flag to call TH1::Sumw2 automatically at histogram creation time | |
static Bool_t | fgStatOverflows = kFALSE |
! Flag to use under/overflows in statistics | |
#include <TH2.h>
|
protected |
Constructor for fix bin size 2-D histograms.
Creates the main histogram structure.
[in] | name | name of histogram (avoid blanks) |
[in] | title | histogram title. If title is of the form stringt;stringx;stringy;stringz , the histogram title is set to stringt , the x axis title to stringx , the y axis title to stringy , etc. |
[in] | nbinsx | number of bins along the X axis |
[in] | xlow | low edge of the X axis first bin |
[in] | xup | upper edge of the X axis last bin (not included in last bin) |
[in] | nbinsy | number of bins along the Y axis |
[in] | ylow | low edge of the Y axis first bin |
[in] | yup | upper edge of the Y axis last bin (not included in last bin) |
|
protected |
Constructor for variable bin size (along X axis) 2-D histograms using an input array of type double.
[in] | name | name of histogram (avoid blanks) |
[in] | title | histogram title. If title is of the form stringt;stringx;stringy;stringz the histogram title is set to stringt , the x axis title to stringx , the y axis title to stringy , etc. |
[in] | nbinsx | number of bins |
[in] | xbins | array of low-edges for each bin. This is an array of type double and size nbinsx+1 |
[in] | nbinsy | number of bins along the Y axis |
[in] | ylow | low edge of the Y axis first bin |
[in] | yup | upper edge of the Y axis last bin (not included in last bin) |
|
protected |
Constructor for Double_t variable bin size (along Y axis) 2-D histograms.
[in] | name | name of histogram (avoid blanks) |
[in] | title | histogram title. If title is of the form stringt;stringx;stringy;stringz the histogram title is set to stringt , the x axis title to stringx , the y axis title to stringy , etc. |
[in] | nbinsx | number of bins along the X axis |
[in] | xlow | low edge of the X axis first bin |
[in] | xup | upper edge of the X axis last bin (not included in last bin) |
[in] | nbinsy | number of bins |
[in] | ybins | array of low-edges for each bin. This is an array of type double and size nbinsy+1 |
|
protected |
Constructor for Double_t variable bin size 2-D histograms.
[in] | name | name of histogram (avoid blanks) |
[in] | title | histogram title. If title is of the form stringt;stringx;stringy;stringz the histogram title is set to stringt , the x axis title to stringx , the y axis title to stringy , etc. |
[in] | nbinsx | number of bins |
[in] | xbins | array of low-edges for each bin. This is an array of type double and size nbinsx+1 |
[in] | nbinsy | number of bins |
[in] | ybins | array of low-edges for each bin. This is an array of type double and size nbinsy+1 |
|
protected |
Constructor for variable bin size (along X and Y axis) 2-D histograms using input arrays of type float.
[in] | name | name of histogram (avoid blanks) |
[in] | title | histogram title. If title is of the form stringt;stringx;stringy;stringz the histogram title is set to stringt , the x axis title to stringx , the y axis title to stringy , etc. |
[in] | nbinsx | number of bins |
[in] | xbins | array of low-edges for each bin. This is an array of type float and size nbinsx+1 |
[in] | nbinsy | number of bins |
[in] | ybins | array of low-edges for each bin. This is an array of type float and size nbinsy+1 |
|
privatedelete |
|
overridevirtual |
Fill histogram with all entries in the buffer.
Reimplemented from TH1.
Reimplemented in TProfile2D.
accumulate arguments in buffer.
When buffer is full, empty the buffer
Reimplemented in TProfile2D.
accumulate arguments in buffer.
When buffer is full, empty the buffer
fBuffer[0]
= number of entries in bufferfBuffer[1]
= w of first entryfBuffer[2]
= x of first entry Reimplemented from TH1.
Reimplemented in TProfile2D.
|
static |
|
inlinestaticconstexpr |
|
overridevirtual |
|
inlinestatic |
|
protectedvirtual |
Reimplemented in TProfile2D.
Increment bin with namex with a weight w.
if x is less than the low-edge of the first bin, the Underflow bin is incremented if x is equal to or greater than the upper edge of last bin, the Overflow bin is incremented
If the weight is not equal to 1, the storage of the sum of squares of weights is automatically triggered and the sum of the squares of weights is incremented by \( w^2 \) in the bin corresponding to x.
The function returns the corresponding bin number which has its content incremented by w.
Reimplemented from TH1.
Reimplemented in TProfile2D, TH2Poly, and TProfile2Poly.
Increment cell defined by namex,namey by a weight w.
The function returns the corresponding global bin number which has its content incremented by w
Reimplemented in TH2Poly, TProfile2Poly, TProfile2D, and TProfile2D.
Increment cell defined by namex,y by a weight w.
The function returns the corresponding global bin number which has its content incremented by w
Reimplemented in TH2Poly, TProfile2Poly, TProfile2D, and TProfile2D.
Increment cell defined by x,namey by a weight w.
The function returns the corresponding global bin number which has its content incremented by w
Reimplemented in TProfile2D, TProfile2D, TH2Poly, and TProfile2Poly.
Increment cell defined by x,y by 1.
The function returns the corresponding global bin number which has its content incremented by 1
Reimplemented from TH1.
Reimplemented in TH2Poly, TProfile2D, TProfile2Poly, and TProfile2D.
Increment cell defined by x,y by a weight w.
The function returns the corresponding global bin number which has its content incremented by w
Reimplemented in TProfile2D, TH2Poly, TProfile2Poly, TProfile2D, and TProfile2Poly.
Invalid Fill method.
Reimplemented from TH1.
Reimplemented in TH2Poly, TProfile2D, and TProfile2Poly.
|
overridevirtual |
Fill a 2-D histogram with an array of values and weights.
NB: function only valid for a TH2x object
Reimplemented from TH1.
Reimplemented in TH2Poly.
|
inlineoverridevirtual |
Fill this histogram with an array x and weights w.
[in] | ntimes | number of entries in arrays x and w (array size must be ntimes*stride) |
[in] | x | array of values to be histogrammed |
[in] | w | array of weighs |
[in] | stride | step size through arrays x and w |
If the weight is not equal to 1, the storage of the sum of squares of weights is automatically triggered and the sum of the squares of weights is incremented by \( w^2 \) in the bin corresponding to x. if w is NULL each entry is assumed a weight=1
Reimplemented from TH1.
Reimplemented in TH2Poly.
Fill histogram following distribution in function fname.
fname | : Function name used for filling the histogram |
ntimes | : number of times the histogram is filled |
rng | : (optional) Random number generator used to sample |
The distribution contained in the function fname (TF1) is integrated over the channel contents for the bin range of this histogram. It is normalized to 1.
Getting one random number implies:
One can also call TF1::GetRandom to get a random variate from a function.
Fill histogram following distribution in function fname.
fname | : Function name used for filling the histogram |
ntimes | : number of times the histogram is filled |
rng | : (optional) Random number generator used to sample |
The distribution contained in the function fname (TF2) is integrated over the channel contents. It is normalized to 1. Getting one random number implies:
One can also call TF2::GetRandom2 to get a random variate from a function.
Reimplemented from TH1.
Fill histogram following distribution in histogram h.
h | : Histogram pointer used for sampling random number |
ntimes | : number of times the histogram is filled |
rng | : (optional) Random number generator used for sampling |
The distribution contained in the histogram h (TH1) is integrated over the channel contents for the bin range of this histogram. It is normalized to 1.
Getting one random number implies:
SPECIAL CASE when the target histogram has the same binning as the source. in this case we simply use a poisson distribution where the mean value per bin = bincontent/integral.
Reimplemented from TH1.
Fill histogram following distribution in histogram h.
h | : Histogram pointer used for sampling random number |
ntimes | : number of times the histogram is filled |
rng | : (optional) Random number generator used for sampling |
The distribution contained in the histogram h (TH2) is integrated over the channel contents. It is normalized to 1. Getting one random number implies:
Reimplemented from TH1.
|
virtual |
Project slices along X in case of a 2-D histogram, then fit each slice with function f1 and make a histogram for each fit parameter Only bins along Y between firstybin and lastybin are considered.
By default (firstybin == 0, lastybin == -1), all bins in y including over- and underflows are taken into account. If f1=0, a gaussian is assumed Before invoking this function, one can set a subrange to be fitted along X via f1->SetRange(xmin,xmax) The argument option (default="QNR") can be used to change the fit options.
The generated histograms are returned by adding them to arr, if arr is not NULL. arr's SetOwner() is called, to signal that it is the user's responsibility to delete the histograms, possibly by deleting the array.
will already delete the histograms once aSlice goes out of scope. aSlices will contain the histogram for the i-th parameter of the fit function at aSlices[i]; aSlices[n] (n being the number of parameters) contains the chi2 distribution of the fits.
If arr is NULL, the generated histograms are added to the list of objects in the current directory. It is the user's responsibility to delete these histograms.
Example: Assume a 2-d histogram h2
NOTE: To access the generated histograms in the current directory, do eg:
|
virtual |
Project slices along Y in case of a 2-D histogram, then fit each slice with function f1 and make a histogram for each fit parameter Only bins along X between firstxbin and lastxbin are considered.
By default (firstxbin == 0, lastxbin == -1), all bins in x including over- and underflows are taken into account. If f1=0, a gaussian is assumed Before invoking this function, one can set a subrange to be fitted along Y via f1->SetRange(ymin,ymax) The argument option (default="QNR") can be used to change the fit options.
The generated histograms are returned by adding them to arr, if arr is not NULL. arr's SetOwner() is called, to signal that it is the user's responsibility to delete the histograms, possibly by deleting the array.
will already delete the histograms once aSlice goes out of scope. aSlices will contain the histogram for the i-th parameter of the fit function at aSlices[i]; aSlices[n] (n being the number of parameters) contains the chi2 distribution of the fits.
If arr is NULL, the generated histograms are added to the list of objects in the current directory. It is the user's responsibility to delete these histograms.
Example: Assume a 2-d histogram h2
NOTE: To access the generated histograms in the current directory, do eg:
A complete example of this function is given in tutorial:fitslicesy.C.
Return Global bin number corresponding to binx,y,z.
2-D and 3-D histograms are represented with a one dimensional structure. This has the advantage that all existing functions, such as GetBinContent, GetBinError, GetBinFunction work for all dimensions.
In case of a TH1x, returns binx directly. see TH1::GetBinXYZ for the inverse transformation.
Convention for numbering bins
For all histogram types: nbins, xlow, xup
In case of 2-D or 3-D histograms, a "global bin" number is defined. For example, assuming a 3-D histogram with binx,biny,binz, the function
returns a global/linearized bin number. This global bin is useful to access the bin information independently of the dimension.
Reimplemented from TH1.
Return content of bin number bin.
Implemented in TH1C,S,F,D
Convention for numbering bins
For all histogram types: nbins, xlow, xup
In case of 2-D or 3-D histograms, a "global bin" number is defined. For example, assuming a 3-D histogram with binx,biny,binz, the function
returns a global/linearized bin number. This global bin is useful to access the bin information independently of the dimension.
Reimplemented from TH1.
Reimplemented in TH2Poly, TProfile2D, TProfile2Poly, and TProfile2Poly.
Reimplemented from TH1.
Reimplemented in TProfile2D, TH2Poly, and TProfile2Poly.
Reimplemented from TH1.
Reimplemented in TProfile2D, TH2Poly, and TProfile2Poly.
Reimplemented from TH1.
Reimplemented in TProfile2D, TH2Poly, and TProfile2Poly.
Reimplemented from TH1.
Reimplemented in TProfile2D, TH2Poly, and TProfile2Poly.
|
virtual |
compute first cell (binx,biny) in the range [firstxbin,lastxbin][firstybin,lastybin] for which diff = abs(cell_content-c) <= maxdiff In case several cells in the specified range with diff=0 are found the first cell found is returned in binx,biny.
In case several cells in the specified range satisfy diff <=maxdiff the cell with the smallest difference is returned in binx,biny. In all cases the function returns the smallest difference.
NOTE1: if firstxbin < 0, firstxbin is set to 1 if (lastxbin < firstxbin then lastxbin is set to the number of bins in X ie if firstxbin=1 and lastxbin=0 (default) the search is on all bins in X except for X's under- and overflow bins. if firstybin < 0, firstybin is set to 1 if (lastybin < firstybin then lastybin is set to the number of bins in Y ie if firstybin=1 and lastybin=0 (default) the search is on all bins in Y except for Y's under- and overflow bins.
NOTE2: if maxdiff=0 (default), the first cell with content=c is returned.
Return 2 random numbers along axis x and y distributed according to the cell-contents of this 2-D histogram.
Return a NaN if the histogram has a bin with negative content
[out] | x | reference to random generated x value |
[out] | y | reference to random generated y value |
[in] | rng | (optional) Random number generator pointer used (default is gRandom) |
|
overridevirtual |
Fill the array stats from the contents of this histogram The array stats must be correctly dimensioned in the calling program.
If no axis-subranges are specified (via TAxis::SetRange), the array stats is simply a copy of the statistics quantities computed at filling time. If sub-ranges are specified, the function recomputes these quantities from the bin contents in the current axis ranges.
Note that the mean value/StdDev is computed using the bins in the currently defined ranges (see TAxis::SetRange). By default the ranges include all bins from 1 to nbins included, excluding underflows and overflows. To force the underflows and overflows in the computation, one must call the static function TH1::StatOverflows(kTRUE) before filling the histogram.
Reimplemented from TH1.
Reimplemented in TH2Poly, TProfile2D, and TProfile2Poly.
|
virtual |
Return integral of bin contents in range [firstxbin,lastxbin],[firstybin,lastybin] for a 2-D histogram By default the integral is computed as the sum of bin contents in the range.
if option "width" is specified, the integral is the sum of the bin contents multiplied by the bin width in x and in y.
Return integral of bin contents in range [binx1,binx2].
By default the integral is computed as the sum of bin contents in the range. if option "width" is specified, the integral is the sum of the bin contents multiplied by the bin width in x.
Reimplemented from TH1.
Return integral of bin contents.
Only bins in the bins range are considered.
By default the integral is computed as the sum of bin contents in the range. if option "width" is specified, the integral is the sum of the bin contents multiplied by the bin width in x.
Reimplemented from TH1.
Reimplemented in TH2Poly.
Return integral of bin contents.
Only bins in the bins range are considered. By default the integral is computed as the sum of bin contents in the range. if option "width" is specified, the integral is the sum of the bin contents multiplied by the bin width in x and in y.
Reimplemented from TH1.
Reimplemented in TH2Poly.
|
privatevirtual |
Return integral of bin contents in range [binx1,binx2] and its error.
By default the integral is computed as the sum of bin contents in the range. if option "width" is specified, the integral is the sum of the bin contents multiplied by the bin width in x. the error is computed using error propagation from the bin errors assuming that all the bins are uncorrelated
Reimplemented from TH1.
|
virtual |
Return integral of bin contents in range [firstxbin,lastxbin],[firstybin,lastybin] for a 2-D histogram.
Calculates also the integral error using error propagation from the bin errors assuming that all the bins are uncorrelated. By default the integral is computed as the sum of bin contents in the range. if option "width" is specified, the integral is the sum of the bin contents multiplied by the bin width in x and in y.
|
inlineoverridevirtual |
Statistical test of compatibility in shape between THIS histogram and h2, using Kolmogorov test.
Default: Ignore under- and overflow bins in comparison
option is a character string to specify options
The returned function value is the probability of test (much less than one means NOT compatible)
The KS test uses the distance between the pseudo-CDF's obtained from the histogram. Since in 2D the order for generating the pseudo-CDF is arbitrary, two pairs of pseudo-CDF are used, one starting from the x axis the other from the y axis and the maximum distance is the average of the two maximum distances obtained.
Code adapted by Rene Brun from original HBOOK routine HDIFF
Reimplemented from TH1.
TProfile * TH2::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.
The projection is made from the channels along the Y axis ranging from firstybin to lastybin included. By default, bins 1 to ny are included When all bins are included, the number of entries in the projection is set to the number of entries of the 2-D histogram, otherwise the number of entries is incremented by 1 for all non empty cells.
if option "d" is specified, the profile is drawn in the current pad.
if option "o" original axis range of the target axes will be kept, but only bins inside the selected range will be filled.
The option can also be used to specify the projected profile error type. Values which can be used are 's', 'i', or 'g'. See TProfile::BuildOptions for details
Using a TCutG object, it is possible to select a sub-range of a 2-D histogram. One must create a graphical cut (mouse or C++) and specify the name of the cut between [] in the option. For example, with a TCutG named "cutg", one can call: myhist->ProfileX(" ",firstybin,lastybin,"[cutg]"); To invert the cut, it is enough to put a "-" in front of its name: myhist->ProfileX(" ",firstybin,lastybin,"[-cutg]"); It is possible to apply several cuts ("," means logical AND): myhist->ProfileX(" ",firstybin,lastybin,"[cutg1,cutg2]");
NOTE that if a TProfile named "name" exists in the current directory or pad with a compatible axis the profile is reset and filled again with the projected contents of the TH2. In the case of axis incompatibility an error is reported and a NULL pointer is returned.
NOTE that the X axis attributes of the TH2 are copied to the X axis of the profile.
NOTE that the default under- / overflow behavior differs from what ProjectionX does! Profiles take the bin center into account, so here the under- and overflow bins are ignored by default.
NOTE that the return profile histogram is computed using the Y bin center values instead of the real Y values which are used to fill the 2d histogram. Therefore the obtained profile is just an approximation of the correct profile histogram that would be obtained when filling it directly with the original data (see ROOT-7770)
TProfile * TH2::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.
The projection is made from the channels along the X axis ranging from firstxbin to lastxbin included. By default, bins 1 to nx are included When all bins are included, the number of entries in the projection is set to the number of entries of the 2-D histogram, otherwise the number of entries is incremented by 1 for all non empty cells.
if option "d" is specified, the profile is drawn in the current pad.
if option "o" , the original axis range of the target axis will be kept, but only bins inside the selected range will be filled.
The option can also be used to specify the projected profile error type. Values which can be used are 's', 'i', or 'g'. See TProfile::BuildOptions for details Using a TCutG object, it is possible to select a sub-range of a 2-D histogram.
One must create a graphical cut (mouse or C++) and specify the name of the cut between [] in the option. For example, with a TCutG named "cutg", one can call: myhist->ProfileY(" ",firstybin,lastybin,"[cutg]"); To invert the cut, it is enough to put a "-" in front of its name: myhist->ProfileY(" ",firstybin,lastybin,"[-cutg]"); It is possible to apply several cuts: myhist->ProfileY(" ",firstybin,lastybin,"[cutg1,cutg2]");
NOTE that if a TProfile named "name" exists in the current directory or pad with a compatible axis the profile is reset and filled again with the projected contents of the TH2. In the case of axis incompatibility an error is reported and a NULL pointer is returned.
NOTE that the Y axis attributes of the TH2 are copied to the X axis of the profile.
NOTE that the default under- / overflow behavior differs from what ProjectionX does! Profiles take the bin center into account, so here the under- and overflow bins are ignored by default.
NOTE that the return profile histogram is computed using the X bin center values instead of the real X values which are used to fill the 2d histogram. Therefore the obtained profile is just an approximation of the correct profile histogram that would be obtained when filling it directly with the original data (see ROOT-7770)
TH1D * TH2::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.
The projection is always of the type TH1D. The projection is made from the channels along the Y axis ranging from firstybin to lastybin included. By default, all bins including under- and overflow are included. The number of entries in the projection is estimated from the number of effective entries for all the cells included in the projection.
To exclude the underflow bins in Y, use firstybin=1. To exclude the overflow bins in Y, use lastybin=nx.
if option "e" is specified, the errors are computed. if option "d" is specified, the projection is drawn in the current pad. if option "o" original axis range of the target axes will be kept, but only bins inside the selected range will be filled.
Using a TCutG object, it is possible to select a sub-range of a 2-D histogram. One must create a graphical cut (mouse or C++) and specify the name of the cut between [] in the option. For example, with a TCutG named "cutg", one can call: myhist->ProjectionX(" ",firstybin,lastybin,"[cutg]"); To invert the cut, it is enough to put a "-" in front of its name: myhist->ProjectionX(" ",firstybin,lastybin,"[-cutg]"); It is possible to apply several cuts: myhist->ProjectionX(" ",firstybin,lastybin,"[cutg1,cutg2]");
NOTE that if a TH1D named "name" exists in the current directory or pad the histogram is reset and filled again with the projected contents of the TH2.
NOTE that the X axis attributes of the TH2 are copied to the X axis of the projection.
TH1D * TH2::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.
The projection is always of the type TH1D. The projection is made from the channels along the X axis ranging from firstxbin to lastxbin included. By default, all bins including under- and overflow are included. The number of entries in the projection is estimated from the number of effective entries for all the cells included in the projection
To exclude the underflow bins in X, use firstxbin=1. To exclude the overflow bins in X, use lastxbin=nx.
if option "e" is specified, the errors are computed. if option "d" is specified, the projection is drawn in the current pad. if option "o" original axis range of the target axes will be kept, but only bins inside the selected range will be filled.
Using a TCutG object, it is possible to select a sub-range of a 2-D histogram. One must create a graphical cut (mouse or C++) and specify the name of the cut between [] in the option. For example, with a TCutG named "cutg", one can call: myhist->ProjectionY(" ",firstxbin,lastxbin,"[cutg]"); To invert the cut, it is enough to put a "-" in front of its name: myhist->ProjectionY(" ",firstxbin,lastxbin,"[-cutg]"); It is possible to apply several cuts: myhist->ProjectionY(" ",firstxbin,lastxbin,"[cutg1,cutg2]");
NOTE that if a TH1D named "name" exists in the current directory or pad and having a compatible axis, the histogram is reset and filled again with the projected contents of the TH2. In the case of axis incompatibility, an error is reported and a NULL pointer is returned.
NOTE that the Y axis attributes of the TH2 are copied to the X axis of the projection.
|
overridevirtual |
Replace current statistics with the values in array stats.
Reimplemented from TH1.
Reimplemented in TProfile2D.
Compute the X distribution of quantiles in the other variable Y name is the name of the returned histogram prob is the probability content for the quantile (0.5 is the default for the median) An approximate error for the quantile is computed assuming that the distribution in the other variable is normal.
According to this approximate formula the error on the quantile is estimated as sqrt( p (1-p) / ( n * f(q)^2) ), where p is the probability content of the quantile and n is the number of events used to compute the quantile and f(q) is the probability distribution for the other variable evaluated at the obtained quantile. In the error estimation the probability is then assumed to be a normal distribution.
Compute the Y distribution of quantiles in the other variable X name is the name of the returned histogram prob is the probability content for the quantile (0.5 is the default for the median) An approximate error for the quantile is computed assuming that the distribution in the other variable is normal.
|
overridevirtual |
Override TH1::Rebin as TH2::RebinX Rebinning in variable binning as for TH1 is not allowed If a non-null pointer is given an error is flagged see RebinX and Rebin2D.
Reimplemented from TH1.
Rebin this histogram grouping nxgroup/nygroup bins along the xaxis/yaxis together.
if newname is not blank a new temporary histogram hnew is created. else the current histogram is modified (default) The parameter nxgroup/nygroup indicate how many bins along the xaxis/yaxis of this have to me merged into one bin of hnew If the original histogram has errors stored (via Sumw2), the resulting histograms has new errors correctly calculated.
examples: if hpxpy is an existing TH2 histogram with 40 x 40 bins
NOTE : If nxgroup/nygroup is not an exact divider of the number of bins, along the xaxis/yaxis the top limit(s) of the rebinned histogram is changed to the upper edge of the xbin=newxbins*nxgroup resp. ybin=newybins*nygroup and the corresponding bins are added to the overflow bin. Statistics will be recomputed from the new bin contents.
Reimplemented in TProfile2D.
Rebin only the Y axis see Rebin2D.
Reimplemented in TProfile2D.
|
overridevirtual |
|
virtual |
When the mouse is moved in a pad containing a 2-d view of this histogram a second canvas shows the projection along X corresponding to the mouse position along Y.
To stop the generation of the projections, delete the canvas containing the projection.
nbins | number of bins in Y to sum across for the projection |
When the mouse is moved in a pad containing a 2-d view of this histogram two canvases show the projection along X and Y corresponding to the mouse position along Y and X, respectively.
To stop the generation of the projections, delete the canvas containing the projection.
nbinsY | number of bins in Y to sum across for the x projection |
nbinsX | number of bins in X to sum across for the y projection |
|
virtual |
When the mouse is moved in a pad containing a 2-d view of this histogram a second canvas shows the projection along Y corresponding to the mouse position along X.
To stop the generation of the projections, delete the canvas containing the projection.
nbins | number of bins in X to sum across for the projection |
|
overridevirtual |
Interface to TSpectrum2::Search the function finds peaks in this histogram where the width is > sigma and the peak maximum greater than threshold*maximum bin content of this.
for more details see TSpectrum::Search. note the difference in the default value for option compared to TSpectrum2::Search option="" by default (instead of "goff")
Reimplemented from TH1.
Smooth bin contents of this 2-d histogram using kernel algorithms similar to the ones used in the raster graphics community.
Bin contents in the active range are replaced by their smooth values. The algorithm retains the input dimension by using Kernel Crop at the input boundaries. Kernel Crop sets any pixel in the kernel that extends past the input to zero and adjusts the normalization accordingly. If Errors are defined via Sumw2, they are also scaled and computed. However, note the resulting errors will be correlated between different-bins, so the errors should not be used blindly to perform any calculation involving several bins, like fitting the histogram. One would need to compute also the bin by bin correlation matrix.
3 kernels are proposed k5a, k5b and k3a. k5a and k5b act on 5x5 cells (i-2,i-1,i,i+1,i+2, and same for j) k5b is a bit more stronger in smoothing k3a acts only on 3x3 cells (i-1,i,i+1, and same for j). By default the kernel "k5a" is used. You can select the kernels "k5b" or "k3a" via the option argument. If TAxis::SetRange has been called on the x or/and y axis, only the bins in the specified range are smoothed. In the current implementation if the first argument is not used (default value=1).
implementation by David McKee (dmcke.nosp@m.e@ba.nosp@m.ma.ua.nosp@m..edu). Extended by Rene Brun
Reimplemented from TH1.
|
overridevirtual |
|
inline |