在 JSL 中保存多个图表你好,我正在运行这个脚本,其中 dataCols 是数字列。
OWA = Data Table ("Filtered_raw") << Oneway(
Y(eval( dataCols)),
X( " WhichTest"),
Each Pair( 0 ),
Means( 0 ),
Plot Actual by Quantile( 0 ),
Plot Quantile by Actual( 1 ),
Mean Diamonds( 1 )
);这将创建我的数值列的单向分析和正态分位数图。 现在我尝试用这个脚本保存这些图:
OWA << report;
OWA << Save MSWord( "\\snl\home\malepp\Software\JMP\JMP_Report\Oneway_normalQ.doc");
问题是它只保存最后一列的单向/分位数图。 如何将它们全部保存到文档中?
谢谢!
回复:在 JSL 中保存多个图表更好的代码......谢谢温迪
回复:在 JSL 中保存多个图表添加到@tx尼尔森的回复,您可以通过将 Journal 消息发送到 Oneway 对象列表来消除 For() 循环。由于 OWA 代表一个列表,因此日志消息将发送到列表中的每个项目。然后您需要做的就是使用 Current Journal() 函数获取对期刊的引用。以下是上述示例脚本的修改版本。
Names Default To Here( 1 );
// Setup an Example Data table
dt = Open( "$SAMPLE_DATA/blood pressure.jmp" );
dataCols = dt << get column names( continuous );
dt:Dose << set name( "WhichTest" );
dt << set name( "Filtered_raw" );
// Run the charts
OWA = Data Table( "Filtered_raw" ) << Oneway(
Y( Eval( dataCols ) ),
X( "WhichTest" ),
Each Pair( 0 ),
Means( 0 ),
Plot Actual by Quantile( 0 ),
Plot Quantile by Actual( 1 ),
Mean Diamonds( 1 )
);
// Create a journal containing each Oneway
OWA << Journal;
// Obtain a reference to the journal
jj = Current Journal();
// Save the journal to disk
jj << Save MSWord( "$DOCUMENTS\Oneway_normalQ.doc" );
jj << Close Window;
回复:在 JSL 中保存多个图表美丽的! 我尝试过类似的方法来循环 N 个项目并尝试在每个循环中附加,但仍然无法使其工作。 但我没有使用期刊。
对于做同样的事情但保存到 PowerPoint 有什么建议吗? 特别是,格式化ppt? 我选择使用 Word,因为它每页提供一次分析(一个单向图和一个正态分位数图,并且标题看起来很正常)。 而 ppt 一次分析需要 3 页,而且格式也很糟糕。
谢谢!!!!
回复:在 JSL 中保存多个图表您遇到的问题是,没有一个报告输出,而是基于执行的 OneWay 分析的实际数量有 n 个输出。因此,当您执行“保存 MSWord”时,它会一一保存每个输出。但是,它不会将输出附加到 .doc 文件,而是替换它。因此,需要做的是将每个输出放入 JMP 日志中,然后保存日志。这就是下面的脚本中所做的事情
Names Default To Here( 1 );
// Setup an Example Data table
dt = Open( "$SAMPLE_DATA/blood pressure.jmp" );
dataCols = dt << get column names( continuous );
dt:Dose << set name( "WhichTest" );
dt << set name( "Filtered_raw" );
// Run the charts
OWA = Data Table( "Filtered_raw" ) << Oneway(
Y( Eval( dataCols ) ),
X( " WhichTest" ),
Each Pair( 0 ),
Means( 0 ),
Plot Actual by Quantile( 0 ),
Plot Quantile by Actual( 1 ),
Mean Diamonds( 1 )
);
// Create a Journal to store the output in
jj = New Window( "The Output", <<JOURNAL></JOURNAL>