So fügen Sie Text in Rahmen in der Plattform „Kurven anpassen“ mit Gruppierungs- und Nachvariablen ein (JMP 18)Hallo zusammen!
Ich möchte in der Fit-Curve-Plattform mithilfe einer Group- und einer By-Variable über JSL (JMP 18) einen Text in Rahmen einfügen.
Daher habe ich den folgenden Code ausprobiert, aber er funktioniert nicht:
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
obj = dt << Fit Curve(Y(:weight), X(:height), Group(:sex), Fit Linear, By(:age));
robj = obj << report;
(robj << XPath(
"(//OutlineBox[text()='Fit Curve']//OutlineBox[text()='age=12']//OutlineBox[text()='Linear']//OutlineBox[text()='Plot']//FrameBox)[2]"
)) << Add Graphics Script( 1, Description( "Script" ), Text( {52, 120}, "F 12" ) );Ich habe den XPath aus den Eigenschaften des Frames mit „Mode: XPath“ und „Root: Window“ kopiert.
In JMP 17 funktioniert dies mit folgendem Code:
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
obj = dt << Fit Curve(Y(:weight), X(:height), Group(:sex), Fit Linear, By(:age));
robj = obj << report;
<BR />(robj << XPath( "(//OutlineBox[text()='Fit Curve age=12']//OutlineBox[text()='Linear']//OutlineBox[text()='Plot']//FrameBox)[2]" )) <<
Add Graphics Script( 1, Description( "Script" ), Text( {52, 120}, "F 12" ) );Das Ergebnis sollte für Fit curve age=12 wie folgt aussehen (Screenshot aus JMP 17):

Vielen Dank für deine Hilfe!
Automatisierung und SkriptingBetreff: So fügen Sie in der Plattform „Kurven anpassen“ mit den Variablen „Gruppieren“ und „Nach“ Text in Rahmen ein (JMP 18)Ich würde höchstwahrscheinlich die Liste der Plattformen verwenden, die Sie erhalten, und diese durchlaufen (es sei denn, Sie möchten für alle Frameboxen am selben Ort genau denselben Text haben, dann würde ich vielleicht XPath und die oberste Ebene des Berichts verwenden).
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
fcs = dt << Fit Curve(Y(:weight), X(:height), Group(:sex), Fit Linear, By(:age));
reports = fcs << report;
For Each({cur_report}, reports,
//cur_report = reports[1];
Try(
cur_report[Outline Box("Linear"), OutlineBox("Plot"), FrameBox(2)] << Add Graphics Script(1,
Text({52, 120}, "F 12")
);
,
Write("\!NIssue with ", cur_report << get title, "\!N", exception_msg);
);
);
Betreff: So fügen Sie in der Plattform „Kurven anpassen“ mit den Variablen „Gruppieren“ und „Nach“ Text in Rahmen ein (JMP 18)Hallo jthi,
Vielen Dank für Ihre Antwort. Bitte lassen Sie mich meine Frage präzisieren:
Ihr Skript fügt „F12“ in jede Framebox mit Daten von Frauen ein, aber ich bräuchte in jeder Framebox mit linearen Anpassungen einen spezifischen Text.
Ich denke, dass dies durch die Verwendung von "reports [1]", "reports [2]" usw. anstelle von "cur_report" und ohne die "For Each..."-Funktion realisiert werden kann.
Gibt es einen Grund, warum Sie „Try“ und eine mögliche Fehlermeldung anstelle von Eval verwenden? Was könnte dazu führen, dass das Einfügen des Grafikskripts fehlschlägt?
Betreff: So fügen Sie in der Plattform „Kurven anpassen“ mit den Variablen „Gruppieren“ und „Nach“ Text in Rahmen ein (JMP 18)Ihr Beispiel hat zu jedem Framebox den gleichen Text hinzugefügt, also habe ich das Gleiche getan (ich wusste nämlich nicht, was Sie hinzufügen wollten). Das Hinzufügen des Grafikskripts schlägt fehl, wenn der Bericht keine Kurvenanpassung aufweist, z. B. wenn zu wenige Beobachtungen vorhanden sind.
Betreff: So fügen Sie in der Plattform „Kurven anpassen“ mit den Variablen „Gruppieren“ und „Nach“ Text in Rahmen ein (JMP 18)Jetzt I verstehen, Dank Du für Die Erläuterung Und für dein Unterstützung!