Logo ROOT   6.12/07
Reference Guide
TRatioPlot.h
Go to the documentation of this file.
1 // @(#)root/gpad:$Id$
2 // Author: Paul Gessinger 25/08/2016
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2016, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TRatioPlot
13 #define ROOT_TRatioPlot
14 
15 
16 //////////////////////////////////////////////////////////////////////////
17 // //
18 // ROOT_TRatioPlot //
19 // //
20 // A collection of histograms //
21 // //
22 //////////////////////////////////////////////////////////////////////////
23 
24 #include "TObject.h"
25 
26 #include "TString.h"
27 
28 #include "TGraph.h"
29 
30 class TH1;
31 class TPad;
32 class TVirtualPad;
33 class TGraphAsymmErrors;
34 class TGraphErrors;
35 class TAxis;
36 class TGaxis;
37 class TLine;
38 class TFitResultPtr;
39 class TFitResult;
40 class THStack;
41 class TBrowser;
42 class TFileMergeInfo;
43 
44 class TRatioPlot : public TObject {
45 
46 private:
47  TRatioPlot& operator=(const TRatioPlot&) = delete; // Not implemented
48  TRatioPlot(const TRatioPlot &hrp) = delete;
49 
51  kDivideHist = 1, ///< Use `TH1::Divide` to create the ratio.
52  kDivideGraph = 2, ///< Use `TGraphAsymmErrors::Divide` to create the ratio.
53  kDifference = 3, ///< Calculate the difference between the histograms.
54  kFitResidual = 4, ///< Calculate the fit residual between the histogram and a fit stored within it.
55  kDifferenceSign = 5 ///< Calculate the difference divided by the error.
56  };
57 
58  enum ErrorMode {
59  kErrorSymmetric = 1, ///< Use the regular `TH1::GetBinError` as the error
60  kErrorAsymmetric = 2, ///< Use `TH1::GetBinErrorUp` and `TH1::GetBinErrorLow` for the error, depending on y values.
61  kErrorFunc = 3 ///< Use the square root of the function value as the error.
62  };
63 
65  kHideUp = 1, ///< Hide the first label of the upper y axis when there is low space.
66  kHideLow = 2, ///< Hide the last label of the lower y axis when there is low space.
67  kNoHide = 3, ///< Do not hide labels when there is low space.
68  kForceHideUp = 4, ///< Always hide the first label of the upper y axis
69  kForceHideLow = 5 ///< Always hide the last label of the lower y axis
70  };
71 
72 
73 protected:
74 
75  TVirtualPad *fParentPad = 0; ///< Stores the pad the ratio plot was created in
76  TPad *fUpperPad = 0; ///< The pad which contains the upper plot part
77  TPad *fLowerPad = 0; ///< The pad which contains the calculated lower plot part
78  TPad *fTopPad = 0; ///< The Pad that drawn on top on the others to have consistent coordinates
79 
80  TH1 *fH1 = 0; ///< Stores the primary histogram
81  TH1 *fH2 = 0; ///< Stores the secondary histogram, if there is one
82  TObject *fHistDrawProxy = 0; ///< The object which is actually drawn, this might be TH1 or THStack
83 
84  Int_t fMode = 0; ///< Stores which calculation is supposed to be performed as specified by user option
85  Int_t fErrorMode = TRatioPlot::ErrorMode::kErrorSymmetric; ///< Stores the error mode, sym, asym or func
86  TString fOption = ""; ///< Stores the option which is given in the constructor as a string
87  TString fH1DrawOpt = ""; ///< Stores draw option for h1 given in constructor
88  TString fH2DrawOpt = ""; ///< Stores draw option for h2 given in constructor
89  TString fGraphDrawOpt = ""; ///< Stores draw option for the lower plot graph given in constructor
90  TString fFitDrawOpt = ""; ///< Stores draw option for the fit function in the fit residual case
91 
92  Float_t fSplitFraction = 0.3; ///< Stores the fraction at which the upper and lower pads meet
93 
94  TGraph *fRatioGraph = 0; ///< Stores the lower plot's graph
95  TGraphErrors *fConfidenceInterval1 = 0; ///< Stores the graph for the 1 sigma band
96  TGraphErrors *fConfidenceInterval2 = 0; ///< Stores the graph for the 2 sigma band
97  Color_t fCi1Color = kGreen; ///< Stores the color for the 1 sigma band
98  Color_t fCi2Color = kYellow; ///< Stores the color for the 2 sigma band
99 
100  Bool_t fShowConfidenceIntervals = kTRUE; ///< Stores whether to show the confidence interval bands. From Draw option
101 
102  Double_t fCl1 = 0.6827; ///< Stores the confidence level for the inner confidence interval band
103  Double_t fCl2 = 0.9545; ///< Stores the confidence level for the outer confidence interval band
104 
105  Double_t fC1 = 1.; ///< Stores the scale factor for h1 (or THStack sum)
106  Double_t fC2 = 1.; ///< Stores the scale factor for h2
107 
108  TFitResult *fFitResult = 0; ///< Stores the explicit fit result given in the fit residual case. Can be 0
109 
110  TAxis *fSharedXAxis = 0; ///< X axis that stores the range for both plots
111  TGaxis *fUpperGXaxis = 0; ///< Upper graphical x axis
112  TGaxis *fLowerGXaxis = 0; ///< Lower graphical x axis
113  TGaxis *fUpperGYaxis = 0; ///< Upper graphical y axis
114  TGaxis *fLowerGYaxis = 0; ///< Lower graphical y axis
115  TGaxis *fUpperGXaxisMirror = 0; ///< Upper mirror of the x axis
116  TGaxis *fLowerGXaxisMirror = 0; ///< Lower mirror of the x axis
117  TGaxis *fUpperGYaxisMirror = 0; ///< Upper mirror of the y axis
118  TGaxis *fLowerGYaxisMirror = 0; ///< Lower mirror of the y axis
119 
120  TAxis *fUpYaxis = 0; ///< Clone of the upper y axis
121  TAxis *fLowYaxis = 0; ///< Clone of the lower y axis
122 
123  std::vector<TLine*> fGridlines; ///< Keeps TLine objects for the gridlines
124  std::vector<double> fGridlinePositions; ///< Stores the y positions for the gridlines
125  Bool_t fShowGridlines = kTRUE; ///< Stores whether to show the gridlines at all
126  Int_t fHideLabelMode = TRatioPlot::HideLabelMode::kHideLow; ///< Stores which label to hide if the margin is to narrow, if at all
127 
128  // store margins to be able do determine
129  // what has changed when user drags
130  Float_t fUpTopMargin = 0.1; ///< Stores the top margin of the upper pad
131  Float_t fUpBottomMargin = 0.05; ///< Stores the bottom margin of the upper pad
132  Float_t fLowTopMargin = 0.05; ///< Stores the top margin of the lower pad
133  Float_t fLowBottomMargin = 0.3; ///< Stores the bottom margin of the lower pad
134 
135  Float_t fLeftMargin = 0.1; ///< Stores the common left margin of both pads
136  Float_t fRightMargin = 0.1; ///< Stores the common right margin of both pads
137 
139 
140  Bool_t fIsUpdating = kFALSE; ///< Keeps track of whether its currently updating to reject other calls until done
141  Bool_t fIsPadUpdating = kFALSE; ///< Keeps track whether pads are updating during resizing
142 
143  virtual void SyncAxesRanges();
144  virtual void SetupPads();
145  virtual void CreateVisualAxes();
146  virtual Bool_t SyncPadMargins();
147  void SetPadMargins();
148  void CreateGridline();
150 
151  void ImportAxisAttributes(TGaxis* gaxis, TAxis* axis);
152 
153  Bool_t IsDrawn();
154 
155  virtual void Init(TH1* h1, TH1* h2, Option_t *option = "");
156 
157 public:
158 
159  TRatioPlot();
160  virtual ~TRatioPlot();
161  TRatioPlot(TH1* h1, TH1* h2, Option_t *option = "pois");
162 
163  TRatioPlot(THStack* st, TH1* h2, Option_t *option = "pois");
164 
165  TRatioPlot(TH1* h1, Option_t *option = "", TFitResult *fitres = 0);
166 
167  void SetH1DrawOpt(Option_t *opt);
168  void SetH2DrawOpt(Option_t *opt);
169  void SetGraphDrawOpt(Option_t *opt);
170  void SetFitDrawOpt(Option_t *opt);
171 
172  void SetInsetWidth(Double_t width);
173 
174  virtual void Draw(Option_t *chopt="");
175  virtual void Browse(TBrowser *b);
176 
177 
178  virtual void Paint(Option_t *opt = "");
179 
180  // Slots for signal receiving
181  void UnZoomed();
182  void RangeAxisChanged();
183  void SubPadResized();
184 
185  // Getters
186  TAxis *GetXaxis() const { return fSharedXAxis; }
187  TAxis *GetUpYaxis() const { return fUpYaxis; }
188  TAxis *GetLowYaxis() const { return fLowYaxis; }
189 
190  virtual TGraph *GetLowerRefGraph() const;
191 
192  ////////////////////////////////////////////////////////////////////////////////
193  /// Shortcut for:
194  ///
195  /// ~~~{.cpp}
196  /// rp->GetLowerRefGraph()->GetXaxis();
197  /// ~~~
198 
200 
201  ////////////////////////////////////////////////////////////////////////////////
202  /// Shortcut for:
203  ///
204  /// ~~~{.cpp}
205  /// rp->GetLowerRefGraph()->GetYaxis();
206  /// ~~~
207 
209 
210  virtual TObject *GetUpperRefObject() const;
211  TAxis *GetUpperRefXaxis() const;
212  TAxis *GetUpperRefYaxis() const;
213 
214  ////////////////////////////////////////////////////////////////////////////////
215  /// Get the output of the calculation in the form of a graph. The type of
216  /// the return value depends on the input option that was given in the constructor.
217 
219 
220  ////////////////////////////////////////////////////////////////////////////////
221  /// Returns the graph for the 1 sigma confidence interval in the fit residual case
222 
224 
225  ////////////////////////////////////////////////////////////////////////////////
226  /// Returns the graph for the 2 sigma confidence interval in the fit residual case
227 
229 
230  TPad * GetUpperPad() const { return fUpperPad; }
231  TPad * GetLowerPad() const { return fLowerPad; }
232 
233  // Setters
234 
235  ////////////////////////////////////////////////////////////////////////////////
236  /// Explicitly specify the fit result that is to be used for fit residual calculation.
237  /// If it is not provided, the last fit registered in the global fitter is used.
238  /// The fit result can also be specified in the constructor.
239  ///
240  /// \param fitres The fit result coming from the fit function call
241 
242  void SetFitResult(TFitResultPtr fitres) { fFitResult = fitres.Get(); }
243 
244  // Setters for margins
245  void SetUpTopMargin(Float_t margin);
246  void SetUpBottomMargin(Float_t margin);
247  void SetLowTopMargin(Float_t margin);
248  void SetLowBottomMargin(Float_t margin);
249  void SetLeftMargin(Float_t margin);
250  void SetRightMargin(Float_t margin);
251 
254  void SetSplitFraction(Float_t sf);
255  void SetConfidenceLevels(Double_t cl1, Double_t cl2);
256 
257  virtual void SetGridlines(Double_t *gridlines, Int_t numGridlines);
258  virtual void SetGridlines(std::vector<double> gridlines);
259 
261 
262  void SetC1(Double_t c1) { fC1 = c1; }
263  void SetC2(Double_t c2) { fC2 = c2; }
264 
265  ClassDef(TRatioPlot, 1) //A ratio of histograms
266 };
267 
268 #endif
TRatioPlot()
TRatioPlot default constructor.
Definition: TRatioPlot.cxx:124
TVirtualPad * fParentPad
Stores the pad the ratio plot was created in.
Definition: TRatioPlot.h:75
TGaxis * fUpperGYaxisMirror
Upper mirror of the y axis.
Definition: TRatioPlot.h:117
void SetUpBottomMargin(Float_t margin)
Sets the bottom margin of the upper pad.
Definition: TRatioPlot.cxx:467
void SetFitResult(TFitResultPtr fitres)
Explicitly specify the fit result that is to be used for fit residual calculation.
Definition: TRatioPlot.h:242
The Histogram stack class.
Definition: THStack.h:31
TRatioPlot & operator=(const TRatioPlot &)=delete
float Float_t
Definition: RtypesCore.h:53
void RangeAxisChanged()
Slot that receives the RangeAxisChanged signal from any of the pads and reacts correspondingly.
TAxis * GetLowerRefYaxis() const
Shortcut for:
Definition: TRatioPlot.h:208
const char Option_t
Definition: RtypesCore.h:62
TAxis * GetUpperRefYaxis() const
Gets the y axis of the object returned by TRatioPlot::GetUpperRefObject.
Definition: TRatioPlot.cxx:763
return c1
Definition: legend1.C:41
Float_t fLowTopMargin
Stores the top margin of the lower pad.
Definition: TRatioPlot.h:132
TH1 * fH2
Stores the secondary histogram, if there is one.
Definition: TRatioPlot.h:81
Color_t fCi2Color
Stores the color for the 2 sigma band.
Definition: TRatioPlot.h:98
void SetLeftMargin(Float_t margin)
Sets the left margin of both pads.
Definition: TRatioPlot.cxx:499
TAxis * fLowYaxis
Clone of the lower y axis.
Definition: TRatioPlot.h:121
virtual TGraph * GetLowerRefGraph() const
Returns the reference graph for the lower pad, which means the graph that is responsible for setting ...
Definition: TRatioPlot.cxx:693
virtual void SyncAxesRanges()
Syncs the axes ranges from the shared ones to the actual ones.
Definition: TRatioPlot.cxx:864
TObject * fHistDrawProxy
The object which is actually drawn, this might be TH1 or THStack.
Definition: TRatioPlot.h:82
TAxis * GetYaxis() const
Get y axis of the graph.
Definition: TGraph.cxx:1602
TGraph * fRatioGraph
Stores the lower plot&#39;s graph.
Definition: TRatioPlot.h:94
void SetInsetWidth(Double_t width)
Set the inset on the outer sides of all the pads.
virtual void Draw(Option_t *chopt="")
Draws the ratio plot to the currently active pad.
Definition: TRatioPlot.cxx:563
void SetSplitFraction(Float_t sf)
Set the fraction of the parent pad, at which the to sub pads should meet.
Float_t fSplitFraction
Stores the fraction at which the upper and lower pads meet.
Definition: TRatioPlot.h:92
Basic string class.
Definition: TString.h:125
TString fH2DrawOpt
Stores draw option for h2 given in constructor.
Definition: TRatioPlot.h:88
int Int_t
Definition: RtypesCore.h:41
bool Bool_t
Definition: RtypesCore.h:59
Int_t fErrorMode
Stores the error mode, sym, asym or func.
Definition: TRatioPlot.h:85
void SetConfidenceLevels(Double_t cl1, Double_t cl2)
Sets the confidence levels used to calculate the bands in the fit residual case.
Definition: Rtypes.h:59
Definition: Rtypes.h:59
Float_t fInsetWidth
Definition: TRatioPlot.h:138
TPad * GetUpperPad() const
Definition: TRatioPlot.h:230
TString fGraphDrawOpt
Stores draw option for the lower plot graph given in constructor.
Definition: TRatioPlot.h:89
Double_t fCl1
Stores the confidence level for the inner confidence interval band.
Definition: TRatioPlot.h:102
void SetLowBottomMargin(Float_t margin)
Sets the bottom margin of the lower pad.
Definition: TRatioPlot.cxx:489
TFitResult * fFitResult
Stores the explicit fit result given in the fit residual case. Can be 0.
Definition: TRatioPlot.h:108
virtual TObject * GetUpperRefObject() const
Return the reference object.
Definition: TRatioPlot.cxx:727
void SetH1DrawOpt(Option_t *opt)
Sets the drawing option for h1.
Definition: TRatioPlot.cxx:356
TAxis * GetLowerRefXaxis() const
Shortcut for:
Definition: TRatioPlot.h:199
TString fH1DrawOpt
Stores draw option for h1 given in constructor.
Definition: TRatioPlot.h:87
TGraphErrors * fConfidenceInterval2
Stores the graph for the 2 sigma band.
Definition: TRatioPlot.h:96
std::vector< double > fGridlinePositions
Stores the y positions for the gridlines.
Definition: TRatioPlot.h:124
TGraph with asymmetric error bars.
Calculate the difference between the histograms.
Definition: TRatioPlot.h:53
#define ClassDef(name, id)
Definition: Rtypes.h:320
TGaxis * fLowerGXaxisMirror
Lower mirror of the x axis.
Definition: TRatioPlot.h:116
TString fFitDrawOpt
Stores draw option for the fit function in the fit residual case.
Definition: TRatioPlot.h:90
Extends the ROOT::Fit::Result class with a TNamed inheritance providing easy possibility for I/O...
Definition: TFitResult.h:30
Use TH1::Divide to create the ratio.
Definition: TRatioPlot.h:51
Int_t fMode
Stores which calculation is supposed to be performed as specified by user option. ...
Definition: TRatioPlot.h:84
TPad * GetLowerPad() const
Definition: TRatioPlot.h:231
TAxis * GetUpperRefXaxis() const
Gets the x axis of the object returned by TRatioPlot::GetUpperRefObject.
Definition: TRatioPlot.cxx:745
void UnZoomed()
Slot for the UnZoomed signal that was introduced to TAxis.
virtual void SetupPads()
Setup the pads.
Definition: TRatioPlot.cxx:392
Color_t fCi1Color
Stores the color for the 1 sigma band.
Definition: TRatioPlot.h:97
TPad * fUpperPad
The pad which contains the upper plot part.
Definition: TRatioPlot.h:76
Float_t GetSeparationMargin() const
Return the separation margin value.
Definition: TRatioPlot.cxx:538
Bool_t IsDrawn()
Check if ... is drawn.
TAxis * GetUpYaxis() const
Definition: TRatioPlot.h:187
void SetConfidenceIntervalColors(Color_t ci1=kGreen, Color_t ci2=kYellow)
Set the confidence interval colors.
void SetH2DrawOpt(Option_t *opt)
Sets the drawing option for h2.
Definition: TRatioPlot.cxx:364
Hide the first label of the upper y axis when there is low space.
Definition: TRatioPlot.h:65
TH1F * h1
Definition: legend1.C:5
TGaxis * fUpperGXaxisMirror
Upper mirror of the x axis.
Definition: TRatioPlot.h:115
TVirtualPad is an abstract base class for the Pad and Canvas classes.
Definition: TVirtualPad.h:49
Use the regular TH1::GetBinError as the error.
Definition: TRatioPlot.h:59
Double_t fCl2
Stores the confidence level for the outer confidence interval band.
Definition: TRatioPlot.h:103
virtual ~TRatioPlot()
Destructor.
Definition: TRatioPlot.cxx:131
short Color_t
Definition: RtypesCore.h:79
virtual Bool_t SyncPadMargins()
Figures out which pad margin has deviated from the stored ones, to figure out what the new nominal is...
virtual void SetGridlines(Double_t *gridlines, Int_t numGridlines)
Set where horizontal, dashed lines are drawn on the lower pad.
Using a TBrowser one can browse all ROOT objects.
Definition: TBrowser.h:37
Double_t fC1
Stores the scale factor for h1 (or THStack sum)
Definition: TRatioPlot.h:105
TGaxis * fUpperGYaxis
Upper graphical y axis.
Definition: TRatioPlot.h:113
Always hide the first label of the upper y axis.
Definition: TRatioPlot.h:68
Class to manage histogram axis.
Definition: TAxis.h:30
TAxis * GetLowYaxis() const
Definition: TRatioPlot.h:188
virtual void Init(TH1 *h1, TH1 *h2, Option_t *option="")
Internal method that shares constructor logic.
Definition: TRatioPlot.cxx:162
Use TH1::GetBinErrorUp and TH1::GetBinErrorLow for the error, depending on y values.
Definition: TRatioPlot.h:60
std::vector< TLine * > fGridlines
Keeps TLine objects for the gridlines.
Definition: TRatioPlot.h:123
Provides an indirection to the TFitResult class and with a semantics identical to a TFitResult pointe...
Definition: TFitResultPtr.h:31
Bool_t fShowGridlines
Stores whether to show the gridlines at all.
Definition: TRatioPlot.h:125
void SetUpTopMargin(Float_t margin)
Sets the top margin of the upper pad.
Definition: TRatioPlot.cxx:456
The most important graphics class in the ROOT system.
Definition: TPad.h:29
A simple line.
Definition: TLine.h:23
Float_t fLeftMargin
Stores the common left margin of both pads.
Definition: TRatioPlot.h:135
TGaxis * fUpperGXaxis
Upper graphical x axis.
Definition: TRatioPlot.h:111
Int_t fHideLabelMode
Stores which label to hide if the margin is to narrow, if at all.
Definition: TRatioPlot.h:126
The axis painter class.
Definition: TGaxis.h:24
TH1 * fH1
Stores the primary histogram.
Definition: TRatioPlot.h:80
void SetPadMargins()
Sets the margins of all the pads to the value specified in class members.
virtual void CreateVisualAxes()
(Re-)Creates the TGAxis objects that are used for consistent display of the axes. ...
Float_t fRightMargin
Stores the common right margin of both pads.
Definition: TRatioPlot.h:136
Use the square root of the function value as the error.
Definition: TRatioPlot.h:61
TAxis * GetXaxis() const
Get x axis of the graph.
Definition: TGraph.cxx:1592
const Bool_t kFALSE
Definition: RtypesCore.h:88
TAxis * GetXaxis() const
Definition: TRatioPlot.h:186
TGaxis * fLowerGXaxis
Lower graphical x axis.
Definition: TRatioPlot.h:112
TPad * fLowerPad
The pad which contains the calculated lower plot part.
Definition: TRatioPlot.h:77
void SetFitDrawOpt(Option_t *opt)
Sets the drawing option for the fit in the fit residual case.
Definition: TRatioPlot.cxx:384
return c2
Definition: legend2.C:14
void CreateGridline()
Create a grid line.
Definition: TRatioPlot.cxx:781
Bool_t fIsUpdating
Keeps track of whether its currently updating to reject other calls until done.
Definition: TRatioPlot.h:140
double Double_t
Definition: RtypesCore.h:55
Use TGraphAsymmErrors::Divide to create the ratio.
Definition: TRatioPlot.h:52
Hide the last label of the lower y axis when there is low space.
Definition: TRatioPlot.h:66
Float_t fUpTopMargin
Stores the top margin of the upper pad.
Definition: TRatioPlot.h:130
Float_t fUpBottomMargin
Stores the bottom margin of the upper pad.
Definition: TRatioPlot.h:131
TGraphErrors * fConfidenceInterval1
Stores the graph for the 1 sigma band.
Definition: TRatioPlot.h:95
TString fOption
Stores the option which is given in the constructor as a string.
Definition: TRatioPlot.h:86
TGaxis * fLowerGYaxisMirror
Lower mirror of the y axis.
Definition: TRatioPlot.h:118
The TH1 histogram class.
Definition: TH1.h:56
void SetSeparationMargin(Float_t)
Sets the margin that separates the two pads.
Definition: TRatioPlot.cxx:527
void SetGraphDrawOpt(Option_t *opt)
Sets the drawing option for the lower graph.
Definition: TRatioPlot.cxx:376
Always hide the last label of the lower y axis.
Definition: TRatioPlot.h:69
TGraph * GetCalculationOutputGraph() const
Get the output of the calculation in the form of a graph.
Definition: TRatioPlot.h:218
Float_t fLowBottomMargin
Stores the bottom margin of the lower pad.
Definition: TRatioPlot.h:133
TAxis * fSharedXAxis
X axis that stores the range for both plots.
Definition: TRatioPlot.h:110
Mother of all ROOT objects.
Definition: TObject.h:37
TAxis * fUpYaxis
Clone of the upper y axis.
Definition: TRatioPlot.h:120
Double_t fC2
Stores the scale factor for h2.
Definition: TRatioPlot.h:106
Calculate the fit residual between the histogram and a fit stored within it.
Definition: TRatioPlot.h:54
void ImportAxisAttributes(TGaxis *gaxis, TAxis *axis)
Internal method to import TAxis attributes to a TGaxis.
Bool_t fShowConfidenceIntervals
Stores whether to show the confidence interval bands. From Draw option.
Definition: TRatioPlot.h:100
TGraphErrors * GetConfidenceInterval1() const
Returns the graph for the 1 sigma confidence interval in the fit residual case.
Definition: TRatioPlot.h:223
void SubPadResized()
Slot that handles common resizing of upper and lower pad.
TFitResult * Get() const
Return contained pointer.
void SetC2(Double_t c2)
Definition: TRatioPlot.h:263
A Graph is a graphics object made of two arrays X and Y with npoints each.
Definition: TGraph.h:41
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
Definition: TRolke.cxx:630
void SetC1(Double_t c1)
Definition: TRatioPlot.h:262
A TGraphErrors is a TGraph with error bars.
Definition: TGraphErrors.h:26
virtual void Paint(Option_t *opt="")
Creates the visual axes when painting.
Definition: TRatioPlot.cxx:852
void SetRightMargin(Float_t margin)
Sets the right margin of both pads.
Definition: TRatioPlot.cxx:510
Class for displaying ratios, differences and fit residuals.
Definition: TRatioPlot.h:44
Bool_t fIsPadUpdating
Keeps track whether pads are updating during resizing.
Definition: TRatioPlot.h:141
Do not hide labels when there is low space.
Definition: TRatioPlot.h:67
TGaxis * fLowerGYaxis
Lower graphical y axis.
Definition: TRatioPlot.h:114
const Bool_t kTRUE
Definition: RtypesCore.h:87
Int_t BuildLowerPlot()
Build the lower plot according to which constructor was called, and which options were passed...
Definition: TRatioPlot.cxx:884
TPad * fTopPad
The Pad that drawn on top on the others to have consistent coordinates.
Definition: TRatioPlot.h:78
virtual void Browse(TBrowser *b)
Browse.
Definition: TRatioPlot.cxx:445
void SetLowTopMargin(Float_t margin)
Sets the top margin of the lower pad.
Definition: TRatioPlot.cxx:478
Calculate the difference divided by the error.
Definition: TRatioPlot.h:55
TGraphErrors * GetConfidenceInterval2() const
Returns the graph for the 2 sigma confidence interval in the fit residual case.
Definition: TRatioPlot.h:228