So führen Sie eine Schleife mithilfe einer Funktion durchDer Unterschied zwischen Function() und Expr(). Nach msharp Als ich gestern meine Frage beantwortete, wurde mir klar, dass ich das alles falsch gemacht habe. Derzeit hatte jede Ausgabe, egal ob es sich um ein Diagramm oder eine Verteilung handelt, ihre eigene individuelle Expr() mit 3 verschiedenen Iterationen darin. Kurz gesagt sind das etwa 20 Expr()-Skripte. Die Möglichkeit, eine Funktion zu verwenden, würde dies auf ein Diagrammplot-Skript und ein Verteilungsskript reduzieren. Was mir jetzt Schwierigkeiten bereitet, ist das Durchlaufen der Funktion.
Ich habe die Beispieldatentabelle angehängt, ein Beispiel für nur einen der Ausdrücke, die ich zum Diagrammplot verwende, und den Beginn eines Funktionsskripts. Ich würde mich über jede Hilfe bei der Lösung dieses Problems freuen. Ich kann die Lösung für dieses Problem nutzen und auf viele andere anwenden. Sie können das Originalskript ausführen, um zu verstehen, was ich versuche.
Danke
PS: Wenn Sie Zeit haben, versuche ich, die drei Zeitschriften in einer einzigen Zeitschrift zusammenzufassen. Ich versuche, zu einem Skript zurückzukehren, das in diesem Thread gepostet wurde
https://community.jmp.com/t5/Discussions/Combine-multiple-journals-into-one-journal/td-p/6129
Betreff: Wie man eine Schleife mit einer Funktion durchführtVielen Dank, Herr Nelson,
Ich schätze die Hilfe, die Sie und die Community leisten, sehr. Ich muss Ihnen sagen, dass das Programmieren im Allgemeinen sehr neu und schwierig für mich ist. Sie sprechen mit einer Person, die ein „C“ in C++ hatte und damit lief. Für jede Stunde, die ich mit dem Programmieren verbringe, verbringe ich drei Stunden damit, den Scripting Guide zu lesen, den Scripting Index zu verwenden und natürlich die Foren zu lesen. Aufgrund meiner Unkenntnis des Programmierens im Allgemeinen und des anschließenden Versuchs, dies in JSL zu übersetzen, verbringe ich viel Zeit mit dem Lernen. Normalerweise verbringe ich meine Zeit damit, den hier veröffentlichten Code zu lesen und zu versuchen, mich auf das zu konzentrieren, was ich versuche.Ich melde mich für die Webinare an, um mehr zu erfahren und insbesondere JMP 14 kennenzulernen, wenn es in naher Zukunft auf den Markt kommt. Ich entschuldige mich, wenn ich zu viele Fragen stelle und mehr als alle anderen um Hilfe bitte.
In diesem Sinne nochmals vielen Dank für Ihre Hilfe.
Betreff: Wie man eine Schleife mit einer Funktion durchführtWenn Sie sich mit der JSL-Codierung befassen möchten, müssen Sie zunächst den Scripting Guide gründlich lesen
Hilfe==>Bücher==>Skripthandbuch
Nachfolgend finden Sie eine Überarbeitung Ihres Skripts, um zu veranschaulichen, wie Sie mit einer Funktion eine Schleife erstellen und wie Sie die gesamte Ausgabe im selben Ausgabejournal speichern.Ich weiß, dass es nicht genau das ist, was Sie brauchen, aber es sollte Ihnen einen guten Anfang geben, wie Sie das tun können, was Sie wollen
Names Default To Here( 1 );
dt = Current Data Table();
doGraphPlot = Function(
{dt, Xaxis, Yaxis, Grby, chnl},
Eval(
Substitute(
Expr(
gb = dt << Graph Builder(
invisible,
where( dt:Channel == __chnl__ ),
size( 600, 400 ),
show control panel( 0 ),
variables(
Y( Eval( Yaxis ) ),
X( Eval( Xaxis ) ),
Group X( Eval( Xgrby ) ),
Overlay( :RowCol )
),
elements( smoother( X, Y, legend( 19 ), lambda( 0.0001 ) ) )
)
),
Expr( __chnl__ ), chnl
)
);
Report( gb )[Outline Box( 1 )] << set title( "Channel = " || Char( chnl ) );
);
jjrn = New Window( "Data Plot - Output_1 vs Input", <<JOURNAL></JOURNAL>