Einige kurze Hinweise zum Hinzufügen von Spezifikationsgrenzwertlinien zu allen Spalten in einer Tabelle mit Spezifikationsgrenzwerten
Wenn Spezifikationsgrenzen in den Eigenschaften einer Spalte definiert werden, ist es oft praktisch, die Spezifikationsgrenzen als Referenzlinien in den Diagrammen für diese Spalte einzeichnen zu lassen. ICH In den Spalteneigenschaften für Spezifikationsgrenzen gibt es ein Kontrollkästchen, das bewirkt, dass die Spezifikation für diese Spalte immer dann verwendet wird, wenn die Spalte in einem Diagramm verwendet wird. Vielleicht möchte man dieses kleine Kästchen bei einer ganzen Reihe von Spalten mit Spezifikationen ankreuzen. Manuell wäre dies mühsam, daher finden Sie hier ein wenig JSL, um diese Aufgabe zu erledigen.
Das Skript sammelt eine Liste fortlaufender Spalten. (Zeichen- und Nominalspalten hätten ohnehin keine Spezifikationen.)
Das Skript ruft die Spalteneigenschaft „Spezifikationsgrenzen“ aus jeder Spaltenspalte in der Liste ab. Die Funktion „Get Column Properties“ ruft alle Eigenschaften ab, aber das ist nicht das, was wir hier wollen, also rufen wir nur die Eigenschaft „spec limit“ ab. Wenn keine Spec Limit-Eigenschaft vorhanden ist, wird Empty() zurückgegeben.
Als nächstes fügt das Skript y ein, einen nicht ausgewerteten Ausdruck, der „show limits(1)“ enthält, in die Liste, die aus der Spec Limits-Eigenschaft stammt.
Schließlich setzt das Skript die neue Spec Limit-Eigenschaft auf die Spalte zurück, mit der es begonnen hat ... es sei denn, die Spec Limit-Eigenschaft ist ein Ausdruck und keine Liste.
Probleme mit Arten von Spalteneigenschaften?
Es gibt zwei Möglichkeiten, eine Spalteneigenschaft einzurichten
1. Als Ausdruck:
Kol << Eigenschaft festlegen ( „Spezifikationsgrenzen“ , Spezifikationsgrenzen ( LSL ( 10 ) , USL ( 50 ) , Ziel ( 30 ) ) ) ;
2 Als Liste:
col<< Eigenschaft festlegen ( „Spezifikationsgrenzen“ , { LSL ( 10 ) , USL ( 50 ) , Ziel ( 30 )} ) ;
Eine kleine Erklärung: Dieser Teil des Skripts...
Wenn ( Kopfname Ausdruck ( A ) == „Spezifikationsgrenzen“ ,
nn = narg ( A ) ;
aa = {} ;
für ( ii = 1 , ii <= nn , ii ++, einfügen in ( aa , arg ( A , ii ))) ; zeigen ( aa ) ;
collist [ ich ] << Eigenschaft löschen ( „Spezifikationsgrenzen“ ) ;
collist [ ich ] << Eigenschaft festlegen ( „Spezifikationsgrenzen“ , evalu ( aa ))
...überprüft, ob die Spezifikationseigenschaft der Ausdruckstyp ist. Fügt dann die Komponenten des Arguments in eine Liste ein. Nach löschen Wenn die vorhandene Eigenschaft gelöscht wird, wird die neue Listentypeigenschaft wieder hinzugefügt.
//////////////////Dies ist das Skript zur Standardisierung des Eigenschaftstyps der Spezifikationsspalte///////////////////// //////
dt = aktuelle Datentabelle () ;
collist = dt << Spaltennamen abrufen ( Kontinuierlich ) ;
für ( ich = 1 , ich <= nitems ( collist ) , ich ++,
A = collist [ ich ] << Eigentum bekommen ( „Spezifikationsgrenzen“ ) ;
j = Ausdruck ( Grenzen aufzeigen ( 1 )) ;
einfügen in ( A , Nameexpr ( j )) ;
zeigen ( A ) ;
Wenn ( Kopfname Ausdruck ( A ) == „Spezifikationsgrenzen“ ,
nn = narg ( A ) ;
aa = {} ;
für ( ii = 1 , ii <= nn , ii ++, einfügen in ( aa , arg ( A , ii ))) ; zeigen ( aa ) ;
collist [ ich ] << Eigenschaft löschen ( „Spezifikationsgrenzen“ ) ;
collist [ ich ] << Eigenschaft festlegen ( „Spezifikationsgrenzen“ , evalu ( aa )) ,
collist [ ich ] << Eigenschaft festlegen ( „Spezifikationsgrenzen“ , evalu ( A ))
)) ;
Zum Prüfen : Dies ist ein reduzierter Testfall zur Verwendung als Beispiel (unter JMP 12.2). Dieser Teil von JSL erstellt eine neue Tabelle mit den zwei verschiedenen Arten von Spezifikationseigenschaftsformaten.
dt = Neuer Tisch ( "Ziel" , Zeilen hinzufügen ( 1 ), Neue Spalte ( „ab“ , Numerisch , „Kontinuierlich“ , Format ( "Am besten" , 12 ) , Werte festlegen ( [ 1 ] ) ) ,
Neue Spalte ( „b minus a“ , Numerisch , „Kontinuierlich“ , Format ( "Am besten" , 12 ) , Ausgewählte festlegen , Werte festlegen ( [ 3 ] ) ) ) ;
//Beide Formate der Spezifikationsgrenzen hinzufügen
: Spalte ( 1 ) << Eigenschaft festlegen ( „Spezifikationsgrenzen“ , Spezifikationsgrenzen ( LSL ( 10 ) , USL ( 50 ) , Ziel ( 30 ) ) ) ;
: Spalte ( 2 ) << Eigenschaft festlegen ( „Spezifikationsgrenzen“ , { LSL ( 1 ) , USL ( 5 ) , Ziel ( 3 )} ) ;
aa = : Spalte ( 1 ) << Eigentum bekommen ( „Spezifikationsgrenzen“ ) ; zeigen ( aa ) ;
bb = : Spalte ( 2 ) << Eigentum bekommen ( „Spezifikationsgrenzen“ ) ; zeigen ( bb ) ;
Unter diesen Links finden Sie weitere Kommentare und Probleme, die von Nutzen sein könnten:
Ich versuche, Spezifikationsgrenzen aus Spalten zu extrahieren
Als Diagrammreferenzlinien anzeigen
http://www.jmp.com/support/notes/46/953.html