<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo,
Ich bin mit JMP-Scripting recht unbekannt und habe folgendes Problem: In einer Produktionsumgebung gibt es mehrere Prozessschritte und für jeden Prozessschritt gibt es mehrere Tools. Am Ende werden Messungen durchgeführt und ich muss Werkzeugtrends für diese Messungen erstellen, wobei die Messungen auf der Y-Achse, das Datum auf der X-Achse und die Daten nach dem für die Chargen verwendeten Werkzeug gruppiert sind. Um nicht im Wesentlichen den gleichen Code mehrmals zu wiederholen, versuche ich Folgendes für eine bestimmte Messung:
Zuerst erstelle ich eine Werkzeugliste und eine Datumsliste:
tool_list=list("Tool1", "Tool2", "Tool3");
date_list=list("Datum1", "Datum2", "Datum3");
Als nächstes verwende ich for, um die Listen zu durchlaufen:
for(i=1, i<= nitems(tool_list), i++, ...)
Nun sind die Elemente in jeder Liste Spaltennamen in der Datentabelle und ich muss diese der Graph Builder-Plattform zuweisen. Ich habe so etwas versucht:
Variablen (X(date_list(i)), Y(measurement1), Group Y(tool_list(i))
Allerdings erkennt JMP nicht, dass date_list(i) ein Spaltenname ist. Gibt es eine Möglichkeit, das zu spezifizieren?
Vielen Dank für jede Hilfe!
Grüße
Ar NEIN
ArnoW,
Ich habe Probleme, Ihren Code zu verstehen.Vielleicht könnten Sie es mit etwas Formatierung erneut veröffentlichen?
Klicken Sie mit der rechten Maustaste auf den Code in einem JMP-Skriptfenster und wählen Sie „Skript neu formatieren“.
Kopieren Sie dann den Code aus JMP und fügen Sie ihn in ein leeres Word-Dokument ein.Kopieren Sie es erneut aus Word und fügen Sie es in ein Antwortfenster in diesem Forum ein.So konnte ich den formatierten Code veröffentlichen.
Grüße,
Peter
Ok, hier ist der Repost:
Danke, es funktioniert jetzt. Es trat jedoch ein weiteres Problem auf: Ich muss die Achsen konfigurieren. Der Code, der früher funktionierte, ist:
Präz = Neues Fenster ( „Shunts vs. PREC“ ,
dt << Graph Builder (
Größe ( 853 , 558 ) ,
Systemsteuerung anzeigen ( 0 ) ,
Legende anzeigen ( 0 ) ,
Waage sperren ( 1 ) ,
Variablen ( X ( : Vorläufer , Größe ( 120 ) ) , Y ( : Shunts ) , Gruppe Y ( : Anlage2 ) ) ,
Elemente ( Punkte ( X , Y , Legende ( 2 ) ) , Glatter ( X , Y , Legende ( 3 ) ) ) ,
SendToReport (
Versenden (
{} ,
"Vorläufer" ,
ScaleBox ,
{ Mindest ( start_datum - Etikett ) , Max ( end_datum ) , Intervall ( "Tag" ) , Inc ( date_inc ) , Kleinere Zecken ( 0 ) ,
Gedrehte Etiketten ( 1 )}
) ,
Versenden (
{} ,
„Shunts“ ,
ScaleBox ,
{ Format ( "Am besten" , 12 ) , Mindest ( - 0,1 ) , Max ( 12 ) , Inc ( 1 ) , Kleinere Zecken ( 1 ) ,
Referenzlinie hinzufügen ( 4 , Solide , { 255 , 0 , 0 } ) , Hauptraster anzeigen ( 1 ) , Gedrehte Etiketten ( „Automatisch“ )}
)
)
)
) ;
Ich habe diesen Code gerade aus der Option „Skript kopieren“ des Diagramms kopiert. Leider verstehe ich den Code kaum. Die aktualisierte Version, die Listen verwendet, macht nichts mit den Achsen:
date_list = Aufführen ( "Vorläufer" , „GUS“ ) ;
Werkzeugliste = Aufführen ( „Anlage2“ , „Anlage3“ ) ;
Präz = Neues Fenster ( „Shunts vs. PREC“ ,
dt << Graph Builder (
Größe ( 853 , 558 ) ,
Systemsteuerung anzeigen ( 0 ) ,
Legende anzeigen ( 0 ) ,
Waage sperren ( 1 ) ,
Variablen (
X ( Spalte ( dt , date_list [ ich ] ) , Größe ( 120 ) ) ,
Y ( : Shunts ) ,
Gruppe Y ( Spalte ( dt , Werkzeugliste [ ich ] ) ) ,
Elemente ( Punkte ( X , Y , Legende ( 2 ) ) , Glatter ( X , Y , Legende ( 3 ) ) ) ,
SendToReport (
Versenden (
{} ,
date_list [ ich ] ,
ScaleBox ,
{ Mindest ( start_datum - Etikett ) , Max ( end_datum ) , Intervall ( "Tag" ) , Inc ( date_inc ) , Kleinere Zecken ( 0 ) ,
Gedrehte Etiketten ( 1 )}
) ,
Versenden (
{} ,
„Shunts“ ,
ScaleBox ,
{ Format ( "Am besten" , 12 ) , Mindest ( - 0,1 ) , Max ( 12 ) , Inc ( 1 ) , Kleinere Zecken ( 1 ) ,
Referenzlinie hinzufügen ( 4 , Solide , { 255 , 0 , 0 } ) , Hauptraster anzeigen ( 1 ) , Gedrehte Etiketten ( „Automatisch“ )}
)
)
)
)
) ;
Danke und Grüße Arno
Für die Referenzierung von Listenelementen müssen Sie eckige Klammern anstelle von runden Klammern verwenden.Hier ist ein Beispiel:
dt = offen ( „$sample_data\Car Physical Data.jmp“ ) ;
xlist = { „Gastankgröße“ , "Gewicht" } ;
ylist = { "Verschiebung" , „Pferdestärke“ } ;
Glanz = { "Typ" , "Land" } ;
für ( ich = 1 , ich <= nitems ( xlist ) , ich ++,
drucken ( ich ) ;
Graph Builder (
Systemsteuerung anzeigen ( 0 ) ,
Variablen ( X ( Spalte ( dt , xlist [ ich ]) ) ,
Y ( Spalte ( dt , ylist [ ich ]) ) ,
Farbe ( Spalte ( dt , Glanz [ ich ]) ) ) ,
Elemente ( Punkte ( X , Y , Farbe , Legende ( 2 ) ) ) ,
SendToReport ( Versenden ( {} , „Graph Builder“ , FrameBox , { Markierungsgröße ( 3 )} ) )
) ;
) ;