ブランチを確認したい(TTree::Draw)
1tree->Draw(
2 "energy_deposit", // varexp
3 "parent_id==0", // selection
4 "HIST", // option
5 1000, // nentries
6 0 // firstentry
7);
TTree::Drawでブランチの分布をヒストグラムで確認できます。
第一引数(varexp)に確認したいブランチ名を指定します。
第二引数(selection)にフィルター条件を指定できます。
第三引数(option)で描画オプションを指定できます。
第四引数(nentries)で描画するエントリー数を制限できます。
第五引数(firstentry)で描画開始エントリーを指定できます。
1tree->Draw(
2 "energy_deposit:position_x",
3 "parent_id==0",
4 "COLZ");
varexpはy:xの形式で2次元プロットも可能です。
1import ROOT
2
3# TTreeを作成・取得
4tree = ROOT.TTree("tree", "Event data")
5
6# 1次元プロット
7tree.Draw(
8 "energy_deposit",
9 "parent_id==0",
10 "HIST",
11 1000,
12 0
13)
14
15# 2次元プロット
16tree.Draw(
17 "energy_deposit:position_x",
18 "parent_id==0",
19 "COLZ"
20)
1Dヒストグラムしたい(TTree::Draw)
1TH1D *h1 = new TH1D(
2 "h1",
3 "Energy Deposit;Energy [MeV];Entries",
4 100, 0, 1000
5);
6tree->Draw(
7 "energy_deposit >> h1", // varexp with histogram definition
8 "parent_id==0",
9 "HIST",);
varexpにヒストグラムを含めることができます。
事前にTH1オブジェクトを作成することで、
タイトルやビン数などを制御できます。
2Dヒストグラムしたい(TTree::Draw)
1TH2D *h2 = new TH2D(
2 "h2",
3 "Energy Deposit vs Position;Position X [mm];Energy Deposit [MeV]",
4 100, 0, 1000,
5 100, -500, 500
6);
7tree->Draw(
8 "energy_deposit:position_x >> h2", // 2D histogram definition
9 "parent_id==0",
10 "COLZ",
11)
2次元ヒストグラムも1次元ヒストグラムと同様に
varexpに含めることができます。
複数条件したい(TTree::Draw)
1tree->Draw(
2 "energy_deposit",
3 "parent_id==0 && energy_deposit>10",
4);
selectionに複数の条件を指定できます。
論理演算子(&&、||、!)を使用して条件を組み合わせることができます。