c_cpp ROOT Plot直方图

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp ROOT Plot直方图相关的知识,希望对你有一定的参考价值。

void plotHistograms(const char *filename, string extention) {
  TFile *f1 = TFile::Open(filename);
  if(!f1) return;

  TIter next(f1->GetListOfKeys());
  TKey *key;
  TCanvas c1;
  while ((key = (TKey*)next())) {
    TClass *cl = gROOT->GetClass(key->GetClassName());
    if (!cl->InheritsFrom("TH1")) continue;
    TH1 *h = (TH1*)key->ReadObj();
    h->Draw("colz");
    gStyle->SetOptStat(kFALSE);
    auto hName = h->GetName();
    string hNameString = string(hName);
    auto hFileName = "plots/" + hNameString + extention + ".png";
    std::cout << hName << '\t' << hFileName << std::endl;
    c1.Print(hFileName.c_str());
  }

}

以上是关于c_cpp ROOT Plot直方图的主要内容,如果未能解决你的问题,请参考以下文章

c_cpp CV - 反投影直方图。

c_cpp CV - 计算1D直方图

Matplotlib学习---用matplotlib画直方图/密度图(histogram, density plot)

c_cpp 直方图中最大的矩形区域

python使用matplotlib可视化堆叠的直方图(stacked histogram plot)多个类别的数据在直方图区间层面累积堆叠起来

c_cpp 生成具有Tof状态QA的直方图的根文件