USL 및 LSL 사양 제한에 따른 가변성 차트 Y축 자동 스케일링이상값 데이터가 있는 경우 내 차트는 항상 혼합 또는 최대 포인트에 맞게 크기가 조정되어 차트가 표시되지 않습니다.
매개변수 내에 이미 포함된 USL 및 LSL 제한 매개변수를 기반으로 가변성 차트 Y축을 동적으로 설정하기 위해 JSL 스크립트를 사용할 수 있습니까? 조언을 부탁드립니다. 감사해요
Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정Alert를 발생시키는 코드 앞에 올바른 열 개수 등이 있는지 확인한 후 문제를 처리하는 데 필요한 코드를 추가해야 합니다.Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정하나의 항목/열만 호출하는 경우 "JMP 경고"를 어떻게 처리합니까?
"for 루프"로 인해 이 경고가 발생합니다.
Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정그렇게 하면 그래프를 표시하는 데 시간이 더 오래 걸리는 것 같은 느낌이 듭니다.
귀하의 지원에 다시 한번 감사드립니다!
Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정내가 보기에는 괜찮아 보인다. 다른 개선 사항은 데이터를 모르기 때문에 잘 모르겠습니다.Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정안녕하세요 짐,
여러분의 많은 지원에 감사드립니다!
더 나은 그래프를 위해 코드를 개선했습니다.
owr[i][AxisBox( 2 )] << Min( spec["LSL"] - 0.1 * (spec["USL"] - spec["LSL"]) ) <<
Max( spec["USL"] + 0.1 * (spec["USL"] - spec["LSL"]) ) << Inc( (spec["USL"] - spec["LSL"]) / 10 );
owr[i][AxisBox( 2 )] << Format( Best, 6 );
당신도 할 일인가요?
아니면 더 우아한 방법이 있습니까?
Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정새로운 요청을 처리하는 데 필요한 변경 사항은 아래 스크립트를 참조하세요.대부분의 경우 모든 열 목록은 목록을 JMP에 표현하는 Eval() 함수를 사용하여 플랫폼 요청으로 대체될 수 있습니다.참조
Eval( colList )
아래 스크립트에서.
이제 스크립팅 가이드의 표시 트리 섹션을 읽었다고 가정하면 표시 개체에 전달할 수 있는 메시지는 스크립팅 인덱스의 예제와 함께 문서화되어 있습니다.
도움말==>스크립팅 색인
AxisBox()에 대한 메시지를 검사하면 사용 가능한 모든 메시지를 볼 수 있습니다.그 중에는 Inc()가 있습니다.최소 및 최대 축 값을 변경한 후 그래프의 값을 보장하는 데 사용되는 축 증분의 변경입니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
colList = {"NPN1", "PNP1"};
For( i = 1, i <= N Items( colList ), i++,
// Turn on Show Limits
spec = Column( dt, colList[i] ) << Get Property( "Spec Limits" );
If( Is Empty( spec ) == 0,
LSL = Try( spec["LSL"], . );
USL = Try( spec["USL"], . );
Target = Try( spec["Target"], . );
Eval(
Substitute(
Expr(
Column( dt, colList[i] ) << Set Property(
"Spec Limits",
{LSL( __LSL__ ), USL( __USL__ ), Target( __Target__ ), Show Limits( 1 )}
),
),
Expr( __LSL__ ), LSL,
Expr( __USL__ ), USL,
Expr( __Target__ ), Target
)
);
);
);
// create the graphs
ow = Oneway(
Y(
eval(colList)
),
X( :site ),
All Graphs( 0 ),
Plot Quantile by Actual( 1 ),
Line of Fit( 0 ),
Std Dev Lines( 1 ),
Legend( 0 ),
SendToReport(
Dispatch(
{"Normal Quantile Plot"},
"Oneway QuantilePlot",
FrameBox,
{Row Legend(
Corner,
Color( 1 ),
Color Theme( "" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);
owr = ow << report;
// adjust the axes
For( i = 1, i <= N Items( owr ), i++,
spec = Column( dt, colList[i] ) << Get Property( "Spec Limits" );
(owr[i])[AxisBox( 2 )] << Min( spec["LSL"] ) << Max( spec["USL"] )
<< inc ((spec["USL"] - spec["LSL"]) / 10 );
);Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정감사해요! 효과가 있었습니다.
1)
스크립트를 사용하여 x축 설정을 조정하는 데 도움을 주실 수 있나요?
LSL과 USL 사이에는 값이 없습니다.
아마도 의미 있는 Tick/Bin 증분으로 x축을 자동으로 조정하는 전략이 있을까요?
2)
줄 수 있나요? colList = { "NPN1" , "PNP1" } ; 에게
아야 = 일방 통행 (
와이 (
: 이름 ( "NPN1" ) ,
: 이름 ( "PNP1" )
) , --> :Name(), :Name() 대신

Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정다음은 축을 올바르게 지정하는 방법을 보여주는 스크립트입니다.당신이 공부해야 할 새로운 학습은 디스플레이 트리 조작입니다.이는 JMP 문서 라이브러리에 있는 스크립팅 가이드에 문서화되어 있습니다.
도움말==>JMP 문서 라이브러리

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
colList = {"NPN1","PNP1"};
For(i=1,i<=N Items(colList),i++,
// Turn on Show Limits
spec = column(dt,colList[i]) << Get Property( "Spec Limits" );
If( Is Empty( spec ) == 0,
LSL = Try( spec["LSL"], . );
USL = Try( spec["USL"], . );
Target = Try( spec["Target"], . );
Eval(
Substitute(
Expr(
column(dt, colList[i]) <<
Set Property(
"Spec Limits",
{LSL( __LSL__ ), USL( __USL__ ),
Target( __Target__ ), Show Limits( 1 )}
),
),
Expr( __LSL__ ), LSL,
Expr( __USL__ ), USL,
Expr( __Target__ ), Target
)
);
);
);
// create the graphs
ow = Oneway(
Y(
:Name( "NPN1" ),
:Name( "PNP1" )
),
X( :site ),
All Graphs( 0 ),
Plot Quantile by Actual( 1 ),
Line of Fit( 0 ),
Std Dev Lines( 1 ),
Legend( 0 ),
SendToReport(
Dispatch(
{"Normal Quantile Plot"},
"Oneway QuantilePlot",
FrameBox,
{Row Legend(
Corner,
Color( 1 ),
Color Theme( "" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
);
owr = ow << report;
// adjust the axes
For( i=1, i<= n items(owr),i++,
spec = column(dt,colList[i]) << Get Property( "Spec Limits" );
(owr[i])[AxisBox(2)] << min(spec["LSL"])<<MAX></MAX>
Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정안녕,
아래에서 이 스크립트를 수정하여 그래프를 LSL 및 USL로 자동 조정하는 방법을 알아보세요.
@martindemel

Oneway(
Y(
:Name( "test1" ),
:Name( "testn" )
),
X( :Corner ),
All Graphs( 0 ),
Plot Quantile by Actual( 1 ),
Line of Fit( 0 ),
Std Dev Lines( 1 ),
Legend( 0 ),
SendToReport(
Dispatch(
{"Normal Quantile Plot"},
"Oneway QuantilePlot",
FrameBox,
{Row Legend(
Corner,
Color( 1 ),
Color Theme( "" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
)Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정안녕,
내 추세 차트에 동일한 솔루션을 사용하고 싶지만 구문 문제가 있습니다.
내 제한 열 이름이 "CENTERLINE", "LCL_HS", "UCL_HS"인 경우 어떤 필드를 변경해야 하는지 아는 사람이 있나요?
또한 열별로 이변량 차트를 만드는 경우 조정이 필요한 경우도 있나요?
감사해요!
Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정고마워요 짐. 완벽하게 작동합니다!Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정다음은 USL 및 LSL을 사용하여 최대 및 최소 축 설정을 지정하는 정확한 코드를 보여주는 예제 스크립트입니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
// Turn on Show Limits
spec = dt:NPN1 << Get Property( "Spec Limits" );
If( Is Empty( spec ) == 0,
LSL = Try( spec["LSL"], . );
USL = Try( spec["USL"], . );
Target = Try( spec["Target"], . );
Eval(
Substitute(
Expr(
dt:NPN1 <<
Set Property(
"Spec Limits",
{LSL( __LSL__ ), USL( __USL__ ),
Target( __Target__ ), Show Limits( 1 )}
),
),
Expr( __LSL__ ), LSL,
Expr( __USL__ ), USL,
Expr( __Target__ ), Target
)
);
);
// Build the Chart
vc = Variability Chart(
Y( :NPN1 ),
X( :lot_id ),
Max Iter( 100 ),
Conv Limit( 0.00000001 ),
Number Integration Abscissas( 128 ),
Number Function Evals( 65536 ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
Std Dev Chart( 1 )
);
// Set the Min and Max
Report( vc )[axisbox( 1 )] << Max( spec["USL"] );
Report( vc )[axisbox( 1 )] << Min( spec["LSL"] );Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정안녕하십니까?
충고에 감사하다. 하지만 불행히도 그것은 내가 찾고 있는 해결책이 아닙니다. 축 상자에는 사용자에게 최소/최대 값을 수동으로 입력하라는 메시지가 표시됩니다. 나는 JSL이 인간의 상호 작용 없이 LSL 및 USL 사양이 포함된 매개변수에 따라 자동으로 크기 조정을 처리하기를 원합니다.
그렇게 할 수 있는 옵션이 있습니까?
Re: USL 및 LSL 사양 제한을 기반으로 가변성 차트 Y축의 자동 크기 조정간단한 대답은 '예'입니다......참조
도움말==>스크립팅 인덱스==>축 상자
다음은 이변량을 사용하는 스크립팅 인덱스의 예입니다. 그러나 변동성 차트에도 동일한 기능을 사용할 수 있습니다.
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = Bivariate(
Y( :weight ),
X( :height ),
FitLine
);
rbiv = biv << report;
axisbox = rbiv[axis box( 1 )];
axisbox << Max( 120 );