Exemple #1
0
        ratio = yp.getRatio(h1, h2)
        ratio.GetYaxis().SetRangeUser(0.9, 1.10)
        for i in range(0, ratio.GetNbinsX()):
            print ratio.GetBinContent(i)
            ratio.SetBinError(i, 0.0)

        #h1.GetYaxis().SetRangeUser(0.55,1.45)
        if "WJets" in samp and "Kappa" in cat:
            h2.GetYaxis().SetRangeUser(0.05, 3.45)
            h1.GetYaxis().SetRangeUser(0.05, 3.45)

        hists += [h1, h2, ratio]
        canv = yp.plotHists(cat + "_" + samp, [h1, h2],
                            ratio,
                            "TM",
                            1200,
                            600,
                            logY=logY)

        canvs.append(canv)

        if not yp._batchMode:
            answ = raw_input("Enter 'q' to exit: ")
            if "q" in answ: exit(0)

    # Save canvases
    exts = [".pdf", ".png"]  #,".root"]
    #exts = [".pdf"]

    #odir = "BinPlots/signal/Compare/MET3TeV/allSF_noPU/" + cat + "/"
    odir = "BinPlots/background/Compare/DilepCOrr_YesNo/allSF/" + cat + "/"
        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)

        canv = yp.plotHists(samp+"_RcsKappa_",[hRcsMB,hRcsSB],hKappa)
        canvs.append(canv)

        if not yp._batchMode: raw_input("Enter any key to exit")


    # Save canvases
    exts = [".pdf",".png"]
    #exts = [".pdf"]

    odir = "BinPlots/Rcs/test/"

    for canv in canvs:
        for ext in exts:
            canv.SaveAs(odir+mask+canv.GetName()+ext)
        ratEle = yp.getRatio(hEleQCDpred,hDataEle)
        ratEle.GetYaxis().SetRangeUser(0,0.35)

        ## combined
        ratEle.SetLineColor(hEleQCDpred.GetLineColor())
        ratEle.SetMarkerColor(hEleQCDpred.GetMarkerColor())

        ratMu.SetLineColor(hMuQCDpred.GetLineColor())
        ratMu.SetMarkerColor(hMuQCDpred.GetMarkerColor())

        '''
        #ratio = yp.getRatio(hMuAnti,hEleQCDpred)
        ratio = yp.getRatio(hMuAnti,hDataMu)
        #ratio.GetYaxis().SetRangeUser(-0.45,0.45)
        #ratio.GetYaxis().SetRangeUser(0,0.95)
        ratio.GetYaxis().SetRangeUser(0,0.105)
        '''

        #canv = yp.plotHists("Sele_QCDvsMC_Lep_"+cat,[hMCele,hMCmu,hEle,hMu])
        #canv = yp.plotHists("Data_vs_QCD_"+cat,[hDataEle,hDataMu,hEleQCDpred,hMuAnti],ratio,'TM', 1200, 600, logY = False)
        canv = yp.plotHists("Data_vs_QCD_"+cat,[hDataEle,hDataMu,hEleQCDpred,hMuQCDpred],[ratEle,ratMu],'TM', 1200, 600, logY = False)
        #canv = yp.plotHists("Data_vs_QCD_Mu_"+cat,[hDataMu,hMuAnti],ratio)

        if not yp._batchMode: raw_input("Enter any key to exit")

        exts = [".pdf",".png"]
        #exts = [".pdf"]
        for ext in exts:
            canv.SaveAs("BinPlots/QCD/lumi2p3fb/DataCompare/"+mask+canv.GetName()+ext)
Exemple #4
0
        mcStack = yp.getStack(mcHists)
        hUncert = hDataPred.Clone("uncert")
        hUncert.SetTitle("Statistical Uncertainty only")
        yp.setUnc(hUncert)

        #canv = plotHists("DataNJ45_"+cat,[stack,hMCpred,hDataPred,hData,total],ratio)
        width = 1200
        height = 600
        legPos = "TM"

        if doSquare == True:
            width = 600
            height = 600
            legPos = "Square"
        if doPoisErr:
            canv = yp.plotHists("SR_MB_Prediction",[mcStack,hUncert,hDataPois],[hPredUnc,ratioPois],legPos, width, height, logY = True)
        else:
            canv = yp.plotHists("SR_MB_Prediction",[mcStack,hUncert,hData],ratio,legPos, width, height, logY = True)

        cname = "Data_"+lum.replace('.','p')+"_"+mask

        if doPoisErr: cname += "poisErr_"

        canv.SetName(cname + canv.GetName())

        canvs.append(canv)

        #print canv.GetName()

        if not yp._batchMode:
            if "q" in raw_input("Enter any key to exit (or 'q' to stop): "): exit(0)
