Holen Sie sich den Titel aus einem Graph Builder-PanelIch könnte Hilfe gebrauchen, warum ich den Titel des 1. Panels in diesem Graph Builder nicht bekomme

mit diesem Code
report=current report();
test=(report<< XPath("(//OutlineBox[text()='Graph Builder']//GraphBuilderGroupBox)[2]"))<<GET title=""></GET>Thanks for any suggestions!
Steve
<LINGO-LABS id="lingo-labs-818485" slang="en-US" mode="CREATE"><LINGO-LABEL>Automatisierung und Skripting</LINGO-LABEL></LINGO-LABS>Betreff: Den Titel aus einem Graph Builder-Panel abrufenAh, interessant. Mir ist das nie aufgefallen – oder es hat mich auch nicht interessiert:
Mit einigen XPath-Parsern erhält man bereits den Inhalt des Knotens
https://www.w3schools.com/xml/xpath_examples.asp
http://xpather.com/
Beispiel: Nach dem Einfügen des Ergebnisses von
xml= current report() << Get XML;
in http://xpather.com/ und suchen Sie nach
(//OutlineBox[text()='Graph Builder']//GraphBuilderGroupBox)[2]
man erhält: "Alter = 13"

JMP und andere
https://www.freeformatter.com/xpath-tester.html
https://magictool.ai/tool/xpath-tester/de/
http://xpather.com/ (Einstellung: Knoten)
gibt das umgebende "Objekt" zurück.
Man muss also den Inhalt des Knotens in einem separaten Schritt abrufen ...
Ich denke, es gibt einen einfacheren Weg als diesen ...
Bis jemand es postet, können Sie
report=current report();
test=(report<< XPath("(//OutlineBox[text()='Graph Builder']//GraphBuilderGroupBox)[2]"))[1];
xml= test << Get XML;
Regex (xml, ">(.*?)<\/GraphBuilderGroupBox>", "\1")
übrigens - danke für den Trick:
direkte Indizierung über [2] ist in XPath möglich - cool, danke!!!

Betreff: Titel aus einem Graph Builder-Panel abrufenWenn Sie das XML für eine einzelne GraphBuilderGroupBox überprüfen, können Sie sehen, dass Sie nach dem Wert aus XML suchen.
"<GRAPHBUILDERGROUPBOX width="\!" 570="">age = 12</GRAPHBUILDERGROUPBOX>"
Und Sie können diesen Wert mit XPath abrufen
gbb_texts = (Report(gb) << XPath("(//GraphBuilderGroupBox/text())"));<BR />// {"age = 12", "age = 13", "age = 14", "age = 15", "age = 16", "age = 17"}
Und wenn Sie nur den ersten abrufen möchten, können Sie den Index bereits in XPath begrenzen (wie Sie es getan haben) und dann den ersten Index daraus nehmen, da << XPath eine Liste zurückgibt (in diesem Fall würde ich den XPath-Index höchstwahrscheinlich überspringen, da Sie immer noch den Index von JMP verwenden müssen).
gbb_text = (Report(gb) << XPath("((//GraphBuilderGroupBox/text()))[1]"))[1];<BR />// or gbb_text = (Report(gb) << XPath("(//GraphBuilderGroupBox)[1]/text()"))[1];
mit nur JMP-Index
gbb_text= (Report(gb) << XPath("//GraphBuilderGroupBox/text()"))[1];
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Show Control Panel(0),
Variables(X(:weight), Y(:height), Page(:age), Overlay(:sex)),
Elements(Points(X, Y, Legend(9)), Line Of Fit(X, Y, Legend(11)))
);
group_texts = (Report(gb) << XPath("//GraphBuilderGroupBox/text()"));
// {"age = 12", "age = 13", "age = 14", "age = 15", "age = 16", "age = 17"}
Betreff: Den Titel aus einem Graph Builder-Panel abrufenJuhu, juhu!
Danke @hogi und @jthi ! Wie immer schnelle und tolle Hilfe.
Der Grund für die Anfrage war, dass ich für verschiedene Panels unterschiedliche Achseneinstellungen brauche, aber da sich die Anzahl der Panels ändert, führt die harte Codierung des Achsenbereichs aus dem gespeicherten Skript, das Graph Builder erstellt (z. B. Scalebox(2)), dazu, dass die Diagramme später, wenn ich es ausführe, völlig durcheinander geraten. Daher kann ich diesen Code jetzt verwenden, um durch die Panels zu schleifen, zu prüfen, was da ist, und dann das Achsenminimum und -maximum richtig einzustellen. Es ist immer noch viel mühsames Codieren zu erledigen, aber zumindest habe ich jetzt einen Weg!
Steve