[ROOT] TH1D::Smooth is producing spikes

From: Andreas Zoglauer (zog@mpe.mpg.de)
Date: Tue Dec 03 2002 - 13:26:45 MET


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