ROOT(CERN):使用csv文件中的数据绘制带有误差条的图



我正在尝试从。csv文件中读取数据,该文件包含4列:"x","y","标准差"one_answers";Uncertainty"。我想绘制一个带有误差条的散点图,它表示.csv文件中的不确定性。我在root的REPL中运行以下代码:

auto rdf = ROOT::RDF::MakeCsvDataFrame("./file.csv")
auto g1 = rdf.GraphAsymmErrors("x","y","","","Uncertainty","Uncertainty");

但是我得到一个错误:

ROOT_prompt_1:1:15: error: no member named 'GraphAsymmErrors' in 'ROOT::RDataFrame'

同时我可以正确地运行下面的代码:

auto g2=rdf.Graph("x","y");
g2->SetMarkerStyle(6);
g2->Draw();

,这让我感到困惑,因为在ROOT的文档中,Graph()方法和GraphAsymmErrors()方法似乎都是RDataFrame的方法,所以我认为它不应该显示上面的错误。

另外,我的根版本是6.26,通过snap安装在Ubuntu 22.04上。

GraphAsymmErrors在v6.26文档中似乎不存在。您链接的文档是针对主分支的。为了使用该功能,您可能必须更新到夜间构建或等待下一个版本。

同时,我建议您在各自的分支上使用RDataFrame::Take()来获取它们作为std::vectors,并直接使用TGraphAsymmErrors构造函数。

最新更新