Exemple #5
0
                    # Kappa
                    yp.colorDict[samp+"_Kappa"] = yp.kRed
                    hKappa = yp.makeSampHisto(yds,samp,"Kappa",samp+"_Kappa")
                    hKappa.SetTitle("#kappa_{MC}")

                    yp.prepKappaHist(hKappa)
                    yp.prepRatio(hKappa)

                    hRcsMB.GetYaxis().SetRangeUser(0,0.2)

                    ## DATA
                    yp.colorDict["data_QCDsubtr_Rcs_SB"] = yp.kBlack
                    hDataSB = yp.makeSampHisto(yds,"data_QCDsubtr","Rcs_SB","data_QCDsubtr_Rcs_SB")
                    hDataSB.SetTitle("R_{CS} (Data SB)")

                    canv = yp.plotHists(samp+"_RcsKappa_",[hRcsMB,hRcsSB,hDataSB],hKappa, legPos = "TRC", width = 1200, height = 600)
                    #canv = yp.plotHists(samp+"_RcsKappa_",[hRcsMB,hRcsSB],hKappa, legPos = "TM", width = 1200, height = 600)
                    #canv = yp.plotHists(samp+"_RcsKappa_",[hRcsMB,hRcsSB],hKappa, legPos = "TM")
                    #canv = yp.plotHists(samp+"_RcsKappa_",[hDataSB, hRcsSB],None, legPos = "TMR", width = 1200, height = 600)

                    hRcsMB.GetYaxis().SetTitle("R_{CS}")
                    hRcsMB.GetYaxis().SetTitleSize(0.07)
                    hRcsMB.GetYaxis().SetTitleOffset(0.5)

                    hKappa.GetYaxis().SetTitleSize(0.2)
                    hKappa.GetYaxis().SetTitleOffset(0.15)
                    hKappa.GetYaxis().SetTitle("#kappa_{MC}")

                    canvs.append(canv)

                    if not yp._batchMode: raw_input("Enter any key to exit")
    hPredUnc.GetYaxis().SetTitle(ratio.GetYaxis().GetTitle())
    hPredUnc.GetYaxis().SetRangeUser(0,3.9)

    # set error
    for i in xrange(1,hPredUnc.GetNbinsX()+1):
        hPredUnc.SetBinError(i,hDataPred.GetBinError(i)/hDataPred.GetBinContent(i))

    #### Drawing
    logY = True
    #logY = False
    cname = "Data_2p24fb_"+mask
    hists = [mcStack,hUncert,hDataPois]
    ratios = [hPredUnc,ratioPois]

    #canv = yp.plotHists("SR_MB_Prediction",[mcStack,hTotal,hDataPred,hDataPois],[hPredUnc,ratioPois],'TM', 1200, 600, logY = logY)
    canv = yp.plotHists("SR_MB_Prediction",hists,ratios,'TM', 1200, 600, logY = logY)

    canv.SetName(cname + canv.GetName())

    if logY: canv.SetName(canv.GetName() + "_log")
    canvs.append(canv)

    if not yp._batchMode:
        if "q" in raw_input("Enter any key to exit (or 'q' to stop): "): exit(0)

    # Save canvases
    exts = [".pdf",".png",".root"]
    #exts = [".pdf"]

    odir = "BinPlots/Data/JECv7/fixSR_poisErr/allSF_noPU/Method1A/"
    #odir = "BinPlots/Syst/btag/hadronFlavour/allSF_noPU/Method1B/"
    ## 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)
    ratio = yp.getRatio(hData,hDataPred)

    logY = True
    #logY = False
    cname = "Data_2p24fb_"+mask
    canv = yp.plotHists("SR_MB_Prediction",[mcStack,hTotal,hDataPred,hData],ratio,'TM', 1200, 600, logY = logY)
    #canv = yp.plotHists("MC_2p24fb_"+cat+'_'+mask,[mcStack,hTotal,hDataPred],ratio,'TM', 1200, 600, logY = logY)

    canv.SetName(cname + canv.GetName())

    if logY: canv.SetName(canv.GetName() + "_log")
    canvs.append(canv)

    if not yp._batchMode: raw_input("Enter any key to exit")

    # Save canvases
    exts = [".pdf",".png",".root"]
    #exts = [".pdf"]

    odir = "BinPlots/Data/Pred/unbld/allSF_noPU/Method1A/"
    #odir = "BinPlots/Syst/btag/hadronFlavour/allSF_noPU/Method1B/"
        yp.colorDict["DataMu_"+cat] = yp.kCyan-3
        hDataMu = yp.makeSampHisto(ydsSeleMu,"data",cat,"DataMu_"+cat)
        hDataMu.SetTitle("Data (#mu)")

        ## MC
        #yp.colorDict["MC_Ele_"+cat] = kOrange-3
        #hMCele = yp.makeSampHisto(ydsSeleEle,"background",cat,"MC_Ele_"+cat)
        #hMCele.SetTitle("MC (ele)")

        #yp.colorDict["MC_Mu_"+cat] = kCyan
        #hMCmu = yp.makeSampHisto(ydsSeleMu,"background",cat,"MC_Mu_"+cat)
        #yp.hMCmu.SetTitle("MC (#mu)")

        #ratio = yp.getRatio(hMuAnti,hEleQCDpred)
        ratio = yp.getRatio(hMuAnti,hDataMu)
        #ratio.GetYaxis().SetRangeUser(-0.45,0.45)
        #ratio.GetYaxis().SetRangeUser(0,0.95)
        ratio.GetYaxis().SetRangeUser(0,0.105)

        #canv = yp.plotHists("Sele_QCDvsMC_Lep_"+cat,[hMCele,hMCmu,hEle,hMu])
        #canv = yp.plotHists("Data_vs_QCD_"+cat,[hDataEle,hDataMu,hEleQCDpred,hMuAnti],ratio)
        canv = yp.plotHists("Data_vs_QCD_Mu_"+cat,[hDataMu,hMuAnti],ratio)

        if not yp._batchMode: raw_input("Enter any key to exit")

        exts = [".pdf",".png"]
        #exts = [".pdf"]
        for ext in exts:
            canv.SaveAs("BinPlots/QCD/lumi2p1/DataCompare/"+mask+canv.GetName()+ext)

