def plotRpcVsHo(): hist =fileHandler.getHistogram('hoMuonAnalyzer/correlation/RpcHoAboveThr_TimeCorrelation') canvas = TCanvas('canvasRpcVsHo',"RPC vs. HO",1200,1200) canvas.cd().SetLogz() histNew = getTH2D("histRpcVsHo","RPC BX ID vs. HO > E_{Thr};HO time / ns;BX ID",5,-37.5,87.5#24,-56.25,93.75 ,5,-2.5,2.5) xAxis = hist.GetXaxis() yAxis = hist.GetYaxis() nBinsX = xAxis.GetNbins() nBinsY = yAxis.GetNbins() #Fill new histogram with fewer bins for i in range( 1 , nBinsX + 1 ): for j in range( 1 , nBinsY + 1 ): histNew.Fill(xAxis.GetBinCenter(i),yAxis.GetBinCenter(j)/25.,hist.GetBinContent(i,j)) histNew.SetStats(0) histNew.Draw('colz') canvas.Update() pal = histNew.GetListOfFunctions().FindObject("palette") pal.SetX2NDC(0.92) #Calcualte fraction at (0,0) nCentral = histNew.GetBinContent(histNew.FindBin(0,0)) nTotal = histNew.Integral() fraction = nCentral/float(nTotal) fractionUncert = calcSigma(nCentral,nTotal) sliceFraction = 0 for i in range(0,5): sliceFraction += histNew.GetBinContent(histNew.FindBin(0,-2.5+i)) sliceFractionUncert = calcSigma(sliceFraction,nTotal) sliceFraction /= nTotal paveTextAboveThr = TPaveText(0.1,0.8,0.5,0.9,'NDC') paveTextAboveThr.AddText('Fraction at (0,0): %5.2f%% #pm %5.2f%%' % (fraction*100, fractionUncert*100)) paveTextAboveThr.AddText('Fraction at (0,x): %5.2f%% #pm %5.2f%%' % (sliceFraction*100, sliceFractionUncert*100)) paveTextAboveThr.SetBorderSize(1) paveTextAboveThr.Draw() label = getLabelCmsPrivateSimulation() label.Draw() canvas.SaveAs('plots/timeCorrelation/rpcVsHo.pdf') canvas.SaveAs('plots/timeCorrelation/rpcVsHo.png') return hist,canvas,paveTextAboveThr,label
def plotHoL1Correlation(): #Select whether matching to all HO should also be plotted plotBoth = True histAll = fileHandler.getHistogram('hoMuonAnalyzer/correlation/L1MuonPresentHoMatch_TimeCorrelation') histAboveThr = fileHandler.getHistogram('hoMuonAnalyzer/correlation/L1MuonAboveThr_TimeCorrelation') label = getLabelCmsPrivateSimulation() canvas = TCanvas("canvasHoL1Correlation","canvasHoL1Correlation",1600,1200) if(plotBoth): canvas.Divide(2,1) canvas.cd(1).SetLogz() histNew = getTH2D("histNew","Correlation between L1 BX ID and HO;HO time / ns;L1 / BX ID",5,-37.5,87.5#24,-56.25,93.75 ,5,-2.5,2.5) xAxis = histAll.GetXaxis() yAxis = histAll.GetYaxis() nBinsX = xAxis.GetNbins() nBinsY = yAxis.GetNbins() #Fill new histogram with fewer bins for i in range( 1 , nBinsX + 1 ): for j in range( 1 , nBinsY + 1 ): histNew.Fill(xAxis.GetBinCenter(i),yAxis.GetBinCenter(j)/25.,histAll.GetBinContent(i,j)) histNew.SetStats(0) histNew.Draw('colz') canvas.Update() pal = histNew.GetListOfFunctions().FindObject("palette") pal.SetX2NDC(0.92) #Calcualte fraction at (0,0) nCentral = histNew.GetBinContent(histNew.FindBin(0,0)) nTotal = histNew.Integral() fraction = nCentral/float(nTotal) fractionUncert = calcSigma(nCentral,nTotal) sliceFraction = 0 for i in range(0,5): sliceFraction += histNew.GetBinContent(histNew.FindBin(0,-2.5+i)) sliceFractionUncert = calcSigma(sliceFraction,nTotal) sliceFraction /= nTotal paveText = TPaveText(0.1,0.8,0.5,0.9,'NDC') paveText.AddText('Fraction at (0,0): %5.2f%% #pm %5.2f%%' % (fraction*100, fractionUncert*100)) paveText.AddText('Fraction at (0,x): %5.2f%% #pm %5.2f%%' % (sliceFraction*100, sliceFractionUncert*100)) paveText.SetBorderSize(1) paveText.Draw() label.Draw() canvas.cd(2).SetLogz() histAboveThr.SetStats(0) xAxis = histAboveThr.GetXaxis() yAxis = histAboveThr.GetYaxis() nBinsX = xAxis.GetNbins() nBinsY = yAxis.GetNbins() histNewAboveThr = getTH2D("histNewAboveThr","Correlation between L1 BX ID and HO > E_{Thr};HO time / ns;L1 / BX ID",5,-37.5,87.5#,12,-56.25,93.75 ,5,-2.5,2.5) for i in range( 1 , nBinsX + 1 ): for j in range( 1 , nBinsY + 1 ): histNewAboveThr.Fill(xAxis.GetBinCenter(i),yAxis.GetBinCenter(j)/25.,histAboveThr.GetBinContent(i,j)) histNewAboveThr.SetStats(0) histNewAboveThr.Draw('colz') canvas.Update() pal = histNewAboveThr.GetListOfFunctions().FindObject("palette") pal.SetX2NDC(0.92) #Calcualte fraction at (0,0) nCentral = histNewAboveThr.GetBinContent(histNewAboveThr.FindBin(0,0)) nTotal = histNewAboveThr.Integral() fraction = nCentral/float(nTotal) fractionUncert = calcSigma(nCentral,nTotal) sliceFraction = 0 for i in range(0,5): sliceFraction += histNewAboveThr.GetBinContent(histNewAboveThr.FindBin(0,-2.5+i)) sliceFractionUncert = calcSigma(sliceFraction,nTotal) sliceFraction /= nTotal paveTextAboveThr = TPaveText(0.1,0.8,0.5,0.9,'NDC') paveTextAboveThr.AddText('Fraction at (0,0): %5.2f%% #pm %5.2f%%' % (fraction*100, fractionUncert*100)) paveTextAboveThr.AddText('Fraction at (0,x): %5.2f%% #pm %5.2f%%' % (sliceFraction*100, sliceFractionUncert*100)) paveTextAboveThr.SetBorderSize(1) paveTextAboveThr.Draw() label.Draw() canvas.Update() canvas.SaveAs('plots/timeCorrelation/l1AndHoCorrelation.pdf') canvas.SaveAs('plots/timeCorrelation/l1AndHoCorrelation.png') return canvas,histAll,histAboveThr,label,histNewAboveThr, histNew,paveTextAboveThr
def plotHoL1Correlation(): #Select whether matching to all HO should also be plotted plotBoth = True histAll = fileHandler.getHistogram( 'hoMuonAnalyzer/correlation/L1MuonPresentHoMatch_TimeCorrelation') histAboveThr = fileHandler.getHistogram( 'hoMuonAnalyzer/correlation/L1MuonAboveThr_TimeCorrelation') label = getLabelCmsPrivateSimulation() canvas = TCanvas("canvasHoL1Correlation", "canvasHoL1Correlation", 1600, 1200) if (plotBoth): canvas.Divide(2, 1) canvas.cd(1).SetLogz() histNew = getTH2D( "histNew", "Correlation between L1 BX ID and HO;HO time / ns;L1 / BX ID", 5, -37.5, 87.5 #24,-56.25,93.75 , 5, -2.5, 2.5) xAxis = histAll.GetXaxis() yAxis = histAll.GetYaxis() nBinsX = xAxis.GetNbins() nBinsY = yAxis.GetNbins() #Fill new histogram with fewer bins for i in range(1, nBinsX + 1): for j in range(1, nBinsY + 1): histNew.Fill(xAxis.GetBinCenter(i), yAxis.GetBinCenter(j) / 25., histAll.GetBinContent(i, j)) histNew.SetStats(0) histNew.Draw('colz') canvas.Update() pal = histNew.GetListOfFunctions().FindObject("palette") pal.SetX2NDC(0.92) #Calcualte fraction at (0,0) nCentral = histNew.GetBinContent(histNew.FindBin(0, 0)) nTotal = histNew.Integral() fraction = nCentral / float(nTotal) fractionUncert = calcSigma(nCentral, nTotal) sliceFraction = 0 for i in range(0, 5): sliceFraction += histNew.GetBinContent(histNew.FindBin( 0, -2.5 + i)) sliceFractionUncert = calcSigma(sliceFraction, nTotal) sliceFraction /= nTotal paveText = TPaveText(0.1, 0.8, 0.5, 0.9, 'NDC') paveText.AddText('Fraction at (0,0): %5.2f%% #pm %5.2f%%' % (fraction * 100, fractionUncert * 100)) paveText.AddText('Fraction at (0,x): %5.2f%% #pm %5.2f%%' % (sliceFraction * 100, sliceFractionUncert * 100)) paveText.SetBorderSize(1) paveText.Draw() label.Draw() canvas.cd(2).SetLogz() histAboveThr.SetStats(0) xAxis = histAboveThr.GetXaxis() yAxis = histAboveThr.GetYaxis() nBinsX = xAxis.GetNbins() nBinsY = yAxis.GetNbins() histNewAboveThr = getTH2D( "histNewAboveThr", "Correlation between L1 BX ID and HO > E_{Thr};HO time / ns;L1 / BX ID", 5, -37.5, 87.5 #,12,-56.25,93.75 , 5, -2.5, 2.5) for i in range(1, nBinsX + 1): for j in range(1, nBinsY + 1): histNewAboveThr.Fill(xAxis.GetBinCenter(i), yAxis.GetBinCenter(j) / 25., histAboveThr.GetBinContent(i, j)) histNewAboveThr.SetStats(0) histNewAboveThr.Draw('colz') canvas.Update() pal = histNewAboveThr.GetListOfFunctions().FindObject("palette") pal.SetX2NDC(0.92) #Calcualte fraction at (0,0) nCentral = histNewAboveThr.GetBinContent(histNewAboveThr.FindBin(0, 0)) nTotal = histNewAboveThr.Integral() fraction = nCentral / float(nTotal) fractionUncert = calcSigma(nCentral, nTotal) sliceFraction = 0 for i in range(0, 5): sliceFraction += histNewAboveThr.GetBinContent( histNewAboveThr.FindBin(0, -2.5 + i)) sliceFractionUncert = calcSigma(sliceFraction, nTotal) sliceFraction /= nTotal paveTextAboveThr = TPaveText(0.1, 0.8, 0.5, 0.9, 'NDC') paveTextAboveThr.AddText('Fraction at (0,0): %5.2f%% #pm %5.2f%%' % (fraction * 100, fractionUncert * 100)) paveTextAboveThr.AddText('Fraction at (0,x): %5.2f%% #pm %5.2f%%' % (sliceFraction * 100, sliceFractionUncert * 100)) paveTextAboveThr.SetBorderSize(1) paveTextAboveThr.Draw() label.Draw() canvas.Update() canvas.SaveAs('plots/timeCorrelation/l1AndHoCorrelation.pdf') canvas.SaveAs('plots/timeCorrelation/l1AndHoCorrelation.png') return canvas, histAll, histAboveThr, label, histNewAboveThr, histNew, paveTextAboveThr
def plotRpcVsHo(): hist = fileHandler.getHistogram( 'hoMuonAnalyzer/correlation/RpcHoAboveThr_TimeCorrelation') canvas = TCanvas('canvasRpcVsHo', "RPC vs. HO", 1200, 1200) canvas.cd().SetLogz() histNew = getTH2D( "histRpcVsHo", "RPC BX ID vs. HO > E_{Thr};HO time / ns;BX ID", 5, -37.5, 87.5 #24,-56.25,93.75 , 5, -2.5, 2.5) xAxis = hist.GetXaxis() yAxis = hist.GetYaxis() nBinsX = xAxis.GetNbins() nBinsY = yAxis.GetNbins() #Fill new histogram with fewer bins for i in range(1, nBinsX + 1): for j in range(1, nBinsY + 1): histNew.Fill(xAxis.GetBinCenter(i), yAxis.GetBinCenter(j) / 25., hist.GetBinContent(i, j)) histNew.SetStats(0) histNew.Draw('colz') canvas.Update() pal = histNew.GetListOfFunctions().FindObject("palette") pal.SetX2NDC(0.92) #Calcualte fraction at (0,0) nCentral = histNew.GetBinContent(histNew.FindBin(0, 0)) nTotal = histNew.Integral() fraction = nCentral / float(nTotal) fractionUncert = calcSigma(nCentral, nTotal) sliceFraction = 0 for i in range(0, 5): sliceFraction += histNew.GetBinContent(histNew.FindBin(0, -2.5 + i)) sliceFractionUncert = calcSigma(sliceFraction, nTotal) sliceFraction /= nTotal paveTextAboveThr = TPaveText(0.1, 0.8, 0.5, 0.9, 'NDC') paveTextAboveThr.AddText('Fraction at (0,0): %5.2f%% #pm %5.2f%%' % (fraction * 100, fractionUncert * 100)) paveTextAboveThr.AddText('Fraction at (0,x): %5.2f%% #pm %5.2f%%' % (sliceFraction * 100, sliceFractionUncert * 100)) paveTextAboveThr.SetBorderSize(1) paveTextAboveThr.Draw() label = getLabelCmsPrivateSimulation() label.Draw() canvas.SaveAs('plots/timeCorrelation/rpcVsHo.pdf') canvas.SaveAs('plots/timeCorrelation/rpcVsHo.png') return hist, canvas, paveTextAboveThr, label