Jede JMP-Plattform generiert eine einzigartige Anzeige, es gibt jedoch gemeinsame Funktionen und gemeinsame Objekte im Berichtslayout. Das bekannteste Merkmal eines JMP-Berichts ist das Gliederungsfeld. Die meisten JMP-Benutzer haben wahrscheinlich den Titel eines Gliederungsfelds bearbeitet oder die Schaltfläche umgeschaltet, um die zu diesem Gliederungsfeld gehörenden Diagramme und Analysen anzuzeigen oder auszublenden.
Der nächste Schritt besteht darin, die JSL-Äquivalente dieser Benutzeroberflächenaufgaben zu erlernen, z. B. das Ändern des Titels des Gliederungsfelds oder das Umschalten des Offenlegungssymbols ◢.
Zum Bearbeiten der Berichtsebene sind zwei spezifische Fähigkeiten erforderlich. Eine besteht darin, die gültigen JSL-Nachrichten und die Syntax zu verwenden, die für die angestrebte Anzeigefunktion geeignet sind. Die andere besteht darin, die Adresse der Funktion zu finden, die geändert werden soll. Wir nennen diese letzte Fertigkeit Navigation.
Baumstruktur anzeigen
Die Navigation beginnt fast immer mit einer Karte. Führen Sie das folgende Skript aus, um einen Bericht zu erstellen. Klicken Sie dann mit der rechten Maustaste auf das Offenlegungssymbol ◢ befindet sich links neben dem Gliederungsfeld mit dem Titel „Einseitige Analyse der Körpergröße nach Geschlecht“. Wählen Bearbeiten ► Baumstruktur anzeigen . (Siehe Abbildung 6.5.)
bigclass_dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
bigclass_ht_onew = bigclass_dt << Oneway(
Y( :height ), X( :sex ), Ignore Platform Preferences( 1 ),
Box Plots( 1 ), Means and Std Dev( 1 ), X Axis Proportional( 0 ),
Mean Error Bars( 0 ), Std Dev Lines( 0 )
);
Abbildung 6.5 Menü „Bearbeiten“ – Baumstruktur anzeigen: (L) Gesamter Bericht (R) Y-Achse