Exemple #9
0
        sighists.append(hSig)

    #### Drawing
    logY = True
    #logY = False
    cname = "DataVsSig_Pull_" + mask
    hists = [mcStack, hUncert] + sighists + [hDataPois]
    #ratios = [hPredUnc,ratioPois]
    ratios = pull

    #canv = yp.plotHists("SR_MB_Prediction",[mcStack,hTotal,hDataPred,hDataPois],[hPredUnc,ratioPois],'TM', 1200, 600, logY = logY)
    canv = yp.plotHists("SR_MB_Prediction",
                        hists,
                        ratios,
                        'TRC',
                        1000,
                        600,
                        logY=logY,
                        nCols=2)

    canv.SetName(cname + canv.GetName())

    if logY: canv.SetName(canv.GetName() + "_log")
    canvs.append(canv)

    if not yp._batchMode:
        if "q" in raw_input("Enter any key to exit (or 'q' to stop): "):
            exit(0)

    # Save canvases
    exts = [".pdf", ".png", ".root"]
Exemple #10
0
    sqHist = yp.getSquaredSum(hists)

    hCentral.GetYaxis().SetTitle("#kappa_{EWK}")
    hCentral.GetYaxis().SetTitleSize(0.15)
    hCentral.GetYaxis().SetTitleOffset(0.15)

    hCentralUncert = yp.getHistWithError(hCentral, sqHist, True)
    '''
    for bin in range(1,hCentral.GetNbinsX()+1):
        print bin
        print hCentral.GetBinContent(bin), hCentralUncert.GetBinContent(bin)
        print hCentral.GetBinError(bin), hCentralUncert.GetBinError(bin)
    '''

    #canv = yp.plotHists(var+"_"+samp+"_Syst",[stack,sqHist],[hCentral,hCentralUncert],"TM", 1200, 600, nCols = 5)
    canv = yp.plotHists(var + "_" + samp + "_Syst", [stack, sqHist],
                        [hCentral, hCentralUncert], "TRC", 1200, 600)
    #    canv = yp.plotHists(var+"_"+samp+"_Syst",[sqHist]+hists,[hCentral,hCentralUncert],"TM", 1200, 600)
    #    canv = yp.plotHists(var+"_"+samp+"_Stat",[stack,sqHist],hCentral,"TM", 1200, 600)

    canvs.append(canv)
    if not yp._batchMode: raw_input("Enter any key to exit")

    # Save canvases
    exts = [".pdf", ".png", ".root"]
    #exts = [".pdf"]

    #odir = "BinPlots/Syst/Combine/test/allSF_noPU_Wpol/Method1A/"
    #odir = "BinPlots/Syst/Combine/allSF_noPU_LTfix/Method1A/"
    odir = "BinPlots/Syst/Combine/forApproval/allSF_noPU/"
    if not os.path.isdir(odir): os.makedirs(odir)
