使用 JSL 按页日志缩放 GB如果我只用页面做图形构建器,我可以用 JSL 做对数缩放而没有任何问题。 但是当我逐页添加图形构建器时。日志比例仅发生在第一页。另一页没有对数刻度。 谁能建议如何完成它?
cht_NFC_RD_BE_FME_SB = dt_NFC_RD_BE_FME_SB << Graph Builder(
Size( 1058, 1464 ),
Show Control Panel( 0 ),
Variables(
X( :CYC ),
Y( :Name( "NFC_RD_BE_FME_SB(Cnt)" ) ),
Page( :Wafer )
),
Elements( Box Plot( X, Y, Legend( 4 ) ), Line( X, Y, Legend( 5 ) ) )
);
Report(cht_NFC_RD_BE_FME_SB)[Axisbox(2)] << {Scale("Log"), Min( 1 ), Max( 4096 ), Inc( 1 ), Minor Ticks(1), Show Major Grid(1)};
第 1 页获得对数刻度,但第 2 页以后没有获得对数刻度。

脚本编写回复:使用 JSL 按页面日志缩放 GB你只得到第一个图的参考
Report(cht_NFC_RD_BE_FME_SB)[Axisbox(2)]
您可以获取所有引用,然后遍历它们,或者然后可能使用 Xpath(不知道如何在仅使用 DisplayBoxes 时在列表中获取没有它的所有轴引用)并同时设置它们。 像这样的事情可以工作:
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Reliability/Fan.jmp");
gb = dt << Graph Builder(
Size(534, 956),
Show Control Panel(0),
Variables(X(:Time), Y(:Exponential), Page(:Censor)),
Elements(Points(X, Y, Legend(8)), Smoother(X, Y, Legend(9))),
SendToReport(Dispatch({}, "Exponential", ScaleBox, {Format("Best", 9)}))
);
rep = Report(gb) << XPath("//AxisBox");
rep = rep[2::N Items(rep)::2]; //get every other value
rep << {Scale("Log"), Minor Ticks(1), Show Major Grid(1)};理解 Xpath 和“矩阵运算”在这里非常重要,我建议稍微尝试一下以了解发生了什么。