In dieser Demonstration sehen wir uns an, wie die Anzeigefelder in der Berichtsebene organisiert sind, und sehen, wie wir auf den Inhalt dieser Anzeigefelder zugreifen können. Also klicke ich im Abschnitt des Kursjournals auf Cure Time Data. Ich werde also nur eine einfache Korrelationsanalyse und eine einfache lineare Regression mit den Cure-Time-Daten mit zwei meiner Cure-Time-Spalten in der bivariaten Plattform durchführen. Und wir werden sehen, wie wir das Auswahlwerkzeug verwenden können, um den Bericht zu untersuchen und diese Berichtsebene zu verstehen. Also gehe ich zum Menü „Analysieren“ und wähle „Y nach X anpassen“. Und ich setze Cure Time in die Y-Rolle und Cure Time in die X-Rolle und klicke dann auf OK. Und ich gehe zum roten Dreieck neben Bivariate Anpassung und wähle Dichteellipse aus. Und ich werde die Option nutzen. Und dann zurück im Menü mit dem roten Dreieck oben wähle ich Fit Line aus. Das gibt uns also viele Komponenten unseres Anzeigebaums. Interaktiv können wir also das Auswahlwerkzeug verwenden, um Teile des Berichts auszuwählen. Und wir wählen tatsächlich Schaukästen aus. Wenn ich also zu meinem Menü und meiner Symbolleiste komme, kann ich einfach dieses große weiße Pluszeichen erhalten, oder Sie können ein S für das Auswahlwerkzeug eingeben, oder Sie können zum Menü „Werkzeuge“ gehen. Das ändert also meinen Cursor. Und wenn ich diesen Graphen auswählen möchte, denken Sie vielleicht, dass Sie einfach in die Mitte klicken würden. Aber ich bekomme eigentlich nur die Rahmenbox, die eine der Anzeigeboxen ist, die diesen Teil des Berichts ausmachen. Dann denke ich vielleicht, na ja, ich muss da rausklicken. Und dann bekomme ich einfach ein Zugangsfeld, das wiederum ein weiteres Anzeigefeld ist, das diesen Teil des Berichts ausmacht. Und wenn ich das interaktiv mache, muss ich vielleicht versuchen, meinen Cursor ganz nach außen zu bringen, um alle Komponenten dieses Diagramms zu bekommen, obwohl ich die Legende nicht habe. Aber das kann ich auch, wenn ich will. Ich kann auch Gliederungselemente auswählen. Also klicke ich auf die Disclosure-Schaltfläche. Ich kann darauf klicken, selbst wenn ich das Auswahlwerkzeug verwende. Die Outline-Offenlegungsschaltflächen reagieren weiterhin. Aber ich könnte jetzt das Auswahlwerkzeug verwenden, um das gesamte Gliederungselement auszuwählen, oder, wenn ich erneut darauf klicken kann, um die Auswahl aufzuheben, um einzelne Spalten innerhalb dieses Gliederungselements auszuwählen. Und eines der Dinge, wenn Sie mit der Berichtsebene Skripts erstellen, ist, dass Sie möglicherweise die Nachricht auswählen verwenden möchten, die interaktiv dasselbe tut wie das Auswahlwerkzeug, um sicherzustellen, dass Sie auf den richtigen Teil von abzielen diesen Berichts-Layer, bevor Sie mit dem Extrahieren von Werten beginnen. Also werde ich zurück zu meinem Pfeil-Cursor wechseln. Und ich kann zur Symbolleiste hochgehen oder einfach ein A eingeben. Und eine praktische Funktion, die wir zum Verständnis des Anzeigebaums haben, ist eine Menüoption namens Baumstruktur anzeigen. Und ich werde mir das nur für die bivariate normale Ellipse ansehen. Da es für dieses Gliederungselement kein rotes Dreiecksmenü gibt, kann ich mit der rechten Maustaste auf das Gliederungselement klicken. Wenn ich diese Baumstruktur für den gesamten Bericht erhalten wollte, dann das oberste Gliederungselement, weil es ein rotes Dreiecksmenü hat, wenn ich dort mit der rechten Maustaste klicke, bekomme ich nur das rote Dreiecksmenü. Wenn ich also die gesamte Baumstruktur haben wollte, würde ich mit der rechten Maustaste auf die Schaltfläche Offenlegung klicken. Aber das ist eine wirklich große Baumstruktur. Daher arbeite ich lieber mit den einzelnen Berichtstabellen. Wenn ich jedoch die Baumstruktur für dieses Diagramm verstehen wollte, müsste ich natürlich zu dieser obersten Ebene gehen. Aber für das Gliederungselement bivariate normale Ellipse klicke ich mit der rechten Maustaste und wähle unter Bearbeiten die Option Baumstruktur anzeigen aus. Lassen Sie mich das einfach nebeneinander verschieben. Dies sind also nur Gliederungselemente, die die verschiedenen Anzeigefelder anzeigen, die diesen Teil der Baumstruktur bilden. Und ein nettes Feature ist, dass es mit diesem Berichtsfenster verbunden ist, sodass, wenn ich mit der Maus über verschiedene Komponenten in der Baumstruktur fahre, sie hervorgehoben werden, wie Sie in dieser Tabelle sehen können. Auf diese Weise kann ich also sicherstellen, dass ich das gewünschte Anzeigefeld richtig ansteuere. Alle diese Anzeigefelder haben einfach Indexwerte, obwohl das Gliederungsfeld auch den Namen enthält. Und wir werden sehen, wie wir diese Elemente mit etwas mehr Informationen als nur den Indexwerten ansprechen können. Lassen Sie uns jedoch zuerst das Skript greifen, um diesen Bericht neu zu erstellen, und dann die Berichts-Layer-Objektreferenz abrufen. Ich schließe das Baumstrukturfenster, gehe zum roten Dreieck neben „Bivariate Anpassung“ und wähle „Skript im Skriptfenster speichern“ aus. Und ich werde weitermachen und die Größe ändern. Das einzige, was Sie hier sehen, ist SendToReport, was nur daran liegt, dass ich das Gliederungselement Bivariate Normale Ellipse erweitert habe. Sie können also sehen, dass es dort ein Schließen mit einem booleschen Wert gibt. Also, wenn Sie-- Sie könnten das loswerden, wenn Sie es nur noch einmal ausführen und das nicht offen haben wollten. Ich werde es drin behalten. Und jetzt, da ich ein Skript habe, um dies neu zu erstellen, möchte ich den ursprünglichen Bericht schließen, weil ich ihn nicht mit dem verwechseln möchte, der erstellt wird, wenn ich diese Instanz eines bivariaten Objekts erstelle. Also speichere ich oben im Skript die Objektreferenz des Analyse-Layers – die das Ergebnis des Starts der Plattform ist – in der Variablen biv. Also weise ich das zu. Und ich verwende hier einfach die Kurzschrift der aktuellen Datentabelle und sende die Nachricht – oops, das muss ich nicht eingeben, oder? Weil ich das Drehbuch bereits geschrieben habe. Und dann führe ich das Skript aus. Damit wird dieses neue bivariate Objekt gestartet. Und dann rufe ich in der letzten Zeile meines Skript-Editors diese Berichts-Layer-Objektreferenz ab. Also speichere ich das in der Variablen rbiv. Und ich weise ihm das Ergebnis zu, dass biv die Nachricht „Bericht“ erhalten hat. Und denken Sie daran, dass es dafür eine alternative Syntax gibt, bei der Report tatsächlich biv in Klammern als Argument nach dem Namen hat. Und wir werden dieses Beispiel in einer bevorstehenden Demonstration sehen. Also möchte ich nur diese eine Zeile ausführen. Beachten Sie nun, was in rbiv gespeichert ist. Wir hatten den Plattformnamen in biv gespeichert. Aber in rbiv haben wir nur DisplayBox[OutlineBox]. Ich habe also nicht so viele Details. Ich weiß nur, um was für eine Vitrine es sich handelt. Aber so werden die Objektreferenzen für den Berichtslayer aussehen. Nun, bevor ich irgendetwas anderes tue, möchte ich Zeilen auskommentieren, weil ich das Skript nicht versehentlich erneut ausführen, ein neues Fenster mit einer bivariaten Anpassung öffnen und dann das falsche Fenster schließen möchte, damit ich dasjenige schließe, das ist aktuell - dass seine Referenz derzeit in biv gespeichert ist. Ich habe das schon mal gemacht. Und dann reagiert es natürlich nicht auf Nachrichten, weil es nicht mehr geöffnet ist, obwohl ein anderes geöffnet ist. Wenn das alles ausgewählt ist, klicke ich mit der rechten Maustaste. Und unter Erweitert wähle ich Kommentarblock aus. Und ich möchte nur anmerken, dass, weil ich nach dem, was ich kommentiert habe, keine anderen Zeilen im Skript-Editor vorhanden waren, er die Syntax verwendet hat, den Kommentar mit einem Schrägstrich-Sternchen zu öffnen und den Kommentar mit einem Sternchen-Schrägstrich zu schließen. Wenn es andere Zeilen gäbe, hätte es jede Zeile einzeln mit zwei Schrägstrichen kommentiert. Aber ich könnte sie immer noch erneut auswählen und mit der rechten Maustaste alle auf einmal auskommentieren. Das muss also nicht so breit sein, aber ich möchte, dass es ein bisschen höher ist. Und ich werde es zur Seite schieben. Und lassen Sie uns das bivariate Fenster außerhalb davon verschieben. Und ich gehe zu einer neuen Linie. Und tatsächlich, lassen Sie mich im Berichtsfenster mit der rechten Maustaste auf Bivariate Normale Ellipse, Bearbeiten, Baumstruktur anzeigen klicken. Das ist also ein Gliederungsfeld. Wenn ich also rbiv subskriptiere, habe ich die Option, nur diesen Indexwert zu verwenden. Also OutlineBox, und dann in Klammern und ich werde die Nachricht "Select" senden. So kann ich also ein Skript erstellen, anstatt das Auswahlwerkzeug zu verwenden. Und ich werde einfach diese Linie ausführen. Und Sie können sehen, dass das Gliederungsfeld ausgewählt wurde. Wenn dies nun das Gliederungselement ist, auf das ich abzielen möchte, möchte ich es nicht ausgewählt lassen. Ich verwende nur Auswählen, um zu überprüfen, ob ich auf die richtige Stelle zeige. Ich sende also die Nachricht „Deselect“, führe diese Zeile aus, und das hebt die Auswahl auf. Und nehmen wir an, ich möchte einen Drilldown in die Spalte der Mittel durchführen. Das ist so, damit ich einen weiteren Index für anhängen kann. Und ich werde die Nachricht zurück in "Auswählen" ändern und das ausführen. Und so hat das die Spalte der Mittel ausgewählt. Nun, wie könnte ich mich auf diese Anzeigefelder beziehen, die expliziter wären? Nun, anstatt es zu nennen, kann ich tatsächlich den Namen der Gliederung verwenden. Und tatsächlich ersetzt das hier den gesamten Index. Wo es heißt, gebe ich einfach die Zeichenfolge an. Nun, das ist eine lange Zeichenkette. Also werde ich diesen Platzhalter verwenden. Ich öffne hier meine doppelten Anführungszeichen und tippe "Bivariate Normal" ein. Und ich gebe einfach auch das Wort Ellipse ein und dann das Fragezeichen, damit ich das P nicht angeben muss. Ich schließe diese doppelten Anführungszeichen. Und dann, für das Zahlenspaltenfeld, vielleicht anstatt den Indexwert zu verwenden, da es dort eine Spaltenüberschrift gibt – im Gegensatz zu Summary of Fit müsste ich hier einen Indexwert verwenden. Aber es gibt eine Spaltenüberschrift namens Means. Also werde ich das Ich muss immer noch sagen, dass es ein Zahlenspaltenfeld ist, ersetzen. Aber ich werde das durch die Zeichenkette Mean ersetzen. Und dann ändere ich die Nachricht in „Auswahl aufheben“. Also betreibe ich diese Linie, und das funktioniert auch. Und tatsächlich würde ich diese Syntax empfehlen, weil sie sehr deutlich macht, welche Gliederungsbox wir betrachten, welche Spalte wir betrachten. Schauen wir uns das im Zusammenhang mit den Parameterschätzungen an. Ich werde die Baumstruktur aus dem Fenster Bivariate Normale Ellipse schließen und dann mit der rechten Maustaste auf Parameterschätzungen klicken und zu Bearbeiten, Baumstruktur anzeigen gehen. Für den ersten Index ersetze ich also den Inhalt dieser Zeichenfolge durch Parameterschätzungen. Und nehmen wir an, ich möchte die Spalte der Schätzungen. Nun, wenn ich den Namen verwende, was wiederum unsere empfohlene Best Practice ist, wenn es eine Spaltenüberschrift gibt, und ich die Nachricht "Auswählen" sende, funktioniert das sehr gut. Hier ist der Grund, warum ich Ihnen dieses Beispiel zeige. Wenn ich in der Baumstruktur nachschaue, ist die Spalte mit den Schätzungen: Was würde also passieren, wenn ich das angeben und versuchen würde, die Auswahl aufzuheben? Nun, ich erhalte eine Fehlermeldung: Anzeigefeld und Zugriff oder Auswertung von rbiv usw. können nicht indiziert werden. Es gibt mir nicht viele Informationen. Aber ich weiß aus Erfahrung, dass dies bedeutet, dass sobald ich auf das Gliederungselement Parameterschätzungen gezeigt habe, die Zählung der Spaltenkästchen innerhalb dieses Gliederungselements neu beginnt. Das liegt also wirklich an den Parameterschätzungen. Wenn ich das jetzt starte, wird es funktionieren. Wenn ich rbiv einfach als einziges subskriptieren wollte, würde das auch funktionieren. Es gibt also viele verschiedene Möglichkeiten, zu subskribieren. Aber auch hier empfehlen wir, so explizit wie möglich zu sein, indem Sie den Namen des Gliederungselements verwenden, und wenn es eine Spaltenüberschrift gibt – lassen Sie mich die Spaltenüberschrift „Schätzung“ hier wieder einfügen – verwenden Sie diese, um sicherzustellen, dass wir ein entsprechendes Skript schreiben wird gegenüber Änderungen in der Struktur des Anzeigebaums robust sein. Diese Änderungen können mit einer neuen Version von JMP einhergehen oder sich aus den Vorlieben des Benutzers ergeben, Berichte zu haben, die über der relevanten Tabelle angezeigt werden, und die Nummerierung dieser Spaltenfelder oder anderer Anzeigefelder ändern. Wann immer wir also einen Gliederungselementnamen und eine Spaltenüberschrift verwenden können, möchten wir dies tun. Jetzt das Auswählen und Abwählen, das ist nur für die Entwicklung. Irgendwann möchte ich diese Werte vielleicht tatsächlich bekommen. Ich möchte die Parameterschätzungen abrufen und möglicherweise in einer Variablen speichern. Ich werde das hier nicht tun, aber Sie könnten es sicherlich tun, und das ist vielleicht das, was Sie tun möchten. Wenn ich also einfach die Nachricht „get“ an den subskribierten Teil meiner Berichtsebene sende, wird eine Liste mit diesen beiden Werten zurückgegeben. Ich könnte diese Nachricht in „als Matrix abrufen“ ändern, und was zurückgegeben wird, ist eine Matrix dieser Werte. Nun, was ist, wenn mir das Abfangen egal ist? Ich möchte nur die Schätzung für die Steigung. Ich will das Zweite. Nun, eine Möglichkeit, dies zu tun, besteht darin, die Nachricht "get" mit einem in Klammern zu senden, und ich führe das aus, und dann rufe ich einfach diesen zweiten Wert ab. Und ein noch eleganterer Weg wäre, überhaupt keine Nachricht zu senden, aber sobald wir zum Gliederungselement der Parameterschätzungen, dem Feld der Schätzungsspalte, gebohrt haben, kann ich erneut eintragen und das zweite Element in dieser Spalte anfordern, was zurückkehrt die gleichen Ergebnisse. Für den Zugriff auf das Anzeigefeld muss also entweder der Bericht als Nachricht an die Variable gesendet werden, in der die Referenz des Analyse-Layer-Objekts gespeichert ist, oder Sie können diese Variable, in der die Objektreferenz des Analyse-Layers gespeichert ist, in den Bericht einschließen. Und dann verwenden wir die Indizes, um auf die Komponenten des Anzeigebaums zuzugreifen. Und es gibt viele verschiedene Möglichkeiten zum Abonnieren. Best Practices sollten beim Abonnieren so explizit wie möglich sein.