Ottenere le variabili da Nuova finestra in JMP<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ho convertito un comando di dialogo column () in un albero di visualizzazione New Window (), e ho problemi a ottenere alcuni dati dalla finestra di dialogo. Idealmente, voglio solo prendere le colonne specificate nella finestra di dialogo (Y e le variabili di raggruppamento) così come l'impostazione di un pulsante di opzione e uno stato di casella di controllo e un valore di casella di testo. Speravo di precaricare questo in alcune variabili e caricare una funzione, ma non riesco nemmeno a capire come ottenere le variabili all'interno dell'albero di visualizzazione, come il comando "Mostra (yList)" all'interno del ButtonBox ("OK" ,) mostra una lista vuota.
Ecco la funzione dichiarata all'inizio dello script:
startAnaFn = Funzione ({x},
mostra (numparam);
mostra (listaY);
Show (GList);
);
Ecco una versione più breve del mio dialogo:
anaDialog = new window ("Seleziona i parametri da analizzare",
| | | | | | vlistbox ( |
| | | | | | | colListY = ColListBox (width (lbWidth), nLines (6), minitems (1)), |
| | | | | | | checkObj = check box ({"Usa inverso di Y Selection"}, << Set (0,0)), |
| | | | | | ), |
numParam = casella di modifica del testo ("20"),
| hlistbox ( |
| | | |
| | casella di testo(" "), |
| | ButtonBox ( "Ok", |
| | | :: yList = colListY << viene selezionato; |
| | | mostra (ylista); // <- questo non mostra neanche i dati previsti |
| | | gList = colListG << viene selezionato; |
| | | anaDialog << chiudi la finestra; |
| | | startAnaFn (1)), |
| | casella di testo(" "), |
| | ButtonBox ("Annulla", anaDialog << chiudi finestra), |
),
);
PS: Se questo è un forum JMP, perché si suppone che il codice JSL incollato sia in un formato tabella?
Ri: Ottenere le variabili da Nuova finestra in JMPbrutto, ecco il mio brutto scherzo. Apprezzerei se qualcuno potesse fornire una soluzione più elegante. Non so cosa sia con la JSL ma continua a sconcertarmi.
yParamList = {0};
// seleziona tutti i cols
per (i = 1, i <= ncol (dtData), i ++,
colonna (i) << imposta selezionato (1);
);
fullList = dtData << richiama colonne selezionate ();
yParamList = {0};
for (i = 1, i <= n items (fullList), i ++,
per (k = 1, k <= n elementi (yParamNames), k ++,
if (char (elenco completo) ) == yParamNames, yParamList= elenco completo ; rompere());
);
);
mostra (yParamList);
Ri: Ottenere le variabili da Nuova finestra in JMPL'avevo capito. Stavo usando il tipo sbagliato di affermazione "get". Ecco cosa ha funzionato:
| yParamNames = colListY << ottieni elementi; |
| groupNames = colListG << ottieni elementi; |
| numParamVal = numParam << Get (valore numerico); |
| invertY = checkObj << get; |
| radioRes = radioSel << get; |
| anaDialog << chiudi la finestra; |
| startAnaFn (1)), |
Ma ho un'altra domanda. yParamNames restituisce l'elenco in formato stringa: {"nome colonna 1", nome colonna 2 ", ecc.}.
Come posso convertirlo in {: nome colonna 1: nome colonna 2, ecc.}?
Grazie