Missing Local Filter when Append Graph to the new WindowI try to append graph with local filter to the new window
The graph is appeared in the New Window Tab but the local filter is missing.
Yld2 =
Graph Builder(
Size( 604, 690),
Show Control Panel( 0 ),
Variables( X( :Index ), Y( :Yield ), Page( :Process ) ),
Elements(
Points( X, Y, Legend( 4 ) ),
Line( X, Y, Legend( 5 ) ),
Caption Box( X, Y, Legend( 6 ), Per Factor( 1 ) )
),
Local Data Filter(
Add Filter( columns( :Process ), Where( :Process == {"Auto_Align", "Final_Electrical_Test"} ),Display( :Process, N Items( 10 ) ) )
)
);
plot = new window("Plot", tb = tab box());
tb << append ("Yield Trend By Process",vlb = vlistbox());
vlb << append(report(Yld2));Data Exploration and VisualizationRe: Missing Local Filter when Append Graph to the new WindowYou could also generate the Data Filter and the GraphBuilder separately and append both to the window.
Important: don't forget the Data Filter Context Box which will create the link between the Data Filter and the plot.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
gb = H List Box(
dt << Graph Builder(
Size( 200, 200 ),
Show Control Panel( 0 ),
Variables( X( :sex ), Y( :age ) ),
Elements( Points( X, Y, Legend( 4 ) ) )
)
);
ldf = H list Box(dt << Data Filter( Local, Add Filter( columns( :sex ) ) ));
plot = New Window( "Plot", Data Filter Context Box( tb = Tab Box() ) );
tb << append(
"age by sex",
Data Filter Context Box(
hlb = H List Box()
)
);
hlb << append( ldf );
hlb << append( gb );
And the easiest way:
Create the window with the plot and the Data Filter - don't append them 
Re: Missing Local Filter when Append Graph to the new WindowNice idea to encapsulate the fragile GraphBuilder with a display box.
I just found in the Scripting Index that Platform is explicitly invented for this application:

I don't know if Platform has a benefit compared to a List Box - or another Display Box ...
Re: Missing Local Filter when Append Graph to the new WindowWhen I saw this idea, I thought: wow, great, looks like a solution for the idea with the split Graph + additional legend (/ data filter)
Graph Builder - open legend in new window (or in it's own ScrollBox)
But it seems that by taking the parts of the report the objects loose their interactivity 
Re: Missing Local Filter when Append Graph to the new WindowIf you build your report in a bit different way it should work. This is one option
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
vlb = V List Box(gb = dt << Graph Builder(
Size(525, 454),
Show Control Panel(0),
Variables(X(:weight), Y(:height)),
Elements(Points(X, Y, Legend(7)), Smoother(X, Y, Legend(8))),
Local Data Filter(Add Filter(columns(:age), Display(:age, N Items(6))))
));
plot = New Window("Plot", tb = Tab Box());
tb << append("Yield Trend By Process", plot_collector = V List Box());
plot_collector << append(vlb);Re: Missing Local Filter when Append Graph to the new WindowThe Local Data Filter is independent of the Graph Builder Report, so it has to be added separately.
The path to the Local data filter is being referenced by going to the parent of the Graph Builder object and then referencing the Outline Box for the Local Data Filter.
Yld2 = Graph Builder(
Size( 604, 690 ),
Show Control Panel( 0 ),
Variables( X( :Index ), Y( :YieProcess ), Page( :sex ) ),
Elements(
Points( X, Y, Legend( 4 ) ),
Line( X, Y, Legend( 5 ) ),
Caption Box( X, Y, Legend( 6 ), Per Factor( 1 ) )
),
Local Data Filter(
Add Filter( columns( :Process ), Where( :Process == "Auto_Align", "Final_Electrical_Test" ), Display( <SPAN class="lia-emoticons-autosuggestions"><SPAN class="lia-emoticons-search-term">:Process</SPAN></SPAN>, N Items( 10 ) ) )
)
);
plot = New Window( "Plot", tb = Tab Box() );
tb << append( "Yield Trend By Process", vlb = V List Box( hlb = H List Box() ) );
hlb << append( (Report( yld2 ) << parent)["Local Data Filter"] );
hlb << append( Report( Yld2 ) );