Ri: Come codificare i pulsanti di opzione sul grafico interattivo e unirli nella dashboard@Feli ,
Non ho usato DashboardBuilder tranne un semplice esempio. Uso Application Builder o semplicemente scrivo uno script per creare un'applicazione.Ti potrebbe piacere leggerlo. Ad alcuni piace davvero. Altri che hanno scritto script per un po', di solito gestiscono le cose tramite JSL.
Di seguito è riportata una schermata dell'avvio di un ApplicationBuilder per la tua attività.
Penso che leggere il capitolo 11 sia un buon inizio,
Ri: Come codificare i pulsanti di opzione sul grafico interattivo e unirli nella dashboard@gzmorgan0
Molte molte grazie!
Sei riuscito a colpire esattamente la mia soluzione desiderata.
In uno dei miei tanti tentativi precedenti, stavo giocando con le variabili della tabella: ho fatto funzionare i cursori, ma non il pulsante di opzione.
La chiave che mi mancava era:
dt << Set Table Variable("Faktor", Expr(num (cat << Get Selected) ) );La mia variabile di tabella per Faktor era sempre una stringa, che ha incasinato la formula, quindi ho dovuto trovare altri modi.
Stavo cercando di creare il mio grafico utilizzando Dashboard Builder/Application Builder, poiché è stato consigliato da molte persone all'avvio della creazione di JSL/applicazioni, ma implementerò i tuoi suggerimenti e approfondirò ulteriormente i contenitori, ecc.
Molte grazie ancora per il tuo aiuto!
Ri: Come codificare i pulsanti di opzione sul grafico interattivo e unirli nella dashboard@Feli ,
Ci sono diversi elementi in questo script che causeranno problemi.
Il primo è con il gatto, il RadioBox. La sceneggiatura è allegata alla casella di riepilogo, non alla casella radio
//Outline Box( "Select Faktor", cat = Radio Box( {"1", "2", "3", "4"} ),update ) //wrong, see below
Outline Box( "Select Faktor", cat = Radio Box( {"1", "2", "3", "4"} , update ) )
I nomi predefiniti sono Here(1); afferma che i valori delle variabili si applicano solo a questo script.Non è necessario indirizzare lo spazio dei nomi Here e la sintassi è Here:A . Ma ciò comporta un altro problema, le colonne della formula G1scale, G2scale, ecc. avranno una formula come: G1*A.Una volta eseguito lo script o se si tenta di aprire la tabella in un secondo momento, la variabile A è sconosciuta.Un paio di suggerimenti sono:
- creare le variabili della tabella, A, B, C, Faktor con dt << Imposta variabile tabella(A, 1)
- quindi la formula diventa :G1*:A e la tabella riconoscerà quel valore quando lo script non è in esecuzione,
- se esegui lo script più di una volta creerà più G1scale, G1scale 2 ecc. Questo può essere fatto in modo più elegante controllando se la colonna o esiste, se esiste, eliminala o semplicemente assegna la funzione. Inoltre, una volta chiusa la finestra, è possibile eliminare quelle colonne utilizzando una funzione On Close per nw.
Tuttavia, il più grande suggerimento è che se hai intenzione di approfondire lo scripting interattivo dovresti imparare come creare report JMP con
Contenitori: HL ListBox , VListBox , LineupBox , PanelBox .Il tuo script utilizza il file OutlineBox contenitore.
Controlli: ButtonBox , Casella di scorrimento , Casella di controllo , eccetera.
Ingresso: Casella combinata , Casella di riepilogo , ColListBox , eccetera.
Non fare affidamento sulla combinazione di finestre.
Il capitolo 11 della JMP Scripting Guide è un buon punto di partenza. Menu principale > Aiuto > Documentazione JMP > Guida agli script JMP >> Capitolo 11
In allegato è riportato uno script che utilizza questo layout (struttura ad albero)


Come codificare i pulsanti di opzione sul grafico interattivo e unirli nella dashboardCiao a tutti,
Voglio scrivere una piccola dashboard/applicazione in cui è possibile modificare tre variabili A, B, C utilizzando i cursori (livelli continui consentiti) e una quarta variabile Faktor utilizzando i pulsanti di opzione (poiché sono consentiti solo 4 livelli).

Le colonne della mia tabella di dati G1, G2, G3 vengono quindi moltiplicate per A, B, C e Faktor e tracciate insieme alla somma di tutte e tre le nuove colonne utilizzando il generatore di grafici.
Clear Log();
Delete Symbols();
Names Default To Here( 1 );
// default parameter values.
A = 1;
B = 2;
C = 3;
Faktor = 2;
dt = Current Data Table();
dt << New Column( "G1scale", Numeric, Continuous, Formula( (:G1 * Here( 1 ):A) * Here( 1 ):Faktor ) );
dt << New Column( "G2scale", Numeric, Continuous, Formula( (:G2 * Here( 1 ):B) * Here( 1 ):Faktor ) );
dt << New Column( "G3scale", Numeric, Continuous, Formula( (:G1 * Here( 1 ):C) * Here( 1 ):Faktor ) );
dt << New Column( "SumColumn", Numeric, Continuous, Formula( :G1scale + :G2scale + :G3scale ) );
Ho fatto funzionare il mio script così lontano che il trascinamento di un dispositivo di scorrimento aggiorna le colonne della formula nella tabella dei dati, ma ho problemi a fare lo stesso con i miei pulsanti di opzione.
update = Expr(
Here( 1 ):A = p;
Here( 1 ):B = r;
Here( 1 ):C = t;
Here( 1 ):Faktor = Choose( nw1["cat"], 1, 2, 3, 4 );
dt << rerun formulas;
Wait( 0 );
);
nw1 = New Window( "Faktor",
Outline Box( "Select Faktor", cat = Radio Box( {"1", "2", "3", "4"} ),update )
);
nw2=New Window( "Sliding",
Outline Box( "A",
Slider Box(
1,
10,
p,
update
)
),
Outline Box( "B",
Slider Box(
1,
10,
r,
update
)
),
Outline Box( "C",
Slider Box(
1,
10,
t,
update
)
)
);
g1=Graph Builder(
Size( 529, 456 ),
Show Control Panel( 0 ),
Variables(
X( :WL ),
Y( :G1scale ),
Y( :G2scale, Position( 1 ) ),
Y( :G3scale, Position( 1 ) ),
Y( :SumColumn, Position( 1 ) )
),
Elements( Points( X, Y( 1 ), Y( 2 ), Y( 3 ), Y( 4 ), Legend( 3 ) ) ),
SendToReport(
Dispatch( {}, "graph title", TextEditBox, {Set Text( "Simulated Plot" )} ),
Dispatch( {}, "Y title", TextEditBox, {Set Text( "Mygauss" )} )
)
);Non riesco ad aggiornare la tabella dei dati (e quindi il grafico) quando seleziono un pulsante di opzione.
Un secondo problema è che voglio unire le tre finestre correnti in un'unica finestra (cruscotto o applicazione). Posso selezionarli tutti per Combina Windows, ma quando provo a inviarli a Dashboard Builder, viene visualizzata solo la finestra di Graph Builder, non i silders. Come posso trascinare i miei pulsanti sider/radio nel Dashboard/Application builder?
Organizzazione dei contenutiPersonalizzazione di massa