ROOT logo
void SetStyles(TH1 *histo,int marker, int color){
  histo->Sumw2();
  histo->SetMarkerStyle(marker);
  histo->SetMarkerColor(color);
  histo->SetLineColor(color);
  //histo->GetXaxis()->SetTitle(xtitle);
  //histo->GetYaxis()->SetTitle(ytitle);
}
void PlotEmEtFractions(Bool_t isPhos = kFALSE){

  gStyle->SetOptTitle(0);
  gStyle->SetOptStat(0);
  gStyle->SetOptFit(0);
  Float_t min = 0;
  float max = 1;
  TString filename, detname;
  if(isPhos){
    min = 0.655;
    max = 0.785;
    detname = "PHOS";
    filename = "rootFiles/LHC11a10a_bis/Et.ESD.simPbPb.PHOS.LHC11a10a_bis.Run139465.root";
  }
  else{
    min = 0.58;
    max = 0.725;
    filename = "rootFiles/LHC11a10a_bis/Et.ESD.simPbPb.EMCal.LHC11a10a_bis.Run139465.root";
    detname = "EMCal";
  }
  
  TFile *f = TFile::Open(filename, "READ");
  TList *l = dynamic_cast<TList*>(f->Get("out1"));
  TString part[] = {"Signal","Hadrons","Neutrons","Kaons","Secondaries"};
  Int_t nparts = 5;
  TString var[] = {"NClusters","NMultiplicity","NMatchedTracks","NTotalTracks"};
  Int_t nvar = 4;
  Int_t partnum = 0;
  Int_t varnum = 0;

  for(Int_t partnum = 0; partnum<nparts;partnum++){
    for(Int_t varnum = 0;varnum<nvar; varnum++){
      TString histoname = "fHistFrac"+part[partnum]+"Vs"+var[varnum];
      
      TH2F *histo = l->FindObject(histoname.Data());
      histo->GetXaxis()->SetTitle(var[varnum].Data());
      TString ytitle = part[partnum]+" fraction";
      histo->GetYaxis()->SetTitle(ytitle.Data());
      //this line here keeps the zeros from plotting
      histo->GetYaxis()->SetRange(2,histo->GetYaxis()->GetNbins());
      
      TCanvas *c1 = new TCanvas("c1","Simulation",600,400);
      c1->SetTopMargin(0.02);
      c1->SetRightMargin(0.03);
      c1->SetLeftMargin(0.11745);
      c1->SetBottomMargin(0.11745);
      c1->SetBorderSize(0);
      c1->SetFillColor(0);
      c1->SetFillColor(0);
      c1->SetBorderMode(0);
      c1->SetFrameFillColor(0);
      c1->SetFrameBorderMode(0);
      histo->Draw("colz");
      TH1 * prof = histo->ProfileX();
      prof->Draw("same");
      TString canvasname = "/tmp/"+histoname+detname+".png";
      c1->SaveAs(canvasname.Data());
      //return;
      delete c1;
      delete prof;
    }
  }
}
 PlotEmEtFractions.C:1
 PlotEmEtFractions.C:2
 PlotEmEtFractions.C:3
 PlotEmEtFractions.C:4
 PlotEmEtFractions.C:5
 PlotEmEtFractions.C:6
 PlotEmEtFractions.C:7
 PlotEmEtFractions.C:8
 PlotEmEtFractions.C:9
 PlotEmEtFractions.C:10
 PlotEmEtFractions.C:11
 PlotEmEtFractions.C:12
 PlotEmEtFractions.C:13
 PlotEmEtFractions.C:14
 PlotEmEtFractions.C:15
 PlotEmEtFractions.C:16
 PlotEmEtFractions.C:17
 PlotEmEtFractions.C:18
 PlotEmEtFractions.C:19
 PlotEmEtFractions.C:20
 PlotEmEtFractions.C:21
 PlotEmEtFractions.C:22
 PlotEmEtFractions.C:23
 PlotEmEtFractions.C:24
 PlotEmEtFractions.C:25
 PlotEmEtFractions.C:26
 PlotEmEtFractions.C:27
 PlotEmEtFractions.C:28
 PlotEmEtFractions.C:29
 PlotEmEtFractions.C:30
 PlotEmEtFractions.C:31
 PlotEmEtFractions.C:32
 PlotEmEtFractions.C:33
 PlotEmEtFractions.C:34
 PlotEmEtFractions.C:35
 PlotEmEtFractions.C:36
 PlotEmEtFractions.C:37
 PlotEmEtFractions.C:38
 PlotEmEtFractions.C:39
 PlotEmEtFractions.C:40
 PlotEmEtFractions.C:41
 PlotEmEtFractions.C:42
 PlotEmEtFractions.C:43
 PlotEmEtFractions.C:44
 PlotEmEtFractions.C:45
 PlotEmEtFractions.C:46
 PlotEmEtFractions.C:47
 PlotEmEtFractions.C:48
 PlotEmEtFractions.C:49
 PlotEmEtFractions.C:50
 PlotEmEtFractions.C:51
 PlotEmEtFractions.C:52
 PlotEmEtFractions.C:53
 PlotEmEtFractions.C:54
 PlotEmEtFractions.C:55
 PlotEmEtFractions.C:56
 PlotEmEtFractions.C:57
 PlotEmEtFractions.C:58
 PlotEmEtFractions.C:59
 PlotEmEtFractions.C:60
 PlotEmEtFractions.C:61
 PlotEmEtFractions.C:62
 PlotEmEtFractions.C:63
 PlotEmEtFractions.C:64
 PlotEmEtFractions.C:65
 PlotEmEtFractions.C:66
 PlotEmEtFractions.C:67
 PlotEmEtFractions.C:68
 PlotEmEtFractions.C:69
 PlotEmEtFractions.C:70
 PlotEmEtFractions.C:71
 PlotEmEtFractions.C:72