大家好,
我有两个问题:
1)当我用列切换器切换列时,我不能再添加参考行了。例如
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
obj = dt << Bivariate( Y( :height ), X( :weight ) );
ColumnSwitcherObject = obj << Column Switcher( :height, {:name, :age, :sex, :height} );
gbReport = obj << report;<BR /><BR />axisbox = gbReport[axis box( 1)];现在当我运行下一行
axisbox << Add Ref Line(60, "Dotted", yellow, "TR", 2 );
它的工作。
但是如果运行这两行
ColumnSwitcherObject << set current("age"); axisbox << Add Ref Line(14, "Dotted", yellow, "TR", 2 );
</CODE></P><P>它给了我这个错误</P><P> </P><PRE><CODE class="language-jsl">deleted object reference: axisbox << Add Ref Line(14, "Dotted", yellow, "TR", 2) in access or evaluation of 'Send' , axisbox << /*###*/Add Ref Line( 14, "Dotted", yellow, "TR", 2 ) /*###*/
In the following script, error marked by /*###*/
axisbox << /*###*/Add Ref Line( 14, "Dotted", yellow, "TR", 2 ) /*###*/
2)在列切换器中切换列时,有没有办法执行脚本? 当我们使用本地数据过滤器时,像“makerowstatehandler”之类的东西?
谢谢。
列切换器习惯于在列被换出时删除其引用。通过将参考线嵌入到代码中
Bivariate(
Y( :height ),
X( :weight ),
SendToReport(
Dispatch(
{},
"2",
ScaleBox,
{Add Ref Line( 62.9375, "Dashed", "Yellow", "TR", 1 )}
)
)
);
或使用添加代码
<<添加图形脚本
我相信你可以解决这个问题
或者
谢谢,
但它告诉我这个错误
axisbox << Add Ref Line( 14, "Dotted", yellow, "TR", 2 );
并且不显示该行
对于 #1,您需要重新运行首先设置 AxisBox 变量的行。 这是因为 JMP 中的列切换器会在列更改时重新生成报表,因此对报表和轴框的旧引用不再有效。
// Always needs to happen in this order
gbReport = obj << report;
axisbox = gbReport[axis box( 1 )];
axisbox << Add Ref Line(14, "Dotted", yellow, "TR", 2 );
对于#2,我不认为有像数据过滤器那样的列切换器的等效处理程序。 这可能是一个好主意JMP 愿望清单.