Thursday, March 17, 2005

Simon's ORCA Blog: Toot toot, time to use root

Root code to plot four Et graphs in two sections on one canvas and four Eta plots onto a second canvas, it assumes you have started root by
root filename
and that the file has loaded correctly

TH1F * jet1mcEt = _file0->Get("EMCjet1");
TH1F * jet1Et = _file0->Get("Ejet1");
TH1F * jet2mcEt = _file0->Get("EMCjet2");
TH1F * jet2Et = _file0->Get("Ejet2");

// Create and divide the canvas
TCanvas *jet1Canv = new TCanvas("Jet Et Canvas","Jet Et Canvas",1);
jet1Canv -> Divide(2,1);

// Go to first area of canvas
jet1Canv -> cd(1);
// Set colours and draw two histograms
jet1mcEt->SetLineColor(2);
jet1Et->Draw();
jet1mcEt->Draw();
jet1Et->SetLineColor(1);
jet1Et->Draw("SAME");

jet1Canv -> cd(2);
jet2Et->SetLineColor(1);
jet2Et->Draw();
jet2mcEt->SetLineColor(2);
jet2mcEt->Draw();
jet2Et->Draw("SAME");

TH1F * jet1mcEta = _file0->Get("EtaMCjet1");
TH1F * jet1Eta = _file0->Get("Etajet1");
TH1F * jet2mcEta = _file0->Get("EtaMCjet2");
TH1F * jet2Eta = _file0->Get("Etajet2");

// Create and divide the canvas
TCanvas *jet2Canv = new TCanvas("Jet Eta Canvas","Jet Eta Canvas",1);
jet2Canv -> Divide(2,2);
jet2Canv -> cd(1);
jet1Eta->SetLineColor(1);
jet1Eta->Draw();
jet2Canv -> cd(2);
jet1mcEta->SetLineColor(2);
jet1mcEta->Draw();

jet2Canv -> cd(3);
jet2Eta->SetLineColor(1);
jet2Eta->Draw();
jet2Canv -> cd(4);
jet2mcEta->SetLineColor(2);
jet2mcEta->Draw();
jet2Canv->SaveAs("JetEtaCanvas.eps");

TH1F * metEtC = _file0->Get("MetEtCC");
TH1F * metEtU = _file0->Get("MetEtU");

TCanvas *metCanv = new TCanvas("Missing Et Canvas","Missing Et Canvas",1);
metCanv -> cd();
metEtC->SetLineColor(1);
metEtC->Draw();
metEtU->SetLineColor(2);
metEtU->Draw();
metEtC->Draw();
metEtU->Draw("SAME");

TH1F * nojets = _file0->Get("nojets");
TH1F * nomcjets = _file0->Get("nomcjets");

TCanvas *njetsCanv = new TCanvas("Number of Jets Canvas","Number of Jets Canvas",1);
njetsCanv -> cd();
nojets->SetLineColor(1);
nojets->Draw();
nomcjets->SetLineColor(2);
nomcjets->Draw();
nojets->Draw();
nomcjets->Draw("SAME");


// Need to moce the pallettes about a bit - ask Rob
jet1Canv->SaveAs("JetEtCanvas.eps");
metCanv->SaveAs("MetCanvas.eps");
njetsCanv->SaveAs("NoJetCanvas.eps");