如何使用「分組」和「按變數」在擬合曲線平台的框架中插入文字 (JMP 18)大家好!
我想透過 JSL (JMP 18) 使用 Group 和 By 變數在擬合曲線平台的框架中插入文字。
因此我嘗試了以下程式碼,但它不起作用:
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" ) );我使用 Mode: XPath 和 Root: Window 從框架的屬性複製了 XPath。
在 JMP 17 中,這適用於以下程式碼:
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" ) );對於擬合曲線年齡 = 12,結果應如下所示(JMP 17 的螢幕截圖):

非常感謝您的幫忙!
自動化和腳本編寫回覆:如何使用 Group 和 By 變數在擬合曲線平台的框架中插入文字 (JMP 18)我很可能會使用您獲得的平台列表並對其進行循環(除非您希望同一位置的每個框架框具有完全相同的文本,那麼我可能會使用 XPath 和報告的頂層)
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);
);
);
回覆:如何使用 Group 和 By 變數在擬合曲線平台的框架中插入文字 (JMP 18)嗨,jthi,
非常感謝您的回覆。請讓我澄清我的問題:
您的腳本在每個框架框中插入帶有女性資料的“F12”,但我需要在每個框架框中使用線性擬合的特定文字。
我認為這可以透過使用“reports [1]”、“reports [2]”等來代替“cur_report”並且不使用“For Each...”函數來實現。
您使用“Try”和潛在錯誤訊息而不是 Eval 是否有原因?什麼可能導致圖形腳本插入失敗?
回覆:如何使用 Group 和 By 變數在擬合曲線平台的框架中插入文字 (JMP 18)您的示例向每個框架框添加了相同的文本,因此我也做了同樣的事情(如我不知道您想添加什麼)。如果報告沒有適合的曲線,則新增圖形腳本將會失敗,例如觀察值可能太少。
回覆:如何使用 Group 和 By 變數在擬合曲線平台的框架中插入文字 (JMP 18)現在 I 理解, 感謝 你 為了 這 解釋 和 為了 你的 支持!