@펠리 ,
간단한 예제를 제외하고는 DashboardBuilder를 사용한 적이 없습니다. Application Builder를 사용하거나 스크립트를 작성하여 애플리케이션을 생성합니다.그것에 대해 읽고 싶을 수도 있습니다. 일부는 정말 좋아합니다. 한동안 스크립팅을 해 온 다른 사람들은 일반적으로 JSL을 통해 작업을 처리합니다.
아래는 작업에 대한 ApplicationBuilder 시작의 스크린샷입니다.
11장을 읽는 것이 좋은 시작이라고 생각합니다.
@gzmorgan0
많은, 많은 감사합니다!
당신은 내가 원하는 솔루션을 정확하게 맞추었습니다.
이전의 많은 시도 중 하나에서 나는 테이블 변수를 가지고 놀고 있었습니다. 슬라이더가 작동하도록 했지만 라디오 버튼은 작동하지 않았습니다.
내가 놓친 열쇠는 다음과 같습니다.
dt << Set Table Variable("Faktor", Expr(num (cat << Get Selected) ) );Faktor에 대한 내 테이블 변수는 항상 문자열이었고 수식이 엉망이어서 다른 방법을 찾아야 했습니다.
Dashboard Builder/Application Builder를 사용하여 그래프를 작성하려고 했는데 JSL/애플리케이션 구축을 시작할 때 많은 사람들이 추천하는 방식이었기 때문에 팁을 구현하고 컨테이너 등에 대해 자세히 알아보겠습니다.
도움을 주셔서 다시 한 번 감사드립니다!
@펠리 ,
이 스크립트에는 문제를 일으킬 수 있는 여러 항목이 있습니다.
첫 번째는 고양이인 RadioBox입니다. 스크립트는 라디오 상자가 아닌 개요 상자에 첨부됩니다.
//Outline Box( "Select Faktor", cat = Radio Box( {"1", "2", "3", "4"} ),update ) //wrong, see below
Outline Box( "Select Faktor", cat = Radio Box( {"1", "2", "3", "4"} , update ) )
이름의 기본값은 Here(1)입니다. 변수 값은 이 스크립트에만 적용된다고 명시되어 있습니다.Here 네임스페이스를 지정할 필요가 없으며 구문은 Here:A 입니다. 그러나 이는 또 다른 문제를 야기합니다. 수식 열 G1scale, G2scale 등은 :G1*A와 같은 수식을 갖습니다.스크립트가 실행되거나 나중에 테이블을 열려고 하면 변수 A를 알 수 없습니다.몇 가지 제안 사항은 다음과 같습니다.
- 테이블 변수 A, B, C, Faktor를 dt <<로 생성 테이블 변수 설정(A, 1)
- 그런 다음 형식은 :G1*:A가 되고 테이블은 스크립트가 실행되고 있지 않을 때 해당 값을 인식합니다.
- 스크립트를 두 번 이상 실행하면 G1scale, G1scale 2 등이 여러 개 생성됩니다. 또는 열이 존재하는지 확인하고, 존재하는 경우 삭제하거나 기능을 할당하여 보다 우아하게 수행할 수 있습니다. 또한 창이 닫히면 nw에 대해 On Close 기능을 사용하여 해당 열을 삭제할 수 있습니다.
그러나 가장 큰 제안은 대화형 스크립팅을 탐구하려면 다음을 사용하여 JMP 보고서를 만드는 방법을 배워야 한다는 것입니다.
컨테이너: HListBox , VListBox , 라인업박스 , 패널박스 .귀하의 스크립트는 아웃라인박스 컨테이너.
통제 수단: 버튼박스 , 슬라이더박스 , 체크박스 , 등.
입력: 콤보 박스 , 리스트 박스 , 콜리스트박스 , 등.
결합 창에 의존하지 마십시오.
JMP 스크립팅 안내서의 11장부터 시작하는 것이 좋습니다. 기본 메뉴 > 도움말 >JMP 설명서 > JMP 스크립팅 가이드 >> 11장
이 레이아웃(Tree Structure)을 사용한 스크립트 첨부


모두들 안녕,
슬라이더(연속 레벨 허용)를 사용하여 세 개의 변수 A,B,C를 변경하고 라디오 버튼을 사용하여 네 번째 변수 Faktor(4레벨만 허용됨)를 변경할 수 있는 작은 대시보드/애플리케이션을 작성하고 싶습니다.

그런 다음 내 데이터 테이블 G1, G2, G3의 열에 A,B,C 및 Faktor를 곱하고 그래프 빌더를 사용하여 세 개의 새 열의 합계와 함께 플로팅합니다.
Clear Log();
Delete Symbols();
Names Default To Here( 1 );
// default parameter values.
A = 1;
B = 2;
C = 3;
Faktor = 2;
dt = Current Data Table();
dt << New Column( "G1scale", Numeric, Continuous, Formula( (:G1 * Here( 1 ):A) * Here( 1 ):Faktor ) );
dt << New Column( "G2scale", Numeric, Continuous, Formula( (:G2 * Here( 1 ):B) * Here( 1 ):Faktor ) );
dt << New Column( "G3scale", Numeric, Continuous, Formula( (:G1 * Here( 1 ):C) * Here( 1 ):Faktor ) );
dt << New Column( "SumColumn", Numeric, Continuous, Formula( :G1scale + :G2scale + :G3scale ) );
지금까지 슬라이더를 드래그하면 데이터 테이블의 수식 열이 업데이트되는 스크립트가 작동했지만 라디오 버튼을 사용하여 동일한 작업을 수행하는 데 문제가 있습니다.
update = Expr(
Here( 1 ):A = p;
Here( 1 ):B = r;
Here( 1 ):C = t;
Here( 1 ):Faktor = Choose( nw1["cat"], 1, 2, 3, 4 );
dt << rerun formulas;
Wait( 0 );
);
nw1 = New Window( "Faktor",
Outline Box( "Select Faktor", cat = Radio Box( {"1", "2", "3", "4"} ),update )
);
nw2=New Window( "Sliding",
Outline Box( "A",
Slider Box(
1,
10,
p,
update
)
),
Outline Box( "B",
Slider Box(
1,
10,
r,
update
)
),
Outline Box( "C",
Slider Box(
1,
10,
t,
update
)
)
);
g1=Graph Builder(
Size( 529, 456 ),
Show Control Panel( 0 ),
Variables(
X( :WL ),
Y( :G1scale ),
Y( :G2scale, Position( 1 ) ),
Y( :G3scale, Position( 1 ) ),
Y( :SumColumn, Position( 1 ) )
),
Elements( Points( X, Y( 1 ), Y( 2 ), Y( 3 ), Y( 4 ), Legend( 3 ) ) ),
SendToReport(
Dispatch( {}, "graph title", TextEditBox, {Set Text( "Simulated Plot" )} ),
Dispatch( {}, "Y title", TextEditBox, {Set Text( "Mygauss" )} )
)
);라디오 버튼을 선택할 때 업데이트할 데이터 테이블(따라서 그래프)을 가져올 수 없습니다.
두 번째 문제는 세 개의 현재 창을 하나의 창(대시보드 또는 애플리케이션)으로 통합하고 싶다는 것입니다. Combine Windows에 대해 모두 선택할 수 있지만 대시보드 빌더로 보내려고 하면 그래프 빌더 창만 나타나고 실더는 표시되지 않습니다. 내 실버/라디오 버튼을 대시보드/애플리케이션 빌더로 드래그하려면 어떻게 해야 합니까?