インタラクティブ グラフからサブセットを作成しますか?こんにちは。 サマリー テーブルのデータを表示するインタラクティブ グラフを作成しようとしています。 目標は、特定のポイントからデータをサブセット化するためにクリックできるポイントを含む折れ線グラフを作成することです。 たとえば、以下のスクリプトでは、Big Class サンプル テーブルの経過時間ごとの要約テーブルのグラフがあります。 ユーザーがグラフ上のポイントをクリックすると、そのポイントからのすべてのデータを含むサブセット テーブルが自動的に表示されるようにする必要があります。
私が直面している問題は、データが選択されていないため、シングルクリックが機能しないことです。 ポイントをダブルクリックしてデータを選択し、もう一度クリックしてサブセット式を実行する必要があります。 トリプルクリックせずにこれを行う方法はありますか? ありがとう。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dtSummary = dt << Summary(
Group( :age ),
Freq( "None" ),
Weight( "None" ),
output table name( "dtSummary" )
);
gbExpr = Expr(
gb = Graph Builder(
Size( 528, 448 ),
Show Control Panel( 0 ),
Variables( X( :age ), Y( :N Rows ) ),
Elements( Points( X, Y, Legend( 3 ) ), Line( X, Y, Legend( 4 ) ) ),
SendToReport(
Dispatch(
{},
"400",
LegendBox,
{Legend Position( {3, [-1], 4, [-1]} ), Position( {-1, -1} )}
)
)
);
);
ExprA = Expr(
dtSubset = dt << Subset( Output Table( "Subset" ), Selected Rows( 1 ), Selected Columns( 0 ));
dtSummary << Clear Selected Rows;
);
GraphWindow = New Window( "Graph" );
GraphWindow << Append(
MouseBox(
gbExpr,
<<SETCLICKENABLE></SETCLICKENABLE>Re: インタラクティブ グラフからサブセットを作成しますか?JMP 15.0では、サブセットRMBメニューオプションが追加され、あなたが説明したことを正確に行うホバーラベルが追加されました。
現在、すべてのグラフにこの機能が組み込まれています。
試してみたところ、結果はスクリプトを実行したときとまったく同じです。
別の集計テーブルを作成する必要がないことに注意してください。新しい機能は、折れ線グラフ、棒グラフなどのグラフによって行われる集計を「理解」します。
つまり、サブセットは、ポインターの下にあるビジュアル要素の定義から派生したローカル データ フィルターに基づいています。
この手法は、グラフレットの作成と、新しいウィンドウでの起動 (別名ドリルダウン) もサポートしています。
詳細については、チェックしてくださいhttps://www.jmp.com/content/dam/jmp/documents/en/support/jmp15/using-jmp.pdf 、512ページ。

Re: インタラクティブ グラフからサブセットを作成しますか?マウス ボックスの代わりに、Row State Handler をデータ テーブルに適用することができます。 サブセットを作成するには 1 回のクリックが必要です (ドラッグして複数のポイントを選択しようとすると、意図しないサブセットが多数作成される可能性があるため、煩わしい場合があります)。
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dtSummary = dt << Summary(Group(:age));
gbExpr = Expr(
gb = Graph Builder(
Show Control Panel(0),
Variables(X(:age), Y(:N Rows)),
Elements(Points(X, Y, Legend(3)), Line(X, Y, Legend(4)))
)
);
ExprA = Expr(
dtSubset = dt << Subset(Selected Rows(1));
dtSummary << Clear Select;
);
f = Function({a}, ExprA);
rs = dt << make row state handler(f);
GraphWindow = New Window("Graph", gbExpr);
Re: インタラクティブ グラフからサブセットを作成しますか?完全。 非常に役立ちます。どうもありがとうございます。
Re: インタラクティブ グラフからサブセットを作成しますか?マウス トラップを使用するスクリプトを作成するためのすべての作業を行っている間に、デフォルトのマウス アクションを使用してデータ ポイントを選択し、クリックするだけであれば、非常に単純なスクリプトで目的を達成できると思います。追加されたボタンで選択を行います

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
gb = dt << Graph Builder(
Size( 528, 454 ),
Show Control Panel( 0 ),
Variables( X( :weight ), Y( :height ) ),
Elements( Points( X, Y, Legend( 6 ) ), Smoother( X, Y, Legend( 7 ) ) )
);
subsetButton = Button Box( "Click to Create a Subset of Selected Points",
If( N Rows( dt << get selected rows ) > 0,
dt << subset( selected rows( 1 ), selected columns( 0 ) )
)
);
Report( gb )["Graph Builder"] << append( subsetButton );