Di solito non mi interessa quando JMP (JSL) fa qualcosa che non mi aspetto che faccia perché la maggior parte delle volte lo fa funzionare ed è l'unica cosa che mi interessa ... ma oggi ho trovato qualcosa di "interessante" . Se usi Where() per filtrare la tua analisi, ti ritroverai con una tabella di dati privata che è collegata alla tua tabella di dati (con un nome abbastanza strano, in questo caso "Big Class, where -sex == -F-")
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
nw = New Window("",
V List Box(
gb1 = dt << Graph Builder(
Size(534, 456),
Show Control Panel(0),
Variables(X(:height), Y(:weight), Overlay(:sex)),
Elements(Points(X, Y, Legend(3)))
),
gb2 = dt << Graph Builder(
Size(534, 456),
Show Control Panel(0),
Variables(X(:height), Y(:weight), Overlay(:sex)),
Elements(Points(X, Y, Legend(3))),
Where(:sex == "F")
)
)
);
Show(gb1 << Get Data Table);
Show(gb2 << Get Data Table);
/*
dt_private = gb2 << Get Data Table;
dt_private << New Data View;
*/
Quindi ho alcune domande riguardo a questo comportamento:
- Succede sempre quando uso Where() in questo modo per filtrare l'analisi (non solo in Graph Builder)?
- Questo è documentato da qualche parte?
- Ci sono più interazioni come questa in JMP in cui crei alcune cose nascoste che potresti incontrare in questo modo (per me questo ha causato problemi con una delle mie funzioni perché ho usato << Ottieni tabella dati per ottenere il riferimento per la tabella dati ma ne ho sbagliato uno, la soluzione facile era aggiungere il riferimento alla tabella alla funzione come parametro
- Dovrei anche filtrare in questo modo?