[JMP12 JSL für Graph Builder] Das Hinzufügen eines neuen Elements an jeder Position ist fehlgeschlagenHallo, derzeit hoffe ich, an jeder Position meines Diagramms ein neues Element hinzuzufügen, Diagramm mit einer X-Achse und mehreren Y-Achsen;
also verwende ich den folgenden Code:
For(jj = 1, jj <= 20, jj++,
gb << Elements( Position( 1, jj ), Points( X, Y , Legend( 1 )), Smoother( X, Y , Legend( 2 ) ) );
);
Das mit diesem Code erstellte Diagramm besteht jedoch immer noch nur aus 1 Element. Wenn ich mit der rechten Maustaste auf das Diagramm klicke, werden jedoch 2 Elemente angezeigt.
Wenn ich die Analyse erneut durchführe, wird das neue Diagramm wie erwartet erstellt, aber ich weiß nicht, warum.
Da ich jetzt JMP12 verwende, liegt es an der veralteten Version?
WindowsBetreff: [JMP12 JSL für Graph Builder] Neues Element konnte an jeder Position nicht hinzugefügt werdenIch habe keinen Zugriff auf JMP12, um dies zu testen, aber es könnte ausreichen, wenn Sie jj auswerten
Eval(
EvalExpr(
gb << Elements(Position(1, Expr(jj)), Points(X, Y, Legend(1)), Smoother(X, Y, Legend(2)))
)
);
Betreff: [JMP12 JSL für Graph Builder] Neues Element konnte an jeder Position nicht hinzugefügt werdenIch habe das JSL unter JMP 12.2 getestet und damit die Legende richtig angezeigt wird, musste ich eine kleine Änderung vornehmen.

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
dt << New Column( "Ratio", formula( :Height / :Weight ) );
gb = Graph Builder( Variables( X( :age ), Y( :height ), Y( :weight ), Y( :ratio ) ) );
For( jj = 1, jj <= 20, jj++,
Eval(
Eval Expr(
gb << Elements(
Position( 1, Expr( jj ) ),
Points( X, Y, Legend( Expr( jj * 2 ) ) ),
Smoother( X, Y, Legend( Expr( jj * 2 + 1 ) ) )
)
)
)
);
Betreff: [JMP12 JSL für Graph Builder] Neues Element konnte an jeder Position nicht hinzugefügt werdenund für spätere Versionen von JMP?
Betreff: [JMP12 JSL für Graph Builder] Neues Element konnte an jeder Position nicht hinzugefügt werdenDanke für Ihre Hilfe! Nach mehreren Versuchen mit Ihrer Lösung hat es funktioniert, aber nicht jedes Mal. Also habe ich meinen Code geändert und festgestellt, dass es möglicherweise durch den Code verursacht wird, der zum Ändern der Markierungsgröße/des Markierungsmodus verwendet wird.
TotalFrame = gb << xpath("//FrameBox");
For(ii = 1, ii <= N Items(TotalFrame), ii++,
gb << SendToReport(
Dispatch( {}, "Graph Builder", FrameBox( ii ), {Marker Size( 2 ), Marker Drawing Mode( "Outlined" )} ),
);
);
For( jj = 1 ...
Nach dem Wechsel der Position wurde der Chart aktuell dargestellt:
For( jj = 1 ...
TotalFrame...
Ich kenne den Grund nicht, obwohl das Problem gelöst wurde ...
Danke noch einmal!