Double_t myFun (Double_t *xarg, Double_t *par) { Double_t x = xarg[0] , result = 0.; for (int st=0; st<=3; st++) result += par[st] * TMath::Power (x, st); return result; } void macro_FitTGraphErrors () { TCanvas *c1 = new TCanvas ("c1"); TGraphErrors gr ("dataPoints.txt"); gr.SetTitle (); gr.Draw("AP"); TF1 fun ("fun", myFun , -3, 5, 4); fun.SetParameters (-1. , 1. , -6. , 1.); fun.SetParLimits (0, -3., 2.); gr.Fit ( &fun , "" ); c1->Update(); cin.ignore(); }