Cómo iterar la línea de referencia en el gráficoHola,
¿Puedo saber cómo hacer la iteración para agregar la línea de referencia en el gráfico utilizando el script JSL?
Debido a que ahora solo puedo agregar la línea de referencia en el gráfico para la primera pestaña, otra pestaña del gráfico no se puede generar.
¿Alguien puede ayudar?
Gracias.
Re: Cómo iterar la línea de referencia en el gráficoNo está comprendiendo cómo funciona el puntero a cada uno de sus gráficos de variabilidad. Está utilizando el siguiente código:
vchart = dt_raw_dataset << Variability Chart(
Y( Eval( IAT[i] ) ),
X( :Name( "Lot" ), :Name( "Fab Lot" ) ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
);
Estás repitiendo este código varias veces. Su idea es que puede hacer referencia a la salida desde la primera vez que está utilizando el código
vc = vchart[m] << Report;
Esto no es una suposición válida. En cambio, cada vez que usa la variable de memoria "vchart", no agrega un nuevo valor a alguna lista de valores de vchart, en realidad cambia el valor de "vchart" a un nuevo valor. Por lo tanto, obtienes exactamente lo que estás reportando. Sólo uno de los gráficos tiene líneas de referencia en ellos. Es decir, es porque apunta solo a la última instancia del Gráfico de variabilidad.
Qué se necesita hacer, cambiar su código de manera que en lugar de usar "vchart" para cada instancia del Gráfico de Variabilidad, a algo como "vchart1" para la primera, "vchart2" para la segunda, etc.
Y luego, cuando genera las Líneas de referencia, puede apuntar a la primera, segunda, ... instancia del Gráfico de variabilidad.
Lo que debes hacer es crear una lista para almacenar cada uno de tus punteros vchart y luego podrás recuperarlos.
dt = Current Data Table();
dd = {};
ow = Oneway( Y( :height ), X( :sex ) );
dd[1] = ow;
ow = Oneway( Y( :weight ), X( :sex ) );
dd[2] = ow;
rpt = Report( dd[1] );
rpt[AxisBox( 1 )] << Add Ref Line( 65 );
rpt = Report( dd[2] );
rpt[AxisBox( 1 )] << Add Ref Line( 120 );
Este mismo tipo de metodología puede ampliar para producir las líneas de referencia, etc.
Re: Cómo iterar la línea de referencia en el gráficoHola,
En realidad, cada pestaña tengo 5 gráficos.
Bueno, en cada uno de los gráficos, necesito tener 5 líneas de referencia.
Para la parte de color rojo, puedo generar la línea de referencia en el gráfico para una sola pestaña, otras 4 pestañas del gráfico, no puedo generar la línea de referencia.
Pero cuando ejecuto todo el script, no me muestra ningún error, así que no sé cómo solucionarlo.
Gracias.
variabilityWindow = New Window( "Variability Chart", tb = Tab Box() );
For( i = 1, i <= N Items(distinctFamilyDevice), i++,
// Create a new tab and append the variability charts
tb << Insert(
distinctFamilyDevice[i],
VListBox(
vchart = dt_raw_dataset << Variability Chart(
Y( Eval(IAT[i]) ),
X( :Name( "Lot" ), :Name( "Fab Lot" ) ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
);
)
);
);
For(m = 1, m <= N Items(IAT), m++,
vc = vchart[m] << Report;
axisbox = vc [axisbox(1)];
axisbox << Add Ref Line(-1.5,"Dashed",red,"-1.5 Sigma",2);
axisbox << Add Ref Line(1.5, "Dashed", red, "1.5 Sigma", 2);
axisbox << Add Ref Line(0, "Solid", red, "Target", 2);
axisbox << Add Ref Line(-3, "Dotted", red, "-3 Sigma", 2);
axisbox << Add Ref Line(3, "Dotted", red, "3 Sigma", 2);
);
Re: Cómo iterar la línea de referencia en el gráficoMe temo que todavía no está publicando suficientes detalles sobre el problema que tiene para que le brindemos una solución eficaz.
¿Puedes construir un ejemplo simple usando cualquiera de los Datos de muestra que demuestren las técnicas que estás probando?
Necesitamos saber exactamente qué código ha probado, en un ejemplo completo y ejecutable, y exactamente con qué problema se encontró. Es decir, ¿recibió un mensaje de error? ¿Se comportó el código de una manera inesperada? ¿Obtuviste una línea de referencia en algún gráfico? ¿Todas las líneas en el mismo gráfico? En definitiva, más detalles, por favor.
Aquí hay un ejemplo utilizando los Datos de muestra que muestran una manera básica de lograrlo. Tal vez pueda extender este ejemplo para demostrar la dificultad con la que se encuentra.
dt = Open( "$SAMPLE_DATA\Semiconductor Capability.jmp" );
collist = {:NPN1, :NPN2, :NPN3, :NPN4};
varcharts = {};
tb = Tab Box();
For( i = 1, i <= N Items( collist ), i++,
tb << Insert(
collist[i] << get name,
V List Box(
varcharts[i] = dt << Variability Chart(
Y( collist[i] ),
X( :wafer ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" )
)
)
);
);
for(i=1, i<=nitems(varcharts),i++,
vc = varcharts[i] << Report;
axisbox = vc [axisbox(1)];
axisbox << Add Ref Line(110,"Dashed",blue,"-1.5 Sigma",2);
);
new window("My Window", tb);

Re: Cómo iterar la línea de referencia en el gráficoGracias @Jeff_Perkinson y @txnelson por responder.
Pero todavía no puedo resolver mi problema.
Todavía no puedo hacer que todas las pestañas de sus gráficos tengan la línea de referencia.
Realmente lo intenté yo mismo, así que puedo preguntar si hay alguna forma alternativa de hacer cada pestaña del cuadro que pueda generar la línea de referencia.
Gracias.
Re: Cómo iterar la línea de referencia en el gráficoTe animo a que mires el Propiedad de la columna del eje . Si agrega esta propiedad a su columna, entonces cada gráfico que use esa columna tendrá la misma configuración de eje, incluidas las líneas de referencia.
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
Column( dt, "weight" ) <<
Add Column Properties(
Set Property(
"Axis",
{Add Ref Line( 100, "Solid", "Black", "", 1 )}
)
);
dt << Bivariate( Y( :weight ), X( :height ), Fit Line );Re: Cómo iterar la línea de referencia en el gráficoAquí hay un ejemplo muy simple.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\big class.jmp" );
nw = New Window( "Tab Test",
mytab = Tab Box(
t1 = Tab Page Box( "One", onebiv = dt << Bivariate( Y( :weight ), X( :height ) ) ),
t2 = Tab Page Box( "Two", twobiv = dt << Bivariate( Y( :weight ), X( :age ) ) )
)
);
report(onebiv)[AxisBox(1)]<<ADD ref="" line=""></ADD>
Re: Cómo iterar la línea de referencia en el gráficoHola,
Para crear las pestañas,
tb << Insert(
distinctFamilyDevice[i],
VListBox(
dt_raw_dataset << Variability Chart(
Y( Eval(IAT[i]) ),
X( :Name( "Lot" ), :Name( "Fab Lot " ) ),
Analysis Type( "Choose best analysis (EMS REML Bayesian)" ),
);
Mientras que para crear las líneas de referencia, he intentado usar la función expr, pero todo el script para usar la función expr, no funciona. Por lo tanto, no lo uso.
Ahora estoy usando el siguiente código, que puede generar una línea de referencia, pero que es solo para la primera pestaña del gráfico solamente.
vc = Variability Chart[i] << Report;
axisbox = vc [axisbox(1)];
axisbox << Add Ref Line(-1.5,"Dashed",blue,"-1.5 Sigma",2);
axisbox << Add Ref Line(1.5, "Dashed", blue, "1.5 Sigma", 2);
axisbox << Add Ref Line(0, "Solid", blue, "Target", 2);
axisbox << Add Ref Line(-3, "Dashed", red, "-3 Sigma", 2);
axisbox << Add Ref Line(3, "Dashed", red, "3 Sigma", 2); Plataforma para crear el gráfico es el gráfico de variabilidad.
Gracias.
Re: Cómo iterar la línea de referencia en el gráficoNecesitaremos más información para señalarle en la dirección correcta.
¿Cómo estás creando tus pestañas? ¿Qué JSL ha intentado colocar líneas de referencia en gráficos en las otras pestañas?
¿Qué plataforma estás utilizando para crear tus gráficos?