Publication date: 07/08/2024

Create Journals

Journals consist of JMP graphs and reports, graphics, text, and links to items such as web pages and files. They make it easy to reuse content in presentations and import into other documents.

Here is the basic JSL syntax for journals:

dt << Journal;

You can also create a new journal window and immediately add to it within the New Window() command. The following examples create an empty untitled journal:

New Window( <<  Journal);

The following examples create an empty journal named “Sales”:

New Window( "Sales", << Journal );

Here is an example of creating a journal named “Test Buttons” that contains two buttons.

New Window( "Test Buttons", << Journal,
	Button Box( "Test One", New Window( "Hi there1", << Modal ) ),
	Button Box( "Test Two", New Window( "Hi there2", << Modal ) ) );

Capturing Journals

There is an optional argument in the journal and journal window commands. This argument captures (or freezes) the current display. That is, it converts the display tree with just a picture.

Here are the four options for arguments:

Makes a bitmap “snapshot” of the display when it is sent to the journal, rather than sending a clone of the more editable display box structure to the journal. By freezing the display into a bitmap, references to variables from scripts in graphs are less problematic.

<< Journal("Freeze All");

Similar to Freeze All but only within areas of a report called pictures.

<< Journal("Freeze Pictures");

Similar to Freeze Pictures but only within frame boxes (which are within pictures).

<< Journal("Freeze Frames");

Similar to Freeze Frames but only for the frame boxes that have scripts to draw something on them.

<< Journal("Freeze Frames with Scripts");

Current Journal

Current Journal() returns a reference to the display box at the top of the current journal display window. If no journal is open, one is created. There are no arguments.

You can add to the journal using the Append command. The following example adds a text box to the bottom of the current journal:

Current Journal() <<  Append( Text Box( "Hello World" ) );

You can also find items in an existing journal by enclosing the search specification in square brackets. Suppose that the current journal includes the string “Parameter Estimates”. The following script appends a text box to the bottom of that journal:

Current Journal()["Parameter Estimates"] << Append( Text Box( "Asterisks show items significant at 0.05" ) );
Want more information? Have questions? Get answers in the JMP User Community (community.jmp.com).