Dieses Skript generiert Daten in einem Format, das meinen tatsächlichen Daten ähnelt, und zeichnet dann Diagramme in einem von mir gewünschten Layout auf.
Auf der Y-Achse werden mehrere Parameter dargestellt, wenn sie im lokalen Datenfilter ausgewählt werden. Das ist für mich nützlich, da ich Trends bei verwandten Parametern in meinen tatsächlichen Daten vergleichen kann.
Gibt es eine Möglichkeit, unabhängige Best-Fit-/automatische Y-Achsenskalen zu erhalten, ohne die Option „Seite“ des Diagrammerstellers zu verwenden oder zusätzliche Spalten in der Datentabelle zu erstellen, wenn Parameter im lokalen Datenfilter ausgewählt werden? Ich denke darüber nach, die Anzeigebäume und den Filteränderungshandler in den Griff zu bekommen, weiß aber, wie ich vorgehen soll. Etwas Hilfe wäre nützlich.
Names Default To Here(1);
clear log ();
dt = Open("$SAMPLE_DATA/Probe.jmp");
// Combine columns 1
Data Table( "Probe" ) << Combine Columns(columns( :Lot ID, :Wafer Number ), Column Name( "LotWafer" ), Delimiter( "." ));
// Combine columns 2
Data Table( "Probe" ) << Combine Columns(columns( :Die X, :Die Y ), Column Name( "[X,Y]" ), Delimiter( "," ));
// Delete columns
Data Table( "Probe" ) << Delete Columns( :Lot ID, :Wafer Number, :Die X, :Die Y );
grouped_cols = dt << get column group( "Responses" );
// Transpose data table // → Data Table( "Transpose of Probe" )
Data Table( "Probe" ) << Transpose( columns (grouped_cols), By( :LotWafer, :Process, :Start Time ),
Label( :Site ), Output Table( "Transpose of Probe" ));
close (dt, no save);
// Add column
dt = Current Data Table ();
Data Table( "Transpose of Probe" )
<< New Column("Mean", Numeric, "Continuous", Format("Best", 12 ), Formula(Mean( :"1"n, :"2"n, :"3"n, :"4"n, :"5"n )));
//Plot chart
dt = Graph Builder(
Size( 570, 458 ),
Show Control Panel( 0 ),
Y Group Edge( "Left" ),
Variables(X(:LotWafer, Order By( :Start Time, Ascending, Order Statistic( "Mean" ) )),
Y( :Mean ), Group Y(:Label, Order By( :Process, Ascending, Order Statistic( "Mean" ) )) ),
Elements( Points( X, Y, Legend( 23 ) ) ),
Local Data Filter(Conditional, Add Filter(columns( :Label ),Where( :Label == {"30D1_7X100_IL_12V", "30D1_7X100_IL_25V"} ),
Display( :Label, Find( Set Text( "" ) ) ))),
SendToReport(Dispatch({},"Mean",ScaleBox,{ Min( -0.0000336 ), Max( 0.00004544 ), Inc( 0.00001 ),Minor Ticks( 1 )})));Beachten Sie die Min/Max-Werte in der letzten Zeile, die aus dem Skript kopiert wurde, nachdem Sie den Graph Builder interaktiv verwendet haben, um die Daten ordnungsgemäß anzuzeigen.