제한 열에서 지정된 사양 제한안녕,
다음 열이 포함된 데이터 테이블이 있습니다. 값 열에 속성으로 제한을 할당하려면 어떻게 해야 합니까?
즉, 날짜별로 값을 표시하면 해당 제한이 자동으로 표시됩니다.

나는 노력했다
:value << set property(
"spec limits",
{LSL( : LCL ) , USL( : UCL ), Target( : Target ), Show Limits( 1 )}
);감사해요!
Re: 제한 열에서 지정된 사양 제한이 트랙의 정보는 JMP 세션에 2개의 데이터 테이블이 열려 있다고 가정합니다.측정 데이터가 포함된 데이터 테이블과 Spec LImits가 포함된 두 번째 테이블.Open() 함수가 "Data.xlsx.dll"이라는 Excel 파일을 여는 중입니다.이것이 측정 데이터인가요, 아니면 한계 데이터인가요?두 경우 모두 Spec Limits를 수정하는 JSL인 Open() 함수에 삽입할 수 없습니다.측정 테이블과 한계값이 포함된 테이블을 모두 완전히 읽어온 후 한계값 업데이트 코드를 적용해야 합니다.
Re: 제한 열에서 지정된 사양 제한안녕하세요 @txnelson ,
저는 JMP를 처음 접했습니다. 이 코드를 어디에 넣을까요? 다음은 소스에 있는 스크립트입니다.
Open(
"Data.xlsx",
Worksheets( {"Sheet2"} ),
Use for all sheets( 1 ),
Concatenate Worksheets( 1 ),
Create Concatenation Column( 1 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" ),
Eval(
Substitute(
Expr(
:value << set property(
"spec limits",
{LSL( __LSL__ ), USL( __USL__ ), ., Show Limits( 1 )}
)
),
Expr( __LSL__ ), :LSL[10],
Expr( __USL__ ), :USL[7],
)
)
)
)
이것은 나에게 효과가 없습니다. 중단점을 어디에 두든 상관없이 중단을 일으키는 스크립트를 디버깅하려고 합니다. 어떤 도움이라도 주시면 감사하겠습니다.
Re: 제한 열에서 지정된 사양 제한기꺼이! Ardbeg Uigeadail을 사용해 본 적이 있나요? Cary에서 열리는 Discovery 2018에 오시나요?
Re: 제한 열에서 지정된 사양 제한싱글 몰트 스카치 1잔 == 맥주 2잔
Re: 제한 열에서 지정된 사양 제한짐:
감사해요! 이제 맥주 두 잔을 빚졌습니다
.
언젠가는 Eval / Expr / Substitute에 대한 두려움을 극복해야 할 것입니다.
Re: 제한 열에서 지정된 사양 제한다음은 이미 설정된 제한을 삭제하지 않고 표시 제한을 설정하는 간단한 스크립트입니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\Semiconductor Capability.jmp" );
mycols = dt << Get Column Names( numeric, string );
For( i = 1, i <= N Items( mycols ), i++,
spec = Column( dt, mycols[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, mycols[i] ) <<
Set Property(
"Spec Limits",
{LSL( __LSL__ ), USL( __USL__ ),
Target( __Target__ ), Show Limits( 1 )}
),
),
Expr( __LSL__ ), LSL,
Expr( __USL__ ), USL,
Expr( __Target__ ), Target
)
);
);
);Re: 제한 열에서 지정된 사양 제한아담:
내 응용 프로그램은 사양 제한에 대해 '그래프 참조선으로 표시'를 전환할 수 있도록 하는 것이었습니다. 프로세스 기능을 수행하고 테이블에서 사양 제한을 로드한 다음 이를 열 속성에 저장한 후 열 중 어느 것도 '그래프 참조선으로 표시'를 선택했습니다. 55개 열의 경우 이 작업을 수동으로 수행하고 싶지 않았습니다(그러나 그렇게 했습니다. 문서를 검색했지만 이 작업을 수행하는 방법을 찾을 수 있었습니다). 이제 이를 수행할 수 있는 JSL이 생겼습니다. 전환하려면 (1)을 (0)으로 변경하세요. 일부 플롯에서는 사양 한계선을 보고 싶지만 다른 플롯에서는 보고 싶지 않습니다.
이름의 기본값은 여기에 있습니다( 1 );
dt = 현재 데이터 테이블();
mycols = dt << 열 이름 가져오기( string );
For( i = 2, i <= N 항목( mycols ), i++,
Column( i ) << Set Property( "Spec Limits", {Show Limits(1)} );
);
따라서 이 JSL은 Show Limits()를 토글하지만 열에 할당된 LSL(), Target(), USL()을 제거합니다.
Show Limits()만 토글할 수 있는 방법이 있는 사람이 있나요?
Re: 제한 열에서 지정된 사양 제한나를 위해 일하지 않고,
예문과 같은 뜻인가요?
biv=Bivariate(
Y( :VALUE ),
X( :DATE ),
By(
:TEST
)
);
biv << Show Limits(1);
Re: 제한 열에서 지정된 사양 제한Show Limits(1) - 저는 어제 스크립팅 가이드에서 여러 열에 이 작업을 수행하는 방법을 검색하고 있었습니다. 감사해요!Re: 제한 열에서 지정된 사양 제한안녕,
원래 질문에 대한 해결책을 제공해 주셔서 감사합니다.
동일한 문제/예에 관한 또 다른 질문이 있습니다.
jsl을 사용하여 추세 차트를 만들 때 제한이 포함되도록 스마트 열 속성이나 추세 차트 속성을 만들 수 있습니까?
행마다 가치와 한계가 있기 때문에 뭔가가 있어야 한다고 생각합니다.Re: 제한 열에서 지정된 사양 제한예제 데이터 테이블에는 LSL 또는 USL이라는 열이 포함되어 있지 않습니다.존재하지만 디스플레이에서 누락되었다고 가정하면 코드에는 몇 가지 문제가 남아 있습니다.먼저 목록 구조에 값을 삽입하려고 합니다.
{LSL( : LSL ) , USL( : USL ), Target( : Target ), Show Limits( 1 )}
이는 목록이기 때문에 자체적으로 구문 분석하고 평가하지 않습니다.
두 번째 항목은 Spec Limits가 열 속성이므로 열:Value에 대해 1개의 Spec Limits 세트만 설정할 수 있다는 것입니다.:LSL, :Target 및 :USL이라는 열이 있는 경우 데이터 테이블에서 해당 제한이 포함된 행을 지정해야 합니다.다음은 사양 제한을 추가하는 데 사용할 수 있는 한 가지 방법입니다.코드에는 :USL, :Target 및 :USL 열이 있고 해당 행 5에는 사용하려는 값이 포함되어 있다고 가정합니다.
Eval(
Substitute(
Expr(
:value << set property(
"spec limits",
{LSL( __LSL__ ), USL( __USL__ ), Target( __Target__ ), Show Limits( 1 )}
)
),
Expr( __LSL__ ), :LSL[5],
Expr( __USL__ ), :USL[5],
Expr( __Target__ ), :Target[5]
)
);