안녕하세요,
다음과 같은 문제가 있습니다. 단일 보고서에 있어야 하는 변수별로 그룹화된 사용자 지정 출력 그룹이 있습니다. 필요한 출력을 얻습니다. 그러나 for 루프의 결과로 너무 많은 하위 집합 데이터 테이블을 얻습니다. 탭 창에 대해 읽었지만 여러 데이터 테이블을 탭에 넣는 방법에 대해 온라인에 많이 작성되지 않았습니다. 그런 옵션이 있습니까?
그렇지 않은 경우 보고서와 함께 생성되는 데이터 테이블을 자동으로 최소화하는 옵션을 JMP 스크립트에 추가할 수 있습니다.
위에서 언급한 옵션이 없다면 select where 문만 사용하여 데이터 행을 선택한 다음 해당 행을 사용하여 단일 보고서에 사용자 정의 및 자동 출력을 생성하는 방법이 있습니까? 나는 사용하려고했다 이 포럼의 방법론 ,하지만 나는 어떤 결과도 얻지 못했습니다.
다음은 첨부된 jmp 파일과 함께 현재 JMP 스크립트입니다.
Names Default To Here( 1 );
dt = Current Data Table();
col9 = Column(dt, "category");
unique_category = Associative Array(col9) << get keys;
nw= New Window("results",
container = V List Box()
);
for (i = 1, i <= N Items(unique_category), i++,
content = V List Box(
vali = unique_category[i];
dt << Select Where(:category == vali);
//subset the selected data
listDT = dt << Subset(
output table name( "Subset where category is " || vali ),
Selected rows only ( 1 ),
Selected columns only( 1 )
);
//Get the measurment units formatted, if applicable
col4 = Column( listDT, "Measurement Units");
units = col4[1];
units_formatted = If(Is Missing(units), "", Is String(units), " (" || units || ") ");
//chart
Oneway(SendToByGroup( {:category == vali},
Y( :results ) ),
SendToByGroup(
{:category == vali},
X( :name),
Connect Means( 1 ),
Grand Mean( 0 )
),
SendToByGroup(
{:category == vali},
SendToReport(
Dispatch(
{},
"2",
ScaleBox,
{Label Row( Set Font Size( 5 ) )}
),
Dispatch(
{},
"results",
TextEditBox,
{Set Text( vali || units_formatted )}
),
Dispatch(
{},
"Oneway Plot",
FrameBox,
{Frame Size( 1500, 300 ), DispatchSeg(
CustomStreamSeg( 6 ),
{Line Color( "Gray" )}
), Row Legend(
subcategory,
Color( 1 ),
Color Theme( "" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
)
);
);
container << Append(content)
);하위 집합 데이터 테이블을 보이지 않게 하면 출력을 여러 번 정리할 수 있습니다.
listDT = dt << Subset( invisible,
output table name( "Subset where category is " || vali ),
Selected rows only ( 1 ),
Selected columns only( 1 )
);