var.의 자동 SPEC 제한 차트안녕
Y 축 : NewValue 및 X 축 : ENTITY에 표시되는 변동성 차트를 생성하는 스크립트를 만들었습니다.
변동성 차트는 ATTRIBUTE_NAME에 의해 필터링되므로 모든 속성 이름마다 많은 그래프를 얻습니다.
스크립트가 추가 데이터 테이블 ( "가스 SPEC 제한"이라고 함)의 관련 SPEC 제한을 새 열에 추가하고 특정 SPEC 값으로 각 속성 이름에 대한 변동성 차트를 생성하려고합니다.
어떻게하는지 이해할 수 없었습니다. 도와주세요!
여기에 첨부 된 3 가지 속성에 대해 USL을 수동으로 생성하는 데 실패한 스크립트가 있습니다.
dt = 현재 데이터 테이블 ();
dt << 새 열 ( "USL",
숫자,
마디 없는,
공식 (If (: ATTRIBUTE_NAME == "Gas07TactrasFlowCheckF2", 65,
If (: ATTRIBUTE_NAME == "Gas08TactrasFlowCheckF2", 70,
If (: ATTRIBUTE_NAME == "Gas04TactrasFlowCheckF2", 15, 10)
)))
);
varch = dt << 변동 차트 (
Y (: NewValue),
X (: ENTITY),
By (: ATTRIBUTE_NAME)
범위 막대 표시 (0),
셀 평균 표시 (0)
셀 평균 연결 (0),
구분 기호 표시 (0)
표준 데브 차트 (0),
지터 포인트 (1),
AIAG 라벨 (0),
ATTRIBUTE_NAME
SendToReport (
급파(
{},
"1",
스케일 박스,
{참 조선 추가 (__Upper__, "Solid", "Black", "gfgfd", 1)}
),
급파(
{},
"단방향 플롯",
액자,
)
)
);
For (i = 1, i <= N 행 (dt), i ++,
report (varch) [axisbox (1)] << 참 조선 추가 (dt : LSL [i], "Solid", "Dark Green", "Target", 1);
report (varch) [axisbox (1)] << 참조 라인 추가 (dt : USL [i], "Solid", "Dark Green", "", 1);
);
다시 : var의 자동 SPEC 제한 차트스크립트에 2 가지 문제가 있습니다
- 변동성 차트는 출력에 대해 1 개의 보고서 구조를 출력하지 않지만 각 By 그룹에 대한 보고서 구조를 출력합니다. 따라서
Report( varch )[AxisBox(1)]
잘못된 참조 인 경우 참조 페이지와 같이 참조하려는 보고서 구조를 지정해야합니다. 가스 07TactrasFlowCheckF2 "는 알파벳순으로 그룹별로 첫 번째입니다. 참조는
Report( varch[1] )[AxisBox(1)]
- For () 루프는 데이터 테이블의 각 행에 대한 참조 라인 세트를 작성합니다. 데이터 테이블에 수백 개의 행이있을 수 있다고 가정하고 동일한 줄을 반복해서 쓰고있을 것입니다. 해야 할 일은 만들려는 각 VarChart에 대해 단 하나의 행으로 요약 테이블을 만든 다음 해당 테이블을 통해 해당 변동성 차트에 값을 적용하는 것입니다.
스크립트 작성 방법을 보여주는 예를 첨부했습니다.
names default to here(1);
dt=Open("$SAMPLE_DATA/big class.jmp");
// add the USL and LSL to the data as in your example
dt << New Column( "LSL", formula(
If(:Age == 12, 52,
:Age == 13, 57,
:Age == 14, 62,
:Age == 15, 64,
:Age == 16, 64,
64
)
));
dt << New Column( "USL", formula(
If(:Age == 12, 65,
:Age == 13, 66,
:Age == 14, 70,
:Age == 15, 70.5,
:Age == 16, 71,
72
)
));
// Create a summary table with one row for each level of Age
dtSum = dt << Summary(
Group( :age ),
Mean( :LSL ),
Mean( :USL ),
Freq( "None" ),
Weight( "None" ),
statistics column name format( "column" )
);
varch = dt << Variability Chart( Y( :height ), X( :sex),by(:age));
// For each row of the summary table, take it's values add apply to the appropriate
// chart in the Variability Chart
For( i=1, i<=N Rows(dtSum), i++,
Report( varch[i] )[axisbox( 1 )] << Add Ref Line( dtSum:LSL[i], "Solid", "Dark Green", "Target", 1 );
Report( varch[i] )[axisbox( 1 )] << Add Ref Line( dtSum:USL[i], "Solid", "Dark Green", "", 1 );
);다시 : var의 자동 SPEC 제한 차트답변 주셔서 감사합니다!
스크립트를 더욱 발전시키기 위해 현재 테이블을 분석하려는 데이터와 함께 다른 데이터 테이블 (SPEC 제한)과 일정하고 변경되지 않습니다.
SPEC 제한 데이터 테이블에는 "Gas__TactrasFlowCheckF_", "LSL", "TARGET", "USL"열이 포함됩니다.
첫 번째 열 "_"기호는 각 가스에 대해 4 가지 유형의 유량 설정을 사용하여 1-14 개의 다른 가스에 대한 옵션을 나타냅니다.
데이터를 하나의 테이블에 결합하면 각 가스 유형에 대한 모든 사양 제한을 기록하는 것보다 쉽습니다.
2 개의 데이터 테이블은 1 개의 열 "Gas__TactrasFlowCheckF"만 공유하며 스크립트가 각 행의 현재 테이블에 3 개의 SPEC 제한을 추가하려고합니다.
데이터 테이블을 조인 한 후 첫 번째 응답의 스크립트를 사용하여 var를 생성합니다. 특정 사양 설정과 함께 각 가스 흐름에 대한 차트.
두 번째로 만들고 싶은 것은 이변 량 플롯입니다.
X 축에서 i는 "시간"을, Y 축에는 "값"을 배치합니다. 각 흐름 설정에 대해 하나의 플롯을 생성합니다.
각 줄에 참 조선 ( "LSL", "TARGET", "USL")을 추가하는 데 어려움을 겪었습니다.
도움을 주셔서 감사합니다.
감사