#include "TCanvas.h" #include "TApplication.h" #include "TH1F.h" #include "TF1.h" #include #include using namespace std; int main (int argc, char**argv) { TApplication app("App",0,0); // Definizione di un istogramma monodimensionale da riempire con float TH1F *h1 = new TH1F("h1","Istogramma 1D",100,-5.,5.); float x, y; fstream f, g; f.open("gaus.dat",ios::in); while ( f >> x ) { h1->Fill(x); // riempimento } f.close(); // creazione del canvas TCanvas *c1 = new TCanvas("c1","Istogramma 1D",600,400); // disegno. h1->Draw(); h1->GetXaxis()->SetTitle("Titolo sull'asse X"); h1->GetYaxis()->SetTitle("Titolo sull'asse Y"); h1->Draw(); // Puoi prendere le informazioni che ti interessano cout << "La media dell'istrogramma h1 vale -->> " << h1->GetMean() << endl; cout << "L'RMS dell'istogramma h1 vale -->> " << h1->GetRMS() << endl; // Puoi fittare con una gaussiana h1->Fit("gaus"); // e recuperare i risultati TF1 *FitFun = h1->GetFunction("gaus"); cout << "Ecco i parametri del fit " << endl; cout << "Media della gaussiana --->>> " << FitFun->GetParameter(1) << endl; cout << "Sigma della gaussiana --->>> " << FitFun->GetParameter(2) << endl; cout << "Chi2 del fit --->>> " << FitFun->GetChisquare() << endl; c1->Print("HistoFit.ps"); app.Run(); return 0; }