112   gROOT->GetListOfCleanups()->Remove(
this);
 
  114   auto safeDelete = [](
TObject *obj) {
 
  123   for (
unsigned int i=0;i<
fGridlines.size();++i) {
 
  154   if (optionString.
Contains(
"divsym")) {
 
  157   } 
else if (optionString.
Contains(
"diffsig")) {
 
  162      if (optionString.
Contains(
"errasym")) {
 
  167      if (optionString.
Contains(
"errfunc")) {
 
  171   } 
else if (optionString.
Contains(
"diff")) {
 
  205   gROOT->GetListOfCleanups()->Add(
this);
 
  208      Warning(
"TRatioPlot", 
"Need two histograms.");
 
  215   if (!h1IsTH1 && !h2IsTH1) {
 
  216      Warning(
"TRatioPlot", 
"Need two histograms deriving from TH2 or TH3.");
 
  237      Warning(
"TRatioPlot", 
"Need a histogram and a stack");
 
  243   if (stackHists->
GetSize() == 0) {
 
  244      Warning(
"TRatioPlot", 
"Stack does not have histograms");
 
  251   for (
int i=0;i<stackHists->
GetSize();++i) {
 
  252      tmpHist->
Add((
TH1*)stackHists->
At(i));
 
  272   gROOT->GetListOfCleanups()->Add(
this);
 
  275      Warning(
"TRatioPlot", 
"Need a histogram.");
 
  282      Warning(
"TRatioPlot", 
"Need a histogram deriving from TH2 or TH3.");
 
  288   if (h1Functions->
GetSize() < 1) {
 
  289      Warning(
"TRatioPlot", 
"Histogram given needs to have a (fit) function associated with it");
 
  303   if (optionString.
Contains(
"errasym")) {
 
  308   if (optionString.
Contains(
"errfunc")) {
 
  389      Error(
"SetupPads", 
"need to create a canvas first");
 
  404   fUpperPad->
Connect(
"RangeAxisChanged()", 
"TRatioPlot", 
this, 
"RangeAxisChanged()");
 
  405   fLowerPad->
Connect(
"RangeAxisChanged()", 
"TRatioPlot", 
this, 
"RangeAxisChanged()");
 
  429   Draw(
b ? 
b->GetDrawOption() : 
"");
 
  552   } 
else if (drawOpt.
Contains(
"grid")) {
 
  557   if (drawOpt.
Contains(
"noconfint")) {
 
  560   } 
else if (drawOpt.
Contains(
"confint")) {
 
  567   } 
else if (drawOpt.
Contains(
"fhidelow")) {
 
  569   } 
else if (drawOpt.
Contains(
"hideup")) {
 
  571   } 
else if (drawOpt.
Contains(
"hidelow")) {
 
  573   } 
else if (drawOpt.
Contains(
"nohide")) {
 
  580      Error(
"Draw", 
"need to create a canvas first");
 
  614         Error(
"BuildLowerPlot", 
"h1 does not have a fit function");
 
  638            Warning(
"Draw", 
"Draw proxy not of type TH1 or THStack, not drawing it");
 
  676      Error(
"GetLowerRefGraph", 
"Lower pad has not been defined");
 
  681   if (primlist->
GetSize() == 0) {
 
  682      Error(
"GetLowerRefGraph", 
"Lower pad does not have primitives");
 
  698   Error(
"GetLowerRefGraph", 
"Did not find graph in list");
 
  712      refobj = primlist->
At(i);
 
  718   Error(
"GetUpperRefObject", 
"No upper ref object of TH1 or THStack type found");
 
  733      return ((
TH1*)refobj)->GetXaxis();
 
  735      return ((
THStack*)refobj)->GetXaxis();
 
  752      return ((
TH1*)refobj)->GetYaxis();
 
  754      return ((
THStack*)refobj)->GetYaxis();
 
  781      if (
y < lowYFirst || lowYLast < 
y) {
 
  789   for (
unsigned int i=0;i<
fGridlines.size();++i) {
 
  795   for (
unsigned int i=0;i<
dest;++i) {
 
  805   unsigned int skipped = 0;
 
  809      if (
y < lowYFirst || lowYLast < 
y) {
 
  873   static Double_t divideGridlines[] = {0.7, 1.0, 1.3};
 
  874   static Double_t diffGridlines[] = {0.0};
 
  875   static Double_t signGridlines[] = {1.0, 0.0, -1.0};
 
  929            if (val - val2 > 0) {
 
  940            Warning(
"BuildLowerPlot", 
"error mode is invalid");
 
  946            res = (val - val2) / error;
 
  964         Error(
"BuildLowerPlot", 
"h1 does not have a fit function");
 
  974      std::vector<double> ci1;
 
  975      std::vector<double> ci2;
 
  995            ci1.push_back(ci_arr1[i-1]);
 
 1000            ci2.push_back(ci_arr2[i-1]);
 
 1005            ci1.push_back(ci_arr1[i-1]);
 
 1009            ci2.push_back(ci_arr2[i-1]);
 
 1038            error = sqrt(func->
Eval(
x));
 
 1041            Warning(
"BuildLowerPlot", 
"error mode is invalid");
 
 1079      Error(
"BuildLowerPlot", 
"Invalid fMode value");
 
 1087      Error(
"BuildLowerPlot", 
"Error creating lower graph");
 
 1107   TString thisfunc = 
"CreateVisualAxes";
 
 1145      if (upYFirst <= 0 || upYLast <= 0) {
 
 1146         Error(thisfunc, 
"Cannot set upper Y axis to log scale");
 
 1154      if (lowYFirst <= 0 || lowYLast <= 0) {
 
 1155         Error(thisfunc, 
"Cannot set lower Y axis to log scale");
 
 1162      if (
first <= 0 || last <= 0) {
 
 1163         Error(thisfunc, 
"Cannot set X axis to log scale");
 
 1169   if (logx) xopt.
Append(
"G");
 
 1171   if (uplogy) upyopt.
Append(
"G");
 
 1173   if (lowlogy) lowyopt.
Append(
"G");
 
 1248   Double_t ratio = ( (upBM-(1-upTM))*(1-sf) ) / ( (lowBM-(1-lowTM))*sf ) ;
 
 1285   if (axistop || axisright) {
 
 1423      verticalChanged = 
kTRUE;
 
 1430      verticalChanged = 
kTRUE;
 
 1448   if (verticalChanged) {
 
 1452   return changed || verticalChanged;
 
 1506   if (upFirst != globFirst || upLast != globLast) {
 
 1510   else if (lowFirst != globFirst || lowLast != globLast) {
 
 1515   if (upChanged || lowChanged) {
 
 1530   if (marginsChanged) {
 
 1574   Float_t lowyup = lowylow + lowh;
 
 1603   return siblings->
FindObject(
this) != 
nullptr;
 
 1612      Warning(
"SetSplitFraction", 
"Can only be used after TRatioPlot has been drawn.");
 
 1633      Warning(
"SetInsetWidth", 
"Can only be used after TRatioPlot has been drawn.");
 
 1684   for (
Int_t i=0;i<numGridlines;++i) {
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t height
 
void GetConfidenceIntervals(unsigned int n, unsigned int stride1, unsigned int stride2, const double *x, double *ci, double cl=0.95, bool norm=false) const
get confidence intervals for an array of n points x.
 
virtual Color_t GetTitleColor() const
 
virtual Color_t GetLabelColor() const
 
virtual Int_t GetNdivisions() const
 
virtual Color_t GetAxisColor() const
 
virtual Style_t GetTitleFont() const
 
virtual Float_t GetLabelOffset() const
 
virtual Style_t GetLabelFont() const
 
virtual Float_t GetTitleSize() const
 
virtual Float_t GetLabelSize() const
 
virtual Float_t GetTickLength() const
 
virtual Float_t GetTitleOffset() const
 
virtual void SetFillColor(Color_t fcolor)
Set the fill area color.
 
virtual void SetLineStyle(Style_t lstyle)
Set the line style.
 
virtual void SetLineColor(Color_t lcolor)
Set the line color.
 
virtual void SetBottomMargin(Float_t bottommargin)
Set Pad bottom margin in fraction of the pad height.
 
virtual void SetLeftMargin(Float_t leftmargin)
Set Pad left margin in fraction of the pad width.
 
Style_t GetFrameFillStyle() const
 
Float_t GetLeftMargin() const
 
Float_t GetBottomMargin() const
 
virtual void SetRightMargin(Float_t rightmargin)
Set Pad right margin in fraction of the pad width.
 
Float_t GetRightMargin() const
 
virtual void SetTopMargin(Float_t topmargin)
Set Pad top margin in fraction of the pad height.
 
Float_t GetTopMargin() const
 
virtual void SetTextColor(Color_t tcolor=1)
Set the text color.
 
virtual void SetTextFont(Font_t tfont=62)
Set the text font.
 
Class to manage histogram axis.
 
const char * GetTitle() const override
Returns title of object.
 
@ kCenterLabels
Bit 13 is used by TObject.
 
virtual Double_t GetBinLowEdge(Int_t bin) const
Return low edge of bin.
 
Bool_t GetDecimals() const
 
Int_t GetLast() const
Return last bin on the axis i.e.
 
virtual void SetLimits(Double_t xmin, Double_t xmax)
 
virtual void SetRangeUser(Double_t ufirst, Double_t ulast)
Set the viewing range for the axis from ufirst to ulast (in user coordinates, that is,...
 
virtual const char * GetTimeFormat() const
 
virtual void SetRange(Int_t first=0, Int_t last=0)
Set the viewing range for the axis using bin numbers.
 
virtual Double_t GetBinUpEdge(Int_t bin) const
Return up edge of bin.
 
Int_t GetFirst() const
Return first bin on the axis i.e.
 
Using a TBrowser one can browse all ROOT objects.
 
void Destructor(void *obj, Bool_t dtorOnly=kFALSE)
Explicitly call destructor for object.
 
Bool_t InheritsFrom(const char *cl) const override
Return kTRUE if this class inherits from a class with name "classname".
 
virtual Int_t GetSize() const
Return the capacity of the collection, i.e.
 
void Draw(Option_t *option="") override
Draw this function with its current attributes.
 
virtual Double_t Eval(Double_t x, Double_t y=0, Double_t z=0, Double_t t=0) const
Evaluate this function.
 
Extends the ROOT::Fit::Result class with a TNamed inheritance providing easy possibility for I/O.
 
void SetTimeFormat(const char *tformat)
Change the format used for time plotting.
 
void SetTitleOffset(Float_t titleoffset=1)
 
void SetLabelFont(Int_t labelfont)
 
void SetTitleSize(Float_t titlesize)
 
virtual void SetTitle(const char *title="")
Change the title of the axis.
 
void SetLabelOffset(Float_t labeloffset)
 
const char * GetTitle() const override
Returns title of object.
 
virtual void SetNdivisions(Int_t ndiv)
 
void SetWmax(Double_t wmax)
 
void ChangeLabel(Int_t labNum=0, Double_t labAngle=-1., Double_t labSize=-1., Int_t labAlign=-1, Int_t labColor=-1, Int_t labFont=-1, TString labText="")
Define new text attributes for the label number "labNum".
 
void SetLabelColor(Int_t labelcolor)
 
Float_t GetTickSize() const
 
void SetWmin(Double_t wmin)
 
void SetTickSize(Float_t ticksize)
 
void SetLabelSize(Float_t labelsize)
 
void SetOption(Option_t *option="")
To set axis options.
 
TGraph with asymmetric error bars.
 
virtual void Divide(const TH1 *pass, const TH1 *total, Option_t *opt="cp")
Fill this TGraphAsymmErrors by dividing two 1-dimensional histograms pass/total.
 
A TGraphErrors is a TGraph with error bars.
 
virtual void SetPointError(Double_t ex, Double_t ey)
Set ex and ey values for point pointed by the mouse.
 
A TGraph is an object made of two arrays X and Y with npoints each.
 
virtual void SetPoint(Int_t i, Double_t x, Double_t y)
Set x and y values for point number i.
 
TClass * IsA() const override
 
void Draw(Option_t *chopt="") override
Draw this graph with its current attributes.
 
TAxis * GetYaxis() const
Get y axis of the graph.
 
void SetTitle(const char *title="") override
Change (i.e.
 
TClass * IsA() const override
 
TH1 is the base class of all histogram classes in ROOT.
 
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 void Reset(Option_t *option="")
Reset this histogram: contents, errors, etc.
 
virtual Int_t GetNbinsX() const
 
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),...
 
virtual Double_t GetBinErrorLow(Int_t bin) const
Return lower error associated to bin number bin.
 
void Draw(Option_t *option="") override
Draw this histogram with options.
 
TList * GetListOfFunctions() const
 
TClass * IsA() const override
 
virtual Double_t GetBinContent(Int_t bin) const
Return content of bin number bin.
 
virtual Double_t GetBinWidth(Int_t bin) const
Return bin width for 1D histogram.
 
virtual Double_t GetBinErrorUp(Int_t bin) const
Return upper error associated to bin number bin.
 
virtual void Scale(Double_t c1=1, Option_t *option="")
Multiply this histogram by a constant c1.
 
virtual Int_t GetSumw2N() const
 
TObject * Clone(const char *newname="") const override
Make a complete copy of the underlying object.
 
virtual Bool_t Divide(TF1 *f1, Double_t c1=1)
Performs the operation: this = this/(c1*f1) if errors are defined (see TH1::Sumw2),...
 
The Histogram stack class.
 
Use the TLine constructor to create a simple line.
 
virtual void SetY2(Double_t y2)
 
virtual void SetX2(Double_t x2)
 
virtual void SetX1(Double_t x1)
 
virtual void SetY1(Double_t y1)
 
TObject * FindObject(const char *name) const override
Find an object in this list using its name.
 
virtual TObjLink * FirstLink() const
 
TObject * At(Int_t idx) const override
Returns the object at position idx. Returns 0 if idx is out of range.
 
TObject * Clone(const char *newname="") const override
Make a clone of an object using the Streamer facility.
 
Wrapper around a TObject so it can be stored in a TList.
 
TObject * GetObject() const
 
Mother of all ROOT objects.
 
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
 
virtual TObject * Clone(const char *newname="") const
Make a clone of an object using the Streamer facility.
 
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
 
virtual void AppendPad(Option_t *option="")
Append graphics object to current pad.
 
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
 
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
 
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
 
virtual void Draw(Option_t *option="")
Default Draw method for all objects.
 
@ kCannotPick
if object in a pad cannot be picked
 
The most important graphics class in the ROOT system.
 
void SetGridx(Int_t value=1) override
 
Double_t GetUymax() const override
Returns the maximum y-coordinate value visible on the pad. If log axis the returned value is in decad...
 
Double_t GetUymin() const override
Returns the minimum y-coordinate value visible on the pad. If log axis the returned value is in decad...
 
TList * GetListOfPrimitives() const override
 
void SetFillStyle(Style_t fstyle) override
Override TAttFill::FillStyle for TPad because we want to handle style=0 as style 4000.
 
void SetPad(const char *name, const char *title, Double_t xlow, Double_t ylow, Double_t xup, Double_t yup, Color_t color=35, Short_t bordersize=5, Short_t bordermode=-1) override
Set all pad parameters.
 
void Modified(Bool_t flag=1) override
 
void SetLogy(Int_t value=1) override
Set Lin/Log scale for Y.
 
void SetGridy(Int_t value=1) override
 
Double_t GetYlowNDC() const override
 
TVirtualPad * cd(Int_t subpadnumber=0) override
Set Current pad.
 
Int_t GetLogy() const override
 
void Draw(Option_t *option="") override
Draw Pad in Current pad (re-parent pad if necessary).
 
void SetLogx(Int_t value=1) override
Set Lin/Log scale for X.
 
Int_t GetLogx() const override
 
Double_t GetHNDC() const override
Get height of pad along Y in Normalized Coordinates (NDC)
 
Bool_t Connect(const char *signal, const char *receiver_class, void *receiver, const char *slot)
Non-static method is used to connect from the signal of this object to the receiver slot.
 
void SubPadResized()
Slot that handles common resizing of upper and lower pad.
 
@ kForceHideUp
Always hide the first label of the upper y axis.
 
@ kHideUp
Hide the first label of the upper y axis when there is low space.
 
@ kNoHide
Do not hide labels when there is low space.
 
@ kHideLow
Hide the last label of the lower y axis when there is low space.
 
@ kForceHideLow
Always hide the last label of the lower y axis.
 
TGraphErrors * fConfidenceInterval2
Stores the graph for the 2 sigma band.
 
TAxis * GetLowerRefXaxis() const
Shortcut for:
 
Int_t fErrorMode
Stores the error mode, sym, asym or func.
 
TAxis * GetLowerRefYaxis() const
Shortcut for:
 
TGaxis * fUpperGXaxisMirror
Upper mirror of the x axis.
 
TGaxis * fLowerGXaxisMirror
Lower mirror of the x axis.
 
TAxis * GetUpperRefYaxis() const
Gets the y axis of the object returned by TRatioPlot::GetUpperRefObject.
 
Float_t fLowBottomMargin
Stores the bottom margin of the lower pad.
 
Int_t BuildLowerPlot()
Build the lower plot according to which constructor was called, and which options were passed.
 
void SetUpBottomMargin(Float_t margin)
Sets the bottom margin of the upper pad.
 
Float_t fUpBottomMargin
Stores the bottom margin of the upper pad.
 
TH1 * fH1
Stores the primary histogram.
 
void SetH2DrawOpt(Option_t *opt)
Sets the drawing option for h2.
 
TFitResult * fFitResult
Stores the explicit fit result given in the fit residual case. Can be 0.
 
virtual Bool_t SyncPadMargins()
Figures out which pad margin has deviated from the stored ones, to figure out what the new nominal is...
 
Color_t fCi1Color
Stores the color for the 1 sigma band.
 
TGaxis * fUpperGYaxis
Upper graphical y axis.
 
Double_t fC2
Stores the scale factor for h2.
 
void SetLowBottomMargin(Float_t margin)
Sets the bottom margin of the lower pad.
 
void SetConfidenceIntervalColors(Color_t ci1=kYellow, Color_t ci2=kGreen)
Set the confidence interval colors.
 
Bool_t IsDrawn()
Check if ... is drawn.
 
Double_t fC1
Stores the scale factor for h1 (or THStack sum)
 
virtual void CreateVisualAxes()
(Re-)Creates the TGAxis objects that are used for consistent display of the axes.
 
Float_t fLowTopMargin
Stores the top margin of the lower pad.
 
TString fH2DrawOpt
Stores draw option for h2 given in constructor.
 
void SetUpTopMargin(Float_t margin)
Sets the top margin of the upper pad.
 
TGaxis * fLowerGXaxis
Lower graphical x axis.
 
TRatioPlot()
TRatioPlot default constructor.
 
Bool_t fIsUpdating
Keeps track of whether its currently updating to reject other calls until done.
 
void SetGraphDrawOpt(Option_t *opt)
Sets the drawing option for the lower graph.
 
Double_t fCl1
Stores the confidence level for the inner confidence interval band.
 
virtual ~TRatioPlot()
Destructor.
 
@ kErrorAsymmetric
Use TH1::GetBinErrorUp and TH1::GetBinErrorLow for the error, depending on y values.
 
@ kErrorFunc
Use the square root of the function value as the error.
 
@ kErrorSymmetric
Use the regular TH1::GetBinError as the error.
 
Float_t GetSeparationMargin() const
Return the separation margin value.
 
void ImportAxisAttributes(TGaxis *gaxis, TAxis *axis)
Internal method to import TAxis attributes to a TGaxis.
 
void SetFitDrawOpt(Option_t *opt)
Sets the drawing option for the fit in the fit residual case.
 
std::vector< TLine * > fGridlines
Keeps TLine objects for the gridlines.
 
void SetPadMargins()
Sets the margins of all the pads to the value specified in class members.
 
TPad * fLowerPad
The pad which contains the calculated lower plot part.
 
TAxis * fSharedXAxis
X axis that stores the range for both plots.
 
TString fFitDrawOpt
Stores draw option for the fit function in the fit residual case.
 
virtual void SetGridlines(Double_t *gridlines, Int_t numGridlines)
Set where horizontal, dashed lines are drawn on the lower pad.
 
TGaxis * fUpperGYaxisMirror
Upper mirror of the y axis.
 
virtual void SetupPads()
Setup the pads.
 
TAxis * fUpYaxis
Clone of the upper y axis.
 
TVirtualPad * fParentPad
Stores the pad the ratio plot was created in.
 
Float_t fUpTopMargin
Stores the top margin of the upper pad.
 
void SetH1DrawOpt(Option_t *opt)
Sets the drawing option for h1.
 
TGraph * fRatioGraph
Stores the lower plot's graph.
 
virtual TGraph * GetLowerRefGraph() const
Returns the reference graph for the lower pad, which means the graph that is responsible for setting ...
 
Int_t fMode
Stores which calculation is supposed to be performed as specified by user option.
 
void SetSplitFraction(Float_t sf)
Set the fraction of the parent pad, at which the to sub pads should meet.
 
TObject * fHistDrawProxy
The object which is actually drawn, this might be TH1 or THStack.
 
Float_t fRightMargin
Stores the common right margin of both pads.
 
TGaxis * fLowerGYaxisMirror
Lower mirror of the y axis.
 
Int_t fHideLabelMode
Stores which label to hide if the margin is to narrow, if at all.
 
void CreateGridline()
Create a grid line.
 
TPad * fTopPad
The Pad that drawn on top on the others to have consistent coordinates.
 
void SetInsetWidth(Double_t width)
Set the inset on the outer sides of all the pads.
 
void Browse(TBrowser *b) override
Browse.
 
virtual void SyncAxesRanges()
Syncs the axes ranges from the shared ones to the actual ones.
 
void RangeAxisChanged()
Slot that receives the RangeAxisChanged signal from any of the pads and reacts correspondingly.
 
@ kDifference
Calculate the difference between the histograms.
 
@ kDivideHist
Use TH1::Divide to create the ratio.
 
@ kFitResidual
Calculate the fit residual between the histogram and a fit stored within it.
 
@ kDifferenceSign
Calculate the difference divided by the error.
 
@ kDivideGraph
Use TGraphAsymmErrors::Divide to create the ratio.
 
void UnZoomed()
Slot for the UnZoomed signal that was introduced to TAxis.
 
Bool_t fIsPadUpdating
Keeps track whether pads are updating during resizing.
 
TH1 * fH2
Stores the secondary histogram, if there is one.
 
Double_t fCl2
Stores the confidence level for the outer confidence interval band.
 
TAxis * fLowYaxis
Clone of the lower y axis.
 
TString fOption
Stores the option which is given in the constructor as a string.
 
TPad * fUpperPad
The pad which contains the upper plot part.
 
Bool_t fShowConfidenceIntervals
Stores whether to show the confidence interval bands. From Draw option.
 
void SetLowTopMargin(Float_t margin)
Sets the top margin of the lower pad.
 
void SetSeparationMargin(Float_t)
Sets the margin that separates the two pads.
 
void SetLeftMargin(Float_t margin)
Sets the left margin of both pads.
 
Float_t fLeftMargin
Stores the common left margin of both pads.
 
TAxis * GetUpperRefXaxis() const
Gets the x axis of the object returned by TRatioPlot::GetUpperRefObject.
 
Float_t fSplitFraction
Stores the fraction at which the upper and lower pads meet.
 
void Paint(Option_t *opt="") override
Creates the visual axes when painting.
 
virtual TObject * GetUpperRefObject() const
Return the reference object.
 
TGraphErrors * fConfidenceInterval1
Stores the graph for the 1 sigma band.
 
TGaxis * fUpperGXaxis
Upper graphical x axis.
 
std::vector< double > fGridlinePositions
Stores the y positions for the gridlines.
 
TString fH1DrawOpt
Stores draw option for h1 given in constructor.
 
virtual void Init(TH1 *h1, TH1 *h2, Option_t *option="")
Internal method that shares constructor logic.
 
Bool_t fShowGridlines
Stores whether to show the gridlines at all.
 
void Draw(Option_t *chopt="") override
Draws the ratio plot to the currently active pad.
 
TString fGraphDrawOpt
Stores draw option for the lower plot graph given in constructor.
 
Color_t fCi2Color
Stores the color for the 2 sigma band.
 
void SetRightMargin(Float_t margin)
Sets the right margin of both pads.
 
TGaxis * fLowerGYaxis
Lower graphical y axis.
 
void SetConfidenceLevels(Double_t cl1, Double_t cl2)
Sets the confidence levels used to calculate the bands in the fit residual case.
 
const char * Data() const
 
TString & ReplaceAll(const TString &s1, const TString &s2)
 
TString & Append(const char *cs)
 
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
 
virtual void GetConfidenceIntervals(Int_t n, Int_t ndim, const Double_t *x, Double_t *ci, Double_t cl=0.95)
return confidence intervals in array x of dimension ndim implemented in TFitter and TLinearFitter
 
static TVirtualFitter * GetFitter()
static: return the current Fitter
 
small helper class to store/restore gPad context in TPad methods
 
TVirtualPad is an abstract base class for the Pad and Canvas classes.
 
virtual void Modified(Bool_t flag=1)=0
 
virtual void SetLogx(Int_t value=1)=0
 
virtual TList * GetListOfPrimitives() const =0
 
virtual TVirtualPad * cd(Int_t subpadnumber=0)=0
 
virtual Bool_t GetGridx() const =0
 
virtual Int_t GetTicky() const =0
 
virtual Int_t GetLogy() const =0
 
virtual Double_t GetHNDC() const =0
 
virtual Double_t GetWNDC() const =0
 
virtual Int_t GetTickx() const =0
 
virtual Int_t GetLogx() const =0
 
virtual Bool_t GetGridy() const =0
 
R__ALWAYS_INLINE bool HasBeenDeleted(const TObject *obj)
Check if the TObject's memory has been deleted.
 
LongDouble_t Power(LongDouble_t x, LongDouble_t y)
Returns x raised to the power y.
 
#define dest(otri, vertexptr)