그래프 빌더의 각 그래프를 목록 배열의 제목과 함께 이미지 파일로 저장하는 방법모두들 안녕,
내 결과를 pptx에 저장하는 방법을 찾으려고 노력했습니다. 템플릿을 보고 먼저 각 결과를 파일에 저장한 다음 템플릿 보고서로 컴파일해야 한다는 것을 깨달았습니다.
다음 포스트에 따르면
https://community.jmp.com/t5/Discussions/the-graph-size-exported-to-pptx-Save-Presentation/mp/72135#M35554
그러나 루프 아래에 생성된 목록에 따라 내 파일의 이름을 지정하는 방법을 찾을 수 없었습니다. 다음 Big Class 예제를 사용하고 있습니다.
dt2 = Open( "$SAMPLE_DATA\Big Class.JMP" );
win = New Window( "Graphs", lub = Lineup Box( N Col( 2 ) ) );
ages = (Associative Array( Column( dt2, "age" ) ) << Get keys);
For( i = 1, i <= N Items( ages ), i++,
dt2 << select where( :age == ages[i] );
dt = dt2 << subset( invisible, selected rows( 1 ), selected columns( 0 ) );
lub << append(
gb = dt << Graph Builder(
Variables( X( :weight ), Y( :height ), Wrap( :age, N View Levels( 1 ) ) ),
Elements( Points( X, Y, Legend( 7 ) ), Smoother( X, Y, Legend( 9 ) ) ),
Local Data Filter(
Close Outline( 1 ),
Add Filter(
columns( :age ),
Where( :age == ages[i] ),
Display( :age, Size( 224, 126 ), List Display )
)
)
);
Report( gb )[AxisBox( 2 )] << Min( 0 );
gb<< save picture(Eval Insert("C:\....\BigClass^i^.png"));););이 작업을 수행하는 방법을 아는 사람이 있습니까?
대신 아래를 사용해 보았지만 작동하지 않습니다.
gb << Save Picture( "C:\BigClass_" || Ages[i] ||".jpg", JPEG );
이를 위해 다른 문자열/목록을 만들어야 합니까? 모든 안내를 부탁드립니다.
감사해요
Re: 그래프 빌더의 각 그래프를 목록 배열의 제목과 함께 이미지 파일로 저장하는 방법귀하의 질문에 직접 답할 수는 없지만 접근 방식에 대한 몇 가지 생각입니다. 스크립팅을 보기 전에 point'n'clikc를 통해 이러한 항목을 탐색할 수 있습니다.
1. 그래프 빌더에서 페이지 역할을 사용할 수 있습니다. 이렇게 하면 페이지에서 변수의 각 수준에 대한 축이 있는 별도의 도표가 생성되기 때문입니다.
dt = Open( "$SAMPLE_DATA\Big Class.JMP" );
Graph Builder(
Size( 518, 2948 ),
Show Control Panel( 0 ),
Variables( X( :weight ), Y( :height ), Page( :age ) ),
Elements( Points( X, Y, Legend( 5 ) ), Smoother( X, Y, Legend( 6 ) ) )
);
2. 파워포인트로 저장 기능을 사용하는 방법에 대해 생각해 볼 가치가 있습니다. 모든 보고서에서: 파일 > 다른 이름으로 저장 > 파일 형식: Powerpoint 프레젠테이션. 프레젠테이션 저장()은 JSL 함수입니다.
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = bivariate( y( :weight ), x( :height ) );
rbiv = biv << report;
rbiv << Save Presentation( "$TEMP/jmp_example.pptx" );
Open( "$TEMP/jmp_example.pptx" );
도움이 되길 바랍니다.
문안 인사,
필
Re: 그래프 빌더의 각 그래프를 목록 배열의 제목과 함께 이미지 파일로 저장하는 방법@gzmorgan0
답장을 보내 주셔서 감사합니다.
pptx에서 보고서를 작성해야 하는 시점까지 JSL을 사용하려고 합니다. 목록 이름에 따라 그래프를 저장하는 이유는 이 목록의 각 요소에 대한 보고서를 만들어야 하기 때문입니다.
아래에 JSL 스크립트를 넣었습니다. 스크립트는 작동하지만 해당 목록 이름으로 그래프를 저장하지 않고 각 그래프를 sample_1로 저장합니다. sample_2... 등. 예를 들어 내 sample_1의 이름은 "EH3"이지만 이름은 매월 변경되므로 이상적으로는 목록에서 이름을 가져오는 데 필요합니다.
여전히 각 Sample[i]에 대한 요약 표를 추가하고 그래프와 함께 pptx에 추가해야 합니다. 이것이 가능한가?
win = New window("Graphs", lub = Lineup Box (Ncol(3)));
//selecting the list of samples or variables for which a graph is required
Samples = (Associative Array(Column (dt4, "Sample"))<<GET keys=""></GET>
Re: 그래프 빌더의 각 그래프를 목록 배열의 제목과 함께 이미지 파일로 저장하는 방법당신의 마지막 게시물은
gb<< save picture(Eval Insert("C:\temp\^i^.png") ||Char(Ages[i])||".jpg",JPEG););구문을 살펴보십시오. Ages[i] = 12인 i=1의 경우 "C:\temp\1.png12.jpg" 문자열이 생성됩니다.
gb<< save picture("C:\temp\Age_" ||Char(Ages[i])||".jpg",JPEG););에프 또는 i=1 여기서 Ages[i] = 12이면 문자열 "C:\temp\Age_12.jpg"가 생성됩니다.
귀하의 원래 예는 귀하의 목록으로 :age 열의 고유한 값을 사용했습니다.저장이 작동하지 않고 잘못된 구문 때문이 아닌 경우 목록의 값에 유효한 Windows 이름이 될 수 없는 기호가 있을 수 있습니다. 지금까지 귀하의 참조 링크를 열지 않았습니다. p3icli를 사용하여 pptx를 만드는 경우 제목에는 p3icli 명령을, 복잡한 이름이나 설명에는 캡션을 사용할 수 있습니다. 저는 이 방법을 사용하여 감사 제어 한계에 대한 보고서를 작성했습니다.
- p3icli 명령 목록을 만들고 cmdlist를 호출한 다음 각각에 대해 p3icli 명령을 cmdlist에 삽입합니다.
- ~을 위한 새 슬라이드 삽입 또는 중복 템플릿
- 콤플렉스에 대한 명령 제목 표시할 차트에 대한 컨텍스트 매개 변수 정보, 데이터 날짜 등을 제공합니다.
- fid1 또는 fid2와 같은 간단한 이름을 사용하여 그림을 삽입하는 명령
- 한계가 너무 느슨하거나 너무 빡빡한지 여부 등의 분석을 기반으로 한 캡션에 대한 명령입니다.
이 개요는 저장된 파일 이름을 사용하는 대신 p3icli 제목 및 캡션 옵션을 사용하는 그림으로 작성했습니다.
적절한 포럼이 아닌 p3icli에 대한 대안을 사용해야 하는 경우 개인 메시지를 보내주십시오.
목록을 검토한 후 목록에서 @ # % ( ) - ^와 같은 비정상적인 기호를 찾지 못한 경우 실제 JSL 코드의 스니펫과 오류 메시지를 제공해야 합니다.
Re: 그래프 빌더의 각 그래프를 목록 배열의 제목과 함께 이미지 파일로 저장하는 방법확실히 작동하지만 내가 원하는 것은 아닙니다. 사진을 저장할 때와 같은 이미지를 갖고 싶습니다 <<Re: 그래프 빌더의 각 그래프를 목록 배열의 제목과 함께 이미지 파일로 저장하는 방법나는 다음과 같은 것을 생각하고 있었지만 이제는 축을 캡처하지 않기 때문에 원하는 것이 아닐 수도 있다는 것을 깨달았습니다.
dt2 = Open( "$SAMPLE_DATA\Big Class.JMP" );
gb = dt2 << Graph Builder(
Size(800, 600),
Variables( X( :weight ), Y( :height ), Wrap( :age ) ),
Elements( Points( X, Y ), Smoother( X, Y ) )
);
Report( gb )[AxisBox( 2 )] << Min( 0 );
dt = gb << make into data table();
for each row(dt,
img = :graph;
img << save image(Eval Insert("$DOCUMENTS/BigClass^char(:age)^.png"));
);
Re: 그래프 빌더의 각 그래프를 목록 배열의 제목과 함께 이미지 파일로 저장하는 방법@XanGregg
그러면 각 테이블을 어떻게 참조합니까? 그런 다음 각 테이블을 List라는 이름의 그림으로 어떻게 저장하시겠습니까?
이 Big Class 예제에서 이 작업을 수행하는 방법을 보여줄 수 있습니까?
감사해요
Re: 그래프 빌더의 각 그래프를 목록 배열의 제목과 함께 이미지 파일로 저장하는 방법@gzmorgan0
팁 고마워. 이 예제에서는 Big Class에 대해 작동합니다. 그러나 내 scrypt에서는 작동하지 않습니다.
나는 두 명령을 모두 시도했고 첫 번째 명령만 내 스크립트에서 작동하지만 ^i^를 숫자로 바꾸고 목록으로 가지고 있는 이름/문자는 바꾸지 않습니다. 두 번째 명령은 Big Class 예제에서 제대로 작동하므로 Char()가 이름에 적용되지 않을 수 있습니다.
gb<< save picture(Eval Insert("C:\temp\BigClass^i^.png"));
//and also
gb << Save Picture( "C:\temp\BigClass_" || char(Ages[i]) ||".jpg", JPEG );
);
또한 명령의 첫 번째 줄에서 Char() 함수를 사용해 보았지만 "||" Eval Insert()에서 작동하지 않는 것 같습니다.
C:\temp\^i^.png") ||Char(Ages[i])||".jpg",JPEG););gb<< save picture(Eval Insert("
이 문제를 해결하는 방법을 알고 있습니까?
Re: 그래프 빌더의 각 그래프를 목록 배열의 제목과 함께 이미지 파일로 저장하는 방법Ages[i] 주위에 Char() 함수가 필요합니다. 연관 배열 Ages의 값은 숫자입니다.아래 스크립트는 c:\temp\ 디렉토리에 쓰고 있습니다. 또한 주석 처리된 문도 작동합니다.save 문 전에 Append() 문을 닫아야 합니다.
dt2 = Open( "$SAMPLE_DATA\Big Class.JMP" );
win = New Window( "Graphs", lub = Lineup Box( N Col( 2 ) ) );
ages = (Associative Array( Column( dt2, "age" ) ) << Get keys);
For( i = 1, i <= N Items( ages ), i++,
dt2 << select where( :age == ages[i] );
dt = dt2 << subset( invisible, selected rows( 1 ), selected columns( 0 ) );
lub << append(
gb = dt << Graph Builder(
Variables( X( :weight ), Y( :height ), Wrap( :age, N View Levels( 1 ) ) ),
Elements( Points( X, Y, Legend( 7 ) ), Smoother( X, Y, Legend( 9 ) ) ),
Local Data Filter(
Close Outline( 1 ),
Add Filter(
columns( :age ),
Where( :age == ages[i] ),
Display( :age, Size( 224, 126 ), List Display )
)
)
);
);
Report( gb )[AxisBox( 2 )] << Min( 0 );
//gb<< save picture(Eval Insert("C:\temp\BigClass^i^.png"));<BR />
gb << Save Picture( "C:\temp\BigClass_" || char(Ages[i]) ||".jpg", JPEG );
);
Re: 그래프 빌더의 각 그래프를 목록 배열의 제목과 함께 이미지 파일로 저장하는 방법"gb << Make Into Data Table()"이 도움이 됩니까? 이미지 열이 있는 새 데이터 테이블을 만듭니다.