Here's a way to do it without using a journal. The page break box() insures that each graph is on a separate page.
dt = open("$sample_data\Airline Delays.jmp");
graph1_expr = expr(
dt << Graph Builder( Show Control Panel( 0 ),
Variables( X( :Day of Month ), Y( :Month ), Color( :Arrival Delay ) ),
Elements( Heatmap( X, Y, Legend( 5 ) ) ),
SendToReport(
Dispatch( {}, "Day of Month", ScaleBox,
{Label Row( Show Major Ticks( 0 ) )} ),
Dispatch( {}, "Month", ScaleBox,
{Reversed Scale, Label Row( Show Major Ticks( 0 ) )} ),
Dispatch( {}, "400", ScaleBox,
{Legend Model( 5, Properties( 0,
{gradient( {Scale Values( [-10 2.5 15 27.5 40] ),
Label Format( "Fixed Dec", 15, 0 )}
)},
Item ID( "Arrival Delay", 1 ) ) )} ),
Dispatch( {}, "graph title", TextEditBox,
{Set Text( "Arrival Delays by Day" )} )
)
);
);
graph2_expr = expr(
dt << Graph Builder( Show Control Panel( 0 ),
Variables( X( :Day of Week ), Overlay( :Airline ) ),
Elements( Bar( X, Legend( 2 ) ) ),
SendToReport( Dispatch( {}, "graph title", TextEditBox,
{Set Text( "Flights by Airline and Day of Week" )}
)
)
);
);
graph3_expr = expr(
dt << Graph Builder( Show Control Panel( 0 ),
Variables( X( :Distance ), Wrap( :Airline ) ),
Elements( Histogram( X, Legend( 9 ) ) ),
SendToReport(
Dispatch( {}, "Distance", ScaleBox,
{Min( -6.07535604831441 ), Max( 2900 ), Inc( 500 ), Minor Ticks( 0 ),
Label Row( Label Orientation( "Angled" ) )} ),
Dispatch( {}, "graph title", TextEditBox,
{Set Text( "Flight Distance by Airline" )} )
)
);
);
//------------------------------------------------------------------------------
ma_win = new window("Multiple Charts",
panelbox("Actions",
hlistbox(
msword_button = buttonbox("Save to MS-Word",
g_output << save msword("", Native);
),
close_button = buttonbox("Close this window",
ma_win << close window;
),
),
),
g_output = vlist box(
graph1_expr,
page break box(),
graph2_expr,
page break box(),
graph3_expr
)
);
msword_button << set icon("WinFileSave");
close_button << set icon("Stop");