Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
hist020_TH2_draw.C File Reference

Detailed Description

View in nbviewer Open in SWAN
Display the various 2-d drawing options.

˜À²Á…

void hist020_TH2_draw()
{
gStyle->SetOptStat(0);
gStyle->SetCanvasColor(33);
gStyle->SetFrameFillColor(18);
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);
auto h2 = new TH2F("h2", "xygaus + xygaus(5) + xylandau(10)", 20, -4, 4, 20, -4, 4);
h2->SetFillColor(46);
h2->FillRandom("f2", 40000);
// basic 2-d options
Float_t xMin = 0.67, yMin = 0.875, xMax = 0.85, yMax = 0.95;
Int_t cancolor = 17;
auto c2h = new TCanvas("c2h", "2-d options", 10, 10, 800, 600);
c2h->Divide(2, 2);
c2h->SetFillColor(cancolor);
c2h->cd(1);
h2->Draw();
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "SCAT", "brNDC");
c2h->cd(2);
h2->Draw("box");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "BOX", "brNDC");
c2h->cd(3);
h2->Draw("arr");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "ARR", "brNDC");
c2h->cd(4);
h2->Draw("colz");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "COLZ", "brNDC");
c2h->Update();
// text option
auto ctext = new TCanvas("ctext", "text option", 50, 50, 800, 600);
gPad->SetGrid();
ctext->SetFillColor(cancolor);
ctext->SetGrid();
h2->Draw("text");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "TEXT", "brNDC");
ctext->Update();
// contour options
auto cont = new TCanvas("contours", "contours", 100, 100, 800, 600);
cont->Divide(2, 2);
gPad->SetGrid();
cont->SetFillColor(cancolor);
cont->cd(1);
h2->Draw("contz");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "CONTZ", "brNDC");
cont->cd(2);
gPad->SetGrid();
h2->Draw("cont1");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "CONT1", "brNDC");
cont->cd(3);
gPad->SetGrid();
h2->Draw("cont2");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "CONT2", "brNDC");
cont->cd(4);
gPad->SetGrid();
h2->Draw("cont3");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "CONT3", "brNDC");
cont->Update();
// lego options
auto lego = new TCanvas("lego", "lego options", 150, 150, 800, 600);
lego->Divide(2, 2);
lego->SetFillColor(cancolor);
lego->cd(1);
h2->Draw("lego");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "LEGO", "brNDC");
lego->cd(2);
h2->Draw("lego1");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "LEGO1", "brNDC");
lego->cd(3);
gPad->SetTheta(61);
gPad->SetPhi(-82);
h2->Draw("surf1pol");
pl.DrawPaveLabel(xMin, yMin, xMax + 0.05, yMax, "SURF1POL", "brNDC");
lego->cd(4);
gPad->SetTheta(21);
gPad->SetPhi(-90);
h2->Draw("surf1cyl");
pl.DrawPaveLabel(xMin, yMin, xMax + 0.05, yMax, "SURF1CYL", "brNDC");
lego->Update();
// surface options
auto surf = new TCanvas("surfopt", "surface options", 200, 200, 800, 600);
surf->Divide(2, 2);
surf->SetFillColor(cancolor);
surf->cd(1);
h2->Draw("surf1");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "SURF1", "brNDC");
surf->cd(2);
h2->Draw("surf2z");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "SURF2Z", "brNDC");
surf->cd(3);
h2->Draw("surf3");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "SURF3", "brNDC");
surf->cd(4);
h2->Draw("surf4");
pl.DrawPaveLabel(xMin, yMin, xMax, yMax, "SURF4", "brNDC");
surf->Update();
}
int Int_t
Signed integer 4 bytes (int).
Definition RtypesCore.h:59
double Double_t
Double 8 bytes.
Definition RtypesCore.h:73
float Float_t
Float 4 bytes (float).
Definition RtypesCore.h:71
externTStyle * gStyle
Definition TStyle.h:442
#define gPad
The Canvas class.
Definition TCanvas.h:23
virtual void SetParameters(const Double_t *params)
Definition TF1.h:618
Definition TF2.h:29
2-D histogram with a float per channel (see TH1 documentation)
Definition TH2.h:345
A Pave (see TPave) with a text centered in the Pave.
Definition TPaveLabel.h:20
virtual TPaveLabel * DrawPaveLabel(Double_t x1, Double_t y1, Double_t x2, Double_t y2, const char *label, Option_t *option="")
Draw this pavelabel with new coordinates.
void Draw(Option_t *option="") override
Draw this pavelabel with its current attributes.
void lego()
Definition lego.C:31
Date
June 2022
Author
Rene Brun

Definition in file hist020_TH2_draw.C.