double xmin = 99999.; // X axis minimum double xmax = -99999.; // X axis maximum double bw = 2.; // bin width TH1D *h; void ComputeMinMax(TString filename) { ifstream inp; double x,y; inp.open(filename.Data()); while (inp >> x >> y) { if (x>0) { if (xxmax) xmax = x; } } } void FillHistoFromFile(TString filename) { ifstream inp; double x,y; inp.open(filename.Data()); while (inp >> x >> y) { if (x>0) h->Fill(x,y); } inp.close(); } void khallod() { ComputeMinMax("Data1.txt"); ComputeMinMax("Data2.txt"); int nb = (xmax-xmin)/bw; h = new TH1D("h","h title",nb,xmin-bw/2.,xmax+bw/2.); h->GetXaxis()->SetTitle("Energy (keV)"); h->GetYaxis()->SetTitle("Count"); FillHistoFromFile("Data1.txt"); FillHistoFromFile("Data2.txt"); h->Draw("hist"); }