[JMP12 JSL para Graph Builder] Error al agregar un nuevo elemento en cada posiciónHola, actualmente espero agregar un nuevo elemento en cada posición de mi gráfico, gráfico con un eje X y varios ejes Y;
Entonces uso el código a continuación:
For(jj = 1, jj <= 20, jj++,
gb << Elements( Position( 1, jj ), Points( X, Y , Legend( 1 )), Smoother( X, Y , Legend( 2 ) ) );
);
Sin embargo, el gráfico creado con este código todavía tiene solo 1 elemento. Hago clic derecho en el gráfico y se muestran 2 elementos.
Cuando realizo un nuevo análisis, el nuevo gráfico se crea como se esperaba, pero no sé por qué.
Dado que ahora estoy usando JMP12, ¿es debido a la versión anticuada?
VentanasRe: [JMP12 JSL para Graph Builder] Error al agregar un nuevo elemento en cada posiciónNo tengo acceso a JMP12 para probar esto, pero podría ser suficiente si evalúas jj
Eval(
EvalExpr(
gb << Elements(Position(1, Expr(jj)), Points(X, Y, Legend(1)), Smoother(X, Y, Legend(2)))
)
);
Re: [JMP12 JSL para Graph Builder] Error al agregar un nuevo elemento en cada posiciónProbé el JSL bajo JMP 12.2 y para que la Leyenda apareciera correctamente necesitaba hacer un cambio menor.

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 ) ) )
)
)
)
);
Re: [JMP12 JSL para Graph Builder] Error al agregar un nuevo elemento en cada posición¿Y para versiones posteriores de JMP?
Re: [JMP12 JSL para Graph Builder] Error al agregar un nuevo elemento en cada posición¡Gracias por tu ayuda! Después de varios intentos con tu solución, funcionó, pero no siempre. Por eso, modifiqué mi código y descubrí que el problema puede deberse al código utilizado para cambiar el tamaño y el modo del marcador.
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 ...
Luego de cambiar la posición, el gráfico quedó dibujado actualmente:
For( jj = 1 ...
TotalFrame...
No sé la razón aunque el problema ya se ha solucionado...
¡Gracias de nuevo!