グループ X を切り替えて、すべてのアイテムを表示するか、特定のアイテムのみを表示するかはどうすればよいでしょうか?グループ X を切り替えて、すべてのアイテムを表示するか、特定のアイテムのみを表示するかはどうすればよいでしょうか?
以下のJSLに示すように、Where関数を使用すると、グループXに特定の項目のみを表示できます。ただし、すべての項目を表示するか、一部の項目のみを表示するかを切り替えることはできません。どのように変更すればよいでしょうか?おそらくadd variable()関数を使用する必要があると思いますが、add where関数の使い方がわかりません。
Names Default To Here( 1 );
selection = 1;
New Window( "Example",
cb = Combo Box( {"Only age 13 and 16", "All age"}, selection = (cb << Get()) ),
Button Box( "Plot",
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
gb = dt << Graph Builder(
Size( 528, 500 ),
Show Control Panel( 0 ),
Variables( X( :sex ), X( :age, Position( 1 ) ), Y( :height ), Group X( :age ) ),
Elements( Points( X( 1 ), X( 2 ), Y, Legend( 10 ) ) ),
If( selection == 1,
Where( Contains( {13, 16}, :age ) ),
),
);
)
);
自動化とスクリプトRe: グループ X を切り替えて、すべてのアイテムを表示するか、特定のアイテムのみを表示するかはどうすればよいでしょうか?複数の異なるオプションがあります:
- 2つの別々のグラフビルダー式を持つ
- (隠し)ローカルデータフィルターを使用する
- Whereでグラフビルダー式を構築する
- グラフビルダーにリンクされたサブセット(条件を使用してフィルタリングされたもの)を使用する
ここでWhereの使い方の一例を紹介する。
Names Default To Here(1);
selection = 1;
New Window("Example",
cb = Combo Box({"Only age 13 and 16", "All age"}, selection = (cb << Get())),
Button Box("Plot",
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb_expr = Expr(Graph Builder(
Size(528, 500),
Show Control Panel(0),
Variables(X(:sex), X(:age, Position(1)), Y(:height), Group X(:age)),
Elements(Points(X(1), X(2), Y, Legend(10)))
));
If(selection == 1,
Insert Into(gb_expr, NameExpr(Where(Contains({13, 16}, :age))));
);
gb = Eval(EvalExpr(Send(dt, Expr(gb_expr))));
)
);