Recentemente, diverse persone mi hanno chiesto, indipendentemente l'una dall'altra, come filtrare i report in JMP Live. Nello specifico, la domanda era qualcosa del tipo: "Un singolo filtro dati locale in JMP Live può filtrare più grafici o schede in un unico report?". La risposta è sì, è assolutamente possibile in JMP Live, quindi ho pensato che sarebbe stato utile condividere questo trucco in modo che più persone possano imparare come fare.
In breve, per far sì che un filtro dati locale funzioni su più output è necessario un elemento chiamato "casella di contesto del filtro dati", che a sua volta richiede la scrittura di uno script. L'indice di scripting di JMP (Aiuto > Indice di scripting > Casella di contesto del filtro dati) contiene già un esempio che ne illustra il funzionamento.
Jed_Campbell_0-1778876645258.png
Quando eseguo questo esempio, ottengo una nuova finestra con un filtro dati locale a sinistra e un grafico a bolle e un Generatore di grafici a destra. Interagendo con il filtro dati locale, cambiano anche gli altri due elementi nella finestra.
esempio jsl.gif
Quando questa finestra viene caricata su JMP Live, si verifica lo stesso comportamento di filtraggio:
Esempio live di JMP jsl.gif
Per passare da un'interfaccia a più grafici a un'interfaccia a schede, è necessaria una piccola modifica allo script. Nello script seguente, ho aggiunto una casella a schede ( ) per racchiudere il grafico a bolle e il Generatore di grafici.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Window( "Shared Local Filter",
Data Filter Context Box(
H List Box(
dt << Data Filter( Local, Add Filter( columns( :sex ), Where( :sex == "F" ) ) ),
Tab Box( // <-- added tab box here
"Bubble", // <-- each tab needs a title
dt << Bubble Plot(
X( :weight ),
Y( :height ),
Fit To Window( "On" ),
Sizes( :age ),
Title Position( 0, 0 )
),
"Graph", // <-- each tab needs a title
dt << Graph Builder(
Size( 525, 456 ),
Show Control Panel( 0 ),
Fit To Window( "On" ),
Variables( X( :weight ), Y( :age ) ),
Elements( Box Plot( X, Y, Legend( 4 ) ) ),
)
)
)
)
);
L'esecuzione di questo script crea un'interfaccia a schede, in cui il filtro dati locale influisce su entrambe le schede.
Esempio di casella a schede jsl.gif
Caricando questo file su JMP Live, viene visualizzata la stessa interfaccia a schede, con lo stesso comportamento di filtraggio dei dati.
Esempio di finestra di dialogo JMP Live jsl.gif
Questo trucco può essere molto utile per dashboard e altri strumenti in cui un utente potrebbe altrimenti essere costretto a effettuare più selezioni simili se si utilizzassero più filtri dati locali. Mi piacerebbe conoscere degli esempi di situazioni in cui lo avete trovato utile.