{ ROOT::Math::MinimizerOptions::SetDefaultMinimizer("GSLMultiFit"); TH1D * h1 = new TH1D("h1","h1",100,-5,5); h1->FillRandom("gaus"); TGraphErrors *graph = new TGraphErrors(h1); TGraph *fit_spline= new TGraphErrors(h1); Int_t n = graph->GetN(); for (Int_t i=0;iSetPointError(i,0,graph->GetErrorY(i)); } TF1 *fit= new TF1("fit",[&](double *x, double *par){return (par[0]*fit_spline->Eval(x[0]-par[2])+par[1]);},0 ,5, 3); fit->SetParameters(1,0.000000000000000001,0.00000000000000001); fit->SetParLimits(2,0.000000000000000001,0.0000000000002); graph->Draw("Ap"); graph->Fit("fit"); }