void plotBDTG_theta3(void) { auto resultsFile = TFile::Open("TMVAOutputBDT_theta3.root"); // TCut mycutst("target>0.200 && target<5.0"); // Use with plotting results TCut mycutst(""); // Use with plotting results TCanvas *c1 = new TCanvas("c1","",1600, 1100); auto p1 = new TPad("p1","", 0.0, 0.5, 1.0, 1.0); p1->Draw(); p1->cd(); auto resultsTree = (TTree*)resultsFile->Get("dataset/TestTree"); auto trainTree = (TTree*)resultsFile->Get("dataset/TrainTree"); auto htarget = new TH1D("htarget", "Theta: Testing Set;#theta (degrees)", 200, 0.0, 11.5); auto hBDTG = new TH1D("hBDTG", "Theta: Testing Set;#theta (degrees)", 200, 0.0, 11.5); resultsTree->Project("htarget", "target*TMath::RadToDeg()", mycutst); resultsTree->Project("hBDTG", "BDTG*TMath::RadToDeg()", mycutst); htarget->SetFillStyle(3000); htarget->SetFillColor(kGray); htarget->SetLineColor(kBlack); hBDTG->SetLineColor(kRed); htarget->SetLineWidth(3); hBDTG->SetLineWidth(3); htarget->Draw(); hBDTG->Draw("same"); TLegend *leg = new TLegend(0.3, 0.85, 0.5, 0.9); leg->AddEntry(htarget, "target"); leg->Draw(); leg = new TLegend(0.5, 0.85, 0.7, 0.9); leg->AddEntry(hBDTG, "BDTG"); leg->Draw(); c1->cd(); auto p2= new TPad("p2","", 0.0, 0.0, 0.5, 0.5); p2->Draw(); p2->cd(); auto hdiff = new TH1D("hdiff", "BDTG-target: Testing Set;#Deltap (mrad)", 200, -50.0, 40.0); resultsTree->Project("hdiff", "(BDTG-target)*1000.0", mycutst); hdiff->SetLineWidth(3); gStyle->SetOptFit(1111); hdiff->Fit("gaus","", "", -20.0, 20.0); auto p2_1= new TPad("p2","", 0.125, 0.5, 0.5, 0.89); p2_1->Draw(); p2_1->cd(); resultsTree->Draw("(BDTG-target)*1000.0:target*TMath::RadToDeg()>>h2(50,0.0,11.5,100,-30.0,30.0)", mycutst, "colz"); c1->cd(); auto p3= new TPad("p3","", 0.5, 0.0, 1.0, 0.5); p3->Draw(); p3->cd(); auto htraintarget = new TH1D("htraintarget", "Theta: Training set;#theta (degrees)", 200, 0.0, 11.5); auto htrainBDTG = new TH1D("htrainBDTG", "Theta: Training set;#theta (degrees)", 200, 0.0, 11.5); trainTree->Project("htraintarget", "target*TMath::RadToDeg()", mycutst); trainTree->Project("htrainBDTG", "BDTG*TMath::RadToDeg()", mycutst); htraintarget->SetFillStyle(3000); htraintarget->SetFillColor(kGray); htraintarget->SetLineColor(kBlack); htrainBDTG->SetLineColor(kRed); htraintarget->SetLineWidth(3); htrainBDTG->SetLineWidth(3); htraintarget->Draw(); htrainBDTG->Draw("same"); leg = new TLegend(0.3, 0.85, 0.5, 0.9); leg->AddEntry(htraintarget, "target"); leg->Draw(); leg = new TLegend(0.5, 0.85, 0.7, 0.9); leg->AddEntry(htrainBDTG, "BDTG"); leg->Draw(); c1->SaveAs("plotBDTG_theta3.pdf"); c1->SaveAs("plotBDTG_theta3.png"); }