cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
  • Image to Table JMP extension imports single or batch images as data tables. Useful to extract curves from pictures or convert image data to curve data to use in analyses like Functional Data Explorer. Download and install the extension.

Discussions

Solve problems, and share tips and tricks with other JMP users.
Choose Language Hide Translation Bar
BabyDoragon
Level IV

Graph Arrangement with For Loops

I want to understand how to arrange graphs.
When a user wants to arrange them in two rows with three graphs in each row, I can achieve that using the script below:

New Window( "Test", 
	
	
	H List Box(
		For( i = 1, i < 4, i++,
			Graph Builder(
				Size( 528, 450 ),
				Show Control Panel( 0 ),
				Variables( X( :age ), Y( :height ) ),
				Elements( Points( X, Y, Legend( 3 ) ), Smoother( X, Y, Legend( 4 ) ) )
			)
		),

	),
	H List Box(
		For( i = 1, i < 4, i++,
			Graph Builder(
				Size( 528, 450 ),
				Show Control Panel( 0 ),
				Variables( X( :age ), Y( :height ) ),
				Elements( Points( X, Y, Legend( 3 ) ), Smoother( X, Y, Legend( 4 ) ) )
			)
		),

	)
	
);

However, when I use a for loop, I am unable to achieve the same effect, as shown below:

New Window( "Test", 
	
	For( k = 1, k < 3, k++,
		H List Box(
			For( i = 1, i < 4, i++,
				Graph Builder(
					Size( 528, 450 ),
					Show Control Panel( 0 ),
					Variables( X( :age ), Y( :height ) ),
					Elements( Points( X, Y, Legend( 3 ) ), Smoother( X, Y, Legend( 4 ) ) )
				)
			)
		)
	)
);


What should I modify to make the output of the for loop display the graphs correctly?

1 ACCEPTED SOLUTION

Accepted Solutions
jthi
Super User

Re: Graph Arrangement with For Loops

I suggest you use Lineup Box(N Col(3)) instead of H List Boxes

 

Edit:

Here is simple example

Names Default To Here(1); 

dt = open("$SAMPLE_DATA/Big Class.jmp");

lub = Lineup Box(N Col(3));
For(i = 1, i <= 10, i++,
	lub << Append(
		dt << Graph Builder(
			Show Control Panel(0),
			Variables(X(:weight), Y(:height), Overlay(:sex)),
			Elements(Points(X, Y, Legend(9)), Line Of Fit(X, Y, Legend(11)))
		);
	)
);

nw = New Window("report",
	lub
);

-Jarmo

View solution in original post

1 REPLY 1
jthi
Super User

Re: Graph Arrangement with For Loops

I suggest you use Lineup Box(N Col(3)) instead of H List Boxes

 

Edit:

Here is simple example

Names Default To Here(1); 

dt = open("$SAMPLE_DATA/Big Class.jmp");

lub = Lineup Box(N Col(3));
For(i = 1, i <= 10, i++,
	lub << Append(
		dt << Graph Builder(
			Show Control Panel(0),
			Variables(X(:weight), Y(:height), Overlay(:sex)),
			Elements(Points(X, Y, Legend(9)), Line Of Fit(X, Y, Legend(11)))
		);
	)
);

nw = New Window("report",
	lub
);

-Jarmo

Recommended Articles