hist2image.C: Create an image from a 2-D histogram and manipulate it
//Create an image from a 2-D histogram and manipulate it
//Author: Valeriy Onuchin
void hist2image()
{
TCanvas *canv = new TCanvas("image", "xygaus + xygaus(5) + xylandau(10)");
canv->ToggleEventStatus();
canv->SetRightMargin(0.2);
canv->SetLeftMargin(0.01);
canv->SetTopMargin(0.01);
canv->SetBottomMargin(0.01);
// histogram as image (hist taken from draw2dopt.C)
TImage *img = TImage::Create();
TF2 *f2 = new TF2("f2","(xygaus + xygaus(5) + xylandau(10))",-4,4,-4,4);
Double_t params[] = {130,-1.4,1.8,1.5,1, 150,2,0.5,-2,0.5, 3600,-2,0.7,-3,0.3};
f2->SetParameters(params);
TH2D *h2 = new TH2D("h2","xygaus + xygaus(5) + xylandau(10)",100,-4,4,100,-4,4);
h2->FillRandom("f2",40000);
img->SetImage((const Double_t *)h2->GetArray(), h2->GetNbinsX() + 2,
h2->GetNbinsY() + 2, gHistImagePalette);
img->Draw();
img->StartPaletteEditor();
}