16 TPad *right_pad, *top_pad;
20 auto c1 =
new TCanvas(
"c1",
"c1",900,900);
21 gStyle->SetOptStat(0);
23 TPad *center_pad =
new TPad(
"center_pad",
"center_pad",0.0,0.0,0.6,0.6);
26 right_pad =
new TPad(
"right_pad",
"right_pad",0.55,0.0,1.0,0.6);
29 top_pad =
new TPad(
"top_pad",
"top_pad",0.0,0.55,0.6,1.0);
32 h2 =
new TH2F(
"h2",
"",40,-4,4,40,-20,20);
34 for (Int_t i = 0; i < 25000; i++) {
35 gRandom->Rannor(px,py);
38 projh2X = h2->ProjectionX();
39 projh2Y = h2->ProjectionY();
42 gStyle->SetPalette(1);
46 projh2X->SetFillColor(kBlue+1);
50 projh2Y->SetFillColor(kBlue-2);
51 projh2Y->Draw(
"hbar");
54 TLatex *t =
new TLatex();
57 t->DrawLatex(0.6,0.88,
"This example demonstrates how to display");
58 t->DrawLatex(0.6,0.85,
"a histogram and its two projections.");
60 auto ex =
new TExec(
"zoom",
"ZoomExec()");
61 h2->GetListOfFunctions()->Add(ex);
66 int xfirst = h2->GetXaxis()->GetFirst();
67 int xlast = h2->GetXaxis()->GetLast();
68 double xmin = h2->GetXaxis()->GetBinLowEdge(xfirst);
69 double xmax = h2->GetXaxis()->GetBinUpEdge(xlast);
70 projh2X->GetXaxis()->SetRangeUser(xmin, xmax);
73 int yfirst = h2->GetYaxis()->GetFirst();
74 int ylast = h2->GetYaxis()->GetLast();
75 double ymin = h2->GetYaxis()->GetBinLowEdge(yfirst);
76 double ymax = h2->GetYaxis()->GetBinUpEdge(ylast);
77 projh2Y->GetXaxis()->SetRangeUser(ymin, ymax);
78 right_pad->Modified();