print "Plots for", patternnew yds = yp.YieldStore("lepYields") yds.addFromFiles(patternnew, ("lep", "sele")) yds.showStats() canvs = [] # Samples samps = ["EWK"] #,"TT","TTdiLep","TTsemiLep","WJets"] for samp in samps: # RCS MB yp.colorDict[samp + "_Rcs_MB"] = yp.kBlue hRcsMB = yp.makeSampHisto(yds, samp, "Rcs_MB", samp + "_Rcs_MB") #hRcsMB.SetTitle("R_{CS} (MB)") hRcsMB.SetTitle( "R_{CS}^{MC}(n_{b-tag}, n_{jet}^{SR}, EWK)") # hRcsMB.SetTitle("R_{CS}^{MC}(n_{b-tag}, n_{jet}#in [5], EWK)") # RCS SB yp.colorDict[samp + "_Rcs_SB"] = yp.kRed hRcsSB = yp.makeSampHisto(yds, samp, "Rcs_SB", samp + "_Rcs_SB") #hRcsSB.SetTitle("R_{CS} (SB)") hRcsSB.SetTitle( "R_{CS}^{MC}(n_{b-tag}, n_{jet}#in [4,5], EWK)") # hRcsSB.SetTitle("R_{CS}^{MC}(n_{b-tag}, n_{jet}#in [4], EWK)") # Kappa
basename = os.path.basename(pattern) mask = basename.replace("*","X_") yds = yp.YieldStore("Sele") yds.addFromFiles(pattern,("lep","sele")) canvs = [] # Samples samps = ["EWK","TT","TTdiLep","TTsemiLep","WJets"] for samp in samps: # RCS MB yp.colorDict[samp+"_Rcs_MB"] = yp.kBlue hRcsMB = yp.makeSampHisto(yds,samp,"Rcs_MB",samp+"_Rcs_MB") hRcsMB.SetTitle("R_{CS} (MB)") # RCS SB yp.colorDict[samp+"_Rcs_SB"] = yp.kRed hRcsSB = yp.makeSampHisto(yds,samp,"Rcs_SB",samp+"_Rcs_SB") hRcsSB.SetTitle("R_{CS} (SB)") # Kappa yp.colorDict[samp+"_Kappa"] = yp.kBlack hKappa = yp.makeSampHisto(yds,samp,"Kappa",samp+"_Kappa") hKappa.SetTitle("#kappa") yp.prepKappaHist(hKappa) yp.prepRatio(hKappa)
#masses = ["mGo1200_mLSP800","mGo1500_mLSP100"] var = "SR_MB" # canvs canvs = [] allhists = [] for mass in masses: hists = [] # read in central value signame = samp + "_" + mass hCentral = yp.makeSampHisto(yds, signame, var, signame + "_central") #print hCentral yp.prepRatio(hCentral, True) #hCentral.GetYaxis().SetRangeUser() ## Define flat values (i.e. for PU) flats = {} #flats["PU"] = 0.05 ### Add flat systs (lumi, lepSF, triggEff, etc.) #flats["stat"] = 0.1 flats["lepSF"] = 0.02 flats["lumi"] = 0.026 flats["iso"] = 0.04 flats["trig"] = 0.02 flats["PU"] = 0.1
# update colors yp.colorDict["MC_prediction"] = yp.kGreen yp.colorDict["Data_prediction"] = yp.kRed # Category #cat = "CR_MB" cats = ["SR_MB_predict"] canvs = [] for cat in cats: # Totals #hMCpred = yp.makeSampHisto(yds,"background_QCDsubtr",cat,"MC_prediction"); hMCpred.SetTitle("MC (Pred)") hDataPred = yp.makeSampHisto(yds,"data_QCDsubtr",cat,"Data_prediction"); hDataPred.SetTitle("Data (Pred)") hData = yp.makeSampHisto(yds,"data_QCDsubtr","SR_MB","Data"); hData.SetTitle("Data") # Ratio #ratio = yp.getRatio(hTotal,hDataPred) ratio = yp.getRatio(hData,hDataPred) #ratio.GetYaxis().SetRangeUser(0,5) if doPoisErr: from CMGTools.TTHAnalysis.plotter.mcPlots import getDataPoissonErrors hDataPois = getDataPoissonErrors(hData,True,True) hDataPois.SetName("DataPois") hDataPois.SetTitle("Data") ratioPois = yp.getRatio(hDataPois,hDataPred)
# # samps = [signame] cat = "Kappa" #cat = "SR_MB" #logY = True logY = False for samp in samps: print "Making plot for", samp, cat # 1 yp.colorDict[samp + "_1_" + cat] = yp.kBlue h1 = yp.makeSampHisto(yds1, samp, cat, samp + "_1_" + cat) h1.SetTitle(samp + " (with dilep corr.)") # 2 yp.colorDict[samp + "_2_" + cat] = yp.kRed h2 = yp.makeSampHisto(yds2, samp, cat, samp + "_2_" + cat) h2.SetTitle(samp + " (std. weights)") #h2.SetTitle(samp+" (only btagSF 2)") #h2.SetTitle(samp+" (All but PU)") #h2.SetTitle(samp+" (PUwgt < 4.)") #h2.SetTitle(samp+" (1 hadrFlav)") ratio = yp.getRatio(h1, h2) ratio.GetYaxis().SetRangeUser(0.9, 1.10) for i in range(0, ratio.GetNbinsX()): print ratio.GetBinContent(i)
print "Plots for", patternnew yds = yp.YieldStore("lepYields") yds.addFromFiles(patternnew,("lep","sele")) yds.showStats() canvs = [] # Samples samps = ["EWK"]#,"TT","TTdiLep","TTsemiLep","WJets"] for samp in samps: # RCS MB yp.colorDict[samp+"_Rcs_MB"] = yp.kBlue hRcsMB = yp.makeSampHisto(yds,samp,"Rcs_MB",samp+"_Rcs_MB") #hRcsMB.SetTitle("R_{CS} (MB)") hRcsMB.SetTitle("R_{CS}^{MC}(n_{b-tag}, n_{jet}^{SR}, EWK)") # RCS SB yp.colorDict[samp+"_Rcs_SB"] = yp.kRed hRcsSB = yp.makeSampHisto(yds,samp,"Rcs_SB",samp+"_Rcs_SB") #hRcsSB.SetTitle("R_{CS} (SB)") hRcsSB.SetTitle("R_{CS}^{MC}(n_{b-tag}, n_{jet}#in [4,5], EWK)") # Kappa yp.colorDict[samp+"_Kappa"] = yp.kRed hKappa = yp.makeSampHisto(yds,samp,"Kappa",samp+"_Kappa") hKappa.SetTitle("#kappa_{MC}") yp.prepKappaHist(hKappa)
ydsSeleEle.addFromFiles(pattern,("ele","sele")) ydsSeleMu = yp.YieldStore("MuSele") ydsSeleMu.addFromFiles(pattern,("mu","sele")) ydsAntiMu = yp.YieldStore("MuAnti") ydsAntiMu.addFromFiles(pattern,("mu","anti")) # Category cats = ["CR_MB"]#,"CR_SB"] for cat in cats: # ele yp.colorDict["Data_QCD_Ele_"+cat] = yp.kRed hEleQCDpred = yp.makeSampHisto(ydsSeleEle,"data_QCDpred",cat,"Data_QCD_Ele_"+cat) hEleQCDpred.SetTitle("QCD pred. (ele)") # muons ''' yp.colorDict["Data_QCD_Mu_"+cat] = yp.kBlue hMuAnti = yp.makeSampHisto(ydsAntiMu,"data",cat,"Data_QCD_Mu_"+cat) hMuAnti.SetTitle("Anti-Sele (#mu)") # apply "F-ratio" = 10% hMuAnti.Scale(1/10.); hMuAnti.SetTitle("Anti-Sele (#mu) x0.1") ''' # mu yp.colorDict["Data_QCD_Mu_"+cat] = yp.kBlue hMuQCDpred = yp.makeSampHisto(ydsSeleMu,"data_QCDpred",cat,"Data_QCD_Mu_"+cat) hMuQCDpred.SetTitle("QCD pred. (#mu)")
yp.colorDict["Data_prediction"] = yp.kRed # Category cat = "SR_MB_predict" # MC samps samps = [(samp,cat) for samp in mcSamps] mcHists = yp.makeSampHists(yds,samps) mcStack = yp.getStack(mcHists) hTotal = yp.getTotal(mcHists) # for MC closure mcsamp = "EWK_poisson" mcsamp = "background_poisson_QCDsubtr" hMCpred = yp.makeSampHisto(yds,mcsamp,cat,"MC_prediction"); hMCpred.SetTitle("MC (Pred)") # DATA hDataPred = yp.makeSampHisto(yds,"data_QCDsubtr",cat,"Data_prediction"); hDataPred.SetTitle("Data (Pred)") hData = yp.makeSampHisto(yds,"data_QCDsubtr","SR_MB","Data"); hData.SetTitle("Data") ## Append Systematics to prediction print "Appending syst. unc. to prediction and total MC" hDataPred = yp.getHistWithError(hDataPred, hKappaSysts, new = False) hTotal = yp.getHistWithError(hTotal, hMCSysts, new = False) # test MC #hDataPred = hMCpred # Ratio #ratio = yp.getRatio(hTotal,hDataPred)
samps = ["EWK","TTJets","WJets","SingleTop","DY","TTV"] samps = ["EWK"] cat = "Kappa" #cat = "CR_MB" #logY = True logY = False for samp in samps: print "Making plot for", samp, cat # 1A yp.colorDict[samp+"_1A_"+cat] = yp.kBlue h1A = yp.makeSampHisto(yds1A,samp,cat,samp+"_1A_"+cat) h1A.SetTitle(samp+" (Method 1A)") #h1A.SetTitle(samp+" (1A mcFlav)") #h1A.SetTitle(samp+" (All SF w/o PU)") # 1B yp.colorDict[samp+"_1B_"+cat] = yp.kRed h1B = yp.makeSampHisto(yds1B,samp,cat,samp+"_1B_"+cat) h1B.SetTitle(samp+" (Method 1B)") #h1B.SetTitle(samp+" (only btagSF 1B)") #h1B.SetTitle(samp+" (All but PU)") #h1B.SetTitle(samp+" (PUwgt < 4.)") #h1B.SetTitle(samp+" (1A hadrFlav)") ratio = yp.getRatio(h1A,h1B) #ratio.GetYaxis().SetRangeUser(0.75,1.25)
yp.colorDict["Data_prediction"] = yp.kRed # Category cat = "SR_MB_predict" # MC samps samps = [(samp, cat) for samp in mcSamps] mcHists = yp.makeSampHists(yds, samps) # for MC closure #mcsamp = "EWK_poisson" #mcsamp = "background_poisson_QCDsubtr" #hMCpred = yp.makeSampHisto(yds,mcsamp,cat,"MC_prediction"); hMCpred.SetTitle("MC (Pred)") # DATA hDataPred = yp.makeSampHisto(yds, "data_QCDsubtr", cat, "Data_prediction") hDataPred.SetTitle("Pred.") #hDataPred = yp.makeSampHisto(yds,"data",cat,"Data_prediction"); hDataPred.SetTitle("Prediction") hData = yp.makeSampHisto(yds, "data", "SR_MB", "Data") hData.SetTitle("Data") ## Append Systematics to prediction print "Appending syst. unc. to prediction and total MC" hDataPred = yp.getHistWithError(hDataPred, hKappaSysts, new=False) # Do MC hists scaleToHist(mcHists, hDataPred) mcStack = yp.getStack(mcHists) #hTotal = yp.getTotal(mcHists) #hTotal = yp.getHistWithError(hTotal, hMCSysts, new = False)
# Sample and variable #samp = "EWK" samps = ["EWK", "TTJets", "WJets", "SingleTop", "DY", "TTV"] #samps = ['T_tWch','TToLeptons_tch','TBar_tWch', 'TToLeptons_sch',"EWK"] samp = samps[0] var = "Kappa" #var = "SR_SB" # canvs and hists hists = [] canvs = [] # read in central value hCentral = yp.makeSampHisto(yds, samp, var) print "hCentral done" yp.prepRatio(hCentral) for i, syst in enumerate(systs): yp.colorDict[syst + "_syst"] = sysCols[i] sname = samp + "_" + syst + "_syst" print "Making hist for", sname hist = yp.makeSampHisto(yds, sname, var, syst + "_syst") if syst in systNames: hist.SetTitle(systNames[syst]) else: hist.SetTitle(syst) hist.GetYaxis().SetTitle("Relative uncertainty") hist.GetYaxis().SetTitleSize(0.04)
# Sample and variable samp = "EWK" #samps = ["TTJets","WJets","SingleTop","DY","TTV"] #samps = ['T_tWch','TToLeptons_tch','TBar_tWch', 'TToLeptons_sch',"EWK"] #samp = samps[4] var = "Kappa" #var = "SR_SB" # canvs and hists hists = [] canvs = [] # read in central value hCentral = yp.makeSampHisto(yds,samp,var) yp.prepRatio(hCentral) for i,syst in enumerate(systs): yp.colorDict[syst+"_syst"] = sysCols[i] sname = samp+"_"+syst+"_syst" print "Making hist for", sname hist = yp.makeSampHisto(yds,sname,var,syst+"_syst") if syst in systNames: hist.SetTitle(systNames[syst]) else: hist.SetTitle(syst) hist.GetYaxis().SetTitle("Relative uncertainty") hist.GetYaxis().SetTitleSize(0.04) hist.GetYaxis().SetTitleOffset(0.8)
yp.colorDict["Data_prediction"] = yp.kRed # Category cat = "SR_MB_predict" # MC samps samps = [(samp, cat) for samp in mcSamps] mcHists = yp.makeSampHists(yds, samps) # for MC closure #mcsamp = "EWK_poisson" #mcsamp = "background_poisson_QCDsubtr" #hMCpred = yp.makeSampHisto(yds,mcsamp,cat,"MC_prediction"); hMCpred.SetTitle("MC (Pred)") # DATA hDataPred = yp.makeSampHisto(yds, "data_QCDsubtr", cat, "Data_prediction") hDataPred.SetTitle("Prediction") hData = yp.makeSampHisto(yds, "data_QCDsubtr", "SR_MB", "Data") hData.SetTitle("Data") # Signal hSig1 = yp.makeSampHisto(ydsSig, "T1tttt_Scan_mGo1900_mLSP100", "SR_MB", "T1tttt (1.9/0.1)") hSig1.SetTitle("T1tttt (1.9/0.1)") hSig2 = yp.makeSampHisto(ydsSig, "T1tttt_Scan_mGo1400_mLSP1100", "SR_MB", "T1tttt (1.4/1.1)") hSig2.SetTitle("T1tttt (1.4/1.1)") ## Append Systematics to prediction print "Appending syst. unc. to prediction and total MC" hDataPred = yp.getHistWithError(hDataPred, hKappaSysts, new=False)
# update colors yp.colorDict["MC_prediction"] = yp.kGreen yp.colorDict["Data_prediction"] = yp.kRed # Category #cat = "CR_MB" cats = ["SR_MB_predict"] canvs = [] for cat in cats: # Totals #hMCpred = yp.makeSampHisto(yds,"background_QCDsubtr",cat,"MC_prediction"); hMCpred.SetTitle("MC (Pred)") hDataPred = yp.makeSampHisto(yds, "data_QCDsubtr", cat, "Data_prediction") hDataPred.SetTitle("Data (Pred)") hData = yp.makeSampHisto(yds, "data_QCDsubtr", "SR_MB", "Data") hData.SetTitle("Data") # Ratio #ratio = yp.getRatio(hTotal,hDataPred) ratio = yp.getRatio(hData, hDataPred) #ratio.GetYaxis().SetRangeUser(0,5) if doPoisErr: from CMGTools.TTHAnalysis.plotter.mcPlots import getDataPoissonErrors hDataPois = getDataPoissonErrors(hData, True, True) hDataPois.SetName("DataPois") hDataPois.SetTitle("Data")
ydsSeleEle.addFromFiles(pattern,("ele","sele")) ydsSeleMu = yp.YieldStore("MuSele") ydsSeleMu.addFromFiles(pattern,("mu","sele")) ydsAntiMu = yp.YieldStore("MuAnti") ydsAntiMu.addFromFiles(pattern,("mu","anti")) # Category cats = ["CR_SB"]#,"CR_SB"] for cat in cats: # ele yp.colorDict["Data_QCD_Ele_"+cat] = yp.kRed hEleQCDpred = yp.makeSampHisto(ydsSeleEle,"data_QCDpred",cat,"Data_QCD_Ele_"+cat) hEleQCDpred.SetTitle("QCD pred. (ele)") # muons yp.colorDict["Data_QCD_Mu_"+cat] = yp.kBlue hMuAnti = yp.makeSampHisto(ydsAntiMu,"data",cat,"Data_QCD_Mu_"+cat) hMuAnti.SetTitle("Anti-Sele (#mu)") # apply "F-ratio" = 10% hMuAnti.Scale(1/10.); hMuAnti.SetTitle("Anti-Sele (#mu) x0.1") # Data yp.colorDict["Data_"+cat] = yp.kBlack hData = yp.makeSampHisto(ydsSele,"data",cat,"Data_"+cat) hData.SetTitle("Data (sele)")
sighists = [] masses = [] mass = "mGo1500_mLSP100" massName = "(1500,100)" masses.append((mass, massName, yp.kMagenta)) mass = "mGo1200_mLSP800" massName = "(1200,800)" masses.append((mass, massName, yp.kBlack)) for (mass, massName, col) in masses: signame = "T1tttt_Scan_" + mass yp.colorDict[signame + "_Sig_" + cat] = col hSig = yp.makeSampHisto(ydsSig, signame, cat, signame + "_Sig_" + cat) #hSig.SetTitle("T1tttt_"+mass) hSig.SetTitle("T1tttt " + massName) sighists.append(hSig) #print sighists ratio = yp.getRatio(hSig, hTotal) ratio.SetName("SigOvMC") #ratio.GetYaxis().SetRangeUser(0.75,1.25) hists += [hMC, hTotal, ratio] + sighists #canv = yp.plotHists(cat,[hMC,hSig],ratio,"TM", 1200, 600, logY = True) canv = yp.plotHists(cat, [hMC] + sighists, None,