ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/IPHCalignment2/analysis/Layout.cpp
(Generate patch)

Comparing UserCode/IPHCalignment2/analysis/Layout.cpp (file contents):
Revision 1.1 by econte, Sun Nov 27 09:57:20 2011 UTC vs.
Revision 1.3 by econte, Mon Nov 28 13:18:09 2011 UTC

# Line 1 | Line 1
1   #include "Layout.h"
2 <
3 <
2 > #include <sstream>
3 > #include <TPaveText.h>
4 > #include <TLatex.h>
5  
6   void Layout::DrawInit()
7   {
8 <  gStyle->SetCanvasColor(0);
8 >  /*  gStyle->SetCanvasColor(0);
9    gStyle->SetCanvasBorderMode(0);
10    gStyle->SetCanvasBorderSize(3);
11  
# Line 69 | Line 70 | void Layout::DrawInit()
70    Double_t blue[NRGBs]  = { 0.51, 1.00, 0.12, 0.00, 0.00 };
71    TColor::CreateGradientColorTable(NRGBs, stops, red, green, blue, NCont);
72    gStyle->SetNumberContours(NCont);
73 <
73 >  */
74  
75   }
76  
76 struct HistoDescription
77 {
78  unsigned int linecolor;
79  std::string algoName;
80 };
81
82
77  
78   void Layout::Draw(const std::vector<HistoBlock>& histos,
79 <                  std::string& xlabel, float K, float MU, float SIG)
79 >                  const std::string& xlabel, float K, float MU, float SIG)
80   {
81 +  std::cout << "----------------- Draw : " << histos[0].histo->GetName() << std::endl;
82 +
83    // safety
84    if (histos.empty()) return;
85  
# Line 95 | Line 91 | void Layout::Draw(const std::vector<Hist
91    // SetLineColor
92    for (unsigned int i=0;i<histos.size();i++)
93    {
94 +    std::cout << "TEST : " << histos[i].linecolor << std::endl;
95      histos[i].histo->SetLineColor( histos[i].linecolor );
96    }
97  
# Line 113 | Line 110 | void Layout::Draw(const std::vector<Hist
110    float xmax = mystack->GetXaxis()->GetXmin();
111  
112    // Draw legend
113 <  TLegend* mylegend = new TLegend(0.17,0.72,0.43,0.85);
113 >  TLegend* mylegend = new TLegend(0.17,0.85-(0.04*histos.size()),0.33,0.85);
114    mylegend->SetFillColor(0);
115    for (unsigned int i=0;i<histos.size();i++)
116    {
# Line 121 | Line 118 | void Layout::Draw(const std::vector<Hist
118                         histos[i].algoName.c_str(),"l");
119    }
120    mylegend->Draw();
121 +  std::cout << "size = " << mylegend->GetTextSize() << std::endl;
122 +  std::cout << "font = " << mylegend->GetTextFont() << std::endl;
123 +
124 +  std::cout << mylegend->GetX1() << " " << mylegend->GetX2() << std::endl;
125 +  std::cout << mylegend->GetY1() << " " << mylegend->GetY2() << std::endl;
126 +
127 +  TPaveText* toto = new TPaveText(0.17,0.72,0.43,0.83);
128 +  toto->SetFillColor(2);
129 +  toto->SetTextFont(2);
130 +  toto->SetTextSize(0);
131 +  toto->AddText("toto");
132 +  toto->Draw();
133  
134    // To Fit
135 +  std::vector<double> sigmas;
136    for (unsigned int i=0;i<histos.size();i++)
137    {
138 <    TF1* fitter = new TF1(dummy().c_str(),dummy().c_str(),xmin,xmax);
138 >    TF1* fitter = new TF1(dummy().c_str(),"gaus",xmin,xmax);
139      fitter->SetParameter(0,K);
140      fitter->SetParameter(1,MU);
141      fitter->SetParameter(2,SIG);
142 <    histos[i].histo->Fit(fitter,"R+");
142 >    histos[i].histo->Fit(fitter,"0");
143 >    sigmas.push_back(fitter->GetParameter(2));
144 >  }
145 >
146 >  // Display sigmas
147 >  for (unsigned int i=0;i<sigmas.size();i++)
148 >  {
149 >    std::stringstream str;
150 >    str << "#sigma_{RECO} = ";
151 >    str << sigmas[i];
152 >    TLatex mytext(56,200,str.str().c_str());
153 >    std::cout << mycanvas->GetXlowNDC() << " " << mycanvas->GetWNDC() << std::endl;
154    }
155  
156    // Save
157    std::string filename = GetFileName(histos[0].histo->GetTitle());
158    mycanvas->SaveAs((filename+".gif").c_str());
159 +  mycanvas->SaveAs((filename+".root").c_str());
160 +
161   }
162  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines