@@ -67,13 +67,11 @@ def Plot(self, square, iPos):
6767 leg = CMS .cmsLeg (0.60 , 0.89 - 0.04 * 4 , 0.89 , 0.89 , textSize = 0.04 )
6868
6969 # Draw objects in one line
70- CMS .cmsDraw (self .bkg , "hist" , fcolor = ROOT .kAzure + 2 , alpha = 0.5 )
71- CMS .cmsDraw (self .signal , "hist" , fcolor = ROOT .kRed + 1 , alpha = 0.5 )
70+ stack = ROOT .THStack ("stack" , "Stacked" )
71+ leg .AddEntry (self .data , "Data" , "lp" )
72+ CMS .cmsDrawStack (stack , leg , {"Background" : self .bkg , "Signal" : self .signal })
7273 CMS .cmsDraw (self .data , "P" , mcolor = ROOT .kBlack )
7374
74- leg .AddEntry (self .data , "Data" , "lp" )
75- leg .AddEntry (self .bkg , "Background" , "f" )
76- leg .AddEntry (self .signal , "Signal" , "f" )
7775
7876 # Takes care of fixing overlay and closing object
7977 CMS .SaveCanvas (canv , os .path .join (self .outputPath , canv_name + ".pdf" ))
@@ -98,20 +96,18 @@ def Plot(self, square, iPos):
9896
9997 leg = CMS .cmsLeg (0.60 , 0.89 - 0.05 * 5 , 0.89 , 0.89 , textSize = 0.05 )
10098 leg .AddEntry (self .data , "Data" , "lp" )
101- leg .AddEntry (self .bkg , "Background" , "f" )
102- leg .AddEntry (self .signal , "Signal" , "f" )
10399
104100 CMS .cmsHeader (leg , "With title" , textSize = 0.05 )
105101
106- CMS . cmsDraw ( self . bkg_tot , "hist " , fcolor = ROOT . kRed + 1 , alpha = 0.5 )
107- CMS .cmsDraw ( self .bkg , "hist" , fcolor = ROOT . kAzure + 2 , alpha = 0.9 )
102+ stack = ROOT . THStack ( "stack " , "Stacked" )
103+ CMS .cmsDrawStack ( stack , leg , { "Background" : self .bkg , "Signal" : self . signal } )
108104 CMS .cmsDraw (self .data , "P" , mcolor = ROOT .kBlack )
109105
110106 CMS .fixOverlay ()
111107
112108 dicanv .cd (2 )
113109 leg_ratio = CMS .cmsLeg (
114- 0.17 , 0.97 - 0.05 * 5 , 0.35 , 0.97 , textSize = 0.05 , columns = 2
110+ 0.67 , 0.97 - 0.05 * 5 , 0.85 , 0.97 , textSize = 0.05 , columns = 2
115111 )
116112 # how alternative way to pass style options
117113 style = {"style" : "hist" , "lcolor" : ROOT .kAzure + 2 , "lwidth" : 2 , "fstyle" : 0 }
@@ -156,7 +152,6 @@ def Plot2D(self, square, iPos):
156152
157153 CMS .SaveCanvas (canv , os .path .join (self .outputPath , canv_name + ".pdf" ))
158154
159-
160155def main ():
161156 plotter = Plotter ()
162157 plotter .Plot (square = CMS .kSquare , iPos = 0 )
0 commit comments