fit2a.C: Fitting a 2-D histogram (a variant) | Fitting tutorials | fit2dHist.C: Example to fit two histograms at the same time via TVirtualFitter |
void fit2d() { //example illustrating how to fit a 2-d histogram of type y=f(x) //Author: Rene Brun // generate a 2-d histogram using a TCutG const Int_t n = 6; Float_t x[n] = {0.092,0.83,0.94,0.81,0.12,0.1}; Float_t y[n] = {0.71,9.4,9,8,0.3,0.71}; TCutG *cut = new TCutG("cut",n,x,y); TH2F *h2 = new TH2F("h2","h2",40,0,1,40,0,10); Float_t u,v; for (Int_t i=0;i<100000;i++) { u = gRandom->Rndm(); v = 10*gRandom->Rndm(); if (cut->IsInside(u,v)) h2->Fill(u,v); } TCanvas *c1 = new TCanvas("c1","show profile",600,900); c1->Divide(1,2); c1->cd(1); h2->Draw(); c1->cd(2); //use a TProfile to convert the 2-d to 1-d problem TProfile *prof = h2->ProfileX(); prof->Fit("pol1"); } fit2d.C:1 fit2d.C:2 fit2d.C:3 fit2d.C:4 fit2d.C:5 fit2d.C:6 fit2d.C:7 fit2d.C:8 fit2d.C:9 fit2d.C:10 fit2d.C:11 fit2d.C:12 fit2d.C:13 fit2d.C:14 fit2d.C:15 fit2d.C:16 fit2d.C:17 fit2d.C:18 fit2d.C:19 fit2d.C:20 fit2d.C:21 fit2d.C:22 fit2d.C:23 fit2d.C:24 fit2d.C:25 fit2d.C:26 fit2d.C:27 fit2d.C:28 fit2d.C:29 |
|