Estimada comunidad,
Me cuesta un poco dibujar líneas de referencia en un eje ordinal. Hay excelentes ejemplos sobre cómo dibujar líneas de referencia en ejes continuos, pero parece ser diferente para los ejes ordinales. Entonces, en el siguiente ejemplo, no puedo decirle a JMP que dibuje una línea de referencia a la edad de 13 años, sino que necesito encontrar la posición en el eje en GraphBuilder (es decir, dos: 13 es el segundo valor de edad al ordenar de menor a mayor) y establezca la línea de referencia para esa posición. Hasta ahora bien.
Pero quiero dibujar líneas de referencia en muchos objetos de Graph Builder, que tienen filtros de datos locales y, por lo tanto, tienen el mismo año, por ejemplo, 13 en diferentes posiciones. Puede probar, si excluye edad = 12 por filtro de datos local, la línea de referencia está en la posición incorrecta.
Entonces, una mejor estrategia para mí sería poder obtener los valores del eje x del objeto Graph Builder, para poder agregar correctamente una línea de referencia a la edad = 13 para cada Graph Builder.
En mi ejemplo del mundo real, tengo que establecer la línea de referencia para cada GraphBuilder en un tablero con diferentes filtros en la semana del calendario actual, que se proporciona en un formato de "YYYYWW".
JMP16/Pro en Win10.
¿Algunas ideas? Gracias por adelantado
Names Default To Here( 1 );
// test reference lines for ordinal/nominal axis
// Open table and make graph
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
gb_obj = dt << graph builder( Show Control Panel( 0 ), variables( x( :age ), y( :weight ) ), Elements( bar( X, Y ) ) );
// get location of certain ordinal or nominal value from data table
refpos="13";
Summarize( dt, age_lst = by( :age ) );
label = Loc( age_lst, refpos );
// apply reference lines at different positions
Report( gb_obj )[AxisBox( 1 )] << add ref line( Eval( label - 1 ), "Dotted", "Red", refpos, 3 );