Logo ROOT   6.16/01
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
30class TH1;
31class TPad;
32class TVirtualPad;
34class TGraphErrors;
35class TAxis;
36class TGaxis;
37class TLine;
38class TFitResultPtr;
39class TFitResult;
40class THStack;
41class TBrowser;
42class TFileMergeInfo;
43
44class TRatioPlot : public TObject {
45
46private:
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
73protected:
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
157public:
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
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);
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
#define b(i)
Definition: RSha256.hxx:100
int Int_t
Definition: RtypesCore.h:41
const Bool_t kFALSE
Definition: RtypesCore.h:88
bool Bool_t
Definition: RtypesCore.h:59
double Double_t
Definition: RtypesCore.h:55
short Color_t
Definition: RtypesCore.h:79
float Float_t
Definition: RtypesCore.h:53
const Bool_t kTRUE
Definition: RtypesCore.h:87
const char Option_t
Definition: RtypesCore.h:62
#define ClassDef(name, id)
Definition: Rtypes.h:324
@ kGreen
Definition: Rtypes.h:63
@ kYellow
Definition: Rtypes.h:63
include TDocParser_001 C image html pict1_TDocParser_001 png width
Definition: TDocParser.cxx:121
Class to manage histogram axis.
Definition: TAxis.h:30
Using a TBrowser one can browse all ROOT objects.
Definition: TBrowser.h:37
Provides an indirection to the TFitResult class and with a semantics identical to a TFitResult pointe...
Definition: TFitResultPtr.h:31
TFitResult * Get() const
Return contained pointer.
Extends the ROOT::Fit::Result class with a TNamed inheritance providing easy possibility for I/O.
Definition: TFitResult.h:30
The axis painter class.
Definition: TGaxis.h:24
TGraph with asymmetric error bars.
A TGraphErrors is a TGraph with error bars.
Definition: TGraphErrors.h:26
A Graph is a graphics object made of two arrays X and Y with npoints each.
Definition: TGraph.h:41
TAxis * GetXaxis() const
Get x axis of the graph.
Definition: TGraph.cxx:1594
TAxis * GetYaxis() const
Get y axis of the graph.
Definition: TGraph.cxx:1604
The TH1 histogram class.
Definition: TH1.h:56
The Histogram stack class.
Definition: THStack.h:31
A simple line.
Definition: TLine.h:23
Mother of all ROOT objects.
Definition: TObject.h:37
The most important graphics class in the ROOT system.
Definition: TPad.h:29
Class for displaying ratios, differences and fit residuals.
Definition: TRatioPlot.h:44
void SubPadResized()
Slot that handles common resizing of upper and lower pad.
@ kForceHideUp
Always hide the first label of the upper y axis.
Definition: TRatioPlot.h:68
@ kHideUp
Hide the first label of the upper y axis when there is low space.
Definition: TRatioPlot.h:65
@ kNoHide
Do not hide labels when there is low space.
Definition: TRatioPlot.h:67
@ kHideLow
Hide the last label of the lower y axis when there is low space.
Definition: TRatioPlot.h:66
@ kForceHideLow
Always hide the last label of the lower y axis.
Definition: TRatioPlot.h:69
TGraphErrors * fConfidenceInterval2
Stores the graph for the 2 sigma band.
Definition: TRatioPlot.h:96
TAxis * GetLowerRefXaxis() const
Shortcut for:
Definition: TRatioPlot.h:199
TGraphErrors * GetConfidenceInterval2() const
Returns the graph for the 2 sigma confidence interval in the fit residual case.
Definition: TRatioPlot.h:228
TAxis * GetLowYaxis() const
Definition: TRatioPlot.h:188
Int_t fErrorMode
Stores the error mode, sym, asym or func.
Definition: TRatioPlot.h:85
TAxis * GetLowerRefYaxis() const
Shortcut for:
Definition: TRatioPlot.h:208
TGaxis * fUpperGXaxisMirror
Upper mirror of the x axis.
Definition: TRatioPlot.h:115
TRatioPlot & operator=(const TRatioPlot &)=delete
TGaxis * fLowerGXaxisMirror
Lower mirror of the x axis.
Definition: TRatioPlot.h:116
TPad * GetLowerPad() const
Definition: TRatioPlot.h:231
TAxis * GetUpperRefYaxis() const
Gets the y axis of the object returned by TRatioPlot::GetUpperRefObject.
Definition: TRatioPlot.cxx:759
TAxis * GetUpYaxis() const
Definition: TRatioPlot.h:187
Float_t fLowBottomMargin
Stores the bottom margin of the lower pad.
Definition: TRatioPlot.h:133
Int_t BuildLowerPlot()
Build the lower plot according to which constructor was called, and which options were passed.
Definition: TRatioPlot.cxx:880
void SetUpBottomMargin(Float_t margin)
Sets the bottom margin of the upper pad.
Definition: TRatioPlot.cxx:465
Float_t fUpBottomMargin
Stores the bottom margin of the upper pad.
Definition: TRatioPlot.h:131
TH1 * fH1
Stores the primary histogram.
Definition: TRatioPlot.h:80
void SetH2DrawOpt(Option_t *opt)
Sets the drawing option for h2.
Definition: TRatioPlot.cxx:362
virtual void Draw(Option_t *chopt="")
Draws the ratio plot to the currently active pad.
Definition: TRatioPlot.cxx:560
TFitResult * fFitResult
Stores the explicit fit result given in the fit residual case. Can be 0.
Definition: TRatioPlot.h:108
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.
Definition: TRatioPlot.h:97
TGaxis * fUpperGYaxis
Upper graphical y axis.
Definition: TRatioPlot.h:113
Double_t fC2
Stores the scale factor for h2.
Definition: TRatioPlot.h:106
void SetLowBottomMargin(Float_t margin)
Sets the bottom margin of the lower pad.
Definition: TRatioPlot.cxx:487
Bool_t IsDrawn()
Check if ... is drawn.
Double_t fC1
Stores the scale factor for h1 (or THStack sum)
Definition: TRatioPlot.h:105
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.
Definition: TRatioPlot.h:132
TString fH2DrawOpt
Stores draw option for h2 given in constructor.
Definition: TRatioPlot.h:88
void SetUpTopMargin(Float_t margin)
Sets the top margin of the upper pad.
Definition: TRatioPlot.cxx:454
TGaxis * fLowerGXaxis
Lower graphical x axis.
Definition: TRatioPlot.h:112
TRatioPlot()
TRatioPlot default constructor.
Definition: TRatioPlot.cxx:122
void SetC2(Double_t c2)
Definition: TRatioPlot.h:263
Bool_t fIsUpdating
Keeps track of whether its currently updating to reject other calls until done.
Definition: TRatioPlot.h:140
void SetGraphDrawOpt(Option_t *opt)
Sets the drawing option for the lower graph.
Definition: TRatioPlot.cxx:374
Double_t fCl1
Stores the confidence level for the inner confidence interval band.
Definition: TRatioPlot.h:102
virtual ~TRatioPlot()
Destructor.
Definition: TRatioPlot.cxx:129
@ kErrorAsymmetric
Use TH1::GetBinErrorUp and TH1::GetBinErrorLow for the error, depending on y values.
Definition: TRatioPlot.h:60
@ kErrorFunc
Use the square root of the function value as the error.
Definition: TRatioPlot.h:61
@ kErrorSymmetric
Use the regular TH1::GetBinError as the error.
Definition: TRatioPlot.h:59
Float_t GetSeparationMargin() const
Return the separation margin value.
Definition: TRatioPlot.cxx:535
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.
Definition: TRatioPlot.cxx:382
std::vector< TLine * > fGridlines
Keeps TLine objects for the gridlines.
Definition: TRatioPlot.h:123
void SetPadMargins()
Sets the margins of all the pads to the value specified in class members.
void SetConfidenceIntervalColors(Color_t ci1=kGreen, Color_t ci2=kYellow)
Set the confidence interval colors.
TPad * fLowerPad
The pad which contains the calculated lower plot part.
Definition: TRatioPlot.h:77
TAxis * fSharedXAxis
X axis that stores the range for both plots.
Definition: TRatioPlot.h:110
void SetFitResult(TFitResultPtr fitres)
Explicitly specify the fit result that is to be used for fit residual calculation.
Definition: TRatioPlot.h:242
TString fFitDrawOpt
Stores draw option for the fit function in the fit residual case.
Definition: TRatioPlot.h:90
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.
Definition: TRatioPlot.h:117
virtual void SetupPads()
Setup the pads.
Definition: TRatioPlot.cxx:390
TGraphErrors * GetConfidenceInterval1() const
Returns the graph for the 1 sigma confidence interval in the fit residual case.
Definition: TRatioPlot.h:223
TAxis * fUpYaxis
Clone of the upper y axis.
Definition: TRatioPlot.h:120
TVirtualPad * fParentPad
Stores the pad the ratio plot was created in.
Definition: TRatioPlot.h:75
Float_t fUpTopMargin
Stores the top margin of the upper pad.
Definition: TRatioPlot.h:130
TGraph * GetCalculationOutputGraph() const
Get the output of the calculation in the form of a graph.
Definition: TRatioPlot.h:218
void SetH1DrawOpt(Option_t *opt)
Sets the drawing option for h1.
Definition: TRatioPlot.cxx:354
TGraph * fRatioGraph
Stores the lower plot's graph.
Definition: TRatioPlot.h:94
virtual TGraph * GetLowerRefGraph() const
Returns the reference graph for the lower pad, which means the graph that is responsible for setting ...
Definition: TRatioPlot.cxx:689
virtual void Browse(TBrowser *b)
Browse.
Definition: TRatioPlot.cxx:443
TRatioPlot(const TRatioPlot &hrp)=delete
Int_t fMode
Stores which calculation is supposed to be performed as specified by user option.
Definition: TRatioPlot.h:84
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.
Definition: TRatioPlot.h:82
Float_t fRightMargin
Stores the common right margin of both pads.
Definition: TRatioPlot.h:136
TGaxis * fLowerGYaxisMirror
Lower mirror of the y axis.
Definition: TRatioPlot.h:118
Int_t fHideLabelMode
Stores which label to hide if the margin is to narrow, if at all.
Definition: TRatioPlot.h:126
void CreateGridline()
Create a grid line.
Definition: TRatioPlot.cxx:777
void SetC1(Double_t c1)
Definition: TRatioPlot.h:262
TPad * fTopPad
The Pad that drawn on top on the others to have consistent coordinates.
Definition: TRatioPlot.h:78
void SetInsetWidth(Double_t width)
Set the inset on the outer sides of all the pads.
virtual void SyncAxesRanges()
Syncs the axes ranges from the shared ones to the actual ones.
Definition: TRatioPlot.cxx:860
void RangeAxisChanged()
Slot that receives the RangeAxisChanged signal from any of the pads and reacts correspondingly.
@ kDifference
Calculate the difference between the histograms.
Definition: TRatioPlot.h:53
@ kDivideHist
Use TH1::Divide to create the ratio.
Definition: TRatioPlot.h:51
@ kFitResidual
Calculate the fit residual between the histogram and a fit stored within it.
Definition: TRatioPlot.h:54
@ kDifferenceSign
Calculate the difference divided by the error.
Definition: TRatioPlot.h:55
@ kDivideGraph
Use TGraphAsymmErrors::Divide to create the ratio.
Definition: TRatioPlot.h:52
void UnZoomed()
Slot for the UnZoomed signal that was introduced to TAxis.
virtual void Paint(Option_t *opt="")
Creates the visual axes when painting.
Definition: TRatioPlot.cxx:848
Bool_t fIsPadUpdating
Keeps track whether pads are updating during resizing.
Definition: TRatioPlot.h:141
TH1 * fH2
Stores the secondary histogram, if there is one.
Definition: TRatioPlot.h:81
Double_t fCl2
Stores the confidence level for the outer confidence interval band.
Definition: TRatioPlot.h:103
TAxis * fLowYaxis
Clone of the lower y axis.
Definition: TRatioPlot.h:121
TString fOption
Stores the option which is given in the constructor as a string.
Definition: TRatioPlot.h:86
TPad * fUpperPad
The pad which contains the upper plot part.
Definition: TRatioPlot.h:76
Bool_t fShowConfidenceIntervals
Stores whether to show the confidence interval bands. From Draw option.
Definition: TRatioPlot.h:100
void SetLowTopMargin(Float_t margin)
Sets the top margin of the lower pad.
Definition: TRatioPlot.cxx:476
void SetSeparationMargin(Float_t)
Sets the margin that separates the two pads.
Definition: TRatioPlot.cxx:524
Float_t fInsetWidth
Definition: TRatioPlot.h:138
TAxis * GetXaxis() const
Definition: TRatioPlot.h:186
void SetLeftMargin(Float_t margin)
Sets the left margin of both pads.
Definition: TRatioPlot.cxx:497
Float_t fLeftMargin
Stores the common left margin of both pads.
Definition: TRatioPlot.h:135
TAxis * GetUpperRefXaxis() const
Gets the x axis of the object returned by TRatioPlot::GetUpperRefObject.
Definition: TRatioPlot.cxx:741
Float_t fSplitFraction
Stores the fraction at which the upper and lower pads meet.
Definition: TRatioPlot.h:92
virtual TObject * GetUpperRefObject() const
Return the reference object.
Definition: TRatioPlot.cxx:723
TGraphErrors * fConfidenceInterval1
Stores the graph for the 1 sigma band.
Definition: TRatioPlot.h:95
TGaxis * fUpperGXaxis
Upper graphical x axis.
Definition: TRatioPlot.h:111
std::vector< double > fGridlinePositions
Stores the y positions for the gridlines.
Definition: TRatioPlot.h:124
TString fH1DrawOpt
Stores draw option for h1 given in constructor.
Definition: TRatioPlot.h:87
virtual void Init(TH1 *h1, TH1 *h2, Option_t *option="")
Internal method that shares constructor logic.
Definition: TRatioPlot.cxx:160
Bool_t fShowGridlines
Stores whether to show the gridlines at all.
Definition: TRatioPlot.h:125
TString fGraphDrawOpt
Stores draw option for the lower plot graph given in constructor.
Definition: TRatioPlot.h:89
Color_t fCi2Color
Stores the color for the 2 sigma band.
Definition: TRatioPlot.h:98
void SetRightMargin(Float_t margin)
Sets the right margin of both pads.
Definition: TRatioPlot.cxx:508
TGaxis * fLowerGYaxis
Lower graphical y axis.
Definition: TRatioPlot.h:114
void SetConfidenceLevels(Double_t cl1, Double_t cl2)
Sets the confidence levels used to calculate the bands in the fit residual case.
TPad * GetUpperPad() const
Definition: TRatioPlot.h:230
Basic string class.
Definition: TString.h:131
TVirtualPad is an abstract base class for the Pad and Canvas classes.
Definition: TVirtualPad.h:50
return c1
Definition: legend1.C:41
TH1F * h1
Definition: legend1.C:5
return c2
Definition: legend2.C:14