ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/dhidas/OSUAnalysis/Tools/scripts/add_text.C
Revision: 1.1.1.1 (vendor branch)
Committed: Thu Dec 1 16:28:48 2011 UTC (13 years, 5 months ago) by dhidas
Content type: text/plain
Branch: dhidas, MAIN
CVS Tags: START, HEAD
Changes since 1.1: +0 -0 lines
Log Message:
osu copy modified

File Contents

# Content
1 //
2 // 1 Jul 2010
3 //
4 // Helper code to add texts and legend to reliso fit plots.
5 // Used in:
6 // fit_data_allj_linear.C
7 // fit_data_allj_expo.C
8 //
9 //----------------------------------------------------------------
10
11 void add_cms_label(double intlumi) {
12 add_cms_label(intlumi, "");
13 }
14
15 void add_cms_label(double intlumi, string njet) {
16
17 // TPaveText * mytext = new TPaveText(0.6,0.83,0.93,0.93,"NDC");
18 TPaveText * mytext = new TPaveText(0.3, 0.8, 0.6, 0.93, "NDC");
19 mytext->AddText("CMS Preliminary");
20 mytext->AddText(Form("%.1f pb^{-1} at #sqrt{s} = 7 TeV", intlumi));
21 if (njet != "") {
22 if (njet.find('mj') != string::npos) {
23 string thisJet = njet.substr(njet.find('mj') - 1, 1);
24 mytext->AddText(Form("e+jets, N_{jets}#geq %sj", thisJet.c_str()));
25 cout << "thisjet " << thisJet << endl;
26 }
27 else if(njet.find('orMoreJets') != string::npos){
28 string thisJet = njet.substr(njet.find('orMoreJets') - 1, 1);
29 mytext->AddText(Form("e+jets, N_{jets}#geq %sj", thisJet.c_str()));
30 cout << "thisjet " << thisJet << endl;
31 }
32 else {
33 mytext->AddText(Form("e+jets, N_{jets} = %s", njet.c_str()));
34 }
35 }
36 // mytext->SetFillColor(0);
37 mytext->SetFillStyle(0);
38 mytext->SetBorderSize(0);
39 mytext->SetTextFont(42);
40 mytext->SetTextAlign(13);
41 mytext->Draw();
42
43 }
44
45 void add_fit_res(double Fit_From, double chi2, double ndf) {
46
47 // TPaveText *mt2=new TPaveText(0.6,0.7,0.93,0.8,"NDC");
48 TPaveText *mt2 = new TPaveText(0.64, 0.8, 0.93, 0.93, "NDC");
49 mt2->AddText(Form("Fit Range: %0.1f-1.6", Fit_From));
50 mt2->AddText(Form("#chi^{2}/N_{dof} = %.2f/%.0f", chi2, ndf));
51 mt2->SetBorderSize(0);
52 // mt2->SetFillColor(0);
53 mt2->SetFillStyle(0);
54 mt2->SetTextFont(42);
55 mt2->SetTextAlign(13);
56 mt2->Draw();
57
58 }
59
60 void add_legend(string func = "pol1") {
61
62 // legend
63 // TLegend *leg = new TLegend( 0.6,0.33,0.9,0.66 );
64 // TLegend *leg = new TLegend( 0.64,0.35,0.9,0.75 );
65 TLegend *leg = new TLegend(0.64, 0.4, 0.9, 0.9);
66
67 // leg->SetFillColor(0);
68 leg->SetFillStyle(0);
69 leg->SetBorderSize(0);
70 leg->SetTextFont(42);
71
72 // Here I define coloured lines for use in the legend
73 TF1 *blue = new TF1("blue", "pol0", 0, 1);
74 TF1 *red = new TF1("red", "pol0", 0, 1);
75
76 blue->SetLineColor(kBlue);
77 red->SetLineColor(kRed);
78
79 red->SetLineWidth(2);
80 blue->SetLineWidth(2);
81
82 blue->SetLineStyle(kDashed);
83
84 // Add entry to legend
85 leg->AddEntry(data, "Data", "LP");
86 if (func == "pol1")
87 leg->AddEntry(red, "Linear Fit", "l");
88 else if (func == "expo")
89 leg->AddEntry(red, "Exponenetial Fit", "l");
90 else if (func == "gaus")
91 leg->AddEntry(red, "Gaussian Fit", "l");
92 leg->AddEntry(blue, "Extrapolation", "l");
93 leg->AddEntry(tt, "t#bar{t}", "F");
94 /// leg->AddEntry(stop, "Single-Top", "F");
95 leg->AddEntry(wj, "W#rightarrowl#nu", "F");
96 leg->AddEntry(zj, "Z/#gamma*#rightarrowl^{+}l^{-}", "F");
97 leg->AddEntry(QCD, "QCD & #gamma+jets", "F");
98 leg->Draw();
99
100 }
101
102 void add_legend_nofit() {
103
104 // legend
105 TLegend *leg = new TLegend(0.6, 0.4 + 0.15, 0.9, 0.78 + 0.1);
106 // leg->SetFillColor(0);
107 leg->SetFillStyle(0);
108 leg->SetBorderSize(0);
109 leg->SetTextFont(42);
110
111 // Add entry to legend
112 leg->AddEntry(data, "Data", "LP");
113 leg->AddEntry(tt, "t#bar{t}", "F");
114 // leg->AddEntry(stop, "Single-top", "F");
115 leg->AddEntry(wj, "W#rightarrowl#nu", "F");
116 leg->AddEntry(zj, "Z/#gamma*#rightarrowl^{+}l^{-}", "F");
117 leg->AddEntry(QCD, "QCD & #gamma+jets", "F");
118 leg->Draw();
119
120 }
121