import ROOT,glob,math,argparse,sys sys.path.append('$PANDAPATH/macro/tpc/FOPI/vwalbre') from anaFile import anaFile from functions import * parser=argparse.ArgumentParser(description="plot the McResX vs z graph") parser.add_argument('anafiles',help='the list of ana files to process',type=str,nargs='+') parser.add_argument('--hlp',help='print help',action='store_true') parser.add_argument('--pdir',help='the picture print directory',type=str,default="not") parser.add_argument('--titles',help='the titles to plot in legend and canvas for the files', type=str,nargs='+',default=None) args=parser.parse_args() ROOT.gROOT.ProcessLine(".x rootlogon.C") ROOT.gROOT.ProcessLine('gStyle->SetPalette(1)') ROOT.gROOT.ProcessLine('gROOT->SetStyle("Plain")') if args.hlp: parser.print_help() exit(0) if args.titles==None: args.titles=[] for i in range(len(args.anafiles)): args.titles.append("no title given") rfiles=[] histos=[] histos1D=[] for ifile in range(len(args.anafiles)): rfiles.append(anaFile(args.anafiles[ifile])) for i in range(1,7): histos.append(rfiles[-1].getHist("hMCresXoverz"+str(i))) histos1D.append(rfiles[-1].getHist("hMcResX"+str(i))) his = rfiles[-1].getHist("hMCresXoverz") c1 = ROOT.TCanvas("c1", "Plot1", 1000,700) c2 = ROOT.TCanvas("c2", "Plot2", 1000,700) c3 = ROOT.TCanvas("c3", "Plot3", 1000,700) c1.Divide(3,2) c3.Divide(3,2) for hist in histos: hist.GetXaxis().SetTitle("z-pos [cm]") hist.GetYaxis().SetTitle("ResX MC [micrometer]") for hist1D in histos1D: hist1D.GetXaxis().SetTitle("ResX MC [micrometer]") hist1D.GetYaxis().SetTitle("count") for h in range(len(histos)): h+=1 c1.cd(h) histos[h-1].Draw("colz") c1.Update for h in range(len(histos1D)): h+=1 print h c3.cd(h) histos1D[h-1].Draw() c3.Update c2.cd() his.Draw("colz") c2.Update() if args.pdir!="not": c1.SaveAs(args.pdir+"MCRes1") c2.SaveAs(args.pdir+"MCRes2") c3.SaveAs(args.pdir+"MCRes3") bla = raw_input("Exit?") if bla == 'y': exit()