//makro do narysowania 2-wymiarowego histogramu //dane wczytywane z pliku { gROOT->Reset(); gStyle->SetPalette(1); ifstream my_input; my_input.open("n_meanpt.txt"); //otwieramy plik z danymi //deklarujemy 2-wymiarowy histogram //100 binow na X'ie (zakres 0.22-0.5) i 30 binow na Y (zakres 20-140) TH2D *npt = new TH2D("npt", "", 100, 0.22, 0.5, 30, 20, 140); double pt; //pedy poprzeczne (liczby rzeczywiste) int n; //krotnosci czastek (liczby calkowite) for(int i=1; i<=100000; i=i+1) { my_input>>n>>pt; //wczytujemy z pliku kolejne wartosci n i pt npt->Fill(pt, n); //... i wypelniamy nimi zadeklarowany histogram //pt na osi X a n na osi Y } npt->GetXaxis()->SetTitle("M(p_{T}) (GeV/c)"); npt->GetYaxis()->SetTitle("N"); //npt->Draw(); //daje tzw. scatter plot czyli tylko punkty XY //mozna wyprobowac inne opcje: //npt->SetFillColor(2); //npt->Draw("box"); //npt->Draw("colz"); //npt->SetFillColor(3); //npt->Draw("lego1"); //npt->Draw("lego2"); //npt->Draw("contz"); npt->Draw("cont1"); //npt->Draw("surf1cyl"); //raczej nie do uzywania ;-) //npt->Draw("surf1"); //npt->Draw("surf2z"); //npt->Draw("surf3"); //npt->SetFillColor(38); //npt->Draw("surf4"); }