Para bucles y listas de columnasHola,
Tengo la intención de crear un generador de gráficos para visualizar diferentes columnas de datos cada vez. Graph Builder debería poder tomar cualquier cantidad de columnas de entrada (siempre que sean menos de 8). Creé una GUI de entrada pero no creo que se registren los valores de y. ¿Cómo puedo pasar correctamente los datos de la columna Y seleccionada al generador de gráficos? ¡Gracias!


Automatización y secuencias de comandosAcceso a los datosventanasRe: Para bucles y listas de columnasPor favor use el
icono para mostrar su JSL. Permite que el lector pruebe su código y proporcione respuestas. Pegar imágenes de su código no permitirá esto y, por lo tanto, muchos posibles respondedores optarán por no responder debido al tiempo que llevaría volver a escribir su JSL.
Re: Para bucles y listas de columnasEl registro incrustado muestra "La columna especificada no se encuentra en la tabla de datos. En el acceso o evaluación de 'For', For/*###*/(j = 1, j <= Min( 8, N Items( yCol)), j++, Y( Evaluación( yCol[j] ) ))"
Pero utilicé la columna que está claramente en mi tabla de datos.
Re: Para bucles y listas de columnasnames Default To Here(1);
MyGraph = Function ({yCol,xCol},{default local},
vlb = VListBox(
Graph Builder(
Size( 1255, 981 ),
Show Control Panel( 0 ),
Variables(
X( Eval(xCol) ),
For(j = 1, j <= Min(8, N Items(yCol)), j++,
Y( Eval(yCol[j])) // Evaluate each yVar
),
Group X( :Temperature )
),
Elements( Points( X, Y( 1 ), Y( 2 ), Y( 3 ), Y( 4 ), Y( 5 ), Y( 6 ), Y( 7 ), Y( 8 ), Legend( 11 ) ) ),
Local Data Filter(
Add Filter(
columns( :Test Stage, :Sublot, :Temperature, :Soft Bin ),
Display( :Test Stage, N Items( 4 ) ),
Display( :Soft Bin, N Items( 15 ) )
)
)
)
);
return(vlb);
);
dt = CurrentDatatable();
nw = NewWindow("Column Selection", <<MODAL></MODAL>Re: Para bucles y listas de columnasGracias por el consejo, aquí está mi guión completo.
Re: Para bucles y listas de columnasPuede preparar sus Variables primero y luego usar insertar en para colocarlas en el Generador de gráficos.
MyGraph = Function ({yCol,xCol},{default local},
vars= Eval Expr(Variables(
X( Expr(xCol) ),
Group X( :Temperature )
));
pts= Expr(Points( X));
For(j = 1, j <= Min(8, N Items(yCol)), j++,
Insert Into(vars, Eval Expr(Y( Expr(yCol[j]))));
);
gb = Expr(
Graph Builder(
));
Insert Into(gb, Name Expr(vars));
VListBox(gb)
);Re: Para bucles y listas de columnasCosas como esta serán más fáciles una vez :folded_hands: Indexación de expresiones: el acceso de lectura y escritura estará disponible en versiones futuras de JMP...
Entonces no tienes que preparar las diferentes partes y luego construir tu expresión final, puedes crear directamente un borrador de la expresión final y luego manipularla en cualquier nivel que desees.
por ejemplo, agregue una variable Y adicional mediante
Insert Into ( gbExpression["Variables"], Expr(Y(:age)))
Re: Para bucles y listas de columnas¡Funcionó! ¡Muchas gracias!