Hola a todos,
Estoy usando JMP15 desde hace 1 año pero apenas estoy empezando a interesarme por los scripts.
Me gustaría escribir un script para mostrar líneas de referencia en un gráfico, basado en una tabla.
Tengo 2 tablas: datos (en los que ejecuto el script, para trazar el valor = f (hora)) y fechas, que contienen una columna con fechas correspondientes a las líneas de referencia que me gustaría tener en el gráfico.
Esas tablas están adjuntas a mi publicación.
Aquí está mi script actual, que muestra una línea de referencia basada en el primer elemento de las fechas de la tabla, la fecha de la columna.
ref1 = dates:name( "date" )[1];
Graph Builder(
Variables( X( :time ), Y( :value ),Page(:cat) ),
Elements( Points( X, Y, Legend( 4 ), Summary Statistic( "Mean" ) ) ),
SendToReport( Dispatch( {}, "time", ScaleBox( 2 ), {Add Ref Line( ref1, "Dotted", "Red", "", 2 )} ) )
);Me gustaría crear un bucle "For" para crear automáticamente líneas de referencia para cada valor de la tabla "fechas".
Esto es lo que probé:
ref1 = dates:name( "date" )[1];
Graph Builder(
Variables( X( :time ), Y( :value ),Page(:cat) ),
Elements( Points( X, Y, Legend( 4 ), Summary Statistic( "Mean" ) ) ),
SendToReport( Dispatch( {}, "time", ScaleBox( 2 ),
{
For( i = 1, i <= N row( dates), i++,
f = dates [ i ];
Add Ref Line( f, "Dotted", "Blue", "", 2 )
);
})
);Pero cuando ejecuto el script, no aparece ninguna línea de referencia.
¿Cómo puedo solucionar este problema?
Última pregunta: si no agrego "Página(:cat)" en las variables del gráfico, no aparece ninguna línea de referencia...
Gracias por su ayuda !!
¡Bienvenido a la comunidad de discusión!
Aquí hay una forma de agregar las líneas de referencia.

La documentación sobre cómo utilizar los árboles de visualización para manipular la salida de JMP se encuentra en el índice de secuencias de comandos.
Names Default To Here( 1 );
dt = Data Table( "data" );
dates = Data Table( "dates" );
ref1 = dates:name( "date" )[1];
gb = Graph Builder(
Variables( X( :time ), Y( :value ), Page( :cat ) ),
Elements( Points( X, Y, Legend( 4 ), Summary Statistic( "Mean" ) ) ),
SendToReport(
Dispatch( {}, "time", ScaleBox( 2 ), {Add Ref Line( ref1, "Dotted", "Red", "", 2 )} )
)
);
// Add reference lines
For( i = 1, i <= N Rows( dates ), i++,
// Add for Cat = B
(Report( gb )[axisbox( 1 )]) << add ref line( dates:date[i], "Dotted", "Blue", "", 2 );
// Add for Cat = C
(Report( gb )[axisbox( 3 )]) << add ref line( dates:date[i], "Dotted", "Blue", "", 2 );
);