#include "TProfile3D.h" #include "TRandom3.h" void rebin(){ TProfile3D *prof = new TProfile3D("prof","prof",10,0,10,10,0,10,10,0,10); prof->Sumw2(); TRandom3 random; for (int ix = 1; ix <= prof->GetXaxis()->GetNbins(); ix++){ for (int iy = 1; iy <= prof->GetYaxis()->GetNbins(); iy++){ for (int iz = 1; iz <= prof->GetZaxis()->GetNbins(); iz++){ for (int i = 1; i <= 10; i++){ prof->Fill(prof->GetXaxis()->GetBinCenter(ix),prof->GetYaxis()->GetBinCenter(iy),prof->GetZaxis()->GetBinCenter(iz),random.Gaus(20,5)); } } } } TProfile3D *clone = (TProfile3D*) prof->Clone(); clone->Rebin3D(1,2,1); double profsum = 0; double clonesum = 0; cout<GetYaxis()->GetNbins(); i++){ cout<GetBinContent(5,i,5)<<" "; profsum += prof->GetBinContent(5,i,5); } cout<GetYaxis()->GetNbins(); i++){ cout<GetBinContent(5,i,5)<<" "; clonesum += clone->GetBinContent(5,i,5); } cout<