È possibile aggiungere la creazione automatica del grafico nello script JSL?Ciao,
Ho scritto un JSL per organizzare i dati sperimentali che aggiorna 22 tabelle di dati (corrispondenti ai prodotti), ciascuna contenente colonne per diversi parametri fisico-chimici (es. PH, osmolalità). Attualmente, sto creando manualmente grafici utilizzando la funzione Graph Builder e "salvataggio dello script nella tabella dati", tuttavia mi chiedevo se fosse possibile scrivere questo nello script JSL principale che sta generando le mie tabelle dati?
Ogni grafico mostra un particolare parametro sull'asse ye l'ora sull'asse x, quindi voglio scrivere codice che generi grafici in ogni tabella dati per ogni parametro, piuttosto che dover creare manualmente i grafici e salvare lo script.
Tabella datiScriptingRi: Possibile aggiungere la creazione automatica del grafico nello script JSL?Assolutamente, puoi aggiungere la possibilità di eseguire una piattaforma Graph Builder in JSL nel tuo programma principale., Se esegui interattivamente il generatore di grafici che desideri, puoi quindi andare al triangolo rosso e selezionare Salva script. se lo salvi in una finestra di script, sarai in grado di vedere il JSL richiesto per produrre il grafico. Senza ulteriori dettagli sulla sceneggiatura, è piuttosto difficile andare oltre il mio suggerimento di cui sopra.Ri: Possibile aggiungere la creazione automatica del grafico nello script JSL?Ciao Jim,
Questo è un esempio di uno script per la creazione di grafici nel mio programma:
Graph Builder(
Size( 1263, 901 ),
Variables(
X( :Name( "Time (Months)" ) ),
Y( :Name( "% Adsorption" ) ),
Overlay( :Lot Number )
),
Elements(
Points( X, Y, Legend( 13 ) ),
Line Of Fit( X, Y, Legend( 15 ), Confidence of Fit( 0 ) )
));
La mia preoccupazione è che, a causa delle dimensioni del mio script, dovrei scrivere più di 100 iterazioni dello script sopra per coprire tutte le diverse tabelle di dati e parametri dell'asse y. Mi chiedevo se potevo creare un elenco di tutti i parametri dell'asse y e richiamare quell'elenco nello script sopra?
Il mio script principale ordina fondamentalmente un database di dati grezzi in 22 tabelle di dati "sottoinsieme di prodotti", ciascuna delle quali è specifica per un particolare prodotto. Esistono circa 30 diversi parametri fisico-chimici, ciascuno dei quali deve avere un grafico separato rispetto al tempo. Tuttavia, non tutti i parametri si applicano a ogni prodotto. Cioè una particolare tabella di dati può contenere solo 10 dei 30 parametri.
Ri: Possibile aggiungere la creazione automatica del grafico nello script JSL?Ci sono molti modi per farlo. Si potrebbe semplicemente creare una tabella di dati separata che abbia una colonna per ogni prodotto e quindi posizionarla nelle righe per i parametri fisico-chimici per quel prodotto. Quindi lo script dovrebbe solo determinare il prodotto su cui sta lavorando e leggere dalla colonna nella tabella dei dati di configurazione i parametri da elaborare.
Se non hai letto la Guida allo scripting, è arrivato il momento di farlo.Ri: Possibile aggiungere la creazione automatica del grafico nello script JSL?Ciao @DanAlexander ,
Io secondo @txnelson che controllare la JSL Scripting Guide sarebbe davvero utile data la complessità di ciò che stai cercando di fare.
Ma per iniziare, ecco un esempio che tenta di fare qualcosa di simile a quello che hai descritto.
La funzione "setup" crea alcune visualizzazioni di dati dal file di dati di esempio "CrimeData.jmp", per simulare i tuoi sottoinsiemi di prodotti e li associa a diversi sottoinsiemi delle colonne della tabella.
"Build_graphs" mostra come utilizzare JSL per creare grafici da un modello. È una semplice questione di utilizzare la sostituzione delle variabili.
I grafici vengono combinati in un'unica finestra utilizzando una casella di riepilogo V.
Spero che questo sia utile!
Ri: Possibile aggiungere la creazione automatica del grafico nello script JSL?Mi chiedo solo, potrebbe essere possibile farlo utilizzando la funzione "Per ogni riga", se ogni riga corrisponde a un diverso parametro dell'asse y come hai detto.
Ri: Possibile aggiungere la creazione automatica del grafico nello script JSL?Grazie per aver condiviso lo script di esempio con le funzioni Setup e Build-graphs. Sono stato in grado di adattare con successo queste funzioni per il mio script!
Mi chiedevo, è possibile salvare la finestra del grafico come file separato nella stessa directory delle mie tabelle di dati? Uso la funzione "Chiudi" in tutto lo script per salvare le diverse tabelle di dati, ma non sono sicuro di come utilizzare la funzione per salvare le finestre del grafico generate utilizzando V List Box nella funzione "Build_graphs".
Ad esempio in tutto il mio script ho variazioni di:
Close( dtProduct, Save( save_path_example || "dtProduct.JMP"));
Ri: Possibile aggiungere la creazione automatica del grafico nello script JSL?Ciao,
Sì, certo che puoi. Non sapevo come, ma una rapida occhiata alle opzioni disponibili per l'oggetto Finestra nell'indice di scripting mi ha indirizzato alla funzione "Salva rapporto finestra".
Per favore guarda l'allegato. Risolve un bug nella funzione build_graphs (non restituiva il riferimento alla finestra) e aggiunge la seguente riga alla fine dello script:
win << Save Window Report( "automated_gb2.jrp", embed data( 1 ) );
Ri: Possibile aggiungere la creazione automatica del grafico nello script JSL?Ciao,
Ho provato a utilizzare la funzione "Salva rapporto finestra", tuttavia lo script restituisce l'errore nell'immagine allegata.Inoltre stranamente non ho trovato quella funzione nell'indice di scripting per Window Object.
L'errore si legge come segue: "Send Expects Scriptable Object in access or evaluation of" Send ", win << / * ### * / Save Window Report (" automatic_gb2.jrp ", embed data (1)) / * ## # * /