Exemple #11
0
        #yp.prepKappaHist(hist)
        #yp.prepRatio(hist)

        # normalize to central value
        #hist.Divide(hCentral)

        hists.append(hist)

    # make stack/total syst hists
    #total = yp.getTotal(hists)
    stack = yp.getStack(hists)
    sqHist = yp.getSquaredSum(hists)

    hCentralUncert = yp.getHistWithError(hCentral, sqHist)
    canv = yp.plotHists(var+"_"+samp+"_Syst",[stack,sqHist],[hCentral,hCentralUncert],"TM", 1200, 600)
#    canv = yp.plotHists(var+"_"+samp+"_Syst",[sqHist]+hists,[hCentral,hCentralUncert],"TM", 1200, 600)
#    canv = yp.plotHists(var+"_"+samp+"_Stat",[stack,sqHist],hCentral,"TM", 1200, 600)

    canvs.append(canv)
    if not yp._batchMode: raw_input("Enter any key to exit")

    # Save canvases
    exts = [".pdf",".png",".root"]
    #exts = [".pdf"]

    #odir = "BinPlots/Syst/Combine/test/allSF_noPU_Wpol/Method1A/"
    odir = "BinPlots/Syst/Combine/allSF_noPU_Wpol/Method1A/"
    if not os.path.isdir(odir): os.makedirs(odir)

    ## Save hists
Exemple #12
0
    hCentral.GetYaxis().SetTitle("#kappa_{EWK}")
    hCentral.GetYaxis().SetTitleSize(0.15)
    hCentral.GetYaxis().SetTitleOffset(0.17)

    hCentralUncert = yp.getHistWithError(hCentral, sqHist, True)
    '''
    for bin in range(1,hCentral.GetNbinsX()+1):
        print bin
        print hCentral.GetBinContent(bin), hCentralUncert.GetBinContent(bin)
        print hCentral.GetBinError(bin), hCentralUncert.GetBinError(bin)
    '''

    #canv = yp.plotHists(var+"_"+samp+"_Syst",[stack,sqHist],[hCentral,hCentralUncert],"TM", 1200, 600, nCols = 5)
    canv = yp.plotHists(var + "_" + samp + "_Syst", [stack, sqHist],
                        [hCentral, hCentralUncert],
                        "TLC",
                        1000,
                        600,
                        nCols=2)
    #    canv = yp.plotHists(var+"_"+samp+"_Syst",[sqHist]+hists,[hCentral,hCentralUncert],"TM", 1200, 600)
    #    canv = yp.plotHists(var+"_"+samp+"_Stat",[stack,sqHist],hCentral,"TM", 1200, 600)

    canvs.append(canv)
    if not yp._batchMode: raw_input("Enter any key to exit")

    # Save canvases
    exts = [".pdf", ".png", ".root"]
    #exts = [".pdf"]

    #odir = "BinPlots/Syst/Combine/test/allSF_noPU_Wpol/Method1A/"
    #odir = "BinPlots/Syst/Combine/allSF_noPU_LTfix/Method1A/"
    odir = "BinPlots/Syst/Combine/"
Exemple #13
0
        mcHists = yp.makeSampHists(yds, samps)

        # Scale MC hists to Prediction
        scaleToHist(mcHists, hDataPred)

        mcStack = yp.getStack(mcHists)
        hUncert = hDataPred.Clone("uncert")
        hUncert.SetTitle("Pred. Uncertainty")
        yp.setUnc(hUncert)

        #canv = plotHists("DataNJ45_"+cat,[stack,hMCpred,hDataPred,hData,total],ratio)
        if doPoisErr:
            canv = yp.plotHists("SR_MB_Prediction",
                                [mcStack, hUncert, hDataPois],
                                [hPredUnc, ratioPois],
                                'TM',
                                1200,
                                600,
                                logY=True)
        else:
            canv = yp.plotHists("SR_MB_Prediction", [mcStack, hUncert, hData],
                                ratio,
                                'TM',
                                1200,
                                600,
                                logY=True)

        cname = "Data_2p24fb_" + mask

        if doPoisErr: cname += "poisErr_"
