Eliminar y agregar variables de ajuste en el generador de gráficos con JSLCuando agrego manualmente una línea en el generador de gráficos a través de la función de secuencia de comandos del gráfico de vestuario en la ventana y luego la envuelvo o agrupo con una variable nominal, las ventanas apiladas tendrán copiada la misma línea de vestuario.
Haga clic con el botón derecho en las ventanas de gráficos --> Personalizar --> haga clic en el botón "+" (agregue la entrada "Secuencia de comandos") y agregue la secuencia de comandos de línea (por ejemplo, con la opción Muestras --> "Arrastrar línea").
Pero si luego guardo el script en la tabla de datos, cada ventana ahora tiene una entrada para agregar el gráfico de disfraces y puede volverse muy larga. Necesitaría programar un bucle for complicado para agregar el código gráfico a cada ventana.
Quiero hacer los mismos pasos en JSL que a mano:
- crear gráfico
- establecer línea de vestuario
- agregar la columna de ajuste
Gráficossecuencias de comandosRe: Eliminar y agregar variables de ajuste en el generador de gráficos con JSLFragmento de código para agregar y eliminar una variable de ajuste. Esto provino de la cumbre de descubrimiento en línea 2021 unsession JSL scripting.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
//make initial graph
gb = Graph Builder(
Variables( X( :height ), Y( :weight ) ),
Elements( Points( X, Y ), Smoother( X, Y ) )
);
//get a reference to the grab builder box
gbb = Report( gb )[Graph Builder Box( 1 )];
Wait( 1 );
//add a wrap variable to demonstrate adding
gbb << Add Variable( {:age, Role( "Wrap" )} );
Wait( 1 );
//remove wrap variable
gbb << Remove Variable( {:age, Role( "Wrap" )});
Wait( 1 );
//add graphics script
gbb[frame box( 1 )] << Add Graphics Script(
2,
Description( "" ),
If( Is Empty( g_x4 ),
g_x4 = [52.92, 68.48, 70.56];
g_y4 = [119.69, 139.30, 124.01];
);
Drag Line( g_x4, g_y4 );
);
//add wrap variable
gbb << Add Variable( {:age, Role( "Wrap" )} );Guión de @Julian Muchas gracias.
Re: Eliminar y agregar variables de ajuste en el generador de gráficos con JSLEl siguiente ejemplo utiliza el mensaje <
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
gb = dt << Graph Builder(
Size( 534, 456 ),
Show Control Panel( 0 ),
Variables( X( :height ), Y( :weight ) ),
Elements( Points( X, Y, Legend( 2 ) ), Smoother( X, Y, Legend( 4 ) ) )
);
Report( gb )[FrameBox( 1 )] << Add Graphics Script(
If( Is Empty( g_x1 ),
g_x1 = [50.53, 66.28, 64.49];
g_y1 = [102.99, 45.69, 106.10];
);
Drag Line( g_x1, g_y1 );
);
Report( gb )[Graph Builder Box( 1 )] << Add Variable( {:age, Role( "Wrap" )} );
Espero que eso ayude.