] ## Variables and selections variables = {"tau_nc_ratio": {"Title": "Neutral-Charged asymmetry", "Log": False, "VariableWidth": False}} legendPositions = {"tau_nc_ratio": [0.3, 0.2, 0.7, 0.4]} plots = [] for var, options in variables.items(): for iso in isos: for sample in samples: histoIso = histosIso[sample] histoInvertIso = histosInvertIso[sample] plot = ComparisonPlot() plot.name = var + "_" + sample + "_" + iso[0] + "_" + iso[1] plot.plotDir = plotDir plot.logy = options["Log"] plot.legendPosition = legendPositions[var] # cfgIso = deepcopy(configIso) cfgIso.unitScaling = True cfgIso.binWidthScaling = options["VariableWidth"] cfgIso.xTitle = options["Title"] plot.addHisto(histoIso[0], histoIso[1].format(VAR=var, ISO=iso[0]), cfgIso) # cfgInvertIso = deepcopy(configInvertIso) cfgInvertIso.unitScaling = True cfgInvertIso.binWidthScaling = options["VariableWidth"] cfgInvertIso.xTitle = options["Title"]
up = histoUp.GetBinContent(b) down = histoDown.GetBinContent(b) error = (abs(up-nom)+abs(down-nom))/2. ## average of up and down absolute shifts errors.SetBinContent(b, error/nom if nom>0 else 0) errors.SetBinError(b,0) file.Close() return errors plots = [] ## Compare uncertainties with several numbers of tries for name,sys in systematics.items(): for sample,histo in histos.items(): plot = ComparisonPlot() plot.name = "statUncertainties_mvis_"+sample+'_'+name plot.logy = False plot.legendPosition = legendPosition # config1 = copy(configRawStat) config1.xTitle = "m_{vis} [GeV]" config1.yTitle = 'Relative uncertainty' config1.legend = "Stat. unc." histo1 = errorHisto(histo[0],name+'/'+histo[1]) plot.addHisto(histo1, config1) # config2 = copy(configFactorStat4) config2.xTitle = "m_{vis} [GeV]" config2.legend = "Factor unc. 10" config2.yTitle = 'Relative uncertainty'
"Title": "Neutral-Charged asymmetry", "Log": False, "VariableWidth": False }, } legendPositions = { "tau_nc_ratio": [0.3, 0.2, 0.7, 0.4], } plots = [] for var, options in variables.items(): for sample in histosRef.keys(): histoRef = histosRef[sample] histo = histos[sample] plot = ComparisonPlot() plot.name = var + "_" + sample + "_LowMT_vs_HighMT" plot.plotDir = plotDir plot.logy = options["Log"] plot.legendPosition = legendPositions[var] configRef = copy(configLowMT) configRef.unitScaling = True configRef.binWidthScaling = options["VariableWidth"] configRef.xTitle = options["Title"] plot.addHisto(histoRef[0], histoRef[1].format(VAR=var), configRef) config = copy(configHighMT) config.unitScaling = True config.binWidthScaling = options["VariableWidth"] config.xTitle = options["Title"] plot.addHisto(histo[0], histo[1].format(VAR=var), config) plot.plot()
legendPositions = { "tau_pt":[0.6, 0.7, 0.95, 0.9], "tau_eta":[0.35, 0.2, 0.7, 0.3], "tau_decayMode":[0.2, 0.7, 0.55, 0.9], "tau_pdgId":[0.2, 0.7, 0.55, 0.9], } plots = [] for var,options in variables.items(): for nameRef,histoRef in histosRef.items(): for name,histo in histos.items(): plot = ComparisonPlot() plot.name = var+"_"+nameRef+"_"+name plot.logy = options["Log"] plot.legendPosition = legendPositions[var] configRef = copy(configZMuMu) configRef.unitScaling = True configRef.binWidthScaling = options["VariableWidth"] configRef.xTitle = options["Title"] plot.addHisto(histoRef[0],histoRef[1].format(VAR=var), configRef) config = copy(configMuTau) config.unitScaling = True config.binWidthScaling = options["VariableWidth"] config.xTitle = options["Title"] config.legend = name+" "+config.legend plot.addHisto(histo[0],histo[1].format(VAR=var), config) plot.plot()
] ## Variables and selections variables = { "tau_nc_ratio": { "Title": "Neutral-Charged asymmetry", "Log": False, "VariableWidth": False }, } legendPositions = { "tau_nc_ratio": [0.3, 0.2, 0.7, 0.4], } plots = [] for var, options in variables.items(): plot = ComparisonPlot() plot.name = var + "_backgrounds" plot.plotDir = plotDir plot.logy = options["Log"] plot.legendPosition = legendPositions[var] for sample, histo in histos.items(): config = copy(configBackgrounds[sample]) config.unitScaling = True config.binWidthScaling = options["VariableWidth"] config.xTitle = options["Title"] plot.addHisto(histo[0], histo[1].format(VAR=var), config) plot.plot() plots.append(plot)
nom = histoNom.GetBinContent(b) up = histoUp.GetBinContent(b) down = histoDown.GetBinContent(b) error = (abs(up - nom) + abs(down - nom) ) / 2. ## average of up and down absolute shifts errors.SetBinContent(b, error / nom if nom > 0 else 0) errors.SetBinError(b, 0) file.Close() return errors plots = [] ## Compare uncertainties with several numbers of tries for name, sys in systematics.items(): for sample, histo in histos.items(): plot = ComparisonPlot() plot.name = "statUncertainties_mvis_" + sample + '_' + name plot.logy = False plot.legendPosition = legendPosition # config1 = copy(configRawStat) config1.xTitle = "m_{vis} [GeV]" config1.yTitle = 'Relative uncertainty' config1.legend = "Stat. unc." histo1 = errorHisto(histo[0], name + '/' + histo[1]) plot.addHisto(histo1, config1) # config2 = copy(configFactorStat4) config2.xTitle = "m_{vis} [GeV]" config2.legend = "Factor unc. 10" config2.yTitle = 'Relative uncertainty'
}, } legendPositions = { "tau_pt": [0.6, 0.7, 0.95, 0.9], "tau_pdgId": [0.15, 0.7, 0.50, 0.9], "tau_iso": [0.6, 0.7, 0.95, 0.9], "tau_outside_photons_pt": [0.6, 0.7, 0.95, 0.9], "tau_jet_pt": [0.6, 0.7, 0.95, 0.9], } ## Compare OS/SS distributions in different MT bins plots = [] for var, options in variables.items(): for selection in selectionsOSSSInvertIso: plot = ComparisonPlot() plot.name = var + "_" + selection + '_MTbins' plot.plotDir = 'plots/WJets/' plot.logy = options["Log"] plot.legendPosition = legendPositions[var] for bin in mtbins: config = copy(HistoConfigs.configMTbins[bin]) config.unitScaling = True config.binWidthScaling = options["VariableWidth"] config.xTitle = options["Title"] #config.legend = 'MT bin {}'.format(bin) plot.addHisto(inputFileName, histoNames.format(VAR=var, SEL=selection, BIN=bin), config) plot.plot() plots.append(plot)
## Variables and selections variables = { "tau_nc_ratio":{"Title":"Neutral-Charged asymmetry", "Log":False, "VariableWidth":False}, } legendPositions = { "tau_nc_ratio":[0.3, 0.2, 0.7, 0.4], } plots = [] for var,options in variables.items(): plot = ComparisonPlot() plot.name = var+"_backgrounds" plot.plotDir = plotDir plot.logy = options["Log"] plot.legendPosition = legendPositions[var] for sample,histo in histos.items(): config = copy(configBackgrounds[sample]) config.unitScaling = True config.binWidthScaling = options["VariableWidth"] config.xTitle = options["Title"] plot.addHisto(histo[0],histo[1].format(VAR=var), config) plot.plot() plots.append(plot)
"tau_outside_photons_pt":{"Title":"p_{T}^{strip} / p_{T}^{#tau}", "Log":True, "VariableWidth":False, "Rebin":1, "YRange":[1.e-5,0.99]}, } legendPositions = { "tau_pt":[0.6, 0.7, 0.95, 0.9], "tau_pdgId":[0.15, 0.7, 0.50, 0.9], "tau_iso":[0.6, 0.7, 0.95, 0.9], "tau_outside_photons_pt":[0.6, 0.7, 0.95, 0.9], "tau_jet_pt":[0.6, 0.7, 0.95, 0.9], } ## Compare OS/SS distributions in different MT bins plots = [] for var,options in variables.items(): for selection in selectionsOSSSInvertIso: plot = ComparisonPlot() plot.name = var+"_"+selection+'_MTbins' plot.plotDir = 'plots/WJets/' plot.logy = options["Log"] plot.legendPosition = legendPositions[var] for bin in mtbins: config = copy(HistoConfigs.configMTbins[bin]) config.unitScaling = True config.binWidthScaling = options["VariableWidth"] config.xTitle = options["Title"] #config.legend = 'MT bin {}'.format(bin) plot.addHisto(inputFileName,histoNames.format(VAR=var,SEL=selection,BIN=bin), config) plot.plot() plots.append(plot)
"tau_pdgId": {"Title": "|pdg ID| #times sign-flip", "Log": False, "VariableWidth": False}, } legendPositions = { "tau_pt": [0.6, 0.7, 0.95, 0.9], "tau_eta": [0.35, 0.2, 0.7, 0.3], "tau_decayMode": [0.2, 0.7, 0.55, 0.9], "tau_pdgId": [0.2, 0.7, 0.55, 0.9], } plots = [] for var, options in variables.items(): for nameRef, histoRef in histosRef.items(): for name, histo in histos.items(): plot = ComparisonPlot() plot.name = var + "_" + nameRef + "_" + name plot.logy = options["Log"] plot.legendPosition = legendPositions[var] configRef = copy(configZMuMu) configRef.unitScaling = True configRef.binWidthScaling = options["VariableWidth"] configRef.xTitle = options["Title"] plot.addHisto(histoRef[0], histoRef[1].format(VAR=var), configRef) config = copy(configMuTau) config.unitScaling = True config.binWidthScaling = options["VariableWidth"] config.xTitle = options["Title"] config.legend = name + " " + config.legend plot.addHisto(histo[0], histo[1].format(VAR=var), config) plot.plot()
"njets":[0.6, 0.7, 0.95, 0.9], "njets20":[0.6, 0.7, 0.95, 0.9], } plots = [] for var,options in variables.items(): for fakefactor,sample in fakefactors.items(): for name,histo in histos.items(): filename = histo['File'].format(DIR=histoDir,SAMPLE=sample,VERSION=version) histoTrue = histo['HistoTrue'].format(VAR=var) histoEst = histo['HistoEst'].format(FACTOR=fakefactor,VAR=var) # plot = ComparisonPlot() plot.plotDir = 'results/' plot.name = var+"_"+name+'_'+fakefactor+"_"+sample plot.xRange = [0.,5.9999] plot.yRatioRange = [0.5,4.5] plot.logy = options["Log"] plot.legendPosition = legendPositions[var] configTrue = copy(HistoConfigs.configTrue) #configTrue.unitScaling = True configTrue.binWidthScaling = options["VariableWidth"] configTrue.xTitle = options["Title"] configTrue.legend = 'True' plot.addHisto(filename,histoTrue, configTrue) configEst = copy(HistoConfigs.configEst) #configEst.unitScaling = True configEst.binWidthScaling = options["VariableWidth"]
"tau_nc_ratio":{"Title":"Neutral-Charged asymmetry", "Log":False, "VariableWidth":False}, } legendPositions = { "tau_nc_ratio":[0.3, 0.2, 0.7, 0.4], } plots = [] for var,options in variables.items(): for sample in histosRef.keys(): histoRef = histosRef[sample] histo = histos[sample] plot = ComparisonPlot() plot.name = var+"_"+sample+"_LowMT_vs_HighMT" plot.plotDir = plotDir plot.logy = options["Log"] plot.legendPosition = legendPositions[var] configRef = copy(configLowMT) configRef.unitScaling = True configRef.binWidthScaling = options["VariableWidth"] configRef.xTitle = options["Title"] plot.addHisto(histoRef[0],histoRef[1].format(VAR=var), configRef) config = copy(configHighMT) config.unitScaling = True config.binWidthScaling = options["VariableWidth"] config.xTitle = options["Title"] plot.addHisto(histo[0],histo[1].format(VAR=var), config) plot.plot()
"Log": False, "VariableWidth": False }, } legendPositions = { "tau_nc_ratio": [0.3, 0.2, 0.7, 0.4], } plots = [] for var, options in variables.items(): for iso in isos: for sample in samples: histoIso = histosIso[sample] histoInvertIso = histosInvertIso[sample] plot = ComparisonPlot() plot.name = var + "_" + sample + "_" + iso[0] + "_" + iso[1] plot.plotDir = plotDir plot.logy = options["Log"] plot.legendPosition = legendPositions[var] # cfgIso = deepcopy(configIso) cfgIso.unitScaling = True cfgIso.binWidthScaling = options["VariableWidth"] cfgIso.xTitle = options["Title"] plot.addHisto(histoIso[0], histoIso[1].format(VAR=var, ISO=iso[0]), cfgIso) # cfgInvertIso = deepcopy(configInvertIso) cfgInvertIso.unitScaling = True cfgInvertIso.binWidthScaling = options["VariableWidth"]
"mvis_stdbins": [0.6, 0.7, 0.95, 0.9], "njets": [0.6, 0.7, 0.95, 0.9], "njets20": [0.6, 0.7, 0.95, 0.9], } plots = [] for var, options in variables.items(): for fakefactor, sample in fakefactors.items(): for name, histo in histos.items(): filename = histo['File'].format(DIR=histoDir, SAMPLE=sample, VERSION=version) histoTrue = histo['HistoTrue'].format(VAR=var) histoEst = histo['HistoEst'].format(FACTOR=fakefactor, VAR=var) # plot = ComparisonPlot() plot.plotDir = 'results/' plot.name = var + "_" + name + '_' + fakefactor + "_" + sample plot.xRange = [0., 5.9999] plot.yRatioRange = [0.5, 4.5] plot.logy = options["Log"] plot.legendPosition = legendPositions[var] configTrue = copy(HistoConfigs.configTrue) #configTrue.unitScaling = True configTrue.binWidthScaling = options["VariableWidth"] configTrue.xTitle = options["Title"] configTrue.legend = 'True' plot.addHisto(filename, histoTrue, configTrue) configEst = copy(HistoConfigs.configEst) #configEst.unitScaling = True configEst.binWidthScaling = options["VariableWidth"]
for b in xrange(1, nbins + 1): nom = histoNom.GetBinContent(b) up = histoUp.GetBinContent(b) down = histoDown.GetBinContent(b) error = (abs(up - nom) + abs(down - nom)) / 2.0 ## average of up and down absolute shifts errors.SetBinContent(b, error / nom if nom > 0 else 0) errors.SetBinError(b, 0) file.Close() return errors plots = [] ## Compare uncertainties with several numbers of tries for name, sys in systematics.items(): for sample, histo in histos1.items(): plot = ComparisonPlot() plot.name = "statUncertainties_mvis_" + sample + "_" + name plot.logy = False plot.legendPosition = legendPosition # config1 = copy(configRawStat) config1.xTitle = "m_{vis} [GeV]" config1.yTitle = "Relative uncertainty" config1.legend = "Stat. unc. in anti-iso" histo1 = errorHisto([h[0] for h in histo], [name + "/" + h[1] for h in histo]) plot.addHisto(histo1, config1) # # config2 = copy(configFactorStat4) # config2.xTitle = "m_{vis} [GeV]" # config2.legend = "Factor unc. 10" # config2.yTitle = 'Relative uncertainty'