Die Baumstruktur wird in einem neuen Fenster angezeigt. Es handelt sich um eine verschachtelte, hierarchische Liste (ja, eine Liste) von Gliederungsfeldern, wobei jedes Gliederungsfeld ein im Bericht verwendetes JMP-Anzeigefeld darstellt. Da die oberste Schaltfläche zum Anzeigen ausgewählt wurde, wird die Baumstruktur für den gesamten Bericht angezeigt. Sie müssen nach unten scrollen, um die vollständige Baumstruktur anzuzeigen. Abbildung 6.6 (L) zeigt diese Baumstruktur, nachdem Sie mit der rechten Maustaste auf die obere Anzeigeschaltfläche geklickt und ausgewählt haben Alle unten schließen , und dann selektiv einige Elemente öffnen.
Abbildung 6.6 Baumstruktur: Verknüpfter Bericht mit hervorgehobener FrameBox(1).
Richten Sie das Baumstrukturfenster und den Einwegbericht aus. Bewegen Sie Ihre Maus über die Enthüllungsschaltfläche für FrameBox(1) und sehen Sie sich die entsprechende Anzeige im Einwegbericht hervorgehoben an. Siehe Abbildung 6.6 (R). Beachten Sie die Liste von IfBox( ) Elemente im Baum. Bewegen Sie den Mauszeiger über jedes Enthüllungssymbol. IfBox(1) enthält den Umriss für den Diagrammteil der Anzeige. IfBox(4) entspricht dem Mittelwerte und Standardabweichungen Tisch. Der IfBox Der Container zeigt seinen Inhalt basierend auf den Objektoptionen an oder verbirgt ihn: Wenn die boolesche Option angegeben ist, wird angezeigt; Wenn nicht, verstecken Sie sich.
Jedes Offenlegungssymbol im Berichtsfenster verfügt über dieselbe Benutzeroberfläche. Dadurch kann der Benutzer die Baumstruktur für einen kleineren Teil des Berichtsfensters anzeigen. Abbildung 6.5 (R) zeigt, dass ein Rechtsklick auf eine Berichtsfensterfunktion wie die Y-Achse ein Menü anzeigt ( Bearbeiten ► Baumstruktur anzeigen) . Mit anderen Worten: Die Baumstruktur kann nicht nur für Umrissfelder angefordert werden.
Schließen Sie die Baumstruktur für den gesamten Bericht. Klicken Sie mit der rechten Maustaste auf die Schaltfläche „Einblenden“ links neben dem Umrissfeld mit dem Titel „Mittelwerte und Standardabweichungen“ und erstellen Sie die Baumstruktur. Wiederholen Sie die gleichen Schritte, aber halten Sie diesmal beim Auswählen die UMSCHALTTASTE gedrückt Baumstruktur anzeigen . Siehe Abbildung 6.7.
Abbildung 6.7 Baumstruktur der Einweganalysemittelwerte und Standardabweichungen – Interaktives Standardformat (L) Klassisches Format (R)
In beiden Baumstrukturformaten werden die Objekte angezeigt, die zum Anordnen der Ausgabe verwendet werden. Jedes Objekt hat das Wort „Box“ im Namen (z. B. OutlineBox, TableBox, StringColBox und NumberColBox). Bei beiden Formaten handelt es sich bei der Anordnung der Objekte um eine verschachtelte, hierarchische Struktur. Die interaktive Standardbaumstruktur (L) erinnert an eine Gliederung. Das klassische Format (R) erinnert an ein Organigramm.
Die interaktive Hervorhebung der Standardbaumstruktur ist nützlich, um den Bericht den Anzeigefeldern seiner Komponenten zuzuordnen. Es ist jedoch lang und es kann schwierig sein, die Grundstruktur zu erkennen, bis strategisch ausgewählte Offenlegungssymbole geschlossen werden. Die Verwendung der klassischen Formatbaumstruktur kann es einfacher machen, die Beziehungen von Objekten im Bericht zu erkennen. Beispielsweise ist die Beziehung von NumberColBox(6) zu TableBox(1) in dieser Organigramm-ähnlichen Anzeige unmittelbar.
Beide Formate sind informativ. Manchmal betrachten wir beides. Bei beiden Formaten ist die Baumstruktur für einen Teil des Berichts leichter zu lesen als die Baumstruktur für den gesamten Bericht.
Verweisen Sie auf die Berichtsebene
Eine Änderung an der Analyseschicht erfordert, dass eine gültige Nachricht an das Plattformobjekt oder das Referenzobjekt für diese Plattform gesendet wird. Für das aktuelle Beispiel ist die Plattform Oneway und das Handle dafür ist die Variablenreferenz bigclass_ht_onew .
//Message to the Analysis Layer
bigclass_ht_onew << Points Jittered(1);
Ebenso muss zum Ändern der Anzeigeobjekte eine gültige Nachricht an die Berichtsebene gesendet werden. Es gibt zwei Möglichkeiten, der Berichtsschicht eine Variablenreferenz zuzuweisen:
//These two lines assign a variable name to the report,
//either syntax is acceptable
rpt_bc_ht_onew = Report( bigclass_ht_onew );
rpt_bc_ht_onew = bigclass_ht_onew << Report;
Um eine Anzeigefunktion zu ändern, muss die gültige Nachricht an die Adresse des Anzeigeobjekts gesendet werden. Der Bericht Die Nachricht (oder Funktion) gibt eine Adresse für das Zielanzeigeobjekt zurück. Für die beiden vorherigen Beispiele gilt: rpt_bc_ht_onew speichert die Adresse für die Oneway-Analyseanzeige, den Oneway-Berichtslayer. Sehen Sie sich die in Abbildung 6.5 (L) dargestellten Rahmenmeldungen an. Anhand der Berichtsadresse, der Verschachtelung und der Adressen der in der Baumstruktur angezeigten Felder sollte dieser nächste Satz von Anweisungen ersichtlich sein:
bigclass_ht_onew << Bring Window to Front;
//line up this script and this window, run 1 line at a time
rpt_bc_ht_onew[OutlineBox(1)] << Close;
rpt_bc_ht_onew[OutlineBox(1)] << Open All Below;
rpt_bc_ht_onew[OutlineBox(1)] << Close(1);
rpt_bc_ht_onew[OutlineBox(1)] << Close(0);
Jedes Anzeigeobjekt ( OutlineBox , TableBox , StringColBox ) gehört zu einer umfassenderen Klassifizierung namens Display-Box. Der Name OutlineBox (oder NumberColBox usw.) ist der Klassenname eines Objekts. Eine wichtige Fähigkeit, die es zu erlernen gilt, ist das Durchlaufen der Baumstruktur, was im Abschnitt „Navigieren in einem Bericht“ in diesem Kapitel erläutert wird.
Mit JMP ist es einfach, gültige Nachrichten für die meisten Anzeigefeldobjekte zu finden. Wählen Sie im JMP-Skriptindex aus Anzeigefeld ► OutlineBox . Beachten Sie zunächst die Meldungen, die häufig in der Liste der Menüoptionen in Abbildung 6.5 auftreten. Finden Sie die Nachricht Schließen . In der Beschreibung heißt es, dass diese Nachricht ein boolesches Argument hat. Schauen Sie sich die Beispielskripte für an Holen Sie sich den Titel Und Titel festlegen, und führen Sie die folgende JSL-Anweisung aus:
rpt_bc_ht_onew[OutlineBox(1)] << Set Title("Limit Mousing via JSL");Glückwunsch! Sie haben gerade die JSL-Äquivalente zum Ein- und Ausblenden sowie zum Ändern des Titels eines Gliederungsfelds kennengelernt.
Bevor wir diesen Abschnitt verlassen, bieten wir noch eine weitere nützliche Fähigkeit an: die Möglichkeit, Teile der Berichtsebene mithilfe der Nachrichten auszuwählen und abzuwählen Wählen Und Abwählen . Diese beiden Meldungen sind für jede Art von Anzeigebox verfügbar und können zum Hervorheben eines Teils der Anzeige verwendet werden. Hier verwenden wir diese beiden Nachrichten, um zu testen, ob die Adresse für ein Anzeigefeld korrekt ist, bevor wir das Anzeigefeld ändern. Hier ist ein Ausschnitt aus 6_ReportLayer.jsl mit skriptgesteuerten Verzögerungen, um den Auswahlprozess zu sehen:
rpt_bc_ht_onew[TableBox(1)] << Select;
wait(2);
rpt_bc_ht_onew[TableBox(1)] << Deselect;
rpt_bc_ht_onew[TableBox(1)][NumberColBox("Std Dev")] << Select;
wait(2);
rpt_bc_ht_onew[TableBox(1)][NumberColBox("Std Dev")] << Deselect;
Das letzte Paar Wählen Und Abwählen Anweisungen ist eine Vorschau der Berichtsnavigation, die im Abschnitt „Navigieren in einem Bericht“ beschrieben wird. Die Position des auszuwählenden Anzeigefelds finden Sie, indem Sie oben im Bericht beginnen und dann nach unten gehen TableBox(1) . Innerhalb der TableBox(1) Untergebene, Sie werden das finden NumberColBox beschriftet Standardabw .
Das Erstellen eines Berichts und das Finden gültiger Meldungen für Anzeigefeldobjekte ist unkompliziert: Verwenden Sie die Skriptindex für Vitrine . Auch das Navigieren in einem einfachen Bericht kann unkompliziert sein. Es gibt jedoch noch mehr zu lernen, und die Navigation kann schwierig werden, wenn der Bericht komplexer ist oder die Analyse viele Y-, X- und By-Spalten umfasst. Der nächste Abschnitt, „Display-Box-Scripting“, empfiehlt eine Leseliste, um die lange Liste der Display-Boxen und ihrer Meldungen zu bewältigen.
Der Inhalt dieses Blogs wurde aus einem Auszug unseres Buches zusammengefasst. JSL Companion: Anwendungen der JMP® Scripting Language, Zweite Ausgabe , wo Sie weitere Techniken und Beispiele für die Arbeit mit der JMP-Skriptsprache finden.