Tengo una secuencia de comandos que usa la plataforma bivariada para producir un gráfico de datos en unidades de tiempo discretas (por ejemplo, 202101 para la primera semana de 2021). Las unidades de tiempo utilizadas no son negociables y no espacian correctamente si se tratan como continuas: la distancia entre 202052 y 202101 no será la misma que la distancia entre 202101 y 202102, pero estas distancias deberían ser las mismas ya que son semanas consecutivas. Mi solución fue crear una columna "Secuencia" con valores 1,2,3,... y emparejarla con 202052, 202101, 202102, .... y aplicar etiquetas de valor a la columna "Secuencia" (1 tiene valor etiqueta 202052, 2 tiene la etiqueta de valor 202101, 3 tiene la etiqueta de valor 202102), luego use la columna "Secuencia" como la X en Ajustar Y por X. Esta solución funciona muy bien, excepto cuando registro la salida en un diario: el etiquetado de valores no se mantiene y la gráfica en el diario vuelve a los valores originales en la columna Secuencia en lugar de usar las etiquetas de valores. De vez en cuando, las etiquetas de valor se transfieren al diario, pero después de guardar y volver a abrir, los valores del eje x han vuelto a los valores originales. Creo que la diferencia es usar script o ctrl + J en el diario (las etiquetas de valor se conservan temporalmente) frente a copiar --> pegar en el diario (las etiquetas de valor no se conservan).
Es posible que pueda encontrar otra forma de hacer esto, o tal vez alguien pueda sugerir otra forma, pero estoy más interesado en saber si las etiquetas de valor que no se transfieren de una ventana de informe a un diario es el comportamiento previsto de JMP. ¿Puede cambiar este comportamiento en futuras versiones de JMP?
Estoy usando JMP Pro 14.3.0. He confirmado que el problema también ocurre en JMP Pro 15.2.1. A continuación se muestra un script de ejemplo que vuelve a crear el problema.
// Data Table
dt = New Table( "Label Example",
Add Rows( 6 ),
New Column( "Week", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [202052, 202052, 202101, 202101, 202102, 202102] ) ),
New Column( "Sequence", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1, 1, 2, 2, 3, 3] ) ),
New Column( "Value", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [12, 39, 9, 1, 22, 9] ) ),
New Column( "Group", Character, "Nominal", Set Values( {"A", "B", "A", "B", "A", "B"} ) )
);
week_list = :Week << get values;
sequence_list = :Sequence << get values;
week_list_names = {};
// Build the Value Labels List
For( i = 1, i <= N Items( week_list ), i++,
If( !Contains( week_list_names, Parse( "\!"" || Char( sequence_list[i] ) || "\!" = \!"" || Char( week_list[i] ) || "\!"" ) ),
Insert Into( week_list_names, Parse( "\!"" || Char( sequence_list[i] ) || "\!" = \!"" || Char( week_list[i] ) || "\!"" ) )
)
);
:Sequence << Data Type( Character );
:Sequence << Value Labels( week_list_names );
:Sequence << Data Type( Numeric ) << Modeling Type( Continuous );
value_by_week = Bivariate(
Y( :Value ),
X( :Sequence ),
Fit Where( :Group == "A", Fit Each Value( {Line Color( {212, 73, 88} )} ) ),
Fit Where( :Group == "B", Fit Each Value( {Line Color( {66, 112, 221} )} ) ),
SendToReport(
Dispatch( {}, "Bivariate Fit of Value By Sequence", OutlineBox, {Set Title( "Bivariate Fit of Value By Sequence" )} ),
Dispatch( {}, "1", ScaleBox, {Inc( 1 ), Minor Ticks( 0 ), Label Row( Show Major Grid( 1 ) ), Label Row( Label Orientation( "Angled" ) )} ),
Dispatch( {}, "2", ScaleBox, {Inc( 10 ), Minor Ticks( 5 ), Label Row( Show Major Grid( 1 ) )} ),
Dispatch( {}, "Sequence", TextEditBox, {Set Text( "Week" )} )
)
);
value_by_week_rep = value_by_week << Report;
my_jrn = New Window( "Test Journal", <<JOURNAL></JOURNAL>Puede optar por extraer los valores de año y semana de su columna x y convertirlos en una marca de tiempo. Luego, si lo lanzas en el eje x, automáticamente se espaciará correctamente y si juegas con el formato del eje x, puedes hacer que muestre las fechas como quieras.
¡Interesante! Nunca hubiera pensado en probar eso, pero "volver a ejecutar en una nueva ventana" también funciona para mí. Me alegro de que el problema se solucione en JMP 16. Esta es una solución aceptable hasta que llegue a instalarla. Gracias por compartir.
Hola @drew_baumgartel ,
Veo el mismo comportamiento cuando uso su script de ejemplo.
Sin embargo, pude ver las etiquetas de valor si vas al triángulo rojo y seleccionas volver a ejecutar en una nueva ventana.
Rerun in new windowRerun in new windowVolver a ejecutar en una nueva ventana
results after rerunning in new windowresults after rerunning in new window resultados después de volver a ejecutar en una nueva ventana
salud,
Stan