代码之家  ›  专栏  ›  技术社区  ›  j.doe

打开txt文件并在根目录中绘制直方图

  •  0
  • j.doe  · 技术社区  · 9 年前

    我有一个包含数字的txt文件。我想根据这个根文件绘制一个直方图。但我不能这么做。

    { 
        TFile *f = new TFile("myfile.root"); 
    
        f.ls(); 
    
        TH1F * h1 = (TH1F*)f.Get("h1"); 
        h1->Draw(); 
    }
    
    1 回复  |  直到 9 年前
        1
  •  1
  •   Nick Edwards Shiv Ram    9 年前

    看看 this tutorial from the ROOT website 。据我所知,ROOT无法直接打开纯文本文件。这个 TFile("myfile.root") 调用可以用来打开一个ROOT文件(即由ROOT创建的包含持久化ROOT对象(如直方图)的二进制文件),正如您所指出的,如果您试图使用它打开一个纯文本文件,会导致错误。教程页面中显示的方法是创建一个TH1,然后使用标准C++I/O流从文本文件中读取并以正常方式填充直方图。