next up previous contents
: フィッティング : 対話モードで ROOT を使う : グラフの作成:重ね書き   目次

GUI を使ったプロットの扱い

これまで説明したプロットの扱いは、プロットのお化粧に限らず、 かなりの部分を GUI で行うことができる。

ROOT のプロンプトで


  TFile *file = new TFile("file.root","recreate");
とうつと、 ${\tt ''file.root''}$ と言う名前の出力用 ROOT ファイルが できる。 これ以降、作成したプロットは特に指定しなければこの ファイルに保存される。 すでに、プロットを含んだ ROOT ファイルがある場合には

  TFile *file = new TFile("file.root");
とするか、ROOT 起動時に

  root -l file.root
とすれば良い。 ここで、

  TH2F *h2 = new TH2F("htest","Test",50,0.,10.,60,-10.,20.);
  {
    gRandom->SetSeed();
    Int_t i;
    for (i=0; i<10000; i++) {
      Double_t x = 10. * gRandom->Rndm();
      Double_t y = 0.05*x*x + gRandom->Gaus(0.,0.2*x + 1.);
      h2->Fill(x,y);
    }
  }
として、テスト用の2次元プロットを作っておく。

準備ができたら


  TBrowser b;
として、ROOT ファイルプラウザーを開く。 "ROOT Files" と示されたディレクトリーアイコンをダブルクリックすると ${\tt file.root}$ と書かれたアイコンがでてくる(図3.14)。 これをダブルクリックすると、上で作った ${\tt ''htest''}$ というプロットのアイコンが出てくる(図3.15)。

図 3.14: ${\tt TBrowser}$ を開き "ROOT Files" をダブルクリックしたところ。
\begin{figure}
\centerline {
\epsfig{file=figs/tbrowser1.eps,width=8cm}}\end{figure}

図 3.15: 更に "file.root" をダブルクリックしたところ。
\begin{figure}
\centerline {
\epsfig{file=figs/tbrowser2.eps,width=8cm}}\end{figure}

ここで、このアイコンをダブルクリックすれば、 自動的にキャンバスウインドウが開いてプロットが表示される。

そうではなくてあらかじめ分割されたキャンバスの1区画に表示する には、 ${\tt TBrowser}$ の "File" メニューから "New Canvas" という項目を選ぶ(図3.16)。

図 3.16: "File" メニューから "New Canvas" を選び ${\tt TCanvas}$ を開く。
\begin{figure}
\centerline {
\epsfig{file=figs/tbrowser3.eps,width=8cm}}\end{figure}

出てきたキャンバスを右クリックし、出てきたメニューから "Divide" を選ぶ(図3.17)。 すると、ダイアログボックスが現れるので、 "nx" と "ny" に適当な数を入れる。 ここでは $(2,2)$ に分割したいので、"nx"、"ny" ともに 2 を入れて "OK" を押す(図3.18)。

図 3.17: ${\tt TCanvas}$ を右クリックしてメニューから "Divide" を選ぶ。
\begin{figure}
\centerline {
\epsfig{file=figs/canvas.divide.eps,width=8cm}}\end{figure}

図 3.18: すると、 ${\tt TCanvas::Divide}$ ダイアログが現れる。
\begin{figure}
\centerline {
\epsfig{file=figs/divide.dialog.eps,width=8cm}}\vspace{1.7cm}
\end{figure}

分割されたキャンバスの第1区画に移動するため、 マウスの真ん中ボタンで第1区画をクリックする。 これで第1区画の回りの枠の色が変わりフォーカスが第1区画に 移動したことが分かる。 ここでおもむろに先ほどのブラウザーの ${\tt ''htest''}$ アイコンを ダブルクリックすれば、めでたくこの区画にプロットを表示できる。

今度はこれの Y 軸への射影をしてみよう。 プロットを右クリックして現れたメニューから "ProjectionY" を選択し、必要に応じて (BANX をしたい場合)"firstxbin" と "lastxbin" に ビンナンバーを指定する。 ここで、"OK" を押せば、"name" を特に指定しなければ "htest_py" というプロットができたはずである。 ここで、 ${\tt TBrowser}$ の "View" メニューから "Refresh" を選択すれば、"htest_py" のアイコンが 現れるはずである。 これを第2区画にプロットしたいので、 真ん中ボタンで第2区画をクリックして 第2区画に移動してから、"htest_py" アイコンを ダブルクリックして Y 射影を表示する。


next up previous contents
: フィッティング : 対話モードで ROOT を使う : グラフの作成:重ね書き   目次
Keisuke Fujii 平成12年12月22日