こんにちは、みんな、
質問が 2 つあります。
1) カラムスイッチャーでカラムを切り替えると、ref 行を追加できなくなりました。例えば
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 );
機能しています。
しかし、この 2 行を実行すると
ColumnSwitcherObject << set current("age"); axisbox << 参照ラインを追加(14, "点線", 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ウィッシュリスト。