今天至少在聊天中有人问过这个问题。 以下是关于如何处理此问题的几个可能的选项(我也将其作为建议发布到愿望清单中)添加选项以在使用页面时将图形生成器图例扩展到每个页面)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Probe.jmp");
// Use XPatH() and Picture Box with legend
gb = dt << Graph Builder(
Show Control Panel(0),
Size(500, 9760),
Variables(X(:DELW_NEMIT), Y(:DELL_RPNBR), Page(:Wafer Number), Color(:Process)),
Elements(Points(X, Y, Legend(5)))
);
lg = (gb << XPath("//LegendBox"))[1];
lg_pic = lg << get picture;
fbs = (gb << XPath("//FrameBox")) << parent;
Remove From(fbs, 1); // first one already has "real" legend
//margins will need to be adjusted depending on GB size
fbs << append(Picture Box(lg_pic, << Margin(Left((gb << get size)[1]-130), Top(-15), Right(0), Bottom(0))));
// Loop over groups one by one while using Where()
nw = New Window("GBs",
lub = Lineup Box(N Col(1));
);
Summarize(dt, pages = by(:Wafer Number));
For Each({page}, pages,
gb_page_expr = Expr(
Eval(EvalExpr(gb = dt << Graph Builder(
Show Control Panel(0),
Size(500, 500),
Variables(X(:DELW_NEMIT), Y(:DELL_RPNBR), Color(:Process), Group X(:Wafer Number)),
Elements(Points(X, Y, Legend(5))),
Where(:Wafer Number == Expr(page))
)));
);
lub << Append(gb_page_expr);
// gb << Title("");
);
((lub << Top Parent) << XPath("//TextBox[contains(text(), 'Where(:')]")) << Visibility("Collapse");
// most likely best idea, use By()
gbs = Graph Builder(
Size(534, 456),
Show Control Panel(0),
Variables(X(:DELW_NEMIT), Y(:DELL_RPNBR), Color(:Process)),
Elements(Points(X, Y, Legend(1))),
By(:Wafer Number)
);
Write();
@glimond67有两种选择:
使用对话框按钮(朱利安在这里演示回复:每页重复图例)

或者
转到红色三角形 -> 重做/重新启动分析

这将打开您可以填写的平台菜单(如果您已经填写了一些内容,那么这些内容将被保留)

@马丁德梅尔
--> // 最可能最好的主意,使用 By()
这有效。
但是如何猜测Graph Builder上有BY函数,在Graph Builder的控制面板中哪里可以找到它?
我的常规用例大多包含一个包装,就像这样。
gbs = Graph Builder(
Size(534, 456),
Show Control Panel(0),
Variables(X(:DELW_NEMIT), Y(:DELL_RPNBR), Wrap( :Die X ), Color(:Process)),
Elements(Points(X, Y, Legend(1))),
By(:Wafer Number)
);
并且脚本化的 BY() 仍然有效。
但我不知道如何单独从图形生成器界面生成它。