Hallo zusammen,
Ich versuche, ein Fenster zu erstellen, das mehrere Registerkarten "Plist" enthält und jedes Diagramm nach Bezeichnung anzeigt. Das Skript funktioniert einwandfrei, zeigt jedoch nicht die Referenzzeilen (die auf eine Spalte verweisen) an, wenn das Skript ausgeführt wird. Gibt es eine Problemumgehung für die bivariaten Diagramme, um diese Referenzlinien basierend auf ihrem Spaltenwert anzuzeigen? Unten ist mein Skript, das ich bereits erfolgreich ausgeführt habe, aber nicht mehr funktioniert.
Vielen Dank!
Plist = {"Prod1", "Prod2", "Prod3", "Prod4"};
nw = New Window( "test", tb = Tab Box() );
For( y = 1, y <= N Items( Plist ), y++,
dtflag << Select Where( :product == Plist[y] );
Try( TempSubDT = dtflag << subset( Selected Rows, invisible ) );
tb << Append(
Char( Plist[y] ),
V List Box(
TempSubDT << Bivariate(
SendToByGroup( Bygroup Default ),
Y( :data ),
X( :txn_time ),
Automatic Recalc( 1 ),
Fit Spline( 1e+18, {Line Color( {212, 73, 88} )}, Report( 0 ) ),
By( :LABEL ),
SendToReport(
Dispatch(
{}, "1", ScaleBox, {Interval( "Day" ), Inc( 2 ), Minor Ticks( 0 ), Label Row( Label Orientation( "Angled" ) )} ),
Dispatch(
{},
"2",
ScaleBox,
{Min( :LSL - :TGT* 0.1 ), Max( :USL + :TGT* 0.1 ), Add Ref Line( :USL, "Dashed", "Red", "USL", 2 ),
Add Ref Line( :LSL, "Dashed", "Red", "LSL", 2 ), Add Ref Line( :UCL, "Dashed", "Green", "UCL", 2 ),
Add Ref Line( :LCL, "Dashed", "Green", "LCL", 2 ), Add Ref Line( :TGT, "Solid", "Black", "Target", 2 )}
),
Dispatch( {}, "Bivar Plot", FrameBox, {Frame Size( 650, 300 )} )
)
)
)
);
);Der Referenzlinienwert muss auf einen einzelnen Wert und nicht auf eine ganze Spalte von Werten verweisen. Daher muss Ihre Referenzlinie hinzufügen folgendermaßen aussehen:
Add Ref Line( :USL[1], "Dashed", "Red", "USL", 2 ),
Add Ref Line( :LSL[1], "Dashed", "Red", "LSL", 2 ),
Add Ref Line( :UCL[1], "Dashed", "Green", "UCL", 2 ),
Add Ref Line( :LCL[1], "Dashed", "Green", "LCL", 2 ),
Add Ref Line( :TGT[1], "Solid", "Black", "Target", 2 )
Ah, das hat perfekt funktioniert! Vielen Dank, Nelson!