This script is a slightly modified version of hsum.C.
When run in batch mode, it produces an animated gif file.
void hsumanim() {
auto c1 =
new TCanvas(
"c1",
"The HSUM example",200,10,600,400);
auto total =
new TH1F(
"total",
"This is the total distribution",100,-4,4);
auto main =
new TH1F(
"main",
"Main contributor",100,-4,4);
auto s1 =
new TH1F(
"s1",
"This is the first signal",100,-4,4);
auto s2 =
new TH1F(
"s2",
"This is the second signal",100,-4,4);
total->Sumw2();
main->SetFillColor(16);
s1->SetFillColor(42);
s2->SetFillColor(46);
const Int_t kUPDATE = 500;
for (
Int_t i=0; i<10000; i++) {
main->Fill(xmain);
s1->Fill(xs1,0.3);
s2->Fill(xs2,0.2);
total->Fill(xmain);
total->Fill(xs1,0.3);
total->Fill(xs2,0.2);
if (i && (i%kUPDATE) == 0) {
if (i == kUPDATE) {
s1->Draw("same");
s2->Draw("same");
}
c1->
Print(
"hsumanim.gif+");
printf("i = %d\n", i);
} else {
break;
}
}
}
if (
gROOT->IsBatch()) c1->
Print(
"hsumanim.gif++");
}
- Authors
- Rene Brun, Valeriy Onuchin
Definition in file hsumanim.C.