18x = ROOT.RooRealVar(
"x",
"x", -10, 10)
20m = ROOT.RooRealVar(
"m",
"m", 0, -10, 10)
21s = ROOT.RooRealVar(
"s",
"s", 2, 1, 50)
22sig = ROOT.RooGaussian(
"sig",
"sig", x, m, s)
24m2 = ROOT.RooRealVar(
"m2",
"m2", -1, -10, 10)
25s2 = ROOT.RooRealVar(
"s2",
"s2", 6, 1, 50)
26bkg = ROOT.RooGaussian(
"bkg",
"bkg", x, m2, s2)
28fsig = ROOT.RooRealVar(
"fsig",
"fsig", 0.33, 0, 1)
29model = ROOT.RooAddPdf(
"model",
"model", [sig, bkg], [fsig])
33d = model.generateBinned({x}, 1000)
36r = model.fitTo(d, Save=
True)
42frame = x.frame(Bins=40, Title=
"P.d.f with visualized 1-sigma error band")
62model.plotOn(frame, VisualizeError=(r, 1), FillColor=
"kOrange")
74model.plotOn(frame, VisualizeError=(r, 1,
False), DrawOption=
"L", LineWidth=2, LineColor=
"r")
79model.plotOn(frame, VisualizeError=(r, 1), FillColor=
"kOrange", Components=
"bkg")
82 VisualizeError=(r, 1,
False),
92model.plotOn(frame, Components=
"bkg", LineStyle=
"--")
100frame2 = x.frame(Bins=40, Title=
"Visualization of 2-sigma partial error from (m,m2)")
114model.plotOn(frame2, VisualizeError=(r, {m, m2}, 2), FillColor=
"c")
115model.plotOn(frame2, Components=
"bkg", VisualizeError=(r, {m, m2}, 2), FillColor=
"c")
118model.plotOn(frame2, Components=
"bkg", LineStyle=
"--")
122frame3 = x.frame(Bins=40, Title=
"Visualization of 2-sigma partial error from (s,s2)")
126model.plotOn(frame3, VisualizeError=(r, {s, s2}, 2), FillColor=
"g")
127model.plotOn(frame3, Components=
"bkg", VisualizeError=(r, {fsig}, 2), FillColor=
"g")
130model.plotOn(frame3, Components=
"bkg", LineStyle=
"--")
134frame4 = x.frame(Bins=40, Title=
"Visualization of 2-sigma partial error from fsig")
138model.plotOn(frame4, VisualizeError=(r, {fsig}, 2), FillColor=
"m")
139model.plotOn(frame4, Components=
"bkg", VisualizeError=(r, {fsig}, 2), FillColor=
"m")
142model.plotOn(frame4, Components=
"bkg", LineStyle=
"--")
145c = ROOT.TCanvas(
"rf610_visualerror",
"rf610_visualerror", 800, 800)
148ROOT.gPad.SetLeftMargin(0.15)
149frame.GetYaxis().SetTitleOffset(1.4)
152ROOT.gPad.SetLeftMargin(0.15)
153frame2.GetYaxis().SetTitleOffset(1.6)
156ROOT.gPad.SetLeftMargin(0.15)
157frame3.GetYaxis().SetTitleOffset(1.6)
160ROOT.gPad.SetLeftMargin(0.15)
161frame4.GetYaxis().SetTitleOffset(1.6)
164c.SaveAs(
"rf610_visualerror.png")