TTreeを描画したい(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でTTreeの変数を描画できます。 varexpに描画したい軸を設定します。 selectionにフィルター条件を設定できます。

1tree->Draw(
2    "energy_deposit:position_x",
3    "parent_id==0",
4    "COLZ");

varexpy: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)

リダイレクトしたい(TTree::Draw)

1tree->Draw(
2    "energy_deposit >> h1(100, 0, 1000)",  // varexp with histogram definition
3    "parent_id==0",
4    "HIST",);

varexpにヒストグラム定義を含めることで、描画結果を新しいヒストグラムオブジェクトにリダイレクトできます。 この例では、energy_depositのヒストグラムがh1という名前で作成されます。

1tree->Draw(
2    "energy_deposit:position_x >> h2(100, 0, 1000, 100, -500, 500)",  // 2D histogram definition
3    "parent_id==0",
4    "COLZ",
5)

2次元プロットも同様にヒストグラム定義を含めることができます。

複数条件したい(TTree::Draw

1tree->Draw(
2    "energy_deposit",
3    "parent_id==0 && energy_deposit>10",
4);

selectionに複数の条件を指定することもできます。 論理演算子(&&、||、!)を使用して条件を組み合わせることができます。

リファレンス