20def fill_tree(treeName, fileName):
22 d.Define(
"px",
"gRandom->Gaus()")\
23 .Define(
"py",
"gRandom->Gaus()")\
24 .Define(
"pz",
"sqrt(px * px + py * py)")\
25 .Snapshot(treeName, fileName)
28fileName =
"df003_profiles_py.root"
30fill_tree(treeName, fileName)
36hprof1d = d.Profile1D((
"hprof1d",
"Profile of pz versus px", 64, -4, 4),
"px",
"py")
37hprof2d = d.Profile2D((
"hprof2d",
"Profile of pz versus px and py", 40, -4, 4, 40, -4, 4, 0, 20),
"px",
"py",
"pz")
40c1 = ROOT.TCanvas(
"c1",
"Profile histogram example", 200, 10, 700, 500)
42c1.SaveAs(
"df003_c1.png")
44c2 = ROOT.TCanvas(
"c2",
"Profile2D histogram example", 200, 10, 700, 500)
46c2.SaveAs(
"df003_c2.png")
48print(
"Saved figures to df003_*.png")
ROOT's RDataFrame offers a modern, high-level interface for analysis of data stored in TTree ,...