Hallo,
Ich schreibe ein sehr einfaches Skript für die Verwendung des Control Graph Builder.
Beim Ausführen des folgenden Skripts werden zwei Diagramme in zwei verschiedenen Fenstern angezeigt.
Beispiel unten gezeigt:
Control Chart Builder(
Size( 903, 464 ),
Show Control Panel( 0 ),
Variables(
Subgroup( :Name( "MoveOutTime" ) ),
Y( :Current1 )
),
Chart(
Position( 1 ),
Points( Individual Points( 1 ) ),
Limits( Sigma( "Moving Range" ), Zones( 1 ) ),
Warnings( Test Beyond Limits( 1 ) ),
Add Spec Limits( {LSL( 2.3 )} )
),
Chart(
Position( 2 ),
Points( Statistic( "Moving Range on Means" ), Individual Points( 1 ) ),
Limits( Sigma( "Moving Range" ), Zones( 1 ) ),
Warnings( Test Beyond Limits( 1 ) )
),
SendToReport(
Dispatch(
{},
"MoveOutTime",
ScaleBox,
{Min( -0.5 ), Max( 528.5 ), Interval( "Numeric" ), Inc( 0.5 ),
Minor Ticks( 0 )}
),
Dispatch(
{},
"Current1",
ScaleBox,
{Add Ref Line( 2.3, "Solid", "Blue", "LSL", 1 )}
),
Dispatch(
{},
"Current1 Limit Summaries",
OutlineBox,
{OutlineCloseOrientation( "Vertical" )}
)
)
);
Control Chart Builder(
Size( 903, 464 ),
Show Control Panel( 0 ),
Variables(
Subgroup( :Name( "MoveOutTime" ) ),
Y( :Current2 )
),
Chart(
Position( 1 ),
Points( Individual Points( 1 ) ),
Limits( Sigma( "Moving Range" ), Zones( 1 ) ),
Warnings( Test Beyond Limits( 1 ) ),
Add Spec Limits( {LSL( 3.1 )} )
),
Chart(
Position( 2 ),
Points( Statistic( "Moving Range on Means" ), Individual Points( 1 ) ),
Limits( Sigma( "Moving Range" ), Zones( 1 ) ),
Warnings( Test Beyond Limits( 1 ) )
),
SendToReport(
Dispatch(
{},
"MoveOutTime",
ScaleBox,
{Min( -0.5 ), Max( 528.5 ), Interval( "Numeric" ), Inc( 0.5 ),
Minor Ticks( 0 )}
),
Dispatch(
{},
"Current2",
ScaleBox,
{Add Ref Line( 3.1, "Solid", "Blue", "LSL", 1 )}
),
Dispatch(
{},
"Current2 Limit Summaries",
OutlineBox,
{OutlineCloseOrientation( "Vertical" )}
)
)
);
(1) Wie kann ich diese beiden Diagramme zusammenfügen, sodass sie beide zusammen in einem JMP-Journal erscheinen können?
(2) Was soll ich tun, wenn ich mehrere aktuelle Parameter habe – wie soll ich alle diese Parameter in einer Schleife ausführen, damit sie schließlich im selben Fenster eines JMP-Journals erscheinen?
Vielen Dank im Voraus für die Beratung.
@Mark_Bailey Der Ansatz von ist solide.
Ich habe gerade eine gepostet bloggen das diese Idee verwendet und einige größere Beispiele von Diagrammen enthält, die zu einem "Dashboard" zusammengefasst sind
1. Mir fallen mehrere Ansätze ein.
- Sende das << Tagebuch Nachricht an jede einzelne Plattform.
- Tragen Sie beide Antworten in die ein Y Rolle des Startcodes.
- Fügen Sie den separaten Startcode oben in die ein Neues Fenster ("Charts", ccb1, ccb2 ) fungieren als Argumente.
2. Ich habe diesen Code nicht getestet, aber die allgemeine Idee ist, den festen Teil aufzubrechen (z. B. ccb-Ausdruck in diesem Fall) und der variable Teil (z. B. y arg in diesem Fall). Verwenden Sie Ausdrücke, um den endgültigen Code zu erstellen, und werten Sie ihn dann aus.
Names Default to Here( 1 );
column = List( /* a list of columns to chart */ );
ccb expr = Expr( Control Chart Builder( /* all arguments except for Y() */ ) );
y arg = Expr( Y() );
For( col = 1, col <= N Items( columns ), col++,
Insert Into( y arg, Column( column[col] ) );
);
Eval(
Insert( ccb expr, Name Expr)( y arg )
);