//makro do narysowania liczby kwantow gamma //w zaleznosci od grubosci absorbenta //podobne do macro2.c tylko zakres osi ustalamy sami { gROOT->Reset(); TCanvas *c1 = new TCanvas("c1","przyklad",200,10,700,500); //definiujemy nowy obszar (plotno) na rysunek //*c1 to wskaznik do obiektu klasy TCanvas //we wczesniejszych makrach canvas tworzyl sie sam automatycznie c1->SetFillColor(38); c1->SetGrid(); c1->SetHighLightColor(10); //obwodka rysunku c1->SetBottomMargin(0.2); c1->SetLeftMargin(0.15); //rysujemy ramke zeby zdefiniowac zakres osi TH1F *hr = c1->DrawFrame(-2, 0, 35, 1600); //xmin, ymin, xmax, ymax hr->SetXTitle("x (mm)"); //w tym przykladzie osie opisujemy tu hr->SetYTitle("N"); hr->GetYaxis()->SetTitleOffset(1.6); //odleglosc opisu od osi Y hr->GetXaxis()->SetTitleOffset(1.5); //odleglosc opisu od osi X c1->GetFrame()->SetFillColor(29); //kolor tla wewnetrznego double x[8]={2, 5, 7, 10, 12, 15, 17, 20}; double y[8]={1420, 1154, 946, 822, 712, 625, 543, 447}; double ex[8]={0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01, 0.01}; double ey[8]={38.8, 35.1, 32.1, 30.1, 28.2, 26.6, 25, 23}; TGraphErrors *gr = new TGraphErrors(8,x,y,ex,ey); gr->SetMarkerColor(2); //kolor markera gr->SetMarkerSize(2); //rozmiar markera gr->SetMarkerStyle(22); //typ markera gr->Draw("P"); //tym razem bez opcji "A" tylko samo "P" //bo osie sa juz zdefiniowane wczesniej //definiowanie ramki z zakresem osi wczesniej ma te zalete //ze mozna umieszczac kilka zaleznosci na jednym rysunku //definiujemy teraz wskaznik do supelnie nowego obiektu klasy TGraphErrors double a[4]={5, 10, 15, 20}; double b[4]={1151, 965, 897, 831}; double ea[4]={0.01, 0.01, 0.01, 0.01}; double eb[4]={35.1, 32.4, 31.3, 30.2}; TGraphErrors *gr2 = new TGraphErrors(4,a,b,ea,eb); gr2->SetMarkerColor(4); //kolor markera gr2->SetMarkerSize(2); //rozmiar markera gr2->SetMarkerStyle(29); //typ markera gr2->Draw("CP"); //punkty polaczone wygladzona krzywa //UWAGA: tutaj zastosowanie wygladzonej (lub lamanej) krzywej //to jedynie przyklad dzialania programu //my jednak wiemy, ze w tym zjawisku fizycznym punkty //ukladaja sie na GLADKIEJ krzywej => //w takim wypadku NIE laczymy punktow krzywa lamana/wygladzona ! //(to bardzo wazne np. przy sprawozdaniach z Lab. Fiz. I) }