그래프 빌더에서 자동으로 변수 조정안녕 모두,
필자는 열이 많은 최종 테이블을 만들었습니다. 플롯하려는 데이터는 매번 35 번째 열부터 시작됩니다. 줄을 그리려는 줄의 수는 반복마다 달라집니다. 1 열에서 여러 열까지 다양 할 수 있습니다.
연속적으로 변화하는 변수로 플롯하는 가장 좋은 방법은 무엇입니까?
선형 또는 상자를 말하는 "plot_type"과 같은 외부 변수를 사용하여 플롯 유형을 변경하는 방법이 있습니까?
유사한 아이디어를 사용하여 매 반복마다 로그 또는 선형 플롯을 변경하는 방법이 있습니까?
다음은 5 개의 열이있는 예입니다. 다른 수의 열에서는 작동하지 않습니다.
collist = tdt << get column names();
Show( collist );
m = {};
b = 1;
For( z = 35, z <= N Cols( tdt ), z++,
m[b] = Char( collist[z] );
b = b + 1;
);
Show( m );
gbfc = tdt << Graph Builder(
Size( 1515, 922 ),
Show Control Panel( 0 ),
Variables(
X( :Index ),
X( :Name, Position( 1 ) ),
X( :Wafers, Position( 1 ) ),
Y( Column( tdt, m[1] ) ),
Y( Column( tdt, m[2] ), Position( 1 ) ),
Y( Column( tdt, m[3] ), Position( 1 ) ),
Y( Column( tdt, m[4] ), Position( 1 ) ),
Y( Column( tdt, m[5] ), Position( 1 ) )
),
Elements( Points( X( 1 ), Y( 1 ), Y( 2 ), Y( 3 ), Y( 4 ), Y( 5 ), Legend( 18 ) ) ),
SendToReport( Dispatch( {}, "X title", TextEditBox, {Set Text( "Index / Lot / Wafers" )} ) )
);
정말 고맙습니다.
Re : 그래프 빌더에서 자동으로 변수 조정하기Jim의 스크립트 후, 이처럼 축을 더 제어 할 수 있습니다.
outline = report(gbfc);
yaxis = outline[axisbox(2)];
yaxis<<MIN></MIN>
개요 상자의 회색 열기 / 닫기 삼각형 -> 오른쪽 클릭 -> 편집 -> ShowTreeStructure를 사용하여 axisbox 2가 Y 축인 것을 확인합니다.
Pick ShowTree Structure from the outline. Then click part of the report to find it.개요에서 ShowTree Structure를 선택하십시오. 그런 다음 보고서의 일부를 클릭하여 찾으십시오.
그런 다음 스크립팅 인덱스를 사용하여 AxisBox를 찾습니다.
Using the scripting index to find messages for an AxisBox스크립팅 인덱스를 사용하여 AxisBox에 대한 메시지 찾기
Re : 그래프 빌더에서 자동으로 변수 조정하기고맙습니다. 그건 완벽하게 작동합니다. Y 축의 제한을 변경하고, 플롯의 유형을 변경하고, 로그 또는 선형을 선택하는 방법을 알아 내려고 노력할 것입니다. 3 가지 기능을 모두 동일한 스크립트에 포함 시키면 매우 강력합니다.Re : 그래프 빌더에서 자동으로 변수 조정하기다음은 동적 플로팅을 수행하는 방법의 예입니다.
Names Default To Here( 1 );
tdt = Open( "$SAMPLE_DATA\semiconductor capability.jmp" );
m = {};
b = 1;
collist = tdt << get column names();
For( z = 35, z <= N Cols( tdt ), z++,
m[b] = Char( collist[z] );
b = b + 1;
);
TheExpr =
"gbfc = tdt << Graph Builder(
Size( 1515, 922 ),
Show Control Panel( 0 ),
Variables(
X( :Wafer ),
Y( Column( tdt, m[1] ) )";
For( i = 2, i <= 5, i++,
TheExpr = TheExpr || ",Y( Column( tdt, m[" || Char( i ) || "] ), Position( 1 ) )";
);
TheExpr = TheExpr ||
"),Elements( Points( X( 1 ), Y( 1 ), Y( 2 ), Y( 3 ), Y( 4 ), Y( 5 ), Legend( 18 ) ) ),
SendToReport( Dispatch( {}, \!"X title\!", TextEditBox, {Set Text( \!"Index / Lot / Wafers\!" )} ) )
);";
Eval( Parse( TheExpr ) );
플롯의 유형이나 축 값을 변경하는 것과 관련하여 JSL을 사용하면 이러한 항목을 구성 할 수 있습니다.