18from ROOT
import TH1F, TH2F, TCanvas, TFile, TNtuple, TProfile, gBenchmark, gSystem
21c1 =
TCanvas(
"c1",
"Dynamic Filling Example", 200, 10, 700, 500)
26frame.SetBorderMode(-1)
29hpx =
TH1F(
"hpx",
"This is the px distribution", 100, -4, 4)
30hpxpy =
TH2F(
"hpxpy",
"py vs px", 40, -4, 4, 40, -4, 4)
31hprof =
TProfile(
"hprof",
"Profile of pz versus px", 100, -4, 4, 0, 20)
32ntuple =
TNtuple(
"ntuple",
"Demo ntuple",
"px:py:pz:random:i")
37gBenchmark.Start(
"hsimple")
42 px, py = numpy.random.standard_normal(size=2)
44 pz = px * px + py * py
45 random = numpy.random.rand()
51 ntuple.Fill(px, py, pz, random, i)
54 if i > 0
and i % 1000 == 0:
60 if gSystem.ProcessEvents():
63gBenchmark.Show(
"hsimple")
68with TFile(
"py-hsimple.root",
"RECREATE",
"Demo ROOT file with histograms")
as hfile:
70 hfile.WriteObject(hpx)
71 hfile.WriteObject(hpxpy)
72 hfile.WriteObject(hprof)
76 ntuple.SetDirectory(hfile)
A file, usually with extension .root, that stores data and code in the form of serialized objects in ...
1-D histogram with a float per channel (see TH1 documentation)
2-D histogram with a float per channel (see TH1 documentation)
A simple TTree restricted to a list of float variables only.