ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/auterman/SusyScan/PlotScript/plot.cc
Revision: 1.9
Committed: Fri Jan 7 17:14:48 2011 UTC (14 years, 4 months ago) by auterman
Content type: text/plain
Branch: MAIN
Changes since 1.8: +78 -28 lines
Log Message:
fixing Profile drawing

File Contents

# User Rev Content
1 auterman 1.1 #include "plot.h"
2     #include "SusyScan.h"
3 auterman 1.2 #include "GeneratorMasses.h"
4 auterman 1.4 #include "PlotTools.h"
5 auterman 1.2 #include "TheLimits.h"
6 auterman 1.6 #include "GlobalFunctions.h"
7 auterman 1.1
8     #include "TRint.h"
9     #include "TROOT.h"
10     #include "TObjArray.h"
11     #include "TStyle.h"
12    
13     #include "TChain.h"
14     #include "TFile.h"
15 auterman 1.2 #include "TGraph.h"
16 auterman 1.1 #include "TH1.h"
17     #include "TH2.h"
18     #include "TH2F.h"
19     #include "TTree.h"
20     #include "TKey.h"
21     #include "Riostream.h"
22     #include "TCanvas.h"
23 auterman 1.8 #include "TLegend.h"
24 auterman 1.9 #include "TLatex.h"
25 auterman 1.1
26     #include <string>
27 auterman 1.2 #include <cmath>
28 auterman 1.9 #include <stdio.h>
29 auterman 1.1
30     int plot(int argc, char** argv)
31     {
32 auterman 1.6 //interactive root session
33 auterman 1.7 //TApplication theApp("App", 0, 0);
34 auterman 1.2 if (gROOT->IsBatch()) {
35     fprintf(stderr, "%s: cannot run in batch mode\n", argv[0]);
36     return 1;
37     }
38    
39 auterman 1.6 //Style stuff
40 auterman 1.1 gStyle->SetHistFillColor(0);
41     gStyle->SetPalette(1);
42     gStyle->SetCanvasColor(0);
43     gStyle->SetCanvasBorderMode(0);
44     gStyle->SetPadColor(0);
45     gStyle->SetPadBorderMode(0);
46     gStyle->SetFrameBorderMode(0);
47    
48     gStyle->SetTitleFillColor(0);
49     gStyle->SetTitleBorderSize(0);
50     gStyle->SetTitleX(0.10);
51     gStyle->SetTitleY(0.98);
52     gStyle->SetTitleW(0.8);
53     gStyle->SetTitleH(0.06);
54    
55     gStyle->SetErrorX(0);
56     gStyle->SetStatColor(0);
57     gStyle->SetStatBorderSize(0);
58     gStyle->SetStatX(0);
59     gStyle->SetStatY(0);
60     gStyle->SetStatW(0);
61     gStyle->SetStatH(0);
62    
63     gStyle->SetTitleFont(22);
64     gStyle->SetLabelFont(22,"X");
65     gStyle->SetLabelFont(22,"Y");
66     gStyle->SetLabelFont(22,"Z");
67     gStyle->SetLabelSize(0.03,"X");
68     gStyle->SetLabelSize(0.03,"Y");
69     gStyle->SetLabelSize(0.03,"Z");
70    
71     //gROOT->SetStyle("MyStyle");
72     TCanvas * c1 = new TCanvas("c1","c1",600,600);
73     c1->SetFillStyle ( 4000 );
74     c1->SetLeftMargin ( 0.15 );
75     c1->SetRightMargin ( 0.15 );
76     c1->SetBottomMargin( 0.10 );
77     c1->cd();
78    
79 auterman 1.6 //Get limits and generator masses ---------------------------------------------------
80 auterman 1.4 TheLimits * genpoints = new TheLimits();
81 auterman 1.1 for (int i = 1; i<argc; ++i)
82     {
83 auterman 1.4 genpoints->add( new SusyScan(argv[i]) );
84 auterman 1.1 }
85 auterman 1.5 genpoints->FillGeneratorMasses("tb10_mu1_a0_massscan.dat");
86     genpoints->match();
87 auterman 1.2
88 auterman 1.6
89     //the plotting ----------------------------------------------------------------------
90 auterman 1.7 //plotting helper functions
91 auterman 1.4 PlotTools<SusyScan> * plotTools = new PlotTools<SusyScan>(genpoints->GetScan());
92 auterman 1.6 PlotTools<GeneratorMasses> * plotMasses = new PlotTools<GeneratorMasses>(genpoints->GetGeneratorMasses());
93 auterman 1.2
94 auterman 1.7 //iso mass lines
95     TGraph * gl500 = plotMasses->Line(Mzero, Mhalf, MGluino, 500);
96     TGraph * sq500 = plotMasses->Line(Mzero, Mhalf, MSquarkL, 500, 10);
97     sq500->SetLineWidth(2); sq500->SetLineColor(7);
98    
99     TGraph * chi100 = plotMasses->Line(Mzero, Mhalf, MChi1, 50, 20);
100     TGraph * cha200 = plotMasses->Line(Mzero, Mhalf, MCha1, 200, 20);
101     cha200->SetLineColor(2);
102    
103     //the histograms
104     c1->SetLogz(1);
105     //h->SetMaximum(27);
106     //h->SetMinimum(0.01);
107    
108     // cross-section in M0 - M1/2
109     TH2F*hxsec = new TH2F("xsec",";m_{0} [GeV]; m_{1/2} [GeV]; cross section [pb]",
110     100,0,1009.9,50,0,500);
111     plotTools->Area(hxsec, Mzero, Mhalf, Xsection);
112     hxsec->SetMinimum(0.01);
113     //sq500->Draw();
114     //gl500->Draw();
115     hxsec->Draw("colz");
116     c1->SaveAs("results/Xsection_m0_m12.png");
117     std::string wait;
118     //std::cin>>wait;
119    
120     // Observed Limit in M0 - M1/2
121     TH2F*hobslimit = new TH2F("obslimit",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Observed Limit [pb]",
122     100,0,1009.9,50,0,500);
123     plotTools->Area(hobslimit, Mzero, Mhalf, ObsXsecLimit);
124     hobslimit->SetMinimum(0.01);
125     hobslimit->Draw("colz");
126     c1->SaveAs("results/ObsLimit_m0_m12.png");
127    
128     // Expected Limit in M0 - M1/2
129     TH2F*hexplimit = new TH2F("explimit",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Limit [pb]",
130     100,0,1009.9,50,0,500);
131     plotTools->Area(hexplimit, Mzero, Mhalf, ExpXsecLimit);
132     hexplimit->SetMinimum(0.01);
133     hexplimit->Draw("colz");
134     c1->SaveAs("results/ExpLimit_m0_m12.png");
135    
136     // Signal Acceptance in M0 - M1/2
137     TH2F*hsigacc = new TH2F("sigacc",";m_{0} [GeV]; m_{1/2} [GeV]; Signal Acceptance",
138     100,0,1009.9,50,0,500);
139     plotTools->Area(hsigacc, Mzero, Mhalf, SignalAcceptance);
140     hsigacc->SetMinimum(0.01);
141     hsigacc->SetMaximum(1.0);
142     hsigacc->Draw("colz");
143     chi100->Draw();
144     cha200->Draw();
145     gl500 ->Draw();
146     sq500 ->Draw();
147     c1->SaveAs("results/SigAcc_m0_m12.png");
148    
149     // Exp. Limit on Number of Signal Events in M0 - M1/2
150 auterman 1.8 c1->SetLogz(0);
151 auterman 1.7 TH2F*hexplimitnsig = new TH2F("explimitnsig",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL exp. limit signal events [# ]",
152     100,0,1009.9,50,0,500);
153     plotTools->Area(hexplimitnsig, Mzero, Mhalf, ExpNSignLimit);
154 auterman 1.8 //hexplimitnsig->SetMinimum(0.01);
155 auterman 1.7 hexplimitnsig->Draw("colz");
156     c1->SaveAs("results/ExpLimitOnNSig_m0_m12.png");
157    
158     // Obs. Limit on Number of Signal Events in M0 - M1/2
159     TH2F*hobslimitnsig = new TH2F("obslimitnsig",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL obs. limit signal events [# ]",
160 auterman 1.2 100,0,1009.9,50,0,500);
161 auterman 1.7 plotTools->Area(hobslimitnsig, Mzero, Mhalf, ObsNSignLimit);
162 auterman 1.8 //hobslimitnsig->SetMinimum(0.01);
163 auterman 1.7 hobslimitnsig->Draw("colz");
164     c1->SaveAs("results/ObsLimitOnNSig_m0_m12.png");
165    
166     c1->SetLogz(0);
167     // Expected Exclusion in M0 - M1/2
168     TH2F*hexpexcl = new TH2F("expexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Exclusion",
169 auterman 1.8 100,0,1009.9,35,100,450);
170 auterman 1.7 plotTools->Area(hexpexcl, Mzero, Mhalf, ExpExclusion);
171     hexpexcl->Draw("colz");
172     c1->SaveAs("results/ExpExclusion_m0_m12.png");
173    
174     // Observed Exclusion in M0 - M1/2
175     TH2F*hobsexcl = new TH2F("obsexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Observed Exclusion",
176 auterman 1.8 100,0,1009.9,35,100,450);
177 auterman 1.7 plotTools->Area(hobsexcl, Mzero, Mhalf, ObsExclusion);
178     hobsexcl->Draw("colz");
179     c1->SaveAs("results/ObsExclusion_m0_m12.png");
180    
181 auterman 1.8 // Observed Exclusion in M0 - M1/2
182     TH2F*hPLobsexcl = new TH2F("plobsexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Observed Exclusion",
183     100,0,1009.9,35,100,450);
184     plotTools->Area(hPLobsexcl, Mzero, Mhalf, PLObsExclusion);
185     hPLobsexcl->Draw("colz");
186     c1->SaveAs("results/PL_ObsExclusion_m0_m12.png");
187    
188 auterman 1.9 // TestContours in M0 - M1/2
189     //TH2F*texcl = new TH2F("texcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Exclusion",
190     // 100,0,1009.9,35,100,450);
191     //TH2F*tPLexpexcl=(TH2F*)hexcl->Clone();
192     //plotTools->Area(tPLexpexcl, Mzero, Mhalf, PLExpExclusion);
193     //std::vector<TGraph*> contours = plotTools->GetContours(hexpexcl,3);
194     //std::vector<TGraph*> contours = plotTools->GetContours(hobsexcl,3);
195     std::vector<TGraph*> contours = plotTools->GetContours(hPLobsexcl,3);
196     //hPLexpexcl
197     //hexcl->Draw("colz");
198     //hexpexcl->Draw("colz");
199     //hobsexcl->Draw("colz");
200     hPLobsexcl->Draw("colz");
201     int col=0;
202     for (std::vector<TGraph*>::iterator cont=contours.begin(); cont!=contours.end(); ++cont){
203     if (! *cont) continue;
204     double x, y;
205     (*cont)->GetPoint(0, x, y);
206     (*cont)->SetLineColor(col);
207     (*cont)->Draw("l");
208     TLatex l; l.SetTextSize(0.04); l.SetTextColor(col++);
209     char val[20];
210     sprintf(val,"%d",cont-contours.begin());
211     l.DrawLatex(x,y,val);
212     }
213     c1->SaveAs("results/ExclusionTestContours_m0_m12.png");
214    
215 auterman 1.8 // Exclusion in M0 - M1/2
216     TH2F*hexcl = new TH2F("hexcl",";m_{0} [GeV]; m_{1/2} [GeV]; 95% CL Expected Exclusion",
217     100,0,1009.9,35,100,450);
218 auterman 1.9 TGraph * gexpexcl = plotTools->GetContour(hexpexcl,3,7);
219     TGraph * gobsexcl = plotTools->GetContour(hobsexcl,3,3);
220     TGraph * gPLobsexcl = plotTools->GetContour(hPLobsexcl,3,3);
221     //TH2F*hPLexpexcl=(TH2F*)hexcl->Clone();
222     //plotTools->Area(hPLexpexcl, Mzero, Mhalf, PLExpExclusion);
223     TGraph * gPLexpexcl = 0;//plotTools->GetContour(hPLexpexcl,3,1);
224 auterman 1.8 hexcl->Draw("colz");
225     if (gobsexcl) gobsexcl->Draw("l");
226     if (gexpexcl) gexpexcl->SetLineStyle(2);
227     if (gexpexcl) gexpexcl->Draw("l");
228     if (gPLobsexcl) gPLobsexcl->SetLineColor(2);
229     if (gPLobsexcl) gPLobsexcl->Draw("l");
230     if (gPLexpexcl) {gPLexpexcl->SetLineStyle(2);gPLexpexcl->SetLineColor(2);}
231     if (gPLexpexcl) gPLexpexcl->Draw("l");
232     TLegend * leg = new TLegend(0.45,0.78,0.85,0.89);
233     leg->SetBorderSize(0);leg->SetFillColor(0);
234 auterman 1.9 if (gobsexcl) leg->AddEntry(gobsexcl,"Observed (CLs, TLimit)","l");
235     if (gexpexcl) leg->AddEntry(gexpexcl,"Expected (CLs, TLimit)","l");
236     if (gPLobsexcl) leg->AddEntry(gPLobsexcl,"Observed (PL, RooStat)","l");
237     if (gPLexpexcl) leg->AddEntry(gPLexpexcl,"Expected (PL, RooStat)","l");
238 auterman 1.8 leg->Draw();
239     c1->SaveAs("results/Exclusion_m0_m12.png");
240    
241 auterman 1.4 //plotTools->Area(h, Mzero, Mhalf, XsecOverObserved);
242     //plotTools->Area(h, Mzero, Mhalf, XsecOverExpected);
243 auterman 1.1
244 auterman 1.2
245 auterman 1.7 //-----------------------------------------------------------------------------------
246     c1->SetLogz(1);
247    
248     TGraph * mz500 = plotMasses->Line( MSquarkL, MGluino, Mzero, 500, 1);
249     TGraph * mh250 = plotMasses->Line( MSquarkL, MGluino, Mhalf, 250, 1);
250    
251 auterman 1.8 // cross-section in squark - gluino mass
252 auterman 1.7 TH2F*hxsec_qg = new TH2F("xsec_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; cross section [pb]",
253     60,200,1400,50,200,1200);
254     plotTools->Area(hxsec_qg, MSquarkL, MGluino, Xsection);
255     hxsec_qg->SetMinimum(0.01);
256     hxsec_qg->Draw("colz");
257     mz500->Draw();
258     mh250->Draw();
259     c1->SaveAs("results/Xsection_mSql_mGl.png");
260    
261 auterman 1.8 // Observed Limit in squark - gluino mass
262 auterman 1.7 TH2F*hobslimit_qg = new TH2F("obslimit_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Limit [pb]",
263     60,200,1400,50,200,1200);
264     plotTools->Area(hobslimit_qg, MSquarkL, MGluino, ObsXsecLimit);
265     hobslimit_qg->SetMinimum(0.01);
266     hobslimit_qg->Draw("colz");
267     c1->SaveAs("results/ObsLimit_mSql_mGl.png");
268    
269 auterman 1.8 // Expected Limit in squark - gluino mass
270 auterman 1.7 TH2F*hexplimit_qg = new TH2F("explimit_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Expected Limit [pb]",
271     60,200,1400,50,200,1200);
272     plotTools->Area(hexplimit_qg, MSquarkL, MGluino, ExpXsecLimit);
273     hexplimit_qg->SetMinimum(0.01);
274     hexplimit_qg->Draw("colz");
275     c1->SaveAs("results/ExpLimit_mSql_mGl.png");
276    
277 auterman 1.8 // Signal Acceptance in squark - gluino mass
278 auterman 1.7 TH2F*hsigacc_qg = new TH2F("sigacc_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; Signal Acceptance",
279     60,200,1400,50,200,1200);
280     plotTools->Area(hsigacc_qg, MSquarkL, MGluino, SignalAcceptance);
281     hsigacc_qg->SetMinimum(0.01);
282     hsigacc_qg->SetMaximum(1.0);
283     hsigacc_qg->Draw("colz");
284     c1->SaveAs("results/SigAcc_mSql_mGl.png");
285    
286 auterman 1.8 // Exp. Limit on Number of Signal Events in squark - gluino mass
287     c1->SetLogz(0);
288 auterman 1.7 TH2F*hexplimitnsig_qg = new TH2F("explimitnsig_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL exp. limit signal events [# ]",
289     60,200,1400,50,200,1200);
290     plotTools->Area(hexplimitnsig_qg, MSquarkL, MGluino, ExpNSignLimit);
291 auterman 1.8 //hexplimitnsig_qg->SetMinimum(0.01);
292 auterman 1.7 hexplimitnsig_qg->Draw("colz");
293     c1->SaveAs("results/ExpLimitOnNSig_mSql_mGl.png");
294 auterman 1.6
295 auterman 1.8 // Obs. Limit on Number of Signal Events in squark - gluino mass
296 auterman 1.7 TH2F*hobslimitnsig_qg = new TH2F("obslimitnsig_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL obs. limit signal events [# ]",
297     60,200,1400,50,200,1200);
298     plotTools->Area(hobslimitnsig_qg, MSquarkL, MGluino, ObsNSignLimit);
299 auterman 1.8 //hobslimitnsig_qg->SetMinimum(0.01);
300 auterman 1.7 hobslimitnsig_qg->Draw("colz");
301     c1->SaveAs("results/ObsLimitOnNSig_mSql_mGl.png");
302    
303     c1->SetLogz(0);
304 auterman 1.8 // Expected Exclusion in squark - gluino mass
305 auterman 1.7 TH2F*hexpexcl_qg = new TH2F("expexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Expected Exclusion",
306 auterman 1.2 60,200,1400,50,200,1200);
307 auterman 1.7 plotTools->Area(hexpexcl_qg, MSquarkL, MGluino, ExpExclusion);
308     hexpexcl_qg->Draw("colz");
309     c1->SaveAs("results/ExpExclusion_mSql_mGl.png");
310 auterman 1.2
311 auterman 1.8 // Observed Exclusion in squark - gluino mass
312 auterman 1.7 TH2F*hobsexcl_qg = new TH2F("obsexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
313     60,200,1400,50,200,1200);
314     plotTools->Area(hobsexcl_qg, MSquarkL, MGluino, ObsExclusion);
315 auterman 1.8 //std::vector<TGraph *> vobsexcl_qg = plotTools->GetContours(hobsexcl_qg);
316 auterman 1.7 hobsexcl_qg->Draw("colz");
317 auterman 1.8 //for (std::vector<TGraph *>::iterator g=vobsexcl_qg.begin();g!=vobsexcl_qg.end();++g){
318     // if (! *g) continue;
319     // // (*g)->Draw("l");
320     //}
321 auterman 1.7 c1->SaveAs("results/ObsExclusion_mSql_mGl.png");
322 auterman 1.2
323 auterman 1.9 // TestContours in M0 - M1/2
324     TH2F*texcl_qg = new TH2F("texcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
325     60,200,1400,50,200,1200);
326     TH2F*tPLobsexcl_qg=(TH2F*)texcl_qg->Clone();
327     plotTools->Area(tPLobsexcl_qg, MSquarkL, MGluino, PLObsExclusion);
328     //std::vector<TGraph*> contours_qg = plotTools->GetContours(hexpexcl_qg,3);
329     //std::vector<TGraph*> contours_qg = plotTools->GetContours(hobsexcl_qg,3);
330     std::vector<TGraph*> contours_qg = plotTools->GetContours(tPLobsexcl_qg,3);
331     //hPLexpexcl_qg
332     //hexcl_qg->Draw("colz");
333     //hexpexcl_qg->Draw("colz");
334     //hobsexcl_qg->Draw("colz");
335     tPLobsexcl_qg->Draw("colz");
336     int col_gl=kBlue-10;
337     for (std::vector<TGraph*>::iterator cont=contours_qg.begin(); cont!=contours_qg.end(); ++cont){
338     if (! *cont) continue;
339     double x, y;
340     (*cont)->GetPoint(0, x, y);
341     (*cont)->SetLineColor(col_gl);(*cont)->SetLineWidth(3);
342     (*cont)->Draw("l");
343     TLatex l; l.SetTextSize(0.04); l.SetTextColor(col_gl++);
344     char val[20];
345     sprintf(val,"%d",cont-contours_qg.begin());
346     l.DrawLatex(x,y,val);
347     }
348     c1->SaveAs("results/ExclusionTestContours_mSql_mGl.png");
349    
350 auterman 1.8 // Observed Exclusion in squark - gluino mass
351     TH2F*hPLobsexcl_qg = new TH2F("plobsexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
352     60,200,1400,50,200,1200);
353     plotTools->Area(hPLobsexcl_qg, MSquarkL, MGluino, PLObsExclusion);
354     hPLobsexcl_qg->Draw("colz");
355     c1->SaveAs("results/PL_ObsExclusion_mSql_mGl.png");
356    
357     // Exclusion in squark - gluino mass
358     TH2F*hexcl_qg = new TH2F("hexcl_qg",";m_{#tilde{q}} [GeV]; m_{#tilde{g}} [GeV]; 95% CL Observed Exclusion",
359     60,200,1400,50,200,1200);
360 auterman 1.9 TGraph * gexpexcl_qg = plotTools->GetContour(hexpexcl_qg,3,10);
361 auterman 1.8 if (gexpexcl_qg) gexpexcl_qg->SetLineStyle(2);
362 auterman 1.9 TGraph * gobsexcl_qg = plotTools->GetContour(hobsexcl_qg,3,6);
363 auterman 1.8 TH2F*hPLexpexcl_qg=(TH2F*)hexcl_qg->Clone();
364     plotTools->Area(hPLexpexcl_qg, Mzero, Mhalf, PLExpExclusion);
365 auterman 1.9 TGraph * gPLexpexcl_qg = 0;//plotTools->GetContour(hPLexpexcl_qg,3,1); gPLexpexcl_qg->SetLineStyle(2);gPLexpexcl_qg->SetLineColor(2);
366     TGraph * gPLobsexcl_qg = plotTools->GetContour(hPLobsexcl_qg,3,8); gPLobsexcl_qg->SetLineColor(2);
367 auterman 1.8 hexcl_qg->Draw("colz");
368 auterman 1.9 if (gobsexcl_qg) gobsexcl_qg->Draw("l");
369     if (gexpexcl_qg) gexpexcl_qg->Draw("l");
370     if (gPLobsexcl_qg) gPLobsexcl_qg->Draw("l");
371     if (gPLexpexcl_qg) gPLexpexcl_qg->Draw("l");
372 auterman 1.8 TLegend * leg_qg = new TLegend(0.45,0.78,0.85,0.89);
373     leg_qg->SetBorderSize(0);leg_qg->SetFillColor(0);
374 auterman 1.9 if (gobsexcl_qg) leg_qg->AddEntry(gobsexcl_qg,"Observed (CLs, TLimit)","l");
375     if (gexpexcl_qg) leg_qg->AddEntry(gexpexcl_qg,"Expected (CLs, TLimit)","l");
376     if (gPLobsexcl_qg) leg_qg->AddEntry(gPLobsexcl_qg,"Observed (PL, RooStat)","l");
377     if (gPLexpexcl_qg) leg_qg->AddEntry(gPLexpexcl_qg,"Expected (PL, RooStat)","l");
378 auterman 1.8 leg_qg->Draw();
379     c1->SaveAs("results/Exclusion_mSql_mGl.png");
380 auterman 1.1
381 auterman 1.2 //c1->SaveAs("plot.pdf");
382    
383    
384 auterman 1.7 //theApp.Run();
385 auterman 1.1 }
386    
387    
388     int main(int argc, char** argv)
389     {
390     return plot(argc, argv);
391     }