【发布时间】:2016-09-01 17:30:08
【问题描述】:
是否有任何命令可以从命令行/终端生成多个图形。我有一个 .root 文件,其中包含已处理的图形对象,因此我可以使用命令一次绘制一个图形
pAngRateAlld_S0_M0->Draw("Hist");
当使用root -l maplot_20070101_4m.root打开文件时
【问题讨论】:
标签: c++ plot frameworks root-framework
是否有任何命令可以从命令行/终端生成多个图形。我有一个 .root 文件,其中包含已处理的图形对象,因此我可以使用命令一次绘制一个图形
pAngRateAlld_S0_M0->Draw("Hist");
当使用root -l maplot_20070101_4m.root打开文件时
【问题讨论】:
标签: c++ plot frameworks root-framework
打开文件后:
root -l filename.root
您可以使用以下方法绘制 TGraph:
myGraph->Draw("apl");
或使用其他选项,例如:
myGraph->Draw("Hist");
重要的是要意识到这会创建一个默认画布。如果您尝试绘制另一个图形,它将在同一个画布中绘制它,即它将替换最后一个。
有多个图表有几个选项:
1) 每个画布一个图:您需要在绘制之前为每个图创建一个画布:
TCanvas *c1=new TCanvas();
myGraph1->Draw("apl");
TCanvas *c2=new TCanvas();
myGraph2->Draw("apl");
etc.
2) 同一图中的多个图表:
myGraph1->Draw("apl");
myGraph2->Draw("pl same");
myGraph3->Draw("pl same");
3) 分割画布:
TCanvas *c1=new TCanvas();
c1->Divide(3,3); // divides the canvas into three rows and three columns
c1->cd(1);
myGraph1->Draw("apl");
c1->cd(2);
myGraph2->Draw("apl");
【讨论】: