{ TNtuple* nt = new TNtuple("nt","","a:b:c"); TCanvas *Can = new TCanvas("Can","Can",200,10,600,800); Can->Divide(2,2); Double_t x[16] = {1.00, 2.00, 6.00, 7.00, 3.00, 10.00, 0.20, 5.55, 20.50, 9.75, 1.50, 8.00, 5.00, 0.95, 3.85, 8.70}; Double_t y[16] = {1.00, 2.00, 6.00, 7.00, 3.00, 10.00, 0.20, 5.55, 20.50, 9.75, 1.50, 8.00, 5.00, 0.95, 3.85, 8.70}; Double_t z[16] = {0.001, 2.50, 600.00, 0.00001, 30.00, 10.001, 300000.0, 500000.55, 20.50, 9.75, 280000.50, 8.00, 5.00, 0.95, 3.85, 8.70}; Double_t x3, y3, z3; for (Int_t h1 =0;h1<16;++h1) { x3 = x[h1]; y3 = y[h1]; z3 = z[h1]; nt->Fill(x3,y3,z3); } gStyle->SetOptStat(0); gStyle->SetPalette(1,0); nt->SetMarkerStyle(20); nt->SetMarkerSize(1); nt->SetEstimate(nt->GetEntries() + 1); Double_t xmin = nt->GetMinimum("a"); // "a" is X in the nt->Draw below Double_t xmax = nt->GetMaximum("a"); Double_t ymin = nt->GetMinimum("b"); // "b" is Y in the nt->Draw below Double_t ymax = nt->GetMaximum("b"); TH1F *htemp; Can->cd(1); nt->Draw("b:a", "", ""); // note: TTree::Draw creates a "htemp" gPad->SetLogx(1); gPad->SetLogy(1); Can->cd(3); nt->Draw("b:a", "", ""); // note: TTree::Draw creates a "htemp" htemp = (TH1F *)gPad->GetPrimitive("htemp"); htemp->GetXaxis()->SetLimits(xmin, xmax); // set proper "htemp" X axis limits htemp->GetYaxis()->SetLimits(ymin, ymax); // set proper "htemp" Y axis limits gPad->SetLogx(1); gPad->SetLogy(1); Can->cd(2); nt->Draw("b:a:c", "", "colz"); // note: TTree::Draw creates a "htemp" gPad->SetLogx(1); gPad->SetLogy(1); Can->cd(4); nt->Draw("b:a:c", "", "colz"); // note: TTree::Draw creates a "htemp" htemp = (TH1F *)gPad->GetPrimitive("htemp"); htemp->GetXaxis()->SetLimits(xmin, xmax); // set proper "htemp" X axis limits htemp->GetYaxis()->SetLimits(ymin, ymax); // set proper "htemp" Y axis limits gPad->SetLogx(1); gPad->SetLogy(1); }