Re: [ROOT] TH1D::Smooth is producing spikes

From: Rene Brun (Rene.Brun@cern.ch)
Date: Wed Dec 04 2002 - 10:58:41 MET


Hi Andreas,

I have fixed this problem in the development version in CVS.
Thanks for providing this simple test case.

Rene Brun

On Tue, 3 Dec 2002, Andreas Zoglauer wrote:

> 
> Hello!
> 
> Actually I thought a function called Smooth makes a histogram smoother.
> But in the following example it generates spikes!
> 
> Is this intended or do I something wrong?
> 
> Thanks,
> Andreas
> 
> 
> PS: I am using Root v3.03/09 on SuSE 8.0.
> 
> 
> 
> /*--------------------------------------------------------------------*/
> 
> Smooth() {
>   TH1D* H = new TH1D("H", "H", 56, 1, 56);
> 
>   H->SetBinContent(1, 132.0);
>   H->SetBinContent(2, 134.0);
>   H->SetBinContent(3, 134.0);
>   H->SetBinContent(4, 134.0);
>   H->SetBinContent(5, 135.0);
>   H->SetBinContent(6, 136.0);
>   H->SetBinContent(7, 135.0);
>   H->SetBinContent(8, 135.0);
>   H->SetBinContent(9, 135.0);
>   H->SetBinContent(10, 134.0);
>   H->SetBinContent(11, 135.0);
>   H->SetBinContent(12, 134.0);
>   H->SetBinContent(13, 135.0);
>   H->SetBinContent(14, 135.0);
>   H->SetBinContent(15, 136.0);
>   H->SetBinContent(16, 136.0);
>   H->SetBinContent(17, 135.0);
>   H->SetBinContent(18, 135.0);
>   H->SetBinContent(19, 136.0);
>   H->SetBinContent(20, 136.0);
>   H->SetBinContent(21, 135.0);
>   H->SetBinContent(22, 136.0);
>   H->SetBinContent(23, 136.0);
>   H->SetBinContent(24, 136.0);
>   H->SetBinContent(25, 135.0);
>   H->SetBinContent(26, 135.0);
>   H->SetBinContent(27, 135.0);
>   H->SetBinContent(28, 136.0);
>   H->SetBinContent(29, 136.0);
>   H->SetBinContent(30, 135.0);
>   H->SetBinContent(31, 136.0);
>   H->SetBinContent(32, 134.0);
>   H->SetBinContent(33, 135.0);
>   H->SetBinContent(34, 134.0);
>   H->SetBinContent(35, 137.0);
>   H->SetBinContent(36, 137.0);
>   H->SetBinContent(37, 135.0);
>   H->SetBinContent(38, 136.0);
>   H->SetBinContent(39, 135.0);
>   H->SetBinContent(40, 137.0);
>   H->SetBinContent(41, 134.0);
>   H->SetBinContent(42, 134.0);
>   H->SetBinContent(43, 134.0);
>   H->SetBinContent(44, 136.0);
>   H->SetBinContent(45, 135.0);
>   H->SetBinContent(46, 136.0);
>   H->SetBinContent(47, 134.0);
>   H->SetBinContent(48, 135.0);
>   H->SetBinContent(49, 134.0);
>   H->SetBinContent(50, 135.0);
>   H->SetBinContent(51, 135.0);
>   H->SetBinContent(52, 135.0);
>   H->SetBinContent(53, 133.0);
>   H->SetBinContent(54, 134.0);
>   H->SetBinContent(55, 134.0);
>   H->SetBinContent(56, 134.0);
> 
>   TCanvas* C = new TCanvas("Orig", "Orig", 0, 0, 500, 300);
>   H->Draw();
> 
>   TCanvas* C = new TCanvas("Smoothed", "Smoothed", 0, 330, 500, 300);
>   TH1D* H2 = H->Clone();
>   H2->Smooth(2);
>   H2->Draw();
> }
> 
> /*--------------------------------------------------------------------*/
> 
> 
> 



This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:22 MET