JSL-Skript zum Erstellen mehrerer Diagramme für Y vs. X nach A mit einer Grenzwerttabelle zum Erstellen von KontrolldiagrammenIch habe eine JMP-Tabelle mit beispielsweise 5 Spalten
ColA ist eine kategoriale Spalte. ColA kann unterschiedliche Wertegruppen haben. Für jede Gruppe von Werten aus ColA sind LCL und UCL jedoch gleich, ich meine so: (sagen wir)
Beispieldaten mit nur 2 Gruppen von Col A
Spalte A LCL UCL Y X
a 5 10 9 PQR1
a 5 10 11 PQR2
b 17 25 12 ABC1
b 17 25 14 ABC1
b 17 25 19 ABC1
Ich möchte also Y vs. Dies sollte also zwei Diagramme erzeugen (eines für a und eines für b). Ich möchte jedoch ein JSL-Skript erstellen, um die beiden unterschiedlichen Kontrolldiagramme für jedes Diagramm zu erstellen. Für den Fall a ( 5,10) und für den Fall b ( 17, 25).
Ich weiß, dass das in JMP einfach ist. Aber in meinem Fall generiere ich Daten spontan und weiß nicht, wie viele Gruppen und wie hoch die LCL/UCL sind. Daher ist ein Skript erforderlich, um dies zu erreichen. Ich versuche zu verstehen, wie dieses Problem mit JSL gelöst werden kann.
Betreff: JSL-Skript zum Erstellen mehrerer Diagramme für Y vs. X nach A mit einer Grenzwerttabelle zum Erstellen von KontrollkanälenWunderbar!! Lief wie am Schnürchen!!! DankeBetreff: JSL-Skript zum Erstellen mehrerer Diagramme für Y vs. X nach A mit einer Grenzwerttabelle zum Erstellen von KontrollkanälenDie Syntax für „Referenzzeile hinzufügen“ ist falsch.Es muss entweder in die Oneway-Plattformdefinition als „Send to Report“-Struktur eingeschlossen werden oder nachträglich hinzugefügt werden, indem eine Add Ref Line-Nachricht an die Reports AxisBox gesendet wird, wie ich unten gezeigt habe
Names Default To Here( 1 );
dt = Current Data Table();
Summarize( groupid = by( :Col A ) );
map_l = Associative Array( :Col A, :LCL );
map_u = Associative Array( :Col A, :UCL );
For( i = 1, i <= N Items( groupid ), i++,
idname = Char( groupid[i] );
df = dt << Oneway(
Y( :Y ),
X( :X ),
Box Plots( 1 ),
Mean Diamonds( 1 ),
Where( :Col A == idname )
);
Report( df )[AxisBox( 1 )] <<
Add Ref Line( map_u[idname], "Dashed", "Black", "UCL", 1 );
Report( df )[AxisBox( 1 )] <<
Add Ref Line( map_l[idname], "Dashed", "Black", "LCL", 1 );
);
Betreff: JSL-Skript zum Erstellen mehrerer Diagramme für Y vs. X nach A mit einer Grenzwerttabelle zum Erstellen von KontrollkanälenDanke, Jim...
Nun, ich werde mein Y vs.
Ich hatte noch nicht vor, irgendeine Plattform zu nutzen.
Ich wollte das Problem angehen, indem ich ein assoziatives Array basierend auf der Gruppe erstellte und dann eine Schleife erstellte. Aber auch das funktioniert nicht. Ich habe den Ausschnitt des Codes unten eingefügt.
dt = Current Data Table();
summarize(groupid=by(:Col A));
map_l = Associative Array( :Col A, :LCL );
map_u = Associative Array( :Col A, :UCL );
for(i=1, i<= N Items(groupid), i++,
idname = char(groupid[i]);
df = dt << Oneway(
Y( :Y ),
X( :X ),
Box Plots( 1 ),
Mean Diamonds( 1 ),
Where( :Col A == idname ),
Add Ref Line(map_u[idname] , "Dashed", "Black", "UCL", 1 ),
Add Ref Line(map_l[idname] , "Dashed", "Black", "LCL", 1 )
)
)
Betreff: JSL-Skript zum Erstellen mehrerer Diagramme für Y vs. X nach A mit einer Grenzwerttabelle zum Erstellen von KontrollkanälenFür die verschiedenen Diagramme gibt es unterschiedliche Kontrollgrenzen, die jeweils innerhalb der Spalte festgelegt werden müssen, damit sie für das Diagramm wirksam werden. Werden Sie immer einen bestimmten Diagrammtyp verwenden oder müssen Sie die Grenzwerte aus Ihrer Tabelle für jeden der Grenzwerttypen (XBar, Individual...) festlegen? Werden Sie die Control Chat Builder-Plattform oder die Control Chart-Plattform verwenden?