// $Id: Example2.C,v 1.3 2009/09/12 17:03:19 videbaek Exp $ // // This simple example divides a canvas into 2 pad (nx*ny) // illustrates how to detup the offsets, and draw text with a given size. // { gSystem->Load("../.libs/libGrUtils.so"); gROOT->ProcessLine("using namespace GraphUtils"); gROOT->LoadMacro("../BasePlot.C+"); TH1F* h1 = new TH1F("h1","spec1",40,0,4.0); int i(3); for(double x=0.25;x<4.0;x+=0.1){ double f = TMath::Exp(-x*5.0)*1000; double df= TMath::Sqrt(f); f = gRandom->Gaus(f,df); h1->SetBinContent(i,f); h1->SetBinError(i,df); i++; } TH1F* h2 = new TH1F("h2","spec2",40,0,4.0); i=3; for(double x=0.25;x<4.0;x+=0.1){ double f = TMath::Exp(-x*6.0)*1000; double df= TMath::Sqrt(f); f = gRandom->Gaus(f,df); h2->SetBinContent(i,f); h2->SetBinError(i,df); i++; } TH1F* h3 = new TH1F("h3","spec4",40,0,4.0); i=3; for(double x=0.25;x<4.0;x+=0.1){ double f = TMath::Exp(-x*6.0)*1000; double df= TMath::Sqrt(f); f = gRandom->Gaus(f,df); h3->SetBinContent(i,f); h3->SetBinError(i,df); i++; } TH1F* h4 = new TH1F("h4","spec4",40,0,4.0); i=3; for(double x=0.25;x<4.0;x+=0.1){ double f = TMath::Exp(-x*6.0)*1000; double df= TMath::Sqrt(f); f = gRandom->Gaus(f,df); h4->SetBinContent(i,f); h4->SetBinError(i,df); i++; } TF1* f1 = new TF1("f1","1000.0*exp(-5*x)",0.3,2.5); // // create 4 histograms from a kind of fct // SetupPage(4.5*2.54, 3.0*2.54); SetupCanvas("TestPlot","Test Plot 2 frames"); bottomMargin=0.12; leftMinorMargin=0.0; bottomMinorMargin=0.00; rightMinorMargin=0.00; rightMargin=0.005; leftJustify=1; botJustify=1; titleYOffset=1.0; titleXOffset=0.45; fLegendLineColor=1; int nx(2), ny(1); InitPads(nx,ny); currentMarker=21; markerColor=kRed; lineColor=kRed; useScaling = kTRUE; useIncrement=kTRUE; scaleFactor=0.1; Float_t frameMax = 1000.; Float_t nDec = 7; Float_t frameMin = frameMax*TMath::Power(10.,-nDec); xTitle = "p_{T} [GeV/c]"; yTitle = "#frac{1}{2#pi p_{T}} #frac{d^{2}N}{dp_{T}dy} (GeV/c)^{-2}"; xNDiv = 1003; yNDiv = 510; CreateFrames(0.000, 2.9999, frameMin, frameMax, 0, 1); SetupLegend(0, 0, 3.0, 3.6, 1.0, 1.0, 0.3); SetupLegend(1, 0, 3.0, 3.6, 1.0, 1.0, 0.3); AddHistogram(0, h1,"#pi h1","e"); AddHistogram(0, h2,"#pi h2","e"); // syst error must be added after the scaling - beware.. AddSystErr(0, h2, 0.3, 34, 2001); SetMarkerColor(kBlue); SetLineColor(kBlue); currentScale = 1; AddHistogram(1, h3,"#pi^{-} h3","e"); AddHistogram(1, h4,"#pi^{-} h4","e"); AddFunction(0,f1,"f1","l"); DrawPads(); TLatex* text = PlotText(0, 0, 1.5, 5.5,"AuAu 200 GeV", 0.3); text->SetTextColor(kOrange); // Add a global text overriding any Pad. // The global text is place in a transparent pad covering the full page // PlotGlobalText(6.0, 4.0, "Global Text",0.28)->SetTextColor(kGreen-8); savePNG=1; SaveFigure("Example2"); }