안녕하세요!
여러 샘플의 매개변수를 그래프로 표시하는 스크립트를 작성하려고 했습니다. 샘플은 XX-AA라는 방식으로 이름이 지정됩니다. 여기서 XX는 샘플의 ID/이름이고 AA는 샘플의 타임스탬프입니다(1일, 2일, 3일 등).
현재 문제는 그래프 빌더를 사용하여 여러 샘플을 서로 위에 플로팅하고 JSL 스크립트 내에서 수행할 수 있는 변경 사항을 확인하는 것입니다. 형식이 지정된 샘플 명명법 XX-AA에 대해 그래프에서 매개변수 Y를 플롯하도록 하지만 X축 레이블을 변경하여 타임스탬프 AA에 대해 플롯하도록 하는 것이 의도입니다.
현재 FJ와 WW라는 두 가지 샘플에 대한 Graph Builder 스크립트가 있습니다. 서로의 위에 플롯하기 위해 더 많은 다른 샘플을 추가할 계획이므로 밝혀지는 또 다른 문제는 아래와 같이 스크립트의 비효율성입니다. 또한 부착물에서 FJ와 WW가 실제로 서로 위에 있지 않고 X축이 2,4,6,8처럼 보이고 그 뒤에 또 다른 2,4,6,8이 오는 것을 볼 수 있습니다.
Graph Builder(
Size( 532, 447 ),
Show Control Panel( 0 ),
Variables( X( :Sample ), Y( :Mass ), Overlay( :Sample Name ) ),
Elements( Points( X, Y, Legend( 3 ), Jitter( 0 ) ), Line( X, Y, Legend( 4 ) ) ),
SendToReport(
Dispatch(
{},
"Sample ID",
ScaleBox,
{Label Row(
{Tick Mark( Label( "FJ-02" ), Label( "2" ) ),
Tick Mark( Label( "FJ-03" ), Label( "3" ) ),
Tick Mark( Label( "FJ-04" ), Label( "4" ) ),
Tick Mark( Label( "FJ-05" ), Label( "5" ) ),
Tick Mark( Label( "FJ-06" ), Label( "6" ) ),
Tick Mark( Label( "FJ-07" ), Label( "7" ) ),
Tick Mark( Label( "FJ-08" ), Label( "8" ) ),
Tick Mark( Label( "WW-02" ), Label( "2" ) ),
Tick Mark( Label( "WW-03" ), Label( "3" ) ),
Tick Mark( Label( "WW-04" ), Label( "4" ) ),
Tick Mark( Label( "WW-05" ), Label( "5" ) ),
Tick Mark( Label( "WW-06" ), Label( "6" ) ),
Tick Mark( Label( "WW-08" ), Label( "8" ) )}
)}
),
Dispatch( {}, "X title", TextEditBox, {Set Text( "Time (days)" )} )
)
)
이 문제를 해결하기 위해 생각한 한 가지 방법은 샘플 이름 형식 XX-AA의 타임스탬프(AA) 구성 요소만 보고 날짜만 표시하는 새 열을 스크립트에서 생성하도록 하는 것이었습니다. 더 효율적이고 효과적인 대체 방법이 있는지 궁금합니다.
미리 감사드립니다!

원본 게시물의 스크립트에는 다음 줄이 포함되어 있습니다.
Variables( X( :Sample ), Y( :Mass ), Overlay( :Sample Name ) ),
다음과 같이 교체해 보십시오.
Variables(
X( Transform Column( "Day", Formula( Num( Word( 2, :Sample, "-" ) ) ) ) ),
Y( :Mass ),
Overlay( :Sample Name )
),편집하다: 이렇게 하면 SendToReport 블록도 삭제해야 할 것입니다.