向直方图添加垂直线我已经使用图形生成器构建了一个直方图,并且希望调整我的脚本以在我选择的值处添加垂直线并覆盖在直方图上。
数据探索和可视化回复:向直方图添加垂直线另一种选择可能是添加列属性规格限制,并让它显示在分发平台的直方图中。
该值也可以用于其他平台(流程能力......)。

回复:向直方图添加垂直线>> 一个选项也是消除用户首选项的影响,但根据平台的不同,这可能需要花费大量精力将所有默认值设置为 1 或 0。
是的我同意。 我想过对某些脚本做类似的事情,但实际上这个示例代码来自的特定脚本被设计为循环遍历输出窗口中的所有分布并使直方图箱更小以使其看起来更“正常”。 只是一个通用的一键式脚本,实际上并不构建任何输出,只是修改轴。
回复:向直方图添加垂直线有时,这些必须根据具体情况进行构建。 通常我将 XPath 与 << child、<< sib、<< Parent 等等的组合一起使用......
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dist = dt << Distribution(
Stack(1),
Continuous Distribution(
Column(:height),
Horizontal Layout(1),
Vertical(0),
Prob Axis(1),
Quantile Box Plot(1),
Normal Quantile Plot(1)
)
);
axisbox = (Report(dist) << XPath("//ScaleBox"))[1];
axisbox << Add Ref Line(55, "Dotted", red, "F mean", 2);
dist = dt << Distribution(
Stack(1),
Continuous Distribution(
Column(:height),
Horizontal Layout(1),
Vertical(0),
Quantile Box Plot(1),
Normal Quantile Plot(1)
)
);
axisbox = (Report(dist) << XPath("//ScaleBox"))[1];
axisbox << Add Ref Line(55, "Dotted", red, "F mean", 2);
dist = dt << Distribution(
Stack(1),
Continuous Distribution(
Column(:height),
Horizontal Layout(1),
Vertical(0),
Count Axis(1),
Prob Axis(1),
Density Axis(1),
Quantile Box Plot(1),
Normal Quantile Plot(1)
)
);
axisbox = (Report(dist) << XPath("//ScaleBox"))[1];
axisbox << Add Ref Line(55, "Dotted", red, "F mean", 2);
一种选择是消除用户首选项的影响,但根据平台的不同,这可能需要花费大量精力将所有默认值设置为 1 或 0。
回复:向直方图添加垂直线这是切线相关的,但无论如何我都会把它放在这里。它具体与分发平台相关(不是原始问题中的图形生成器),但可能根据用户偏好适用于其他平台,我不确定。我不认为这会成为图表生成器中的问题,主要是因为我认为用户偏好不会发挥太大作用。
在分布平台中,如果您没有设置要显示的概率、密度和显示计数轴,则分布数据的轴框索引为1,这意味着您可以使用report(xxxx)[引用它AxisBox(1)],类似于上面 Jarmo 的帖子。但是,如果添加任何其他轴,索引将变为 2、3 或 4(显示的总轴的最大值。如果您始终具有相同的设置,则可以对其进行硬编码,应该没问题。 但如果脚本被广泛部署,您需要考虑其他用户首选项设置。 我尝试执行“获取项目”,但我认为它总是返回 4,即使有些是空的。 我可能可以在那里找到解决方法,但最终使用了 xpath。您可以查看 xml,或者查看输出报告的属性以了解哪些内容可能有效。 意思是,不要只查找轴框,因为可能有 4 个轴框,而是在下拉框中的边框框中查找轴框,这似乎是“主”轴所独有的。 希望这能经受住时间的考验,但到目前为止它对我来说很有效。
myrpt = current report();
//show( myrpt<<GET xml=""></GET>// use xpList[1] instead of referencing an axisbox index. <BR />// If there's multiple distributions in the report, loop through or be more specific when grabbing the xpath.
回复:向直方图添加垂直线这里有几个选项。 第一个是首先让 JMP 为您编写脚本,然后使用使用 Eval Insert、Eval Expr、Parse 和 Substitute 将一个表达式插入另一个表达式第二个是根据搜索 Ref Line 找到的脚本索引示例修改的
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
ref_line = 180;
// Option1
Eval(EvalExpr(gb1 = dt << Graph Builder(
Size(529, 457),
Show Control Panel(0),
Variables(X(:weight)),
Elements(Histogram(X, Legend(3))),
SendToReport(
Dispatch(
{},
"weight",
ScaleBox,
{Min(57), Max(205.037037037037), Inc(20), Minor Ticks(0),
Add Ref Line(Expr(ref_line), "Solid", "Black", "", 1)}
)
)
)));
// Option2
gb2 = dt << Graph Builder(
Size(529, 457),
Show Control Panel(0),
Variables(X(:weight)),
Elements(Histogram(X, Legend(3)))
);
axisbox = Report(gb2)[AxisBox(1)];
axisbox << Add Ref Line(ref_line, "Dotted", red, "F mean", 2);