JSL을 통해 그래프의 곡선을 클릭하여 스크립트를 실행할 수 있나요?예를 들어 아래 스크립트의 그래프를 만들었습니다.
dt = Open( "$SAMPLE_DATA/Students2.JMP" );
dt << Sort( By( 1 ), Order( Ascending ), replacetable( 1 ) );
New Column( "A" );
Column( "A" ) << Formula( If( Row() == 1 | name != Lag( name, 1 ), 1, If( Lag( A, 1 ) < 6, Lag( A, 1 ) + 1 ) ) );
dt << run formulas;
Column( "A" ) << deleteFormula;
dt << Sort( By( "A" ), Order( DEscending ), replacetable( 1 ) );
dt << delete rows( N Rows( Loc( dt[0, "A"] > 0 ) ) + 1 :: N Row( dt ) );
dt << Sort( By( 1, "A" ), Order( Ascending, Ascending ), replacetable( 1 ) );
p1 = Graph Builder(
Size( 528, 454 ),
Show Control Panel( 0 ),
Variables( X( :A ), Y( :height ), Overlay( :name ) ),
Elements( Points( X, Y, Legend( 8 ) ), Smoother( X, Y, Legend( 9 ) ) )
);
그래프에서 조건부 곡선을 클릭하면 지정된 "D
"가 자동으로 실행됩니다. A.jsl"

감사해요!
자동화 및 스크립팅대량 맞춤화Re: JSL을 통해 그래프의 곡선을 클릭하여 스크립트를 실행할 수 있나요?아마도 필요한 것의 미묘한 차이가 누락되었을 수 있습니다. 그러나 제안을 바탕으로 @jthi , 다음과 같은 작업을 수행할 수 있습니다(현재 행 선택이 있으면 'doSomething'을 사용하여 JSL이 수행할 수 있는 모든 작업을 수행할 수 있습니다).
NamesDefaultToHere(1);
// Original code . . .
dt = Open( "$SAMPLE_DATA/Students2.JMP" );
dt << Sort( By( 1 ), Order( Ascending ), replacetable( 1 ) );
New Column( "A" );
Column( "A" ) << Formula( If( Row() == 1 | name != Lag( name, 1 ), 1, If( Lag( A, 1 ) < 6, Lag( A, 1 ) + 1 ) ) );
dt << run formulas;
Column( "A" ) << deleteFormula;
dt << Sort( By( "A" ), Order( DEscending ), replacetable( 1 ) );
dt << delete rows( N Rows( Loc( dt[0, "A"] > 0 ) ) + 1 :: N Row( dt ) );
dt << Sort( By( 1, "A" ), Order( Ascending, Ascending ), replacetable( 1 ) );
gb = dt <<
Graph Builder(
Size( 528, 454 ),
Show Control Panel( 0 ),
Variables( X( :A ), Y( :height ), Overlay( :name ) ),
Elements( Points( X, Y, Legend( 8 ) ), Smoother( X, Y, Legend( 9 ) ) )
);
// New code . . .
// Row state handler function to do something
doSomething = Function({x}, {Default Local},
// 'x' is a column vector of row states that have just CHANGED. We just need those that are now selected . . .
selectedRows = [];
For( i = 1, i <= NRow(x), i++, If( Selected( Row State( x[i] ) ), selectedRows = VConcat(selectedRows, x[i]) ));
Print(x);
Print(selectedRows);
);
// Assign the handler to the table
rsh = dt << MakeRowStateHandler(doSomething);
Re: JSL을 통해 그래프의 곡선을 클릭하여 스크립트를 실행할 수 있나요?내 구현 애플리케이션에서는 데이터가 동일한 파일에 없습니다. 그래서 이 드릴다운 기능과 같은 것을 어떻게 사용하는지 모르겠습니다. 감사해요 ㅏ 많은
Re: JSL을 통해 그래프의 곡선을 클릭하여 스크립트를 실행할 수 있나요?
Re: JSL을 통해 그래프의 곡선을 클릭하여 스크립트를 실행할 수 있나요?매우 감사합니다! 하지만 아직까지 방법을 찾지 못했습니다.

Re: JSL을 통해 그래프의 곡선을 클릭하여 스크립트를 실행할 수 있나요?원래 데이터 테이블에서 Row State Handler를 사용하면 작동할 수 있을까요? 또는 클릭 부분을 "건너뛸" 수 있다면 호버 라벨을 사용할 수도 있습니다.
Re: JSL을 통해 그래프의 곡선을 클릭하여 스크립트를 실행할 수 있나요?JMP에는 유사한 모듈 기능이 있으며 다음과 같은 프로세스 작업을 실현할 수 있습니다.
선택한 곡선을 클릭하면 "이름"을 얻을 수 있습니다. 이 이름을 사용하여 다른 테이블 Students1.jmp에 있는 이름의 나이를 가져옵니다. 선택한 이름만 사용하고 표 2의 "키"와 표 1의 "나이"를 사용하여 새 데이터 테이블이 생성됩니다.
d1 = Open( "$SAMPLE_DATA/Students1.JMP" );
전문가님 감사합니다!
Re: JSL을 통해 그래프의 곡선을 클릭하여 스크립트를 실행할 수 있나요?이 "D:\A.JSL"은 주로 다음 기능을 수행합니다.
선택한 곡선을 클릭하여 "이름"을 가져옵니다. 이 이름을 사용하여 다른 테이블 "Students1.JMP"에서 이름의 "나이"를 가져옵니다. 새 테이블 "new.jmp"를 만듭니다.
위와 같이 다이어그램을 그립니다.
마지막으로 두 개의 그래프와 각 데이터 테이블을 사용하여 대시보드를 생성합니다.
