As a workaround, one could ask the Data Filter for the filtered rows and adjust the Formula Column accordingly.
It works - but definitely not with the comfort one is used to when working with GraphBuilder and JmpDataFilter.
A big disadvantage:
In Jmp, users have the freedom to add a Local Data Filter at any time.
Who will add the filter state handler to guarantee that the displayed values are updated?
A combination of a Formula Column AND a Data Filter - this doesn't sound like a niche application.
So, besides this workaround, I guess there is an easy solution available in GraphBuilder - but I couldn't find it up to now.
Who had a similar application - and found already the 1-click Jmp comfort solution?
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
myRows=1::N Rows(dt);
New Column( "Rank_correct",Formula( Col Rank( :height, Excluded(), Contains( myRows, Row() ) > 0 ) ));
gb = dt << Graph Builder(
Variables(
X(
:name,
Order By( :Rank_correct, Ascending, Order Statistic( "Mean" ) )
),
Y( :Rank_correct )
),Elements( Points( X, Y ) ));
updateNow = Function({x},
myRows= (Current Report()["Local Data Filter"] << get scriptable object) << Get Filtered Rows;
if(or(isempty(myRows),NItems(myRows)==0),myRows=1::N Rows(dt));
:Rank_correct<<Eval Formula
);
ldf = gb << Local Data Filter( Add Filter( columns( :name ), Where( :name == {"AMY", "CLAY", "EDWARD"} ) ));
updateNow(1);
rs = (Current Report()["Local Data Filter"] << get scriptable object) << Make Filter Change Handler( updateNow );