R 통합, R 제출 파일 관련 문제안녕,
이 JSL 스크립트는 아무런 문제 없이 실행되며(Windows 10 Pro 64비트에서 JMP 16.0.0(512257)을 사용하고 있습니다) 다음에서 예상되는 png 출력을 생성합니다. ggplot JMP에서:
LoadExprs = Expr(
InitR = Expr(
R Init();
R Submit( "
library(dplyr)
library(ggplot2)
library(palmerpenguins)
" );
);
MakePlot = Expr(
R Submit(
Eval Insert(
"\[
ggplot(data = penguins, aes(x = bill_length_mm, y = flipper_length_mm, colour = species)) +
geom_point() +
facet_wrap(. ~ island, nrow = 3)
]\
"
);
);
);
CapturePlot = Expr(
JMP_plot = R Get Graphics( png );
New Window( "Imported Plot", Picture Box( JMP_Plot ) );
);
RunClose = Expr(
R Term(); //Close r connection
);
);
LoadExprs;
InitR;
MakePlot;
CapturePlot;
RunClose;정확히 동일한 R 코드를 사용하여 R 스크립트를 직접 호출하려고 하면 "''png"에 대한 데이터 가져오기 실패"라는 오류 메시지와 함께 실패합니다.
다음은 JSL 스크립트입니다.
LoadExprs = Expr(
InitR = Expr(
R Init();
);
RunR = Expr(
R Submit File( "C:\Users\xxx\R_projects\JMP\R_JPM_integration_1.R" );
);
CapturePlot = Expr(
JMP_plot = R Get Graphics( png );
New Window( "Imported Plot", Picture Box( JMP_Plot ) );
);
RunClose = Expr(
R Term(); //Close r connection
);
);
LoadExprs;
InitR;
RunR;
CapturePlot;
RunClose;
첫 번째 시도인 이 단순화된 JSL 스크립트도 동일한 오류 코드와 함께 실패합니다.
R Init();
R Submit File( "C:\Users\xxx\R_projects\JMP\R_JPM_integration_1.R" );
R Get Graphics( png );
R Term();
이 테스트에 사용하는 간단한 R 스크립트는 다음과 같습니다.
library(dplyr)
library(ggplot2)
library(palmerpenguins)
ggplot(data = penguins, aes(x = bill_length_mm, y = flipper_length_mm, colour = species)) +
geom_point() +
facet_wrap(. ~ island, nrow = 3)
첫 번째 스크립트의 R 코드와 동일합니다.
R 제출 파일 호출에 문제가 있습니까? 내가 무엇을 놓치고 있습니까?
나는 사용하는 것을 선호합니다 R 파일 제출 타이핑 작업을 절약합니다.
스크립팅윈도우Re: R 통합, R 제출 파일 관련 문제Windows 10 64비트에서 실행되는 16.2 및 17.0에서 코드를 실행하고 JMP에서 실행할 때 "''png"에 대한 데이터 가져오기 실패".
Re: R 통합, R 제출 파일 관련 문제R 제출 파일을 사용할 때 플롯이 콘솔에 기록되지 않는 것 같습니다(틀릴 수 있습니다. 충분히 파고들지 않았습니다).저는 R 파일을 텍스트로 JMP에 읽은 다음 R 제출을 사용하여 제출함으로써 이 문제를 해결했습니다.
Re: R 통합, R 제출 파일 관련 문제R이 그래픽 창을 열고 해당 창에 그래프를 명시적으로 표시하도록 강제하여 해결 방법을 찾았습니다.
library(dplyr)
library(ggplot2)
library(palmerpenguins)
windows(800,600)
p <- ggplot(data = penguins, aes(x = bill_length_mm, y = flipper_length_mm, colour = species)) +
geom_point() +
facet_wrap(. ~ island, nrow = 3)
plot(p)
이제 플롯 크기에 대해 걱정해야 하지만 허용됩니다. 다음은 JMP 그래픽 창이 있는 스크립트의 스크린샷입니다.

Re: R 통합, R 제출 파일 관련 문제감사!
물론, R 제출 잘 작동합니다. 아래 코드를 참조하세요.
그래도 만드는 방법을 결정하고 싶습니다. R 파일 제출 (아마도 큰) R 스크립트를 복사할 필요가 없기 때문에 작동합니다.
이유에 대한 귀하의 평가 R 파일 제출 작동하지 않는 것이 그럴듯하게 들리지만 확인하려면 SAS/JMP 전문가가 필요합니다.
LoadExprs = Expr(
InitR = Expr(
R Init();
);
RunR = Expr(
R Submit ( "
library(dplyr)
library(ggplot2)
library(palmerpenguins)
ggplot(data = penguins, aes(x = bill_length_mm, y = flipper_length_mm, colour = species)) +
geom_point() +
facet_wrap(. ~ island, nrow = 3)
" );
);
CapturePlot = Expr(
JMP_plot = R Get Graphics( png );
New Window( "Imported Plot", Picture Box( JMP_Plot ) );
);
RunClose = Expr(
R Term(); //Close r connection
);
);
LoadExprs;
InitR;
RunR;
CapturePlot;
RunClose;
Re: R 통합, R 제출 파일 관련 문제그리고 나는 필요하지 않습니다 창() 함수 호출 중 하나. 다음을 호출하여 명시적으로 플로팅하기만 하면 됩니다. 구성 기능은 충분합니다!
JMP 오류 메시지( ""png"에 대한 데이터 가져오기 실패" )를 사용하면 사라집니다. 창문 R에서 함수 호출 아무것도 명시적으로 플롯되지 않았기 때문에 빈 창으로 끝납니다.
아래 코드는 다음을 사용하는 JSL scipt와 함께 잘 작동합니다. R 제출 파일 .
library(dplyr)
library(ggplot2)
library(palmerpenguins)
p <- ggplot(data = penguins, aes(x = bill_length_mm, y = flipper_length_mm, colour = species)) +
geom_point() +
facet_wrap(. ~ island, nrow = 3)
plot(p)