In "44322.jmp" ha 28 FAI#, voglio cambiare lo script per salvare 28 immagini come "44322 - Graph Builder.jpg". So che i seguenti ":FAI_1.1&:FAI_1.2&:FAI_1.3" necessitano di modifiche, ma non so cosa cambiare.
Variables(
X( :FAI_1.1, Combine( "Parallel Merged" ) ),
X( :FAI_1.2, Position( 1 ), Combine( "Parallel Merged" ) ),
X( :FAI_1.3, Position( 1 ), Combine( "Parallel Merged" ) ),
Group X( Phase ),
Color( Phase )
),
Ecco una modifica allo script che gestisce i 28 FAI trovati nei dati.Regola anche il grafico per compensare il diverso numero di colonne trovate per ogni FAI.
Names Default To Here( 1 );
dt = Data Table( "44322.jmp" );
New Window( "Box Plot Compaire",
Excluded( Row State( 1 ) ) = 1;
Excluded( Row State( 2 ) ) = 1;
Excluded( Row State( 3 ) ) = 1;
For( i = 2, i < N Col() + 1, i++,
// determine the number of columns for the current FAI
nFAI = 1;
FAI = Word( 1, Column Name( i ), "." );
Try( If( Word( 1, Column Name( i + 1 ), "." ) == FAI, nFAI = 2 ) );
Try( If( Word( 1, Column Name( i + 2 ), "." ) == FAI, nFAI = 3 ) );
If(
nFAI == 3,
mybox = Graph Builder(
Size( 568, 458 ),
Show Control Panel( 0 ),
Variables(
X( As Column( Column Name( i ) ), Position( 1 ), Combine( "Parallel Merged" ) ),
X( As Column( Column Name( i + 1 ) ), Position( 1 ), Combine( "Parallel Merged" ) ),
X( As Column( Column Name( i + 2 ) ), Position( 1 ), Combine( "Parallel Merged" ) ),
Group X( Phase ),
Color( Phase )
),
Elements(
Box Plot( X( 1 ), X( 2 ), X( 3 ), Legend( 9 ) ),
Points( X( 1 ), X( 2 ), X( 3 ), Legend( 10 ) ),
Caption Box( X( 1 ), X( 2 ), X( 3 ), Legend( 11 ) )
),
SendToReport(
Dispatch(
{},
"",
ScaleBox,
{Min(
Col Min( Column( i ) ) - (Col Max( Column( i ) ) - Col Min( Column( i ) )) /
100
), Max(
Col Max( Column( i ) ) + (Col Max( Column( i ) ) - Col Min( Column( i ) )) /
100
), /*Inc( (col max(column(i)) - col min(column(i)))/100 ),*/ Minor Ticks( 1 ),
Add Ref Line(
Column( i )[1],
"Solid",
"Dark Red",
Eval Insert( "LSL ^column(i)[1]^" ),
1
), Add Ref Line(
Column( i )[2],
"Solid",
"Dark Red",
Eval Insert( "USL ^column(i)[2]^" ),
1
), Add Ref Line(
Column( i )[3],
"Solid",
"Dark Blue",
Eval Insert( "Target ^column(i)[3]^" ),
1
)}
)
)
);,
nFAI == 2,
mybox = Graph Builder(
Size( 568, 458 ),
Show Control Panel( 0 ),
Variables(
X( As Column( Column Name( i ) ), Position( 1 ), Combine( "Parallel Merged" ) ),
X( As Column( Column Name( i + 1 ) ), Position( 1 ), Combine( "Parallel Merged" ) ),
Group X( Phase ),
Color( Phase )
),
Elements(
Box Plot( X( 1 ), X( 2 ), X( 3 ), Legend( 9 ) ),
Points( X( 1 ), X( 2 ), X( 3 ), Legend( 10 ) ),
Caption Box( X( 1 ), X( 2 ), X( 3 ), Legend( 11 ) )
),
SendToReport(
Dispatch(
{},
"",
ScaleBox,
{Min(
Col Min( Column( i ) ) - (Col Max( Column( i ) ) - Col Min( Column( i ) )) /
100
), Max(
Col Max( Column( i ) ) + (Col Max( Column( i ) ) - Col Min( Column( i ) )) /
100
), /*Inc( (col max(column(i)) - col min(column(i)))/100 ),*/ Minor Ticks( 1 ),
Add Ref Line(
Column( i )[1],
"Solid",
"Dark Red",
Eval Insert( "LSL ^column(i)[1]^" ),
1
), Add Ref Line(
Column( i )[2],
"Solid",
"Dark Red",
Eval Insert( "USL ^column(i)[2]^" ),
1
), Add Ref Line(
Column( i )[3],
"Solid",
"Dark Blue",
Eval Insert( "Target ^column(i)[3]^" ),
1
)}
)
)
);,
mybox = Graph Builder(
Size( 568, 458 ),
Show Control Panel( 0 ),
Variables(
X( As Column( Column Name( i ) ), Position( 1 ), Combine( "Parallel Merged" ) ),
Group X( Phase ),
Color( Phase )
),
Elements(
Box Plot( X( 1 ), X( 2 ), X( 3 ), Legend( 9 ) ),
Points( X( 1 ), X( 2 ), X( 3 ), Legend( 10 ) ),
Caption Box( X( 1 ), X( 2 ), X( 3 ), Legend( 11 ) )
),
SendToReport(
Dispatch(
{},
"",
ScaleBox,
{Min(
Col Min( Column( i ) ) - (Col Max( Column( i ) ) - Col Min( Column( i ) )) / 100
), Max(
Col Max( Column( i ) ) + (Col Max( Column( i ) ) - Col Min( Column( i ) )) / 100
), /*Inc( (col max(column(i)) - col min(column(i)))/100 ),*/ Minor Ticks( 1 ),
Add Ref Line(
Column( i )[1],
"Solid",
"Dark Red",
Eval Insert( "LSL ^column(i)[1]^" ),
1
), Add Ref Line(
Column( i )[2],
"Solid",
"Dark Red",
Eval Insert( "USL ^column(i)[2]^" ),
1
), Add Ref Line(
Column( i )[3],
"Solid",
"Dark Blue",
Eval Insert( "Target ^column(i)[3]^" ),
1
)}
)
)
);
);
Myboxplot = mybox << report;
Myboxplot << save picture( FAI || ".emf", emf );
// Increase variable i if nFAI is greater than 1
i=i+nFAI-1;
);
);Come segue, " Min(……) " può usare "::" per campionare? Scrissi " Min( Col Min( Colonna( i :: i + 12 ))); " & " Min( Col Min( Colonna( i ) :: Col Min( Colonna( i + 12 ))); "ma è un errore.
For( i = 2, i < N Col() + 1, i++,
……
Min(Col Min( Colonna( i )), Col Min( Colonna( i + 1 )), Col Min( Colonna( i + 2 )), Col Min( Colonna( i + 3 )), Col Min( Colonna( i + 4 )), Col Min( Colonna( i + 5 )), Col Min( Colonna( i + 6 )), Col Min( Colonna( i + 7 )), Col Min( Colonna( i + 8 )), Col Min( Colonna( i + 9 )), Col Min( Colonna( i + 10 )), Col Min( Colonna( i + 11 )), Col Min( Colonna( i + 12 )));
……
);