Opción para tratar la distribución () como modalHola,
¿Es posible tratar la función "Distribución" como modal? Estoy buscando crear un informe de distribución con un número arbitrario de distribuciones continuas que luego modificaré o cambiaré a través de JSL. Descubrí que se abre un cuadro de diálogo cuando ejecuto el código a continuación, pero la ejecución no se detiene y el resto de mi código se ejecuta antes de que tenga la oportunidad de seleccionar mis columnas de interés.
También he investigado el uso de un cuadro de diálogo de columna, pero no puedo averiguar cómo codificar directamente un objeto de informe de distribución con un número arbitrario de distribuciones continuas. ¡Cualquier aporte sobre cómo lograr esto es muy apreciado!
dist = dt << Distribution( Stack ( 1 ), <<MODAL></MODAL>
vs poner algo como a continuación en un bucle for...
Distribution(
Stack( 1 ),
Continuous Distribution(
Column( As Column( arbitraryName ) ),
Horizontal Layout( 1 )
Vertical( 0 ),
),
);
Muchas gracias,
Connor
Uso de JMP 16.0.0
Automatización y secuencias de comandosExploración y visualización de datosventanasRe: Opción para tratar la distribución () como modalAquí hay una manera de hacer esto.Simplemente coloque la distribución en una ventana modal.
Names Default To Here( 1 );
dt =
// Open Data Table: Big Class.jmp
// → Data Table( "Big Class" )
Open( "$SAMPLE_DATA/Big Class.jmp" );
new window("",modal,
Distribution(
Stack( 1 ),
Continuous Distribution(
Column( As Column( "weight" ) ),
Horizontal Layout( 1 ),
Vertical( 0 ),
)
));

No se ejecutará ningún código más allá de la ventana de ejecución hasta que se presione el botón Aceptar.
Re: Opción para tratar la distribución () como modalLo más probable es que usar la ventana modal como sugirió Jim sea la opción más fácil.
También puede proporcionar expresiones a las plataformas que se ejecutarán después de que el usuario complete las selecciones, pero usar esto suele ser más difícil y no es necesario. Guía de secuencias de comandos > Plataformas de secuencias de comandos > Activar entrada de usuario en plataformas JMP
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << Distribution(Action(doit));
doit = Expr(
New Window("Bivariate", Bivariate(Action(doit2)))
);
doit2 = Expr(Caption("analyses complete"));Re: Opción para tratar la distribución () como modalJaime, gracias por la respuesta. Creo que mi pregunta podría haber necesitado más aclaraciones, pero encontré una manera de hacer lo que quería que se muestra a continuación. Sin embargo, es un poco torpe...
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
dlg = Column Dialog( colList = Col List( "Columns" ), );
numCols = N Items( dlg["colList"] );
startSubstring = ",Continuous Distribution( Column(:";
endSubstring = "), Horizontal Layout( 1 ), )";
mainStr = "Distribution( Stack( 1 )";
For( colCount = 1, colCount <= numCols, colCount++,
myCol = dlg["colList"][colCount];
distStr = startSubstring || Expr( myCol ) || endSubstring;
mainStr ||= distStr;
Show( mainStr );
);
mainStr ||= ")";
dist = Eval( Parse( mainStr ) );
// Code to modify dist goes here
Este es básicamente un cuadro de diálogo de distribución menos eficiente, pero resuelve el problema que tenía antes de que la ejecución no se detuviera cuando le pedí a un usuario que seleccionara sus columnas. Todo esto se hace con la intención de agregar estadísticas a la ventana de distribución resultante. ¡Gracias por tu ayuda!