我有一个脚本,该脚本创建带有三个选项卡的窗口。第一个选项卡具有一个包含两列的“阵容框”和一个通过循环创建的6个“图形生成器”图形。
nw = New Window( "Win1", tbox = Tab Box(Tab Page Box("Age", vlb = Lineup Box( N Col( 2 )) )) );循环生成的所有图形都附加有:
vlb << Append(
Graph Builder("graph stuff here");最后,所有内容按预期每行显示两张图表(两列)。
但是,当我将其另存为“报告”(带有嵌入式表)时,“代码”框将从代码中消失!
我得到:
New Window( "Win1",
Tab Box(
Tab Page Box(
"Age",
Graph Builder("graph stuff here");有没有办法在两列中保留图形的原始排列? 这是财产还是财产缺乏我使用的“盒子”类型是什么?
我将不胜感激一些尝试的建议。
我认为这是一个错误,您可以考虑将其发送给support@jmp.com 。请注意,如果不另存为报告,则选择“保存脚本”>“到脚本窗口(所有对象)”时,还会得到选项卡框而不是阵容框。
同时,一种变通方法可能是分发脚本文件而不是报告文件。在数据表中,您可以从列列表上方的红色三角形中选择复制表脚本,然后将其粘贴到脚本中。包括'//!'在脚本的第一行,以便它自动执行,然后将其另存为.jsl文件(文件大小应为jrp文件,它们都将表另存为文本)。
为了使其更像报告,您可以不可见或不公开地打开表,然后在窗口关闭时自动将其关闭。
这是一个示例,将其另存为.jsl文件:
//!
Names default to here(1);
dt = New Table( "Subset of Big Class 2",
Add Rows( 18 ),
New Column(
["en" => "age", "ja" => "年齢", "x-id" => "S_age_Col", "zh-CN" => "年龄"],
Numeric, "Ordinal", Format( "Fixed Dec", 5, 0 ),
Set Values(
[12, 12, 12, 13, 13, 13, 14, 14, 14, 15, 15, 15, 16, 16, 16, 17, 17, 17]
),
Set Display Width( 0 )
),
New Column(
["en" => "height",
"ja" => "身長(インチ)",
"x-id" => "S_height_Col",
"zh-CN" => "身高"],
Numeric, "Continuous", Format( "Fixed Dec", 5, 0 ),
Set Values(
[61, 66, 51, 61, 65, 58, 63, 63, 64, 62, 64, 67, 65, 60, 68, 62, 68, 70]
),
Set Display Width( 0 )
),
New Column(
["en" => "weight",
"ja" => "体重(ポンド)",
"x-id" => "S_Big_Class_weight_Col",
"zh-CN" => "体重"],
Numeric, "Continuous", Format( "Fixed Dec", 5, 0 ),
Set Values(
[123, 145, 79, 107, 98, 95, 84, 93, 99, 92, 112, 128, 112, 115, 128, 116,
134, 172]
),
Set Display Width( 0 )
),
Invisible
);
nw = New Window( "Win1", tbox = Tab Box(Tab Page Box("Age", vlb = Lineup Box( N Col( 2 )) )) );
nw << On close( try( Close( dt, "nosave" ) ) );
ages = associative array(dt:age) << get keys;
for(i=1, i<= n items(ages), i++,
Eval( Eval Expr(
vlb << Append(
Graph Builder(
Size( 534, 456 ),
Show Control Panel( 0 ),
Variables(
X( :height ),
Y( :weight ),
Overlay( Transform Column( "Is " || char( ages[i] ) , Nominal, Formula( :age == Expr( ages[i] ) ) ) )
),
Elements( Points( X, Y, Legend( 7 ) ) ),
SendToReport(
Dispatch( {}, "graph title", TextEditBox, {Set Text( "Hight and Weight" )} )
)
)
)
) )
);
你好@ih ,非常感谢您的回复,很遗憾,您的方法无法正常工作,因为在生成图形的数据表之前,我使用的是调用“函数”脚本的脚本以及其他处理数据的辅助脚本。
我将跟进支持并添加我可能从中获得的任何解决方案/意见。