Integración de R, problema con el archivo de envío de RHola,
Este script JSL se ejecuta sin problemas (estoy usando JMP 16.0.0 (512257) en Windows 10 Pro de 64 bits) y genera la salida png esperada de ggplot en 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;Si trato de llamar al script R directamente, con exactamente el mismo código R, falla con el mensaje de error "Error al obtener datos para ''png"".
Aquí está el script 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;
Este script JSL simplificado, mi primer intento, también falla con el mismo código de error:
R Init();
R Submit File( "C:\Users\xxx\R_projects\JMP\R_JPM_integration_1.R" );
R Get Graphics( png );
R Term();
Y aquí está el R-script simple que uso para esta prueba:
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)
Que es idéntico al código R en el primer script.
¿Hay algún problema con la llamada R Enviar archivo? ¿Qué me estoy perdiendo?
preferiría usar R Enviar archivo ya que ahorra trabajo de tipeo.
secuencias de comandosventanasRe: Integración de R, problema con el archivo de envío de REjecuté su código en 16.2 y 17.0 en Windows 10 de 64 bits y obtuve el "Error al obtener datos para ''png"". cuando se ejecuta bajo JMP.
Re: Integración de R, problema con el archivo de envío de RCreo que cuando uso R Enviar archivo, la trama no se escribe en la consola (podría estar equivocado, no he investigado lo suficiente para estar seguro).He solucionado esto leyendo el archivo R como texto en JMP y luego enviándolo usando R Enviar.
Re: Integración de R, problema con el archivo de envío de R¡Gracias!
En efecto, R Enviar funciona bien, vea el código a continuación.
Aún así, me gustaría determinar cómo hacer R Enviar archivo funciona ya que evita tener que copiar scripts R (posiblemente grandes).
Su evaluación de por qué R Enviar archivo no funciona suena plausible pero requeriría un experto de SAS/JMP para confirmar.
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: Integración de R, problema con el archivo de envío de REncontré una solución forzando a R a abrir una ventana de gráficos y trazar explícitamente el gráfico en esa ventana:
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)
Ahora necesito preocuparme por el tamaño de la trama, pero eso es aceptable. Aquí hay una captura de pantalla del script con la ventana de gráficos de JMP:

Re: Integración de R, problema con el archivo de envío de RY no necesito el ventanas() llamada de función tampoco. Simplemente trazando explícitamente llamando al trama ¡La función es suficiente!
Encontré que el mensaje de error JMP ( "Error al obtener datos para "png"" ) desaparece una vez que uso el ventanas llamada de función en R. Simplemente termino con una ventana vacía ya que no hay nada trazado explícitamente en ella.
El siguiente código funciona bien junto con el scipt JSL usando R enviar archivo .
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)