Ciclo del grafico della variabilità per tutte le colonne selezionate con l'impostazione specificata dall'utenteCiao ragazzi,
Sono abbastanza nuovo in JMP Scripting. Ho bisogno di un piccolo supporto. Ora sto progettando un'applicazione che esegue le seguenti operazioni
Passaggio 1: quando l'utente fa clic su un pulsante. Si apre la finestra del grafico della variabilità in cui specifichiamo tutte le colonne per il tracciamento, il raggruppamento dell'asse x e tutte le impostazioni dalla tabella dati attiva corrente
obj = dt << Grafico della variabilità();
Passaggio 2: desidero ottenere gli elementi specificati dall'utente in variabili separate come
col_list = elenco di tutte le colonne selezionate in obj
x_grouping = tutte le variabili x specificate
.. per tutti gli argomenti per Grafico della variabilità()
Passaggio 3: dopo aver estratto tutte le informazioni.. Ora eseguirò un ciclo per ciascuna variabile di colonna ma
per i==1 (prima colonna) traccerò il grafico nel rapporto... l'utente apporterà alcune modifiche (ad esempio aggiungere la legenda, specificare il colore di sfondo, ecc.)
ora applicherò questo modello (tutte le impostazioni in questo grafico) a tutte le colonne e creerò un rapporto in una nuova finestra per ciascuna colonna.
Sto riscontrando un problema nel seguente: passaggio 2 e passaggio 3 come estrarre gli argomenti per Variability Chart() ed eseguire l'azione
PS: ho intenzione di implementarlo parallelamente anche per altri tipi di grafici \
Per favore guida
Automazione e scriptingRi: Ciclo del grafico della variabilità per tutte le colonne selezionate con l'impostazione specificata dall'utenteL'opzione più semplice sarebbe creare tu stesso l'interfaccia utente del programma di avvio del grafico della variabilità. Se non vuoi farlo, puoi usare << Ottieni script per ottenere lo script che è stato avviato e analizzare le colonne da quello
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << Distribution();
dist = Current Report()[OutlineBox(1)] << Get Scriptable Object;
dist << get script;Ri: Ciclo del grafico della variabilità per tutte le colonne selezionate con l'impostazione specificata dall'utentePasso 1
obj = dt << Variability Chart();
si aprirà la finestra di dialogo Grafico della variabilità e quando l'utente fa clic su OK, tutti i grafici verranno eseguiti in quel momento.
Tuttavia, una volta eseguito il grafico della variabilità, è possibile interrogare lo script restituito dalla piattaforma del grafico della variabilità e ottenere le X e le Y
obj = Variability Chart( Y( :NPN1, :PNP1 ), Model( "Main Effect" ), X( :SITE ) );
theScript = char(obj << get script);
theYsList = words(word(1,substr(theScript,contains(theScript,"Y(")+2),")"),",");
theXsList = words(word(1,substr(theScript,contains(theScript,"X(")+2),")"),",");
Per il passaggio 2, è possibile interrogare direttamente il grafico visualizzato e ottenere le varie impostazioni. Dai un'occhiata all'Indice di scripting per sapere come ottenere la dimensione del fotogramma, il minimo e il massimo e l'incremento per i vari assi, ecc., che dovrai applicare alle applicazioni aggiuntive del Grafico della variabilità.
Penso che l'approccio suggerito sarà più un problema che un vantaggio. Suggerisco di piuttosto che utilizzare la finestra di dialogo Grafico della variabilità, ma di creare una propria finestra di dialogo, simile alla finestra di dialogo Grafico della variabilità, che ti consentirà quindi di ottenere tutte le informazioni necessarie in anticipo, quindi i passaggi 2 e 3 verranno diventare molto più facile da implementare.
Consulta la Guida allo scripting per informazioni su come creare la tua nuova finestra di dialogo window.dialog
Ri: Ciclo del grafico della variabilità per tutte le colonne selezionate con l'impostazione specificata dall'utente@txnelson Grazie mille per la tua intuizione. In realtà il mio obiettivo principale è avere una finestra di report separata per ogni colonna. Ad esempio, se seleziono 5 colonne per Y e nel rapporto otteniamo un grafico per tutti e 5 i parametri. se aggiungo legenda, cambio colore ecc. nel primo grafico nella casella Struttura, voglio scrivere uno script per separare ogni trama in una finestra separata utilizzando anche le modifiche che ho apportato alla prima trama. C'è un modo per raggiungere questo obiettivo? Si prega di suggerire
Ri: Ciclo del grafico della variabilità per tutte le colonne selezionate con l'impostazione specificata dall'utenteEcco un esempio di un modo per gestire ciò che credo tu voglia fare. Lo script è molto incompleto e necessita dell'aggiunta di molte eccezioni, ma dovrebbe darti un punto di partenza.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
nw = New Window( "Col List Box Example",
modal,
H List Box(
Col List Box( all, width( 250 ) ),
V List Box(
Lineup Box( N Col( 2 ),
ybb = Button Box( "Y Col" ),
Y = Col List Box( Show( "run" ) ),
xbb = Button Box( "X Col" ),
x = Col List Box(),
Button Box( "Cancel",
nw << close window;
Throw();
),
Button Box( "OK",
ycols = y << get items;
xcols = x << get items;
)
)
)
)
);
// ycols and xcols now have been populated and you can then bring up one graph and
// let the user make the changes
nw = New Window( "Graphical Settings",
modal,
vc = dt << Variability Chart( Y( ycols[1] ), Model( "Main Effect" ), X( xcols[1] ) );
vc << on close(
// In the closing of the Variability Chart capture the script
theScript = Char( vc << get script );
);
);
// Run all of the graphs
For Each( {theCol, index},ycols, Eval( Parse( Substitute( theScript, ycols[1], theCol ) ) ) );