Mögliche automatische Diagrammerstellung im JSL-Skript hinzufügen?Hallo,
Ich habe eine JSL geschrieben, um experimentelle Daten zu organisieren, die 22 Datentabellen (entsprechend den Produkten) aktualisiert, die jeweils Spalten für verschiedene physikalisch-chemische Parameter (z. B. pH-Wert, Osmolalität) enthalten. Derzeit erstelle ich manuell Diagramme mit der Funktion "Graph Builder" und "Skript in Datentabelle speichern". Ich habe mich jedoch gefragt, ob es möglich ist, dies in das JSL-Hauptskript zu schreiben, das meine Datentabellen generiert.
Jedes Diagramm zeigt einen bestimmten Parameter auf der y-Achse und die Zeit auf der x-Achse an. Daher möchte ich Code schreiben, der Diagramme in jeder Datentabelle für jeden Parameter generiert, anstatt die Diagramme manuell erstellen und das Skript speichern zu müssen.
DatentabelleSkriptingBetreff: Kann eine automatische Diagrammerstellung im JSL-Skript hinzugefügt werden?Absolut, Sie können die Möglichkeit hinzufügen, eine Graph Builder-Plattform in JSL in Ihrem Hauptprogramm auszuführen. Wenn Sie den gewünschten Graph Builder interaktiv ausführen, können Sie zum roten Dreieck gehen und Skript speichern auswählen. Wenn Sie es in einem Skriptfenster speichern, wird die für die Erstellung des Diagramms erforderliche JSL angezeigt. Ohne weitere Einzelheiten zu Ihrem Skript ist es ziemlich schwierig, über meinen obigen Vorschlag hinauszugehen.Betreff: Kann eine automatische Diagrammerstellung im JSL-Skript hinzugefügt werden?Hallo Jim,
Dies ist ein Beispiel für ein Graph Builder-Skript in meinem Programm:
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 ) )
));
Ich mache mir Sorgen, dass ich aufgrund der Größe meines Skripts mehr als 100 Iterationen des obigen Skripts schreiben müsste, um alle verschiedenen Datentabellen und Parameter der y-Achse abzudecken. Ich habe mich gefragt, ob ich eine Liste aller Parameter der y-Achse erstellen und diese Liste im obigen Skript aufrufen könnte.
Mein Hauptskript sortiert eine Rohdatendatenbank grundsätzlich in 22 Datentabellen für Produktuntermengen, von denen jede für ein bestimmtes Produkt spezifisch ist. Es gibt ungefähr 30 verschiedene physikalisch-chemische Parameter, von denen jeder ein separates Diagramm gegen die Zeit haben muss. Es gilt jedoch nicht jeder Parameter für jedes Produkt. Das heißt, eine bestimmte Datentabelle darf nur 10 der 30 Parameter enthalten.
Betreff: Kann eine automatische Diagrammerstellung im JSL-Skript hinzugefügt werden?Es gibt mehrere Möglichkeiten, dies zu tun. Sie können einfach eine separate Datentabelle erstellen, die für jedes Produkt eine Spalte enthält, und dann die physikochemischen Parameter für dieses Produkt in die Zeilen einfügen. Dann müsste Ihr Skript nur das Produkt bestimmen, an dem es arbeitet, und aus der Spalte in der Konfigurationsdatentabelle die zu verarbeitenden Parameter lesen.
Wenn Sie den Scripting Guide nicht gelesen haben, ist es jetzt an der Zeit, dies zu tun.Betreff: Kann eine automatische Diagrammerstellung im JSL-Skript hinzugefügt werden?Hallo @ DanAlexander ,
Ich stimme zu @ txnelson Das Überprüfen des JSL-Skripthandbuchs wäre angesichts der Komplexität Ihrer Bemühungen wirklich hilfreich.
Um Ihnen den Einstieg zu erleichtern, finden Sie hier ein Beispiel, das versucht, etwas Ähnliches wie das von Ihnen Beschriebene zu tun.
Die Funktion "Setup" erstellt einige Datenansichten aus der Beispieldatei "CrimeData.jmp", um Ihre Produktteilmengen zu simulieren und sie verschiedenen Teilmengen der Tabellenspalten zuzuordnen.
Die "build_graphs" zeigen, wie Sie mit JSL Diagramme aus einer Vorlage erstellen. Es ist eine einfache Sache, eine variable Substitution zu verwenden.
Die Diagramme werden mithilfe eines V-Listenfelds in einem einzigen Fenster kombiniert.
Ich hoffe das ist hilfreich!
Betreff: Kann eine automatische Diagrammerstellung im JSL-Skript hinzugefügt werden?Ich frage mich nur, ob dies mit der Funktion "Für jede Zeile" möglich ist, wenn jede Zeile einem anderen Parameter der y-Achse entspricht, wie Sie gesagt haben.
Betreff: Kann eine automatische Diagrammerstellung im JSL-Skript hinzugefügt werden?Vielen Dank, dass Sie das Beispielskript für die Funktionen Setup und Build-Graphs freigegeben haben. Ich konnte diese Funktionen erfolgreich für mein Skript anpassen!
Ich habe mich gefragt, ob es möglich ist, das Diagrammfenster als separate Datei im selben Verzeichnis wie meine Datentabellen zu speichern. Ich verwende die Funktion 'Schließen' in meinem gesamten Skript, um die verschiedenen Datentabellen zu speichern, bin mir jedoch nicht sicher, wie ich die Funktion zum Speichern der mit dem V-Listenfeld in der Funktion 'Build_graphs' generierten Diagrammfenster verwenden soll.
Zum Beispiel habe ich in meinem gesamten Skript Variationen von:
Close( dtProduct, Save( save_path_example || "dtProduct.JMP"));
Betreff: Kann eine automatische Diagrammerstellung im JSL-Skript hinzugefügt werden?Hallo,
Ja, das kannst du sicher. Ich wusste nicht wie, aber ein kurzer Blick in die verfügbaren Optionen für das Fensterobjekt im Skriptindex zeigte mir die Funktion "Fensterbericht speichern".
Bitte beachten Sie die angehängte Datei. Es behebt einen Fehler in der Funktion build_graphs (es wurde keine Fensterreferenz zurückgegeben) und fügt am Ende des Skripts die folgende Zeile hinzu:
win << Save Window Report( "automated_gb2.jrp", embed data( 1 ) );
Betreff: Kann eine automatische Diagrammerstellung im JSL-Skript hinzugefügt werden?Hallo,
Ich habe versucht, die Funktion "Fensterbericht speichern" zu verwenden, aber das Skript gibt den Fehler im angehängten Bild aus.Seltsamerweise habe ich diese Funktion auch nicht im Scripting-Index für Window Object gefunden.
Der Fehler lautet wie folgt: 'Send Expects Scriptable Object beim Zugriff oder bei der Auswertung von' Send ', win << / * ### * / Save Window Report ("automatisiert_gb2.jrp", Daten einbetten (1)) / * ## # * /