tfact.GetBinContent(iX) * 100) print "pt: %3.0f gjets: %10.1f, fakeUp: %10.1f, hadron: %10.1f, tfactUp: %6.2f" % ( fpt.GetBinLowEdge(iX), gpt.GetBinContent(iX), fptUp.GetBinContent(iX), hpt.GetBinContent(iX), tfactUp.GetBinContent(iX) * 100) print "pt: %3.0f gjets: %10.1f, fakeDown: %10.1f, hadron: %10.1f, tfactDown: %6.2f" % ( fpt.GetBinLowEdge(iX), gpt.GetBinContent(iX), fptDown.GetBinContent(iX), hpt.GetBinContent(iX), tfactDown.GetBinContent(iX) * 100) outputFile.cd() tfact.Write() tfactUp.Write() tfactDown.Write() canvas.cd() canvas.Clear() canvas.legend.Clear() canvas.legend.add(gname, title='#gamma + jet', lcolor=ROOT.kBlack, lwidth=2) canvas.legend.add(fname, title='#gamma + jet #times impurity', lcolor=ROOT.kRed, lwidth=2) canvas.legend.add(fname + 'Syst', title='impurity #pm 1#sigma', lcolor=ROOT.kRed, lwidth=2,
yields[loc][pid][ptCut][metCut]['mc'] = (-1., 0.0, 0.0) mcFile.close() yields[loc][pid][ptCut][metCut]['mc'] = tuple(count) pprint(yields) sphLumi = sum(allsamples[s].lumi for s in ['sph-16b-r', 'sph-16c-r', 'sph-16d-r', 'sph-16e-r', 'sph-16f-r', 'sph-16g-r', 'sph-16h']) canvas = SimpleCanvas(lumi = sphLumi) rcanvas = SimpleCanvas(lumi = sphLumi) for loc in s.Locations[:1]: for base in bases: for metCut in MetSels: rcanvas.cd() rcanvas.Clear() rcanvas.legend.Clear() rcanvas.legend.setPosition(0.45, 0.7, 0.8, 0.9) for iMod, mod in enumerate(mods): dataEff = r.TGraphAsymmErrors() dataEff.SetName(loc+'-'+base+mod+'-'+metCut+'-data') mcEff = r.TGraphAsymmErrors() mcEff.SetName(loc+'-'+base+mod+'-'+metCut+'-mc') gSF = r.TGraphAsymmErrors() gSF.SetName(loc+'-'+base+mod+'-'+metCut+'-sf')
sel = sel.replace('chIso', 'chWorstIso') htree.Draw('photons.pt[0]>>'+hname, sel, 'goff') hpt.Scale(1., 'width') tname = 'tfact'+iso[0]+samp tfact = fpt.Clone(tname) tfact.Divide(hpt) for iX in range(1, fpt.GetNbinsX() + 1): print "gjets: %6.1f, fake: %6.1f, hadron: %6.1f, tfact: %4.2f" % (gpt.GetBinContent(iX), fpt.GetBinContent(iX), hpt.GetBinContent(iX), tfact.GetBinContent(iX)*100) outputFile.cd() hpt.Write() tfact.Write() canvas.cd() canvas.Clear() canvas.legend.Clear() canvas.legend.add(gname, title = '#gamma + jet', lcolor = ROOT.kBlack, lwidth = 2) canvas.legend.add(fname, title = '#gamma + jet #times impurity', lcolor = ROOT.kRed, lwidth = 2, lstyle = ROOT.kDashed) canvas.legend.add(hname, title = 'EMobject + jet', lcolor = ROOT.kBlue, lwidth = 2) canvas.legend.setPosition(0.6, 0.7, 0.95, 0.9) canvas.legend.apply(gname, gpt) canvas.legend.apply(fname, fpt) canvas.legend.apply(hname, hpt) canvas.addHistogram(gpt, drawOpt = 'HIST') canvas.addHistogram(fpt, drawOpt = 'HIST') canvas.addHistogram(hpt, drawOpt = 'HIST')
rcanvas = SimpleCanvas(lumi=s.sphLumi, name='effs') scalefactors = {} passes = base + mods[2] totals = base + mods[0] for loc in s.Locations[:1]: scalefactors[loc] = {} for base in bases: scalefactors[loc][base] = {} print '\n' + base for metCut in MetSels: scalefactors[loc][base][metCut] = {} rcanvas.cd() rcanvas.Clear() rcanvas.legend.Clear() rcanvas.legend.setPosition(0.7, 0.8, 0.9, 0.9) canvas.cd() canvas.Clear() canvas.legend.Clear() canvas.legend.setPosition(0.7, 0.75, 0.9, 0.85) gDataEff = r.TGraphAsymmErrors() gDataEff.SetName(loc + '-' + base + mod + '-' + metCut + '-data') gMcEff = r.TGraphAsymmErrors() gMcEff.SetName(loc + '-' + base + mod + '-' + metCut + '-mc')