Ratioplot 6

Example showing a fit residual plot, where the separation margin has been set to 0. The last label of the lower plot's y axis is hidden automatically.

Author: Paul Gessinger
This notebook tutorial was automatically generated with ROOTBOOK-izer from the macro found in the ROOT repository on Tuesday, May 24, 2022 at 03:59 PM.

In [1]:
gStyle->SetOptStat(0);
auto c1 = new TCanvas("c1", "fit residual simple");
gPad->SetFrameFillStyle(0);
auto h1 = new TH1D("h1", "h1", 50, -5, 5);
h1->FillRandom("gaus", 5000);
TFitResultPtr fitres = h1->Fit("gaus", "S0");
h1->Sumw2();
h1->GetXaxis()->SetTitle("x");
h1->GetYaxis()->SetTitle("y");
auto rp1 = new TRatioPlot(h1, "errfunc");
rp1->SetGraphDrawOpt("L");
rp1->SetSeparationMargin(0.0);
rp1->Draw();
rp1->GetLowerRefGraph()->SetMinimum(-2);
rp1->GetLowerRefGraph()->SetMaximum(2);
 FCN=29.7219 FROM MIGRAD    STATUS=CONVERGED      54 CALLS          55 TOTAL
                     EDM=1.53143e-07    STRATEGY= 1      ERROR MATRIX ACCURATE 
  EXT PARAMETER                                   STEP         FIRST   
  NO.   NAME      VALUE            ERROR          SIZE      DERIVATIVE 
   1  Constant     3.95847e+02   6.87936e+00   1.51943e-02  -5.07531e-05
   2  Mean         6.95631e-03   1.42942e-02   3.86803e-05  -9.96876e-03
   3  Sigma        1.00274e+00   1.01683e-02   7.41023e-06  -1.95139e-01

Draw all canvases

In [2]:
gROOT->GetListOfCanvases()->Draw()