hi everyone,
I ran into a problem with TTree::Draw() and TH1F.
I got two different mean when using TTree::Draw() and TH1F
The code is following:
TH1F *hist1;
TH1F *hist2;
tree->SetBranchAddress("weight", &weight);
for (int j = 0; j < tree->GetEntries(); j++)
{
tree->GetEntry(j);
hist1->Fill(weight);
}
tree->Draw("weight>>hist2");
hist1->GetMean();
hist2->GetMean();
I wonder what’s the difference between them, thank you all.
Please read tips for efficient and successful posting and posting code
ROOT Version: Not Provided
Platform: Not Provided
Compiler: Not Provided
Make sure you use something like this:
int nbins = 100; // set a reasonable value
double xmin = 0., xmax = 100.; // set reasonable values
gROOT->cd(); // newly created histograms should go here
TH1F *hist1 = new TH1F("hist1", "my hist 1;my x;my y", nbins, xmin, xmax);
TH1F *hist2 = new TH1F("hist2", "my hist 2;my x;my y", nbins, xmin, xmax);
Yes,I created the hist just like you did.
TH1F* hist1=new TH1F("hist1","", 100, 0, 100);
TH1F* hist2=new TH1F("hist2","", 100, 0, 100);
Hi @YULianzhou ,
could this be a precision issue in TH1F
? Do you still see the problem if you switch to TH1D
(with double precision bins)?
Cheers,
Enrico
system
Closed
June 30, 2022, 7:43am
5
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.