18 #ifndef ROOT_TClassRef 22 #ifndef ROOT_TVirtualPad 50 #ifndef ROOT_TGraphAsymmErrors 54 #ifndef ROOT_TGraphErrors 66 #ifndef ROOT_TVirtualFitter 70 #ifndef ROOT_TFitResult 164 gROOT->GetListOfCleanups()->Remove(
this);
174 for (
unsigned int i=0;i<
fGridlines.size();++i) {
206 if (optionString.
Contains(
"divsym")) {
208 fMode = TRatioPlot::CalculationMode::kDivideHist;
209 }
else if (optionString.
Contains(
"diffsig")) {
211 fMode = TRatioPlot::CalculationMode::kDifferenceSign;
214 if (optionString.
Contains(
"errasym")) {
215 fErrorMode = TRatioPlot::ErrorMode::kErrorAsymmetric;
219 if (optionString.
Contains(
"errfunc")) {
220 fErrorMode = TRatioPlot::ErrorMode::kErrorFunc;
223 }
else if (optionString.
Contains(
"diff")) {
225 fMode = TRatioPlot::CalculationMode::kDifference;
227 fMode = TRatioPlot::CalculationMode::kDivideGraph;
257 gROOT->GetListOfCleanups()->Add(
this);
260 Warning(
"TRatioPlot",
"Need two histograms.");
267 if (!h1IsTH1 && !h2IsTH1) {
268 Warning(
"TRatioPlot",
"Need two histograms deriving from TH2 or TH3.");
274 Init(h1, h2, option);
289 Warning(
"TRatioPlot",
"Need a histogram and a stack");
295 if (stackHists->
GetSize() == 0) {
296 Warning(
"TRatioPlot",
"Stack does not have histograms");
303 for (
int i=0;i<stackHists->
GetSize();++i) {
304 tmpHist->
Add((
TH1*)stackHists->
At(i));
309 Init(tmpHist, h2, option);
324 gROOT->GetListOfCleanups()->Add(
this);
327 Warning(
"TRatioPlot",
"Need a histogram.");
334 Warning(
"TRatioPlot",
"Need a histogram deriving from TH2 or TH3.");
340 if (h1Functions->
GetSize() < 1) {
341 Warning(
"TRatioPlot",
"Histogram given needs to have a (fit) function associated with it");
350 fMode = TRatioPlot::CalculationMode::kFitResidual;
355 if (optionString.
Contains(
"errasym")) {
356 fErrorMode = TRatioPlot::ErrorMode::kErrorAsymmetric;
360 if (optionString.
Contains(
"errfunc")) {
361 fErrorMode = TRatioPlot::ErrorMode::kErrorFunc;
441 double width =
gPad->GetWNDC();
442 double height =
gPad->GetHNDC();
443 double f = height/width;
451 fUpperPad->
Connect(
"RangeAxisChanged()",
"TRatioPlot",
this,
"RangeAxisChanged()");
452 fLowerPad->
Connect(
"RangeAxisChanged()",
"TRatioPlot",
this,
"RangeAxisChanged()");
465 fTopPad =
new TPad(
"top_pad",
"", pm*f, pm, 1-pm*f, 1-pm);
596 }
else if (drawOpt.
Contains(
"grid")) {
601 if (drawOpt.
Contains(
"noconfint")) {
604 }
else if (drawOpt.
Contains(
"confint")) {
611 }
else if (drawOpt.
Contains(
"fhidelow")) {
613 }
else if (drawOpt.
Contains(
"hideup")) {
615 }
else if (drawOpt.
Contains(
"hidelow")) {
617 }
else if (drawOpt.
Contains(
"nohide")) {
648 if (
fMode == TRatioPlot::CalculationMode::kFitResidual) {
653 Error(
"BuildLowerPlot",
"h1 does not have a fit function");
677 Warning(
"Draw",
"Draw proxy not of type TH1 or THStack, not drawing it");
715 Error(
"GetLowerRefGraph",
"Lower pad has not been defined");
720 if (primlist->
GetSize() == 0) {
721 Error(
"GetLowerRefGraph",
"Lower pad does not have primitives");
737 Error(
"GetLowerRefGraph",
"Did not find graph in list");
751 refobj = primlist->
At(i);
757 Error(
"GetUpperRefObject",
"No upper ref object of TH1 or THStack type found");
768 if (!refobj)
return 0;
786 if (!refobj)
return 0;
789 return ((
TH1*)refobj)->GetYaxis();
791 return ((
THStack*)refobj)->GetYaxis();
821 if (y < lowYFirst || lowYLast < y) {
827 dest = dest - outofrange;
830 for (
unsigned int i=0;i<
fGridlines.size();++i) {
836 for (
unsigned int i=0;i<
dest;++i) {
847 unsigned int skipped = 0;
851 if (y < lowYFirst || lowYLast < y) {
919 static Double_t divideGridlines[] = {0.7, 1.0, 1.3};
920 static Double_t diffGridlines[] = {0.0};
921 static Double_t signGridlines[] = {1.0, 0.0, -1.0};
925 if (
fMode == TRatioPlot::CalculationMode::kDivideGraph) {
943 }
else if (
fMode == TRatioPlot::CalculationMode::kDifference) {
954 }
else if (
fMode == TRatioPlot::CalculationMode::kDifferenceSign) {
970 if (
fErrorMode == TRatioPlot::ErrorMode::kErrorAsymmetric) {
975 if (val - val2 > 0) {
983 }
else if (
fErrorMode == TRatioPlot::ErrorMode::kErrorSymmetric) {
986 Warning(
"BuildLowerPlot",
"error mode is invalid");
992 res = (val - val2) / error;
1002 }
else if (
fMode == TRatioPlot::CalculationMode::kFitResidual) {
1010 Error(
"BuildLowerPlot",
"h1 does not have a fit function");
1020 std::vector<double> ci1;
1021 std::vector<double> ci2;
1041 ci1.push_back(ci_arr1[i-1]);
1046 ci2.push_back(ci_arr2[i-1]);
1051 ci1.push_back(ci_arr1[i-1]);
1055 ci2.push_back(ci_arr2[i-1]);
1067 if (
fErrorMode == TRatioPlot::ErrorMode::kErrorAsymmetric) {
1080 }
else if (
fErrorMode == TRatioPlot::ErrorMode::kErrorSymmetric) {
1082 }
else if (
fErrorMode == TRatioPlot::ErrorMode::kErrorFunc) {
1087 Warning(
"BuildLowerPlot",
"error mode is invalid");
1110 }
else if (
fMode == TRatioPlot::CalculationMode::kDivideHist){
1123 Error(
"BuildLowerPlot",
"Invalid fMode value");
1131 Error(
"BuildLowerPlot",
"Error creating lower graph");
1150 TString thisfunc =
"CreateVisualAxes";
1188 if (upYFirst <= 0 || upYLast <= 0) {
1189 Error(thisfunc,
"Cannot set upper Y axis to log scale");
1197 if (lowYFirst <= 0 || lowYLast <= 0) {
1198 Error(thisfunc,
"Cannot set lower Y axis to log scale");
1205 if (first <= 0 || last <= 0) {
1206 Error(thisfunc,
"Cannot set X axis to log scale");
1212 if (logx) xopt.
Append(
"G");
1214 if (uplogy) upyopt.
Append(
"G");
1216 if (lowlogy) lowyopt.
Append(
"G");
1291 Double_t ratio = ( (upBM-(1-upTM))*(1-sf) ) / ( (lowBM-(1-lowTM))*sf ) ;
1300 }
else if (
fHideLabelMode == TRatioPlot::HideLabelMode::kForceHideLow) {
1310 }
else if (
fHideLabelMode == TRatioPlot::HideLabelMode::kHideLow) {
1319 }
else if (
fHideLabelMode == TRatioPlot::HideLabelMode::kHideLow) {
1328 if (axistop || axisright) {
1468 verticalChanged =
kTRUE;
1475 verticalChanged =
kTRUE;
1493 if (verticalChanged) {
1497 return changed || verticalChanged;
1551 if (upFirst != globFirst || upLast != globLast) {
1555 else if (lowFirst != globFirst || lowLast != globLast) {
1560 if (upChanged || lowChanged) {
1575 if (marginsChanged) {
1619 Float_t lowyup = lowylow + lowh;
1657 Warning(
"SetSplitFraction",
"Can only be used after TRatioPlot has been drawn.");
1665 double f = height/width;
1678 Warning(
"SetInsetWidth",
"Can only be used after TRatioPlot has been drawn.");
1729 for (
Int_t i=0;i<numGridlines;++i) {
virtual void SetY2(Double_t y2)
Int_t GetFirst() const
Return first bin on the axis i.e.
TRatioPlot()
TRatioPlot default constructor.
virtual void SetGridx(Int_t value=1)
virtual void Scale(Double_t c1=1, Option_t *option="")
Multiply this histogram by a constant c1.
virtual Color_t GetAxisColor() const
virtual Double_t GetBinErrorLow(Int_t bin) const
Return lower error associated to bin number bin.
TList * GetListOfFunctions() const
virtual 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)
Set all pad parameters.
TVirtualPad * fParentPad
Stores the pad the ratio plot was created in.
virtual Color_t GetLabelColor() const
virtual TObject * GetUpperRefObject() const
Return the reference object.
TGaxis * fUpperGYaxisMirror
Upper mirror of the y axis.
void SetUpBottomMargin(Float_t margin)
Sets the bottom margin of the upper pad.
Float_t GetTickSize() const
virtual Double_t GetBinContent(Int_t bin) const
Return content of bin number bin.
The Histogram stack class.
virtual void SetLimits(Double_t xmin, Double_t xmax)
Option_t * GetDrawOption() const
Get option used by the graphics system to draw this object.
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
void RangeAxisChanged()
Slot that receives the RangeAxisChanged signal from any of the pads and reacts correspondingly.
Float_t fLowTopMargin
Stores the top margin of the lower pad.
TH1 * fH2
Stores the secondary histogram, if there is one.
virtual Int_t GetLogx() const =0
Color_t fCi2Color
Stores the color for the 2 sigma band.
TString & ReplaceAll(const TString &s1, const TString &s2)
void SetLeftMargin(Float_t margin)
Sets the left margin of both pads.
TAxis * GetUpperRefXaxis() const
Gets the x axis of the object returned by TRatioPlot::GetUpperRefObject.
TAxis * fLowYaxis
Clone of the lower y axis.
virtual Int_t GetLogy() const =0
virtual void SyncAxesRanges()
Syncs the axes ranges from the shared ones to the actual ones.
TObject * fHistDrawProxy
The object which is actually drawn, this might be TH1 or THStack.
Double_t GetUymax() const
TGraph * fRatioGraph
Stores the lower plot's graph.
virtual Double_t GetBinLowEdge(Int_t bin) const
Return low edge of bin.
if object in a pad cannot be picked
void SetInsetWidth(Double_t width)
Set the inset on the outer sides of all the pads.
virtual Double_t GetWNDC() const =0
virtual void Draw(Option_t *chopt="")
Draws the ratio plot to the currently active pad.
void SetSplitFraction(Float_t sf)
Set the fraction of the parent pad, at which the to sub pads should meet.
virtual void SetTitle(const char *title="")
Change the title of the axis.
Float_t fSplitFraction
Stores the fraction at which the upper and lower pads meet.
TString fH2DrawOpt
Stores draw option for h2 given in constructor.
void BuildLowerPlot()
Build the lower plot according to which constructor was called, and which options were passed...
Int_t fErrorMode
Stores the error mode, sym, asym or func.
virtual Color_t GetTitleColor() const
virtual void Draw(Option_t *option="")
Draw this function with its current attributes.
virtual void Draw(Option_t *option="")
Default Draw method for all objects.
virtual void SetTitle(const char *title="")
Set graph title.
virtual TObject * FindObject(const char *name) const
Find an object in this list using its name.
void SetConfidenceLevels(Double_t cl1, Double_t cl2)
Sets the confidence levels used to calculate the bands in the fit residual case.
virtual Double_t GetHNDC() const =0
virtual Style_t GetTitleFont() const
virtual Int_t GetNbinsX() const
TString fGraphDrawOpt
Stores draw option for the lower plot graph given in constructor.
virtual Float_t GetTitleSize() const
Double_t fCl1
Stores the confidence level for the inner confidence interval band.
void SetLowBottomMargin(Float_t margin)
Sets the bottom margin of the lower pad.
virtual TObject * At(Int_t idx) const
Returns the object at position idx. Returns 0 if idx is out of range.
virtual void Draw(Option_t *chopt="")
Draw this graph with its current attributes.
virtual TVirtualPad * cd(Int_t subpadnumber=0)=0
virtual void SetTopMargin(Float_t topmargin)
Set Pad top margin in fraction of the pad height.
LongDouble_t Power(LongDouble_t x, LongDouble_t y)
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
bool GetConfidenceIntervals(const TH1 *h1, const ROOT::Fit::FitResult &r, TGraphErrors *gr, double cl=0.95)
compute confidence intervals at level cl for a fitted histogram h1 in a TGraphErrors gr ...
TFitResult * fFitResult
Stores the explicit fit result given in the fit residual case. Can be 0.
virtual void Reset(Option_t *option="")
Reset this histogram: contents, errors, etc.
TObject * Clone(const char *newname=0) const
Make a complete copy of the underlying object.
virtual void AppendPad(Option_t *option="")
Append graphics object to current pad.
void SetH1DrawOpt(Option_t *opt)
Sets the drawing option for h1.
virtual Double_t GetBinWidth(Int_t bin) const
Return bin width for 1D histogram.
TString fH1DrawOpt
Stores draw option for h1 given in constructor.
const char * Data() const
virtual void SetRangeUser(Double_t ufirst, Double_t ulast)
Set the viewing range for the axis from ufirst to ulast (in user coordinates).
void SetTitleSize(Float_t titlesize)
virtual void SetTextFont(Font_t tfont=62)
Set the text font.
TGraphErrors * fConfidenceInterval2
Stores the graph for the 2 sigma band.
std::vector< double > fGridlinePositions
Stores the y positions for the gridlines.
TGraph with asymmetric error bars.
virtual TObject * Clone(const char *newname="") const
Make a clone of an object using the Streamer facility.
TVirtualPad * cd(Int_t subpadnumber=0)
Set Current pad.
Double_t GetYlowNDC() const
Float_t GetTopMargin() const
Float_t GetRightMargin() const
Float_t GetBottomMargin() const
virtual Double_t GetBinErrorUp(Int_t bin) const
Return upper error associated to bin number bin.
virtual TList * GetListOfPrimitives() const =0
TGaxis * fLowerGXaxisMirror
Lower mirror of the x axis.
TString fFitDrawOpt
Stores draw option for the fit function in the fit residual case.
Extends the ROOT::Fit::Result class with a TNamed inheritance providing easy possibility for I/O...
Int_t fMode
Stores which calculation is supposed to be performed as specified by user option. ...
void SetOption(Option_t *option="")
To set axis options.
void UnZoomed()
Slot for the UnZoomed signal that was introduced to TAxis.
virtual void SetupPads()
Setup the pads.
Color_t fCi1Color
Stores the color for the 1 sigma band.
TAxis * GetUpperRefYaxis() const
Gets the y axis of the object returned by TRatioPlot::GetUpperRefObject.
TPad * fUpperPad
The pad which contains the upper plot part.
Bool_t IsDrawn()
Check if ... is drawn.
TString & Append(const char *cs)
void SetTimeFormat(const char *tformat)
Change the format used for time plotting.
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.
virtual TObject * Clone(const char *newname="") const
Make a clone of an object using the Streamer facility.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
virtual void SetLogx(Int_t value=1)
Set Lin/Log scale for X.
TGaxis * fUpperGXaxisMirror
Upper mirror of the x axis.
TVirtualPad is an abstract base class for the Pad and Canvas classes.
virtual TGraph * GetLowerRefGraph() const
Returns the reference graph for the lower pad, which means the graph that is responsible for setting ...
Double_t fCl2
Stores the confidence level for the outer confidence interval band.
virtual void Draw(Option_t *option="")
Draw Pad in Current pad (re-parent pad if necessary).
virtual ~TRatioPlot()
Destructor.
virtual Float_t GetTitleOffset() const
void SetLabelSize(Float_t labelsize)
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.
TAxis * GetLowerRefXaxis() const
Shortcut for:
virtual Int_t GetTickx() const =0
virtual Bool_t SyncPadMargins()
Figures out which pad margin has deviated from the stored ones, to figure out what the new nominal is...
virtual const char * GetTimeFormat() const
virtual void SetGridlines(Double_t *gridlines, Int_t numGridlines)
Set where horizontal, dashed lines are drawn on the lower pad.
Style_t GetFrameFillStyle() const
virtual void SetLogx(Int_t value=1)=0
virtual void SetLineColor(Color_t lcolor)
Set the line color.
virtual void SetX2(Double_t x2)
Using a TBrowser one can browse all ROOT objects.
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...
Double_t fC1
Stores the scale factor for h1 (or THStack sum)
virtual void SetRange(Int_t first=0, Int_t last=0)
Set the viewing range for the axis from bin first to last.
virtual Double_t GetBinCenter(Int_t bin) const
Return bin center for 1D histogram.
TGaxis * fUpperGYaxis
Upper graphical y axis.
virtual void SetBottomMargin(Float_t bottommargin)
Set Pad bottom margin in fraction of the pad height.
Class to manage histogram axis.
virtual void SetY1(Double_t y1)
virtual void Draw(Option_t *option="")
Draw this histogram with options.
#define dest(otri, vertexptr)
virtual void SetFillColor(Color_t fcolor)
Set the fill area color.
virtual void Init(TH1 *h1, TH1 *h2, Option_t *option="")
Internal method that shares constructor logic.
virtual Double_t GetBinUpEdge(Int_t bin) const
Return up edge of bin.
std::vector< TLine * > fGridlines
Keeps TLine objects for the gridlines.
Bool_t fShowGridlines
Stores whether to show the gridlines at all.
TObject * GetObject() const
void SetUpTopMargin(Float_t margin)
Sets the top margin of the upper pad.
Bool_t TestBit(UInt_t f) const
The most important graphics class in the ROOT system.
static TVirtualFitter * GetFitter()
static: return the current Fitter
Float_t fLeftMargin
Stores the common left margin of both pads.
TGaxis * fUpperGXaxis
Upper graphical x axis.
virtual void Divide(const TH1 *pass, const TH1 *total, Option_t *opt="cp")
Fill this TGraphAsymmErrors by dividing two 1-dimensional histograms pass/total.
Int_t fHideLabelMode
Stores which label to hide if the margin is to narrow, if at all.
virtual Int_t GetSumw2N() const
const char * GetTitle() const
Returns title of object.
TH1 * fH1
Stores the primary histogram.
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. ...
virtual TObjLink * FirstLink() const
Bool_t GetDecimals() const
Float_t fRightMargin
Stores the common right margin of both pads.
virtual Bool_t GetGridx() const =0
void SetWmax(Double_t wmax)
TGaxis * fLowerGXaxis
Lower graphical x axis.
virtual void SetX1(Double_t x1)
Float_t GetLeftMargin() const
virtual void Modified(Bool_t flag=1)=0
TPad * fLowerPad
The pad which contains the calculated lower plot part.
void SetFitDrawOpt(Option_t *opt)
Sets the drawing option for the fit in the fit residual case.
void SetLabelOffset(Float_t labeloffset)
virtual Int_t GetSize() const
void CreateGridline()
Create a grid line.
Bool_t fIsUpdating
Keeps track of whether its currently updating to reject other calls until done.
Float_t fUpTopMargin
Stores the top margin of the upper pad.
virtual void SetGridy(Int_t value=1)
Wrapper around a TObject so it can be stored in a TList.
virtual void SetFillStyle(Style_t fstyle)
Override TAttFill::FillStyle for TPad because we want to handle style=0 as style 4000.
virtual Style_t GetLabelFont() const
Float_t fUpBottomMargin
Stores the bottom margin of the upper pad.
TGraphErrors * fConfidenceInterval1
Stores the graph for the 1 sigma band.
TString fOption
Stores the option which is given in the constructor as a string.
Float_t GetSeparationMargin() const
Return the separation margin value.
double func(double *x, double *p)
virtual Int_t GetNdivisions() const
void SetLabelFont(Int_t labelfont)
TGaxis * fLowerGYaxisMirror
Lower mirror of the y axis.
Double_t GetUymin() const
void SetSeparationMargin(Float_t)
Sets the margin that separates the two pads.
void SetGraphDrawOpt(Option_t *opt)
Sets the drawing option for the lower graph.
Float_t fLowBottomMargin
Stores the bottom margin of the lower pad.
virtual void SetLineStyle(Style_t lstyle)
Set the line style.
TAxis * fSharedXAxis
X axis that stores the range for both plots.
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.
Int_t GetLast() const
Return last bin on the axis i.e.
virtual void SetRightMargin(Float_t rightmargin)
Set Pad right margin in fraction of the pad width.
Mother of all ROOT objects.
TAxis * GetYaxis() const
Get y axis of the graph.
TAxis * GetLowerRefYaxis() const
Shortcut for:
TAxis * fUpYaxis
Clone of the upper y axis.
Double_t fC2
Stores the scale factor for h2.
virtual Float_t GetLabelSize() const
TList * GetListOfPrimitives() const
virtual void SetPoint(Int_t i, Double_t x, Double_t y)
Set x and y values for point number i.
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.
void SubPadResized()
Slot that handles common resizing of upper and lower pad.
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
A Graph is a graphics object made of two arrays X and Y with npoints each.
virtual Double_t Eval(Double_t x, Double_t y=0, Double_t z=0, Double_t t=0) const
Evaluate this function.
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
void SetTickSize(Float_t ticksize)
A TGraphErrors is a TGraph with error bars.
void SetLabelColor(Int_t labelcolor)
void GetConfidenceIntervals(unsigned int n, unsigned int stride1, unsigned int stride2, const double *x, double *ci, double cl=0.95, bool norm=true) const
get confidence intervals for an array of n points x.
virtual void SetTextColor(Color_t tcolor=1)
Set the text color.
virtual Int_t GetTicky() const =0
virtual void Paint(Option_t *opt="")
Creates the visual axes when painting.
void SetRightMargin(Float_t margin)
Sets the right margin of both pads.
virtual const char * GetTitle() const
Returns title of object.
Bool_t fIsPadUpdating
Keeps track whether pads are updating during resizing.
void SetWmin(Double_t wmin)
virtual void SetPointError(Double_t ex, Double_t ey)
Set ex and ey values for point pointed by the mouse.
virtual Double_t GetBinError(Int_t bin) const
Return value of error associated to bin number bin.
void SetTitleOffset(Float_t titleoffset=1)
TGaxis * fLowerGYaxis
Lower graphical y axis.
virtual Float_t GetTickLength() const
virtual Bool_t GetGridy() const =0
void Modified(Bool_t flag=1)
TPad * fTopPad
The Pad that drawn on top on the others to have consistent coordinates.
virtual void Browse(TBrowser *b)
Browse.
void SetLowTopMargin(Float_t margin)
Sets the top margin of the lower pad.
virtual void SetNdivisions(Int_t ndiv)
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".
virtual void SetLeftMargin(Float_t leftmargin)
Set Pad left margin in fraction of the pad width.
virtual Float_t GetLabelOffset() const
virtual void SetLogy(Int_t value=1)
Set Lin/Log scale for Y.
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.