안녕 모두,
다음 코드를 사용하려고 합니다.
x = summDt:슬롯[1];
y = 합계Dt:슬롯[2];
z = summDt:슬롯[3];
t = 합계Dt:슬롯[4];
새 창( "EtchRate By (Slot) - Bivariate",
V 목록 상자(
이변량(
Y( :이름( "평균(ER)" ) ),
X( :반지름 ),
각 값에 맞추기( {Line Color( {213, 72, 87} )} ),
여기서( :슬롯 == eval(x)),
SendToReport(
Dispatch( {}, "Bivar 플롯", FrameBox, {마커 크기( 4 )} )
)
),
이변량(
Y( :이름( "평균(ER)" ) ),
X( :반지름 ),
각 값에 맞추기( {Line Color( {213, 72, 87} )} ),
여기서( :Slot== eval(y) ),
SendToReport(
Dispatch( {}, "Bivar 플롯", FrameBox, {마커 크기( 4 )} )
)
),
이변량(
Y( :이름( "평균(ER)" ) ),
X( :반지름 ),
각 값에 맞추기( {Line Color( {213, 72, 87} )} ),
여기서(:Slot==eval(z) ),
SendToReport(
Dispatch( {}, "Bivar 플롯", FrameBox, {마커 크기( 4 )} )
)
),
이변량(
Y( :이름( "평균(ER)" ) ),
X( :반지름 ),
각 값에 맞추기( {Line Color( {213, 72, 87} )} ),
여기서(:Slot== eval(t) ),
SendToReport(
Dispatch( {}, "Bivar 플롯", FrameBox, {마커 크기( 4 )} )
)
)
)
);
그러나 Eval 기능에 문제가 있습니다. DT의 특정 값을 표시하는 데 어떻게 사용할 수 있습니까? 매번 사용하기 전에 슬롯 번호를 모르고 사용하고 싶습니다. 슬롯 번호가 4개이고 각각에 대해 그래프를 작성해야 한다는 것을 알고 있습니다.
감사해요.
안녕,
번호 대신 :sex==x를 얻습니다. x=1인 경우 :sex==Expr(x) ==> :sex==1을 얻는 것이 목표입니다.
감사해요
Eval() 없이 작동해야 합니다. dt가 현재 데이터 테이블인지 확인하거나 Bivariate() 명령을 dt에 명시적으로 보냅니다.
예:
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dtsum = dt << summary(Group(sex));
x = dtsum:sex[1];
y = dtsum:sex[2];
New Window("Height By Weight - Bivariate",
V List Box(
dt << Bivariate(Y(:height), X(:weight), Where(:sex == x)),
dt << Bivariate(Y(:height), X(:weight), Where(:sex == y))
)
);
//Alternative using By(), if all "slots" are to be graphed
New Window("Height By Weight - Bivariate",
V List Box(dt << Bivariate(Y(:height), X(:weight), By(:sex)))
);