ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/wangdy/sys/rootlogon.C
Revision: 1.4
Committed: Tue Jun 30 08:59:19 2009 UTC (15 years, 10 months ago) by wangdy
Content type: text/plain
Branch: MAIN
Changes since 1.3: +91 -1 lines
Log Message:
add mitstyle and some style functions

File Contents

# User Rev Content
1 wangdy 1.1 // Dayong's rootlogon file
2     //
3 wangdy 1.2 // $Log: rootlogon.C,v $
4 wangdy 1.4 // Revision 1.3 2009/06/26 10:13:31 wangdy
5     // first import ildstyle; add yastyle and ildstyle directly into root logon
6     //
7 wangdy 1.3 // Revision 1.2 2008/03/11 13:32:26 wangdy
8     // some old modifications to deal with styles using title
9     //
10 wangdy 1.2 // Revision 1.1 2008/01/18 10:58:00 wangdy
11     // first import several root style related scripts
12     //
13 wangdy 1.1 //
14    
15     {
16     //
17     // ATLAS stylebased on a style file from BaBar
18     //
19    
20     //.. style from RooLogon.C in workdir
21 wangdy 1.3 TStyle *atlasStyle= new TStyle("atlasStyle","Atlas style");
22 wangdy 1.1
23     // use plain black on white colors
24     Int_t icol=0;
25     atlasStyle->SetFrameBorderMode(icol);
26 wangdy 1.3 atlasStyle->SetFrameFillColor(icol);
27 wangdy 1.1 atlasStyle->SetCanvasBorderMode(icol);
28     atlasStyle->SetPadBorderMode(icol);
29     atlasStyle->SetPadColor(icol);
30     atlasStyle->SetCanvasColor(icol);
31     atlasStyle->SetStatColor(icol);
32     //atlasStyle->SetFillColor(icol);
33    
34     // set the paper & margin sizes
35     atlasStyle->SetPaperSize(20,26);
36 wangdy 1.2
37     // with title:0.07 ;no title:0.05
38     atlasStyle->SetPadTopMargin(0.07);
39 wangdy 1.1 atlasStyle->SetPadRightMargin(0.05);
40 wangdy 1.2 // with title:0.14 ;no title:0.16
41     atlasStyle->SetPadBottomMargin(0.14);
42 wangdy 1.1 atlasStyle->SetPadLeftMargin(0.12);
43    
44     // use large fonts
45     //Int_t font=72;
46     Int_t font=42;
47     Double_t tsize=0.05;
48     atlasStyle->SetTextFont(font);
49    
50    
51     atlasStyle->SetTextSize(tsize);
52     atlasStyle->SetLabelFont(font,"x");
53     atlasStyle->SetTitleFont(font,"x");
54     atlasStyle->SetLabelFont(font,"y");
55     atlasStyle->SetTitleFont(font,"y");
56     atlasStyle->SetLabelFont(font,"z");
57     atlasStyle->SetTitleFont(font,"z");
58    
59     atlasStyle->SetLabelSize(tsize,"x");
60     atlasStyle->SetTitleSize(tsize,"x");
61     atlasStyle->SetLabelSize(tsize,"y");
62     atlasStyle->SetTitleSize(tsize,"y");
63     atlasStyle->SetLabelSize(tsize,"z");
64     atlasStyle->SetTitleSize(tsize,"z");
65    
66    
67     //use bold lines and markers
68     atlasStyle->SetMarkerStyle(20);
69     atlasStyle->SetMarkerSize(1.2);
70     atlasStyle->SetHistLineWidth(2.);
71     atlasStyle->SetLineStyleString(2,"[12 12]"); // postscript dashes
72    
73     //get rid of X error bars and y error bar caps
74     //atlasStyle->SetErrorX(0.001);
75    
76     //do not display any of the standard histogram decorations
77 wangdy 1.2 atlasStyle->SetOptTitle(1);
78     atlasStyle->SetTitleFillColor(10);
79 wangdy 1.1 //atlasStyle->SetOptStat(1111);
80     atlasStyle->SetOptStat(0);
81     //atlasStyle->SetOptFit(1111);
82     atlasStyle->SetOptFit(0);
83    
84     // put tick marks on top and RHS of plots
85     atlasStyle->SetPadTickX(1);
86     atlasStyle->SetPadTickY(1);
87    
88 wangdy 1.2 //gROOT->SetStyle("Plain");
89 wangdy 1.1
90     //gStyle->SetPadTickX(1);
91     //gStyle->SetPadTickY(1);
92    
93    
94     //--------------------------
95     // Here is CMS ptdr style
96     //-----------------------
97    
98     TStyle *tdrStyle = new TStyle("tdrStyle","Style for P-TDR");
99    
100     // For the canvas:
101     tdrStyle->SetCanvasBorderMode(0);
102     tdrStyle->SetCanvasColor(kWhite);
103     tdrStyle->SetCanvasDefH(600); //Height of canvas
104     tdrStyle->SetCanvasDefW(600); //Width of canvas
105     tdrStyle->SetCanvasDefX(0); //POsition on screen
106     tdrStyle->SetCanvasDefY(0);
107    
108     // For the Pad:
109     tdrStyle->SetPadBorderMode(0);
110     // tdrStyle->SetPadBorderSize(Width_t size = 1);
111     tdrStyle->SetPadColor(kWhite);
112     tdrStyle->SetPadGridX(false);
113     tdrStyle->SetPadGridY(false);
114     tdrStyle->SetGridColor(0);
115     tdrStyle->SetGridStyle(3);
116     tdrStyle->SetGridWidth(1);
117    
118     // For the frame:
119     tdrStyle->SetFrameBorderMode(0);
120     tdrStyle->SetFrameBorderSize(1);
121     tdrStyle->SetFrameFillColor(0);
122     tdrStyle->SetFrameFillStyle(0);
123     tdrStyle->SetFrameLineColor(1);
124     tdrStyle->SetFrameLineStyle(1);
125     tdrStyle->SetFrameLineWidth(1);
126    
127     // For the histo:
128     // tdrStyle->SetHistFillColor(1);
129     // tdrStyle->SetHistFillStyle(0);
130     tdrStyle->SetHistLineColor(1);
131     tdrStyle->SetHistLineStyle(0);
132     tdrStyle->SetHistLineWidth(1);
133     // tdrStyle->SetLegoInnerR(Float_t rad = 0.5);
134     // tdrStyle->SetNumberContours(Int_t number = 20);
135    
136     tdrStyle->SetEndErrorSize(2);
137     tdrStyle->SetMarkerStyle(20);
138     tdrStyle->SetErrorX(0.);
139    
140     tdrStyle->SetMarkerStyle(20);
141    
142     //For the fit/function:
143     tdrStyle->SetOptFit(1);
144     tdrStyle->SetFitFormat("5.4g");
145     tdrStyle->SetFuncColor(2);
146     tdrStyle->SetFuncStyle(1);
147     tdrStyle->SetFuncWidth(1);
148    
149     //For the date:
150     tdrStyle->SetOptDate(0);
151     // tdrStyle->SetDateX(Float_t x = 0.01);
152     // tdrStyle->SetDateY(Float_t y = 0.01);
153    
154     // For the statistics box:
155     tdrStyle->SetOptFile(0);
156     tdrStyle->SetOptStat(0); // To display the mean and RMS: SetOptStat("mr");
157     tdrStyle->SetStatColor(kWhite);
158     tdrStyle->SetStatFont(42);
159     tdrStyle->SetStatFontSize(0.025);
160     tdrStyle->SetStatTextColor(1);
161     tdrStyle->SetStatFormat("6.4g");
162     tdrStyle->SetStatBorderSize(1);
163     tdrStyle->SetStatH(0.1);
164     tdrStyle->SetStatW(0.15);
165     // tdrStyle->SetStatStyle(Style_t style = 1001);
166     // tdrStyle->SetStatX(Float_t x = 0);
167     // tdrStyle->SetStatY(Float_t y = 0);
168    
169     // Margins:
170     tdrStyle->SetPadTopMargin(0.05);
171     tdrStyle->SetPadBottomMargin(0.13);
172     tdrStyle->SetPadLeftMargin(0.16);
173     tdrStyle->SetPadRightMargin(0.02);
174    
175     // For the Global title:
176    
177     tdrStyle->SetOptTitle(0);
178     tdrStyle->SetTitleFont(42);
179     tdrStyle->SetTitleColor(1);
180     tdrStyle->SetTitleTextColor(1);
181     tdrStyle->SetTitleFillColor(10);
182     tdrStyle->SetTitleFontSize(0.05);
183     // tdrStyle->SetTitleH(0); // Set the height of the title box
184     // tdrStyle->SetTitleW(0); // Set the width of the title box
185     // tdrStyle->SetTitleX(0); // Set the position of the title box
186     // tdrStyle->SetTitleY(0.985); // Set the position of the title box
187     // tdrStyle->SetTitleStyle(Style_t style = 1001);
188     // tdrStyle->SetTitleBorderSize(2);
189    
190     // For the axis titles:
191    
192     tdrStyle->SetTitleColor(1, "XYZ");
193     tdrStyle->SetTitleFont(42, "XYZ");
194     tdrStyle->SetTitleSize(0.06, "XYZ");
195     // tdrStyle->SetTitleXSize(Float_t size = 0.02); // Another way to set the size?
196     // tdrStyle->SetTitleYSize(Float_t size = 0.02);
197     tdrStyle->SetTitleXOffset(0.9);
198     tdrStyle->SetTitleYOffset(1.25);
199     // tdrStyle->SetTitleOffset(1.1, "Y"); // Another way to set the Offset
200    
201     // For the axis labels:
202    
203     tdrStyle->SetLabelColor(1, "XYZ");
204     tdrStyle->SetLabelFont(42, "XYZ");
205     tdrStyle->SetLabelOffset(0.007, "XYZ");
206     tdrStyle->SetLabelSize(0.05, "XYZ");
207    
208     // For the axis:
209    
210     tdrStyle->SetAxisColor(1, "XYZ");
211     tdrStyle->SetStripDecimals(kTRUE);
212     tdrStyle->SetTickLength(0.03, "XYZ");
213     tdrStyle->SetNdivisions(510, "XYZ");
214     tdrStyle->SetPadTickX(1); // To get tick marks on the opposite side of the frame
215     tdrStyle->SetPadTickY(1);
216    
217     // Change for log plots:
218     tdrStyle->SetOptLogx(0);
219     tdrStyle->SetOptLogy(0);
220     tdrStyle->SetOptLogz(0);
221    
222     // Postscript options:
223     // tdrStyle->SetPaperSize(20.,20.);
224     // tdrStyle->SetLineScalePS(Float_t scale = 3);
225     // tdrStyle->SetLineStyleString(Int_t i, const char* text);
226     // tdrStyle->SetHeaderPS(const char* header);
227     // tdrStyle->SetTitlePS(const char* pstitle);
228    
229     // tdrStyle->SetBarOffset(Float_t baroff = 0.5);
230     // tdrStyle->SetBarWidth(Float_t barwidth = 0.5);
231     // tdrStyle->SetPaintTextFormat(const char* format = "g");
232     // tdrStyle->SetPalette(Int_t ncolors = 0, Int_t* colors = 0);
233     // tdrStyle->SetTimeOffset(Double_t toffset);
234     // tdrStyle->SetHistMinimumZero(kTRUE);
235    
236 wangdy 1.3 //----------------------------------------------
237     // Here is the ild style
238     //--------------------------------------
239    
240     //ild TStyle
241     TStyle* ildStyle = new TStyle("ildStyle", "ILD Style");
242    
243     //set the background color to white
244     ildStyle->SetFillColor(10);
245     ildStyle->SetFrameFillColor(10);
246     ildStyle->SetCanvasColor(10);
247     ildStyle->SetPadColor(10);
248     ildStyle->SetTitleFillColor(0);
249     ildStyle->SetStatColor(10);
250    
251     //dont put a colored frame around the plots
252     ildStyle->SetFrameBorderMode(0);
253     ildStyle->SetCanvasBorderMode(0);
254     ildStyle->SetPadBorderMode(0);
255     ildStyle->SetLegendBorderSize(0);
256    
257     //use the primary color palette
258     ildStyle->SetPalette(1,0);
259    
260     //set the default line color for a histogram to be black
261     ildStyle->SetHistLineColor(kBlack);
262    
263     //set the default line color for a fit function to be red
264     ildStyle->SetFuncColor(kRed);
265    
266     //make the axis labels black
267     ildStyle->SetLabelColor(kBlack,"xyz");
268    
269     //set the default title color to be black
270     ildStyle->SetTitleColor(kBlack);
271    
272     //set the margins
273     ildStyle->SetPadBottomMargin(0.18);
274     ildStyle->SetPadTopMargin(0.08);
275     ildStyle->SetPadRightMargin(0.08);
276     ildStyle->SetPadLeftMargin(0.17);
277    
278     //set axis label and title text sizes
279     ildStyle->SetLabelFont(42,"xyz");
280     ildStyle->SetLabelSize(0.06,"xyz");
281     ildStyle->SetLabelOffset(0.015,"xyz");
282     ildStyle->SetTitleFont(42,"xyz");
283     ildStyle->SetTitleSize(0.07,"xyz");
284     ildStyle->SetTitleOffset(1.1,"yz");
285     ildStyle->SetTitleOffset(1.0,"x");
286     ildStyle->SetStatFont(42);
287     ildStyle->SetStatFontSize(0.07);
288     ildStyle->SetTitleBorderSize(0);
289     ildStyle->SetStatBorderSize(0);
290     ildStyle->SetTextFont(42);
291    
292     //set line widths
293     ildStyle->SetFrameLineWidth(2);
294     ildStyle->SetFuncWidth(2);
295     ildStyle->SetHistLineWidth(2);
296    
297     //set the number of divisions to show
298     ildStyle->SetNdivisions(506, "xy");
299    
300     //turn off xy grids
301     ildStyle->SetPadGridX(0);
302     ildStyle->SetPadGridY(0);
303    
304     //set the tick mark style
305     ildStyle->SetPadTickX(1);
306     ildStyle->SetPadTickY(1);
307    
308     //turn off stats
309     ildStyle->SetOptStat(0);
310     ildStyle->SetOptFit(0);
311    
312     //marker settings
313     ildStyle->SetMarkerStyle(20);
314     ildStyle->SetMarkerSize(0.7);
315     ildStyle->SetLineWidth(2);
316    
317     //------------------------
318     // yastyle
319     //-----------------------
320    
321     TStyle* yaStyle = new TStyle("yaStyle", "YA Style");
322     yaStyle->SetFillColor(0);
323     yaStyle->SetOptDate();
324     yaStyle->SetOptStat(111110);
325     yaStyle->SetOptFit(1111);
326     yaStyle->SetPadTickX(1);
327     yaStyle->SetPadTickY(1);
328     yaStyle->SetMarkerSize(0.5);
329     yaStyle->SetMarkerStyle(8);
330     yaStyle->SetGridStyle(3);
331     yaStyle->SetPaperSize(TStyle::kA4);
332     yaStyle->SetStatW(0.35); // width of statistics box; default is 0.19
333     yaStyle->SetStatH(0.20); // height of statistics box; default is 0.1
334     yaStyle->SetStatFormat("6.4g"); // leave default format for now
335     yaStyle->SetTitleSize(0.055, ""); // size for pad title; default is 0.02
336     // Really big; useful for talks.
337     yaStyle->SetTitleSize(0.1, ""); // size for pad title; default is 0.02
338     yaStyle->SetLabelSize(0.05, "XYZ"); // size for axis labels; default is 0.04
339     yaStyle->SetStatFontSize(0.06); // size for stat. box
340     yaStyle->SetTitleFont(32, "XYZ"); // times-bold-italic font (p. 153) for axes
341     yaStyle->SetTitleFont(32, ""); // same for pad title
342     yaStyle->SetLabelFont(32, "XYZ"); // same for axis labels
343     yaStyle->SetStatFont(32); // same for stat. box
344     yaStyle->SetLabelOffset(0.006, "Y"); // default is 0.005
345    
346    
347 wangdy 1.4 //------------------------
348     // MIT Style
349     //-----------------------
350    
351     TStyle *MITStyle = new TStyle("mitStyle","The Perfect Style for Plots ;-)");
352    
353     // Canvas
354     MITStyle->SetCanvasColor (0);
355     MITStyle->SetCanvasBorderSize(10);
356     MITStyle->SetCanvasBorderMode(0);
357     MITStyle->SetCanvasDefH (700);
358     MITStyle->SetCanvasDefW (700);
359     MITStyle->SetCanvasDefX (100);
360     MITStyle->SetCanvasDefY (100);
361    
362     // Pads
363     MITStyle->SetPadColor (0);
364     MITStyle->SetPadBorderSize (10);
365     MITStyle->SetPadBorderMode (0);
366     MITStyle->SetPadBottomMargin(0.13);
367     MITStyle->SetPadTopMargin (0.08);
368     MITStyle->SetPadLeftMargin (0.15);
369     MITStyle->SetPadRightMargin (0.05);
370     MITStyle->SetPadGridX (0);
371     MITStyle->SetPadGridY (0);
372     MITStyle->SetPadTickX (0);
373     MITStyle->SetPadTickY (0);
374    
375     // Frames
376     MITStyle->SetFrameFillStyle ( 0);
377     MITStyle->SetFrameFillColor ( 0);
378     MITStyle->SetFrameLineColor ( 1);
379     MITStyle->SetFrameLineStyle ( 0);
380     MITStyle->SetFrameLineWidth ( 1);
381     MITStyle->SetFrameBorderSize(10);
382     MITStyle->SetFrameBorderMode( 0);
383    
384     // Histograms
385     MITStyle->SetHistFillColor(2);
386     MITStyle->SetHistFillStyle(0);
387     MITStyle->SetHistLineColor(1);
388     MITStyle->SetHistLineStyle(0);
389     MITStyle->SetHistLineWidth(2);
390     MITStyle->SetNdivisions(505);
391    
392     // Functions
393     MITStyle->SetFuncColor(1);
394     MITStyle->SetFuncStyle(0);
395     MITStyle->SetFuncWidth(2);
396    
397     // Various
398     MITStyle->SetMarkerStyle(20);
399     MITStyle->SetMarkerColor(kBlack);
400     MITStyle->SetMarkerSize (1.2);
401    
402     MITStyle->SetTitleSize (0.055,"X");
403     MITStyle->SetTitleOffset(0.900,"X");
404     MITStyle->SetLabelOffset(0.005,"X");
405     MITStyle->SetLabelSize (0.050,"X");
406     MITStyle->SetLabelFont (42 ,"X");
407    
408     MITStyle->SetStripDecimals(kFALSE);
409    
410     MITStyle->SetTitleSize (0.055,"Y");
411     MITStyle->SetTitleOffset(1.300,"Y");
412     MITStyle->SetLabelOffset(0.010,"Y");
413     MITStyle->SetLabelSize (0.050,"Y");
414     MITStyle->SetLabelFont (42 ,"Y");
415    
416     MITStyle->SetTextSize (0.055);
417     MITStyle->SetTextFont (42);
418    
419     MITStyle->SetStatFont (42);
420     MITStyle->SetTitleFont (42);
421     MITStyle->SetTitleFont (42,"X");
422     MITStyle->SetTitleFont (42,"Y");
423    
424     MITStyle->SetPalette (1);
425    
426     MITStyle->SetOptStat (0);
427     //MITStyle->SetOptStat (111111);
428    
429    
430 wangdy 1.3
431    
432     // // for CMSSW
433     // gSystem->Load("libFWCoreFWLite.so"); //for CMSSW >=0.8.0
434     // AutoLibraryLoader::enable();
435 wangdy 1.1
436     // default style
437 wangdy 1.2 // gROOT->SetStyle("Plain");
438     // gStyle->SetOptStat(1111111);
439     // gStyle->SetPadTickX(1);
440     // gStyle->SetPadTickY(1);
441 wangdy 1.1
442     // activate these two style following way
443 wangdy 1.4 // gROOT->SetStyle("atlasStyle");
444 wangdy 1.1 // gROOT->SetStyle("tdrStyle");
445 wangdy 1.3 // gROOT->SetStyle("ildStyle");
446     // gROOT->SetStyle("yaStyle");
447 wangdy 1.4 gROOT->SetStyle("mitStyle");
448 wangdy 1.2 gROOT->ForceStyle();
449 wangdy 1.1
450 wangdy 1.4 // load various style functions
451     gInterpreter->LoadMacro("styleFunc.C");
452    
453 wangdy 1.1 }
454