Exemple #14
0
        stack = yp.getStack(hists)
        #sqHist = yp.getSquaredSum(hists)
        sqHist = yp.getSquaredSum(hists[::-1])

        hCentralUncert = yp.getHistWithError(hCentral, sqHist)

        hCentral.GetYaxis().SetRangeUser(0, 5.9)
        hCentral.GetYaxis().SetTitleSize(0.15)
        hCentral.GetYaxis().SetTitleOffset(0.17)

        # save hists
        allhists += hists + [hCentral, hCentralUncert, stack, sqHist]

        canv = yp.plotHists(var + "_" + signame, [stack, sqHist],
                            [hCentral, hCentralUncert],
                            "TLC",
                            1200,
                            600,
                            nCols=2)
        canv.SetName(canv.GetName() + "_Syst")
        #    canv = yp.plotHists(var+"_"+signame+"_Syst",[sqHist]+hists,[hCentral,hCentralUncert],"TM", 1200, 600)
        #    canv = yp.plotHists(var+"_"+signame+"_Stat",[stack,sqHist],hCentral,"TM", 1200, 600)

        canvs.append(canv)
        if not yp._batchMode: raw_input("Enter any key to exit")

    # Save canvases
    exts = [".pdf", ".png", ".root"]
    #exts = [".pdf"]

    #odir = "BinPlots/Syst/Combine/test/allSF_noPU_Wpol/Method1A/"
    #odir = "BinPlots/Syst/Combine/allSF_noPU_Wpol/Method1A/"
        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)

        #h1A.GetYaxis().SetRangeUser(0.55,1.45)
        if "WJets" in samp and "Kappa" in cat:
            h1B.GetYaxis().SetRangeUser(0.05,3.45)
            h1A.GetYaxis().SetRangeUser(0.05,3.45)

        hists += [h1A,h1B,ratio]
        canv = yp.plotHists(cat+"_"+samp,[h1A,h1B],ratio,"TM", 1200, 600, logY = logY)

        canvs.append(canv)

        if not yp._batchMode:
            answ = raw_input("Enter 'q' to exit: ")
            if "q" in answ: exit(0)

    # Save canvases
    exts = [".pdf",".png"]#,".root"]
    #exts = [".pdf"]

    odir = "BinPlots/btag/Compare/hFlav/1Avs1B/allSF_noPU2/" + cat + "/"
    if not os.path.isdir(odir): os.makedirs(odir)

    for canv in canvs:
Exemple #16
0
                    # remove marker
                    #hKappa.SetMarkerStyle(0)
                    hKappa.SetLineWidth(2)
                    #hKappa.SetLineColor(yp.kViolet-5)

                    hRcsMB.GetYaxis().SetRangeUser(0, 0.14)
                    width = 1200
                    height = 600
                    legPos = "TM"

                    if doSquare == True:
                        width = 600
                        height = 600
                        legPos = "Square"
                    canv = yp.plotHists(samp + "_RcsKappa_", [hRcsMB, hRcsSB],
                                        hKappa, legPos, width, height)
                    #canv = yp.plotHists(samp+"_RcsKappa_",[hRcsMB,hRcsSB],hKappa, legPos = "TM")

                    hRcsMB.GetYaxis().SetTitle("R_{CS}^{MC}")
                    hRcsMB.GetYaxis().SetTitleSize(0.07)
                    hRcsMB.GetYaxis().SetTitleOffset(0.5)

                    hKappa.GetYaxis().SetTitleSize(0.2)
                    hKappa.GetYaxis().SetTitleOffset(0.15)
                    hKappa.GetYaxis().SetTitle("#kappa_{EWK}")
                    if doSquare:
                        hRcsMB.GetYaxis().SetTitleOffset(0.8)
                        hKappa.GetYaxis().SetTitleOffset(0.25)
                    canvs.append(canv)

                    if not yp._batchMode: raw_input("Enter any key to exit")
Exemple #17
0
        #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,
                        "TM",
                        1200,
                        600,
                        logY=True)
    yp.gPad.RedrawAxis()

    cname = "MC_vs_T1tttt_" + cat
    canv.SetName(cname)

    canvs.append(canv)

    if not yp._batchMode:
        answ = raw_input("Enter 'q' to exit: ")
        if "q" in answ: exit(0)

    # Save canvases
    exts = [".pdf", ".png", ".root"]