def TH1_to_TH2_Convert(filename, outputpath=''): FILELIST = read_file_name(filename) fn = FILELIST[0]; print(fn) histo_name_list = GetHistoNameList(filename); print(histo_name_list) # print(BranchName(histo_name_list[0])) # print Exclued_BranchName(histo_name_list[0]) indicator = 0 histList = [] f = TFile(filename,"READ") dirlist = f.GetListOfKeys() ITER = dirlist.MakeIterator() key = ITER.Next(); #print(key.GetName()) while key: dirlistb = f.GetListOfKeys() ITERb = dirlistb.MakeIterator() keyb = ITERb.Next() ijk = 0 while keyb: if(Exclued_BranchName(key.GetName()) == Exclued_BranchName(keyb.GetName())): if(key.GetName() != keyb.GetName()): Name2DHist = Exclued_BranchName(key.GetName()) + "Y_" + BranchName(key.GetName()) + "_X_" + BranchName(keyb.GetName()) # hist = TH2D print(Name2DHist) indicator = indicator + 1 keyb = ITERb.Next() key = ITER.Next() print(indicator)
def main(): filename = "/Users/leejunho/Desktop/git/python3Env/group_study/fruit_team/ROOT/Project/functions/rootTree_rootHist/func/root2_tree_cut_tree.root" FileNameList = read_file_name(filename) # BranchListAll = get_branch_list_all(FileNameList[2]) ; #print(BranchListAll) # BranchListEachTree = get_branch_list_each_tree(FileNameList[2]); #print(BranchListEachTree) # histo_xrange = set_histo_xrange(FileNameList[2], BranchListAll); #print(histo_xrange) print(CONVERT_WORKING2D(FileNameList[2], ""))
def main(): filelist = read_file_name("/Users/leejunho/Desktop/git/python3Env/group_study/fruit_team/ROOT/Project/functions/rootTree_rootHist/func/root2_tree_cut_tree_hist.root") # print(filelist[2]) TH1_to_TH2_Convert(filelist[2],".")
def CONVERT_WORKING2D(filename, outputpath="", NBins=50, NYBins=50): ### FIXME print( "*********************************************************************************************" ) print(" This is 2D histo filling process ") print( "*********************************************************************************************" ) FileNameList = read_file_name(filename) # print(FileNameList) BranchListAll = get_branch_list_all(FileNameList[2]) BranchListEachTree = get_branch_list_each_tree(FileNameList[2]) histo_xrange = set_histo_xrange(FileNameList[2], BranchListAll, BranchListEachTree) indicator = 0 f = TFile(FileNameList[2], "READ") dirlist = f.GetListOfKeys() ITER = dirlist.MakeIterator() key = ITER.Next() DichistList = {} while key: histList = [] NamehistList = [] tree = key.ReadObj() branchlist = tree.GetListOfBranches() if (branchlist.IsEmpty()): continue ITER_b = branchlist.MakeIterator() key_b = ITER_b.Next() while key_b: branchlistbb = tree.GetListOfBranches() ITER_bb = branchlistbb.MakeIterator() key_bb = ITER_bb.Next() while key_bb: if ((key_b.GetName()) != (key_bb.GetName())): Name2DHist = tree.GetName() + "_X_" + BranchName( key_b.GetName()) + "_Y_" + BranchName(key_bb.GetName()) # print(Name2DHist) # print(type(histo_xrange[tree.GetName()][key_b.GetName()][0])) # hist = TH2D(Name2DHist, Name2DHist, 200, histo_xrange[tree.GetName()][key_b.GetName()][0], histo_xrange[tree.GetName()][key_b.GetName()][1], 200, histo_xrange[tree.GetName()][key_bb.GetName()][0], histo_xrange[tree.GetName()][key_bb.GetName()][1]) #FIXME #FIXME #FIXME #FIXME #FIXME #FIXME #FIXME #FIXME #FIXME #FIXME #FIXME #FIXME Set bin number !!!!! # hist = TH2D(Name2DHist, Name2DHist, NBins, histo_xrange[tree.GetName()][key_b.GetName()][0], histo_xrange[tree.GetName()][key_b.GetName()][1], NBins, histo_xrange[tree.GetName()][key_bb.GetName()][0], histo_xrange[tree.GetName()][key_bb.GetName()][1]) ##for soomin hist = TH2D( Name2DHist, Name2DHist, NBins, histo_xrange[tree.GetName()][key_b.GetName()][0], histo_xrange[tree.GetName()][key_b.GetName()][1], NYBins, histo_xrange[tree.GetName()][key_bb.GetName()][0], histo_xrange[tree.GetName()][key_bb.GetName()][1]) histList.append(hist) indicator = indicator + 1 key_bb = ITER_bb.Next() key_b = ITER_b.Next() DichistList[tree.GetName()] = histList key = ITER.Next() # print(DichistList) ## print(indicator) dicHistList = Fill_histograms(FileNameList[2], BranchListAll, DichistList, BranchListEachTree) if (outputpath == ''): Name_Output_File = FileNameList[3] + "/" + FileNameList[ 0] + "_hist2D.root" Name_Output_File = Name_Output_File.replace("//", "/") elif (outputpath[0] == "/"): Name_Output_File = outputpath + "/" + FileNameList[0] + "_hist2D.root" Name_Output_File = Name_Output_File.replace("//", "/") # print("!@#!@!@#!@ ",Name_Output_File) elif (outputpath[0] == "~"): Name_Output_File = outputpath.replace( "~", os.environ['HOME']) + FileNameList[0] + "_hist2D.root" Name_Output_File = Name_Output_File.replace("//", "/") # print("!@#!@!@#!@ ",Name_Output_File) else: Name_Output_File = os.getcwd( ) + "/" + outputpath + FileNameList[0] + "_hist2D.root" Name_Output_File = Name_Output_File.replace("//", "/") # print("!@#!@!@#!@ ",Name_Output_File) # Name_Output_File = FileNameList[0] + "_hist2D.root" outfile = TFile(Name_Output_File, "RECREATE") for i in range(len(dicHistList)): for j in range(len(list(dicHistList.values())[i])): list(dicHistList.values())[i][j].Write() print("") print("////////////////////////////////////////////////") print("outputfile : ") print(Name_Output_File) print("////////////////////////////////////////////////") print("") outfile.Close() print( "*********************************************************************************************" ) gBenchmark.Show("Filling & Writing 2D Histograms") print( "*********************************************************************************************" ) return Name_Output_File