控制报告输出的格式和审查我的电脑上安装了多个版本的 JMPPro,包括 JMP 14.3 和 JMP 16.0。所有版本的报告窗口都没有自定义格式的选项。例如,假设我使用双变量(用 X 拟合 Y)平台,其中包含一个“by”列,并且“by”列中有 80 个唯一值。将所有图表放在同一列或同一行会降低图表的审阅速度。执行拖放操作会很繁琐。我希望能够:
- 指定报告输出中的行数和每行的图数
- 如果有两个“按”列,可以选择将第一个“按”列的所有图放在报告输出的指定行中。例如,假设有两个“按”列,创建了 5 个唯一组合:A 列的值是 {茶,咖啡},B 列的值是 {牛奶,蜂蜜,糖}。数据表中没有出现咖啡和蜂蜜的组合。报告输出的第一行将包含 3 个“茶”图,分别对应牛奶、蜂蜜和糖。报告输出的第二行将包含 2 个“咖啡”图,分别对应牛奶和糖。
我的问题是:
- 有没有办法在 JMP 中原生地执行此操作?
- 如果没有,是否有可用的脚本/插件允许您以这种方式格式化报告窗口?
我想我可以自己编写脚本,但这会很耗时,我希望有一个简单的按钮。=)
大规模定制回复:控制格式和检查报告输出我没有想到本机的方法(但是可能仍然有一些方法),因此这里有一些脚本想法可以帮助您入门:
要仅控制每行中有多少个报告,您应该可以仅使用带有N Col的Lineup Box:
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Food Journal.jmp");
maxValsPerRow = 4;
nw = New window("", Lineup Box(N Col(maxValsPerRow),
Bivariate(Y(:Calories), X(:Fat), By(:Food Category, :Meal))
));
对于两个“ by”列,当By更改时要分成新的行(请注意Eval(EvalExpr()),用法):
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Food Journal.jmp");
uniqVals = Associative Array(Column(dt, "Meal")) << get keys;
maxValsPerRow = 15;
nw = New window("", vlb = V List box());
For(i = 1, i <= N Items(uniqVals), i++,
vlb << Append(Eval(EvalExpr(
Lineup Box(N Col(Expr(maxValsPerRow)),
Bivariate(Y(:Calories), X(:Fat), By(:Food Category, :Meal), Where(:Meal == Expr(uniqVals[i])))
)
))
));
回复:报告输出的控制格式和审查使用 Fit Group() 函数,可以很容易地将布局更改为 3 个报告

以下是简单的 JSL
names default to here(1);
// Open Data Table: big class.jmp
// → Data Table( "big class" )
Open( "$SAMPLE_DATA/big class.jmp" );
// For illustration, limit ages to only 3 levels
// Select matching cells
Data Table( "big class" ) << Select Where( :age == 12 | :age == 13 | :age == 14 );
// Subset data table
// → Data Table( "Subset of big class" )
Data Table( "big class" ) << Select Where( :age == 12 | :age == 13 | :age == 14 )
<< Subset( Selected Rows( 1 ), Selected columns only( 0 ) );
// Close Data Table: big class
Close( "big class" );
fg = fit group(
Bivariate( Y( :height ), X( :weight ), By( :sex, :age ) ));
fg<<ARRANGE in="" rows=""></ARRANGE>
<P>我还建议您查看响应筛选,这是查看图表的一种可能方式</P>
<P>分析=>筛选=>响应筛选</P>