公開日: 09/19/2023

グラフビルダーのスクリプト

次の疑似コードは、グラフビルダーのスクリプトの基本的な構造を示しています。

Graph Builder(
Size( x, y ),
// 赤い三角ボタンのメニューから任意のコマンドを選択する。ここではSize(サイズ)を使用
Variables( role( column ), ...), // 必須
Elements( element name( element options, ...), // 必須
Data Filter( ... ),
// 表示のカスタマイズを行う。ここではData Filter(データフィルタ)を使用
);

次のスクリプトは、棒グラフを作成する、単純なグラフビルダーの例です。

dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Graph Builder(Variables(
	X( :年齢), 
	Y( :"体重(ポンド)"n )),
Elements( Bar( X, Y, Legend( 8 ) ) )
// Legend(凡例)は必須ではないが、表示された内部凡例IDは後でカスタマイズに使用できる
);

次のスクリプトは、より複雑な、グラフビルダーの例です。

dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Graph Builder(
Size( 373, 332 ),
Show Control Panel( 0 ),
Variables(
	X( :年齢),
	Y( :"体重(ポンド)"n ),
	Y( Transform Column( "weight25",
			Formula( Col Quantile( :"体重(ポンド)"n, 0.25, :年齢 ) )
			),
		Position( 1 )
/* デフォルトでは各Y変数が独自の軸を取るが、Position(1)
オプションが2つ目以降のYを最初のスロットに維持し、軸を統合する。*/
	),
	Y( Transform Column( "weight75", Formula( Col Quantile( :"体重(ポンド)"n, 0.75, :年齢 ) ) ),
		Position( 1 )
	)
),
Elements(
	Bar( X, Y( 2 ), Y( 3 ), Legend( 10 ), Bar Style( "範囲" ) ),
// この棒は、第2Y変数と第3Y変数だけを使用し、
// 値と値の間に範囲バーを描画する。 
	Bar( X, Y( 1 ), Legend( 8 ),
		Bar Style( "フロート" ),Summary Statistic( "中央値" )
// この棒は、最初のY変数を使用してその中央値を
// フロートスタイル(短い横線)で描画する
	),
	Points( X, Y( 1 ), Legend( 9 ) )
// 点は、生データをマーカーとして表示する。
),
SendToReport(
// 次のような表示カスタマイズを含む
	Dispatch( {}, "400", ScaleBox,
// 400は固定名
		{Legend Model( 10,
		Level Name( 0, "第1~3
		四分位点",
		Item ID( "平均(weight25)..平均(weight75)", 1 )
// 凡例の名前を変更し、
// 凡例10の色を変更する(範囲バー)
	),
		Properties( 0, {Fill Color( 32 )},
		Item ID( "平均(weight25)..平均(weight75)", 1 )
// 凡例10の色を変更する(範囲バー)
	)
		), Legend Model( 9,
		Properties( 0, {Marker Size( 4 )}, Item ID( "体重(ポンド)",1 ) )
// 凡例9のマーカーサイズを変更する([点])
	)}
),
Dispatch( {}, "Graph Title", TextEditBox,
	{Set Text( "「体重(ポンド)」の四分位範囲" )}
// グラフのタイトルを変更する
),
Dispatch( {}, "Y title", TextEditBox, {Set Text( "体重(ポンド)" )} ),
// Y軸のタイトルを変更する
Dispatch( {}, "400", LegendBox,
// 凡例9に-1の位置を指定することで、その凡例項目を非表示にする
	{Legend Position( {10, [0], 8, [1], 9, [-1]} )}
	)
)
);
より詳細な情報が必要な場合や、質問があるときは、JMPユーザーコミュニティで答えを見つけましょう (community.jmp.com).