드롭 다운 목록에서 함수 인수를 사용하여 플롯에서 동일한 인수를 사용하는 방법콤보 상자를 사용하여 드롭 다운 목록을 작성 중입니다. 아이디어는 해당 목록에서 특정 항목 / 옵션을 선택하여 해당 막대 그림을 만들어야한다는 것입니다.
첨부 된 코드에서 Tool_time_wf는 콤보 상자에서 인수 / 프롬프트 / 장비 이름 [변수 선택]을 사용하여 플롯을 작성하는 기능입니다. 콤보 상자 myListbox의 각 항목 / 옵션은 이미 데이터 테이블의 열 이름 (첨부)이며 막대 플롯은 주별 (데이터 테이블의 열 1) 대 장비 이름 / 열 이름 [열 2 및 데이터 테이블에서 계속].
사용자는 드롭 다운에서 장비 이름 / 열 이름을 선택하는 것이 이상적이며 주 이름과 장비 이름 / 장비 이름으로 표시되는 데이터 테이블 (첨부 된 제목이없는 90 데이터 테이블 참조)에 열 이름과 동일한 장비 이름이 존재합니다. . 여기에 첨부 된 데이터 테이블에는 2 개의 열 이름 또는 2 개의 장비 이름 만 표시됩니다. 그러나 실제 테이블은 100 개의 열 이름 / 100 장비 이름을 갖습니다. 그래서 나는 기능이 필요하다 (내가 지금 붙어있는 곳입니다) 100 개의 장비 이름 / 열 이름 드롭 다운에서 선택을 사용하여 플롯을 생성합니다.
도움을 주시면 감사하겠습니다. 친애하는.
데이터 테이블스크립팅Re : 드롭 다운 목록에서 함수 인수를 사용하여 플롯에서 동일한 인수를 사용하는 방법당신이하려는 일을 이해하는 데 조금 더 도움이 필요합니다. 사용자가 선택한 경우 풀다운 목록에서 "W06"이라고 표시하여 표시 할 차트를 생성 할 수 있습니까?Re : 드롭 다운 목록에서 함수 인수를 사용하여 플롯에서 동일한 인수를 사용하는 방법txnelson 님, 안녕하세요. 문의를 명확하게하지 않은 것에 대해 사과드립니다.
사용자는 드롭 다운 목록에서 주 번호가 아닌 장비 이름 (장비 1 또는 장비 2 ..... 또는 장비 100)을 선택해야합니다.
드롭 다운 목록을 생성 할 목록 / 테이블에 대해서는 '장비 이름 -wf' JMP 테이블.
풀다운 목록에서 장비 이름이 선택되면 ( '장비 이름 -wf'를 통해 생성됨); 함수는 해당 장비 이름을 사용해야합니다. 로 이동 메인 데이터 테이블 '제목 없음 90' (장비에 대한 주간 데이터가 표로 표시되어 있음); 그런 다음 첨부 된 그림과 같이 원하는 주 대 장비 번호 플롯을 플롯하십시오 '원하는 장비 대 주간 음모' 이미지 파일.
더 궁금한 점이 있으면 알려주세요. 이것을 조사해 주셔서 감사합니다. 추가 의견 'snippet v2'와 함께 .jsl 코드를 다시 업로드했습니다.
Re : 드롭 다운 목록에서 함수 인수를 사용하여 플롯에서 동일한 인수를 사용하는 방법스크립트에 약간의 문제가 있습니다 ... 모두 사소한
- 코드의 제어 부분 인 새 창은 호출 할 모든 코드 뒤에 있어야합니다. 즉, JMP가 doListChoice를 읽기 전에 doListChoice를 호출 할 수 없습니다. JSL은 인터프리터이며, 첫 번째 줄에서 코드 읽기를 시작한 다음 코드가있는 곳을 따라갑니다.
- New Window가 맨 위로 오도록 코드를 구성한 방식은 항상 이전 실행의 코드를 사용하고 있음을 의미했습니다. 달리 언급하지 않는 한 JMP는 코드를 실행마다 유지합니다. 코드에 Clear Globals ()를 배치하여 각 실행마다 모든 것이 지워 졌는지 확인했습니다.
- xvar과 yvar을 잘못 참조했습니다. 작동하도록 코드를 약간 변경했습니다.
- 코드는 어떤 데이터 테이블을 처리해야할지 혼란스러워졌습니다. 코드가 데이터를 더 명확하게 가리 키도록 할 수 있도록 dtNames 및 dt를 추가했습니다.

Clear Symbols();
Names Default To Here( 1 );
//current data table that has data on individual equipment based on each week
filepath="C:\temp_files\jmp\tool time vs CW\#jmp-script\for jmp SAS community QA\Untitled 90.jmp";
dtNames = Open(filepath,invisible);
//equipment list (will go upto 100 [equip 1 , equip 2 ,..........equip 100], only shows 2 here for example)
filepath="C:\temp_files\jmp\tool time vs CW\#jmp-script\for jmp SAS community QA\Equipment Name-wf.jmp";
dt = Open(filepath,invisible);
//dtNames = Data Table( "Equipment Name-wf" );
//dt = Data Table( "Untitled 90 (1)" );
doListChoice = Expr(
choice = myListbox << getSelected; // choosing the equipment name from the drop down list
Tool_time_wf( "week", choice ); //does not work
);
//Tool_time_wf(week column, tool name in string quotes works);
Tool_time_wf = Function( {xvar, yvar},
bivExpr = dt << Graph Builder(
Size( 534, 464 ),
Show Control Panel( 0 ),
Variables( X( Eval( xvar ) ), Y( Eval( yvar ) ) ),
Elements( Bar( X, Y ) )
)
);
myList = Column( Data Table( "Equipment Name-wf" ), 1 ) << Get Values;
myListbox = Combo Box( myList, doListChoice );
//@@//showing drop down -works-st
New Window( "Show List",
Text Box(
" Please select a TOOL/MACHINE from the drop down menu:",
<<FONT color=""></FONT>Re : 드롭 다운 목록에서 함수 인수를 사용하여 플롯에서 동일한 인수를 사용하는 방법txnelson 감사합니다. Tool_time_wf 함수가 어떻게 작동하는지 자세히 설명해 주시겠습니까? expr과 eval의 작동 원리에 대해 100 % 명확하지 않습니다. 문안 인사.
Re : 드롭 다운 목록에서 함수 인수를 사용하여 플롯에서 동일한 인수를 사용하는 방법위 코드에서 Expr ()은 기본적으로 코드 홀더이며 Expr ()에 대한 포인터가 코드에서 처리 될 때까지 처리되지 않습니다. Eval ()은 JMP에게 Eval ()을 사용하여 코드를 처리하고 코드 프로세스의 결과 인 JSL로 돌아가는 함수입니다.Re : 드롭 다운 목록에서 함수 인수를 사용하여 플롯에서 동일한 인수를 사용하는 방법다시 감사합니다. 고맙습니다.