Sub-pads in several pad

Dear experts,

I want to create an array of 3 canvas, where each canvas has 2 pads.
Then in each pad I want to create 2 sub-pad.
Please notice that fellowing root.cern.ch/root/html/tutorial … lot.C.html
I know how to do it with 1 pad, but with several pad in a canvas, I’m lost.

Trying [1] I got: *** Break *** segmentation violation

Do you know what is wrong?

Regards

[1]

void test() {

TH1D *haxis1 = new TH1D("", “”, 100, 0, 500);

vectorvdir{“emu”, “hadhad” ,“muhad”};

TCanvas *canvas[3];
TPad *pad1[3];
TPad *pad2[3];

for(int i=0; i<3; i++){
canvas[i] = new TCanvas(vdir[i].c_str(), vdir[i].c_str(), 900, 700);
pad1[i] = new TPad(“pad1”,“pad1”,0,0.3,1,1);
pad2[i] = new TPad(“pad2”,“pad2”,0,0,1,0.3);

canvas[i]->Divide(2, 2);
canvas[i]->cd(1);
pad1[i]->Draw();
pad1[i]->cd();
haxis1->Draw();
pad2[i]->Draw();
pad2[i]->cd();
haxis1->Draw();

canvas[i]->cd(2); 
pad1[i]->Draw();
pad1[i]->cd();
haxis1->Draw();
pad2[i]->Draw();
pad2[i]->cd();
haxis1->Draw();

}

[code]void test() {
TH1D *haxis1 = new TH1D(“h”, “h”, 100, 0, 500);

const char *vdir[3] = {“emu”, “hadhad” ,“muhad”};

TCanvas *canvas[3];
TPad *pad1[3];
TPad *pad2[3];
TPad *pad3[3];
TPad *pad4[3];

for(int i=0; i<3; i++) {
canvas[i] = new TCanvas(vdir[i], vdir[i], 900, 700);
pad1[i] = new TPad(“pad1”,“pad1”,0,0.3,1,1);
pad2[i] = new TPad(“pad2”,“pad2”,0,0,1,0.3);
pad3[i] = new TPad(“pad3”,“pad3”,0,0.3,1,1);
pad4[i] = new TPad(“pad4”,“pad4”,0,0,1,0.3);

canvas[i]->Divide(1, 2);

#if 0 /* 0 or 1 */
canvas[i]->cd(1);
pad1[i]->Draw();
pad1[i]->cd(); haxis1->Draw();
canvas[i]->cd(1);
pad2[i]->Draw();
pad2[i]->cd(); haxis1->Draw();

canvas[i]->cd(2);
pad3[i]->Draw();
pad3[i]->cd(); haxis1->Draw();
canvas[i]->cd(2);
pad4[i]->Draw();
pad4[i]->cd(); haxis1->Draw();

#else /* 0 or 1 */
canvas[i]->cd(1);
pad1[i]->Draw();
pad2[i]->Draw();
pad1[i]->cd(); haxis1->Draw();
pad2[i]->cd(); haxis1->Draw();

canvas[i]->cd(2);
pad3[i]->Draw();
pad4[i]->Draw();
pad3[i]->cd(); haxis1->Draw();
pad4[i]->cd(); haxis1->Draw();

#endif /* 0 or 1 */

canvas[i]->cd(0);

}
}[/code]

Dear Pepe Le Pew,

thank you for your help, it worked.

Regards