ジャーナルは、JMPグラフやレポート、グラフィック、テキスト、Webページやファイルなどへのリンクで構成されます。さまざまな要素をジャーナルにまとめることで、プレゼンテーションなどの機会に繰り返し利用することが可能になるほか、他のドキュメントへの読み込みも簡単になります。
ジャーナルの基本的なJSL構文は次のようになります。
dt << Journal;
また、New Window()コマンド内に加えることにより、新しいジャーナルウィンドウを作成します。次の例は、空白で無題のジャーナルを作成します。
New Window( << Journal);
次の例は、「売り上げ」という名前で空白のジャーナルを作成します。
New Window( "売り上げ", << Journal );
ここで、2つのボタンを含む、「ボタンのテスト」というジャーナルを作成する例を紹介します。
New Window( "ボタンのテスト", << Journal,
Button Box( "テスト1", New Window( "こんにちは1", << Modal ) ),
Button Box( "テスト2", New Window( "こんにちは2", << Modal ) ) );
ジャーナルとジャーナルウィンドウのコマンドには、オプションの引数があります。この引数は、現在の表示を取得する(フリーズさせる)ものです。つまり、表示ツリーを1つのイメージに変換します。
引数には次の4つのオプションがあります。
• 編集可能なディスプレイボックスの構造をコピーするのではなく、その時点での表示の「スナップショット」をビットマップ形式で保存し、ジャーナルに送ります。表示をビットマップファイルとして保存することで、グラフ内でスクリプトの変数が参照されていても、問題が生じにくくなります。
<< Journal("Freeze All");
• Freeze Allに似ていますが、ピクチャーと呼ばれるレポートの領域のみをフリーズさせます。
<< Journal("Freeze Pictures");
• Freeze Picturesに似ていますが、(ピクチャー内の)フレームボックスのみをフリーズさせます。
<< Journal("Freeze Frames");
• Freeze Framesに似ていますが、何かを描画するスクリプトがあるフレームボックスのみをフリーズさせます。
<< Journal("Freeze Frames with Scripts");
Current Journal()は、現在のジャーナル表示ウィンドウの最上位のディスプレイボックスへの参照を戻します。ジャーナルが開かれていない場合は、1つ作成されます。引数はありません。
Appendコマンドを使ってジャーナルに追加できます。次の例は、現在のジャーナルの下にテキストボックスを追加します。
Current Journal() << Append( Text Box( "Hello World" ) );
また、文字列を角括弧([])で囲んで追加すると、既存のジャーナル内の該当文字列が検索されます。現在のジャーナルに「パラメータ推定値」という文字列が含まれているとします。次の例は、そのジャーナルの下にテキストボックスを追加します。
Current Journal()[" パラメータ推定値"] << Append( Text Box( " アスタリスクは有意確率0.05で有意な項目を示す。" ) );