如何从3列.dat文件中创建ROOT直方图?

时间:2017-02-26 22:27:28

标签: physics root-framework

我目前有一个格式为的<.dat文件:

  

格式:Log(10,s22th13)deltacp chi ^ 2

     

-4 0 0.098127

     

-4 4 0.093642

     

-4 8 0.089323

     

-4 12 0.085185

     

-4 16 0.081242 ....

如何使用ROOT创建绘图,保持指定在.dat文件顶部的标签?

1 个答案:

答案 0 :(得分:0)

最简单的方法是使用TTree类来读取您的文件:

    TTree *T = new TTree("ntuple","data from csv file");
    Long64_t nlines = T->ReadFile("data.csv");
    printf("found %lld points\n",nlines);

您的标题将用作分支的名称。然后你可以使用类似的东西绘制/保存直方图:

    TH1F *hist = new TH1F("name","title", nbinsx,xlow,xup);
    T->Draw("branch>>name","","");