Hi Georges, The only thing that I can suggest is the following: - Assuming that TH1F *hold is a pointer to your old histogram with the bad binning. - Create a new histogram, TH1F *hnew = new TH1F("hnew","..",nbins,xmin,xmax); //your own binning - Fill hnew with a loop like Int_t nbinsold = hold->GetXaxis()->GetNbins(); for (Int_t bin=1;bin<=nbinsold;bin++) { Double_t w = hold->GetBinContent(bin); Double_t x = hold->GetXaxis()->GetBinCenter(bin); hnew->Fill(x,w); } Rene Brun Georges Lobo wrote: > > Maybe I can explain my problem a little bit. I have to divide 2 histograms > to compute a cross section. The problem is that the binnings are > differents (bins limits don't match). I was thinking about a simple > algorithm using only the bin width. Of course this method is valid with a > flat distribution but in my case I have a lot of bins and the variations > from bin to bin are quite small. But it is possible I think also that the > algorithm can do it in the right way using derivatives ? > > lobo@irmm.jrc.be > > > Hi Georges, > > > > Did you look in TH1::Rebin ? This function accepts only rebinning 2, 3, etc bins > > into one bin. Rebinning with a specified bin size is only possible if you can > > make some assumptions on the original histogram (flat distribution inside one > > bin). I never had requests for this mode so far. > > > > Rene Brun > > > > Georges Lobo wrote: > > > > > > Hello all, > > > I was wondering if there was a macro ready-to-use to rebin an histogram > > > using a defined bin definition, which could imply to deal with frctions of > > > bins. > > > Thanks in advance > > > Georges Lobo > >
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:51 MET