スクリプトガイド > データ構造 > リスト > リストへのメッセージの送信
公開日: 04/01/2021

リストへのメッセージの送信

リストの項目すべてに対して、同じメッセージを一度に送ることができます。By変数を使って二変量のレポートを作る場合を考えてみましょう。スクリプトは、By変数の各水準の二変量オブジェクトを含むリストを戻します。ひとつのFit Lineメッセージをリストに送ると、二変量レポートのすべてに「直線のあてはめ」オプションが適用されます。

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

/* 二変量オブジェクトのリストを返す:

{二変量[],二変量[],二変量[],二変量[],二変量[],二変量[]}; */

biv = dt << Bivariate( X( dt:Name("体重(ポンド)") ) , Y( dt:Name("身長(インチ)") ), By( dt:年齢 ) );
 
biv << Fit Line; /* Fit Lineメッセージを
リストにある各二変量オブジェクトへ送る */

リストに送られたメッセージのトラブルシューティング

リストに送られたメッセージは、リストの中の各オブジェクトに送られます。メッセージがファイルを保存するものである場合、リストにある各オブジェクトを同じファイルに保存することになります。つまり、最後のオブジェクトだけが実際にファイルに保存されることになります。

3つの管理図のオブジェクトを含むリストに、 Save Interactive HTML のようなメッセージを送る場合を考えて見ましょう。メッセージはリストの各項目順に送られます。まず、最初の管理図を含むHTMLページが保存され、次に二番目の管理図と同じ名前のHTMLページが保存され、さらに三番目の管理図も同じ名前で保存されてしまいます。最終的に、三番目の管理図のみを含むページが得られることになります。

すべての管理図を含むHTMLページを保存するには、すべての管理図を含む、ツリー内のより上位のコンテナにメッセージを送る必要があります。このために、以下のコードを書き換えます:

obj << Save Interactive HTML( "Control Charts.html" );

Top Parentは最初のオブジェクトの最上位の親を戻します:

tp = obj[1] << Top Parent();
tp << Save Interactive HTML( "Control Charts.html" );
より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).