차트/분석용 기존 스크립트를 수동으로 실행하지 않고 차트 및 분석 데이터를 저널로 보내기 위한 스크립트를 작성하려면 어떻게 해야 합니까?안녕하세요,
JMP에서 제품 테스트 데이터를 분석하는 데 사용하는 많은 스크립트가 있습니다.
스크립트는 일반적으로 테스트 데이터 파일에서 여러 열을 호출합니다.
각 테스트 실행은 ID로 태그가 지정되며 새 테스트 실행 데이터를 JMP로 가져오기 위해 이 ID만 변경됩니다. 데이터 분석에 사용되는 스크립트는 동일하게 유지됩니다.
내 분석을 공유하기 위해 (현재) 차트 및 분석 데이터(예: 중앙값 및 표준 편차 등)가 포함된 PPT 슬라이드 팩을 수동으로 만듭니다.
JMP 저널로 이동하고 싶습니다.
다른 분석 스크립트를 자동으로 실행하거나 실행하지 않고 차트와 분석 데이터를 JMP 저널로 보내는 스크립트를 가질 수 있는지 궁금합니다. 이것이 가능하다면 그러한 저널을 작성하는 예제 스크립트에 대한 도움을 받을 수 있습니까?
감사 해요.
제도법스크립팅창Re: 차트/분석용 기존 스크립트를 수동으로 실행하지 않고 차트 및 분석 데이터를 저널로 보내기 위한 스크립트는 어떻게 합니까?'JMP 저널 스크립팅'에 대한 웹 검색은 더 많은 예를 제공하지만 올바른 방향을 가리킬 수 있습니다.
Names default to here(1);
dt = Open("$SAMPLE_DATA\Big Class.jmp");
// New Journal with a couple headings
nw = New Window("My Journal", <<JOURNAL></JOURNAL>Re: 차트/분석용 기존 스크립트를 수동으로 실행하지 않고 차트 및 분석 데이터를 저널로 보내기 위한 스크립트는 어떻게 합니까?감사 해요. 예, 이것은 제가 따를 수 있는 접근 방식을 알려줍니다.
단, 저널 생성을 위한 스크립트 내에서 데이터 파일 로딩 스크립트와 그래프 플로팅/분석 스크립트 등을 작성해야 한다는 점에 유의하십시오.
제 경우에는 데이터를 로드하고 필요한 그래프를 그리고 필요한 분석을 생성하는 별도의 스크립트가 이미 있습니다.
나는 거기에 방법 기존 스크립트 참조 저널 스크립트 내에서 다시 작성하지 않고 저널 스크립트 내에서?
Re: 차트/분석용 기존 스크립트를 수동으로 실행하지 않고 차트 및 분석 데이터를 저널로 보내기 위한 스크립트는 어떻게 합니까?기존 스크립트를 수정하지 않으려면 이러한 접근 방식을 시도할 수 있습니다. 스크립트가 테이블에 저장되지 않은 경우 JSL 'Include()' 함수를 살펴보세요.
NamesDefaultToHere(1);
// Returns a list containing the names of all the currently open windows in a session
namesOfOpenWindows =
Function({}, {DefaultLocal},
openWindows = Window();
openWindowNames = {};
For(w=1, w<=NItems(openWindows), w++, InsertInto(OpenWindowNames, OpenWindows[w] << GetWindowTitle));
openWindowNames;
);
// Which windows are open now?
preWindowList = namesOfOpenWindows();
// Open a table
dt = Open("$SAMPLE_DATA/Big Class.jmp");
// Find out what scripts are in the table
dts = dt << GetTableScriptNames;
// Run every script
for (s=1, s<=NItems(dts), s++, dt << runScript(dts[s]));
// Which windows are open now?
postWindowList = namesOfOpenWindows();
// Journal the contents of each 'new' window
for(w=1, w<=NItems(postWindowList), w++,
thisWindow = postWindowList[w];
if (!Contains(preWindowList, thisWindow), Window(thisWindow) << Journal);
);
Re: 차트/분석용 기존 스크립트를 수동으로 실행하지 않고 차트 및 분석 데이터를 저널로 보내기 위한 스크립트는 어떻게 합니까?감사 해요 @ian_jmp .
귀하의 스크립트는 특히 JMP(MATLAB에서 제공)를 처음 접하기 때문에 매우 유용해 보입니다.
그러나 나는 당신이 "나는 f 스크립트는 테이블에 저장되지 않습니다 ".
내 스크립트는 저장되며 새로운 테스트 데이터 분석을 위해 변경되지 않습니다(내 OP에 언급된 대로).
또한 저널로 이동하려면 각 스크립트의 특정 차트와 일부 계산된 분석 데이터(예: JMP에서도 계산하는 다른 매개변수가 아닌 median 및 std-dev 등)만 필요합니다. JSL에서 이것을 달성하는 방법은 무엇입니까?
Re: 차트/분석용 기존 스크립트를 수동으로 실행하지 않고 차트 및 분석 데이터를 저널로 보내기 위한 스크립트는 어떻게 합니까?출력에서 특정 보고서를 선택하는 것은 매우 간단하지만 매우 구체적입니다.시간을 내어 스크립팅 가이드를 읽고 시작하는 것이 좋습니다.그러면 정확한 보고서를 얻는 방법에 대한 특정 질문에 대한 답변이 문서로 제공되거나 커뮤니티에서 답변할 수 있는 더 자세한 질문을 제공할 수 있습니다.
Re: 차트/분석용 기존 스크립트를 수동으로 실행하지 않고 차트 및 분석 데이터를 저널로 보내기 위한 스크립트는 어떻게 합니까?@ian_jmp . 귀하의 스크립트를 다음과 같은 방식으로 사용하려고 합니다.
데이터 파일을 로드하고 다양한 차트를 그리는 스크립트를 작성했습니다.
partID = "part012"; // specifies part ID
DataTable = getDataTable4WfrID2(partID,partID); // loads test data table corresponding to the partID and names it the same as partID
include ("allGraphPlotter.jsl"); //plots all necessary charts위의 스크립트는 예상대로 작동합니다.
그런 다음 (위의 네 번째 줄) 포함하다 차트를 저널로 보내기 위해 아래와 같은 스크립트(주석 처리된 줄 참고)를 사용했지만 작동하지 않습니다.
내가 어디에서 잘못 가고 있습니까 (아마도 내 include 문 또는 함수 호출 예를 들어 output = 이름의OpenWindows() )?
NamesDefaultToHere(1);
// Returns a list containing the names of all the currently open windows in a session
namesOfOpenWindows =
Function({}, {DefaultLocal},
openWindows = Window();
openWindowNames = {};
For(w=1, w<=NItems(openWindows), w++, InsertInto(OpenWindowNames, OpenWindows[w] << GetWindowTitle));
openWindowNames;
);
// Which windows are open now?
preWindowList = namesOfOpenWindows();
// Open a table
//dt = Open("$SAMPLE_DATA/Big Class.jmp");
// Find out what scripts are in the table
//dts = dt << GetTableScriptNames;
// Run every script
//for (s=1, s<=NItems(dts), s++, dt << runScript(dts[s]));
// Which windows are open now?
postWindowList = namesOfOpenWindows();
// Journal the contents of each 'new' window
for(w=1, w<=NItems(postWindowList), w++,
thisWindow = postWindowList[w];
if (!Contains(preWindowList, thisWindow), Window(thisWindow) << Journal);
);
Re: 차트/분석용 기존 스크립트를 수동으로 실행하지 않고 차트 및 분석 데이터를 저널로 보내기 위한 스크립트는 어떻게 합니까?@ian_jmp . 이제 몇 가지 테스트를 더 했습니다. 스크립트의 이 부분이 작동하지 않습니다.
for(w=1, w<=NItems(postWindowList), w++,
thisWindow = postWindowList[w];
if (!Contains(preWindowList, thisWindow), Window(thisWindow) << Journal);
);
스크립트에서 이 위의 모든 것은 예상 결과를 제공하지만 위의 for 루프 블록에 주석을 달 때만 가능합니다.
또한 차트를 저널에 넣지 않기 때문에 내가 잘못하지 않는 한 for look 위의 코드만 예상대로 작동하는 것 같습니다.