So verwenden Sie Variablen in ÜberlagerungsdiagrammenIch erstelle häufig Overlay-Diagramme für Klimadaten, die ich analysiere, und müssen in der Lage sein, die Benennung der verwendeten Spaltenvariablen schnell zu ändern, damit ich Daten von verschiedenen Standorten aus darstellen kann. Meine Spaltenbenennungskonventionen sind so, dass die Spaltennamen identisch sind, mit der Ausnahme, dass der Name eine Site-ID enthält. Z.B,
Tair, FCO (C)
Tair, FCF (C)
Tair, CH3 (C)
Da ich mehrere Übersichtstabellen und / oder Überlagerungsdiagramme habe, die sich auf dieselben Spaltenvariablen beziehen, möchte ich den JSL-Code so schreiben können, dass ich den in der Übersichtstabelle verwendeten Variablennamen oben und oben einmal ändern kann des Programms und nicht an jedem separaten Ort.
Im folgenden Beispiel fasse ich die Daten von den Standorten FCO und FCF zusammen und plottiere sie. Ich möchte in der Lage sein, schnell zu den Standorten FCO und CH3 zu wechseln, ohne diesen Code an jedem Standort zu ändern. Alle Vorschläge, wie dies zu erreichen ist, werden sehr geschätzt.
sum1 = dt1 << Zusammenfassung (
Gruppe (: Jahr, Monat, Tag des Jahres),
Min (: Name ("Datum & Uhrzeit")),
N (: Name ("Tair, FCO (C)")),
N (: Name ("Tair, FCF (C)")),
// N (: Name ("Tair, CH3 (C)")),
N (: Name ("korrigiert, Tair, FCO (C)")),
);
Datum = Datum MDY (10, 01, 2002);
edate = Datum MDY (11, 31, 2002);
Neues Fenster ("Überlagerungsdiagramm")
V-Listenfeld (
op1 = sum1 << Overlay Plot (
X (: Name ("Min (Datum & Uhrzeit)")),
Y (: Name ("N (Tair, FCO (C))"))
Name ("N (Tair, FCF (C))"),
//: Name ("N (Tair, CH3 (C))"),
: Name ("N (korrigiert, Tair, FCO (C))"),
)
Y-Skala (links, links, links),
Einzelachsen (1),
Überlagerungsdiagramme (1),
Verbindung durch fehlendes (1),
Markergröße (1),
)
Bericht (op1) [Frame Box (1)]
<< Rahmengröße (750, 350),
Bericht (op1) [Achsenbox (1)]
<< Achseneinstellungen ({Format ("Festes Dez", 10, 0), Min (0), Max (25),
Inc (2), Minor Ticks (1), Show Major Grid (1)}),
Bericht (op1) [Achsenbox (2)]
<< Achseneinstellungen ({Format ("m / d / j", 10), Intervall ("Monat"),
Inc (1), Minor Ticks (0), Show Major Grid (1), Show Minor Grid (0),
Min (sdate), Max (edate)})
<< Achsenbeschriftung entfernen
<< Achsenbeschriftung hinzufügen ("Datum"),
)
);2022_Q1 MakeOverChallenge: Aktion per Mausklick auf verschiedene ArtenDas ist die Makeover-Challenge Q1 2022.
Das Ziel ist es, ein Beispiel, Skript oder eine Anleitung zu entwickeln, um eine der drei Aufgaben zu erfüllen (alle haben mit dem Einleiten einer Aktion zu tun, nachdem Sie in JMP auf etwas geklickt haben):
- Herausforderung A: (Bilder und Skript zum Erstellen einer anfänglichen Datentabelle zum Öffnen von Bildern im Anhang: 2022Q1_ChallengeA.zip)
- Sie haben: Eine Datentabellenspalte mit Bildern oder Links zu einer Website oder einer Datei (auch bekannt als Ausdrücke)
- Sie möchten: auf eine Zelle dieser Spalte klicken und den Link oder das Bild außerhalb von JMP öffnen
- Das übergeordnete Ziel: Das Klicken in eine Datentabellenzelle sollte etwas auslösen
- Herausforderung B : (Skript zum Öffnen der Datentabelle und zum Erstellen des angehängten Berichts: 2022Q1_ChallengeB_starterScript.jsl)
- Sie haben: Big Class und einen Graph Builder-Bericht von Gewicht nach Größe (siehe Skript)
- Sie möchten: Das Schließen des Graph Builder-Berichts sollte einen Verteilungsbericht von "Alter" öffnen, diesen Bericht als Bild speichern und den Verteilungsbericht schließen.
- Das übergeordnete Ziel: Das Schließen eines Fensters sollte eine Aktion auslösen
- Herausforderung C: (Skript zum Öffnen der Datentabelle und zum Erstellen des angehängten Berichts: 2022Q1_ChallengeC_starterScript.jsl)
- Sie haben: Einen Graph Builder-Bericht mit Beispieldaten für Wachstumsmessungen.
- Sie möchten: Wenn Sie auf eine Zeile klicken oder mehrere Zeilen (oder Kategorien in der Legende) auswählen, möchten Sie eine Teilmenge der ausgewählten Zeilen generieren.
- Das übergeordnete Ziel: Das Klicken auf ein Diagramm oder einen Bericht sollte eine Aktion auslösen
Sie können an so vielen Herausforderungen arbeiten, wie Sie möchten. Du kannst/solltest deine Antworten direkt als Antwort auf diesen Thread einreichen.
!!! Beginnen Sie beim Absenden bitte in der ersten Zeile damit, auf welche Herausforderung sich Ihre Antwort bezieht, z
HERAUSFORDERUNG A:
Das ist meine Antwort...
// this is my code
...
Beim nächsten Treffen (18. Mai 2022) werden wir einige der Antworten präsentieren und ich werde die besten Antworten als Lösung für diesen Thread markieren.
Freue mich auf eure Einsendungen 
2022_Q1 Video: Begrüßung und Vorstellung des Lenkungsausschusses2022_Q1 Video und Dateien: JSL zum Laufen bringen – praktische JSL-Tipps und Best Practices@martindemel , @DonMcCormack und @jthi teilen ihre Tipps und Best Practices zum Erlernen von JSL.
2022_Q1 Video und Dateien: Praktische Sitzung für JSL-AnfängerAbstrakt:
Verwenden Sie die „Save Script“-Funktion von JMP, um Skripts zu generieren und zu verstehen, was generiert wurde. Lernen Sie die Grundlagen des Skripteditors kennen und erfahren Sie, wo Sie weitere Informationen zum generierten Code finden.
Hi,
im Q1-Meeting 2022 werden wir eine Anfänger-Session haben, um eine erste Anleitung zum Einstieg in das Scripting zu geben (dies ist nicht vergleichbar mit einem Scripting-Training oder dem entsprechenden E-Learning). Es geht wirklich darum, die sehr grundlegenden Dinge kennenzulernen, mit denen Sie sich vertraut machen sollten, noch bevor Sie die verfügbaren Skriptkonzepte lernen.
Im beigefügten Journal finden Sie einen textbasierten Fluss darüber, was wir während dieser 30-minütigen Sitzung durchgehen werden, sowie einige Informationen über den JMP-Skripteditor und weitere Ressourcen.
Am besten,
Martin
_Re: 2022Q1 Praktische Sitzung – AnfängerHi @Ressel
Ich habe diese Diskussion in einen eigenen Thread verschoben ( https://community.jmp.com/t5/JMP-Scripting-Users-Group/Question-on-the-table-references-from-Russel/mp/461463#M11 ), damit auch andere ihre Anleitung geben können. Auf diese Weise können wir hier Fragen stellen und auf einen separaten Thread verweisen und alle Fragen in komprimierter Form sehen (hoffentlich
), und wir können dort die besten Antworten als Lösungen markieren, was hier bei mehr Fragen schwierig wäre.
Am besten,
Martin
Re: 2022Q1 Praktische Sitzung – AnfängerFrage zu den heute gezeigten Tabellenreferenzen: Wenn Sie mehrere Tabellen sequentiell als Teil eines Skripts verarbeiten, iterieren Sie die Tabellenreferenzen endlos (dt1, dt2, dt3, ...) oder gibt es eine intelligentere Lösung?
Hintergrund: Ich bearbeite häufig Tabellen (verknüpfen, verketten, teilen usw.) und habe manchmal ziemlich viele Tabellen, die ich nacheinander öffne, verarbeite und schließe, bevor ich zur nächsten Tabelle im selben Skript übergehe, bis ich die letzte gewünschte Tabelle habe .