모두에게,
다음 스크립트를 작성했습니다. 데이터 테이블을 연 후 데이터를 가져와 그래프 빌더를 사용하여 그래프를 생성합니다. 그런 다음 열린 데이터 테이블과 이름이 같은 그림을로드하고 그 그림을 그래프의 배경으로 사용합니다.
스크립트가 작동하도록하려면 데이터 테이블 이름에 파일 확장자 .png를 이름의 일부로 추가해야했습니다. 그래서 사진과 데이터 테이블의 이름에 .png를 추가하여 이름을 지정해야했습니다 (사진 파일의 확장자는 .png입니다).
예를 들어 사진의 이름이 sample.png이면 sample.png.png로 변경해야했습니다.
물론 나는 이것을 좋아하지 않지만 이렇게 변경하지 않으면 jmp는 그림 파일을 찾을 수 없다고 말합니다.
나는 문제가 더 깨끗한 방법으로 해결 될 수 있다고 확신합니다.
도움을 주셔서 감사합니다.
Names Default To Here(1);
dt=Current Data Table();
gb = dt <<
Graph Builder(
Variables( X( :x ), Y( :y ), Overlay( :track ) ),
Elements( Points( X, Y, Legend( 5 ) ) ),
SendToReport(
Dispatch(
{},
"x",
ScaleBox,
{Min( 0 ), Max( 280 ), Inc( 50 ), Minor Ticks( 1 )}
),
Dispatch(
{},
"y",
ScaleBox,
{Min( 0 ), Max( 265 ), Inc( 50 ), Minor Ticks( 1 )}
),
Dispatch( {}, "Graph Builder", FrameBox, {Transparency( 0.05 )} )
)
);
frame = (gb << report)[FrameBox( 1 )];
n = dt << Get Name();
img = newImage(n);
img<<ROTATE></ROTATE>
Windows에서 데이터 테이블에 대한 Get Name () 메시지는 ".jmp"를 추가하지 않고 테이블 이름 만 반환합니다.
Names Default To Here( 1 );
dt = Open( "$DESKTOP/Big Class.jmp" );
Show( dt << get name() );
로그:
//:*/
Names Default To Here( 1 );
dt = Open( "$DESKTOP/Big Class.jmp" );
Show( dt << get name() );
/*:
dt << get name() = "Big Class";
따라서 New Image ()의 전체 파일 이름을 얻으려면 ".png"를 추가해야합니다.
다음은 Big Class (데스크톱에 복사 됨)와 첨부 된 Big Class.png 파일을 사용한 예입니다.
Names Default To Here( 1 );
dt = Open( "$DESKTOP/Big Class.jmp" );
gb = dt << Graph Builder(
Variables( X( :weight ), Y( :height ), Overlay( :sex ) ),
Elements( Points( X, Y, Legend( 5 ) ), Smoother( X, Y, Legend( 6 ) ) ),
SendToReport( Dispatch( {}, "Graph Builder", FrameBox, {Transparency( 0.5 )} ) )
);
frame = (gb << report)[FrameBox( 1 )];
n = dt << Get Name();
img = New Image( "$DESKTOP/" || n || ".png" );
frame << Add Image(
image( img ),
Bounds(
Left( 61.2587412587413 ),
Right( 179.370629370629 ),
Top( 70.8292080975384 ),
Bottom( 48.5033161162993 )
),
SetSize( {799, 620} )
);
주의 : Mac에서 << Get Name ()은 .jmp를 포함한 전체 파일 이름을 반환합니다. 따라서 Mac에서는 다음을 사용해야합니다. Into ()로 대체 ".jmp"를 ".png"로 바꿉니다.
Names Default To Here( 1 );
dt = Open( "~/Desktop/Big Class.jmp" );
gb = dt << Graph Builder(
Variables( X( :weight ), Y( :height ), Overlay( :sex ) ),
Elements( Points( X, Y, Legend( 5 ) ), Smoother( X, Y, Legend( 6 ) ) ),
SendToReport( Dispatch( {}, "Graph Builder", FrameBox, {Transparency( 0.5 )} ) )
);
frame = (gb << report)[FrameBox( 1 )];
n = dt << Get Name();
Substitute Into( n, ".jmp", ".png" );
img = New Image( "~/Desktop/" || n );
//img<<ROTATE></ROTATE>