以下は、ローカルデータフィルターを使用してグラフを表示するいくつかの例示的なコードです。
namesDefaultToHere(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
graphContent = VListBox(
dt << Bivariate(
Y(:weight),
X(:height)
)
);
NewWindow("Test",
Data Filter Context Box(
BorderBox(top(20),bottom(20),left(20),right(20),
HListBox(
// local data filter
::df = dt << Data Filter( local,
AddFilter(
columns(:sex),
display(:sex,"List Display")
)
),
// some content
graphContent
)
)
)
);
// define event handler for data filter
::rs = ::df << makeFilterChangeHandler(
function({x},
show("data filter event handler");
show(hptime());
)
);
データフィルターを選択すると、期待どおりにイベントハンドラーがトリガーされます。
ただし、イベントハンドラーは、グラフ内のデータポイントにカーソルを合わせるだけでもトリガーされます。なぜそれが起こるのかについて誰かが考えていますか?