JSL의 그래프 빌더에서 변수에 조건 추가안녕하세요 여러분,
특정 변수가 포함된 그래프 빌더 코드를 수정하려고 합니다. 특정 변수를 포함하거나 제외하는 조건문을 추가하고 싶습니다. if 문을 사용해 보았지만 제대로 작동하지 않는 것 같습니다. 이 문제에 대한 제안을 주시면 감사하겠습니다.
예제 코드:
사용자가 테스트 온도에 대한 결과를 원하는지 여부를 평가하기 위해(이 부분은 이미 완료됨) 사용자로부터 입력을 받고 싶습니다(예:). 플롯할 다른 변수가 있지만 예제를 단순화하기 위해 테스트 온도를 제공했습니다.
// x will be taken as an input
Graph Builder(
Size( 1257, 829 ),
Level Spacing Color( "Black" ),
Variables( Y( :TX_EVM ), Y( :TX_EVM ), If( Equal( X, 1 ), Group X( :Test_Temp ) ) ),
Elements( Box Plot( Y, Legend( 19 ) ) ),
Local Data Filter(
Add Filter(
columns( :Test_Temp ),
Where( :Test_Temp == {"test temp1 ", "test temp2", "test temp3"} )
)
)
);
고급 통계 모델링자동화 및 스크립팅기본 데이터 분석 및 모델링윈도우Re: JSL의 그래프 빌더에서 변수에 조건 추가가장 쉬운 옵션은 그래프 빌드 생성 후 변수를 제거하는 것입니다.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Size(528, 492),
Show Control Panel(0),
Variables(X(:weight), Y(:height), Group X(:sex)),
Elements(Points(X, Y, Legend(5)))
);
// gb << Get Variables; // depending on your graph calculating which index to remova can be a good idea
gb << Remove Variable(3);
wait(0);
Graph Builder() 메시지의 Variables() 부분을 표현식을 사용하여 빌드할 수도 있습니다.
Re: JSL의 그래프 빌더에서 변수에 조건 추가TestList[i3]를 무언가로 래핑해야 할 수도 있습니다. 아래는 몇 가지 옵션입니다.
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
mycol = "weight";
gb = dt << Graph Builder(
Size(528, 448),
Show Control Panel(0),
Variables(X(:age), X(:sex), Y(mycol)), // won't work
Elements(Position(1, 1), Points(X, Y, Legend(6))),
Elements(Position(2, 1), Points(X, Y, Legend(7)))
);
gb = dt << Graph Builder(
Size(528, 448),
Show Control Panel(0),
Variables(X(:age), X(:sex), Y(Eval(mycol))), // might work
Elements(Position(1, 1), Points(X, Y, Legend(6))),
Elements(Position(2, 1), Points(X, Y, Legend(7)))
);
Eval(EvalExpr(
gb = dt << Graph Builder(
Size(528, 448),
Show Control Panel(0),
Variables(X(:age), X(:sex), Y(Expr(NameExpr(AsColumn(mycol))))), // works
Elements(Position(1, 1), Points(X, Y, Legend(6))),
Elements(Position(2, 1), Points(X, Y, Legend(7)))
)
));
Re: JSL의 그래프 빌더에서 변수에 조건 추가도움을 주셔서 감사합니다, Jarmo. 귀하의 코드는 완벽하게 잘 작동하지만, 원래 코드에 동일한 기술을 구현하면 작동하지 않습니다. 제 코드는 실제로 여러 개의 그래프 빌더를 생성하여 추가합니다. 각 그래프 빌더 다음에 변수를 제거하려고 했지만 아무런 차이가 없는 것 같습니다.
내가 가지고 있는 코드의 단순화된 버전은 다음과 같습니다.
gb = {}; // initiate list
// loop through the test list
index = N Items( gb );//
gb[index + 1]= New Window( "Capability", hlb = H List Box() );
hlb << append(//
Graph Builder(
Size( 1800, 700),//
Variables(
X( :Temp, Position( 1 ) ),
X( :Location, Position( 1 ) ),
Y( TestList[i3] ), // this is
),
Elements( Histogram( X( 1 ), X( 2 ), X( 3 ), Y, Legend( 46 ), Means and Std Devs( 1 )),Smoother( X( 1 ), X( 2 ), X( 3 ), X( 4 ), Y, Legend( 49 ) ) ,Caption Box(
X( 1 ),
X( 2 ),
X( 3 ),
Y,
Legend( 51 ),
Summary Statistic( "Mean" ),
) ),
Local Data Filter(
.
.
.
.
.
.
.
),
SendToReport(
.
.
.
.
.
.
.
)
);
);
//end loop<BR />