Linea de referenciaQuerida comunidad,
¿Existe algún script que pueda usar para agregar una línea de referencia diferente a un gráfico de distribución múltiple? Tengo 4000 histogramas y cada uno de ellos tiene un valor de referencia diferente.
Tu ayuda es realmente apreciada.
GraciasRe: línea de referenciaGracias por la rápida respuesta.
Re: línea de referenciaTodas las pantallas de la plataforma tienen una estructura de árbol detrás, lo que permite a JSL apuntar a cualquier objeto en particular y pasar mensajes al objeto.Si va a cualquiera de los triángulos grises en una pantalla de salida, hace clic derecho sobre él y selecciona "Mostrar estructura de árbol", verá los objetos.Puede hacer referencia a ellos seleccionando el desplazamiento de cada objeto.El
rbiv<SPAN class="token punctuation">[</SPAN><SPAN class="token function">j</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN>
es un desplazamiento que apunta a un AxisBox() en la pantalla.Esta codificación es muy críptica.Creo que si examina el siguiente código, verá que lo que está haciendo es revisar cada una de las 5 salidas del histograma, encontrar el cuadro del primer eje () en cada una de esas pantallas y pasar el mensaje a Agregar línea de referencia. .Es lo mismo que la notación críptica, pero en una forma que se bifurca por nombre hasta el objeto que se va a modificar.
//Open datatable and make report
dt = Open( "$SAMPLE_DATA/Michelson.jmp" );
Biv = dt << Distribution(
Continuous Distribution( Column( :Velocity ) ),
By( :Trial# )
);
rbiv = Biv << Report();
// Here is created a list of all by-groups and a matrix with
//means of each group to be used as a refline.
//A custom list can be used instead using the same approach
Summarize(
groups = by( :Trial# ),
reflines = Mean( :Velocity )
);
n = N Items( groups );
//Add reference lines
For( j = 1, j <= n, j++,
//rbiv[j][1][1][1][1][1][1][1][1] <<
rbiv[j][AxisBox(1)]<<
add ref line( reflines[j], solid, "Red" )
);
Re: línea de referencia¿Qué hace o significa la siguiente línea de código?¿Cómo sé cuántos [1] se requieren?La razón por la que pregunto es que quiero poder agregar una línea de referencia usando variables en las propiedades de la función de la línea de referencia.
rbiv<SPAN class="token punctuation">[</SPAN><SPAN class="token function">j</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">[</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">]</SPAN>
Re: línea de referencia<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Tengo un problema similar. Tengo un proc gplot que traza 35 gráficos diferentes para diferentes identificaciones usando una declaración by. ¿Hay alguna manera de especificar una línea de referencia horizontal diferente en cada gráfico? Y, ¿también es posible mostrar el valor de esa línea de referencia en la parte superior o inferior de la línea?
Gracias
Linea de referenciaNo estoy seguro de qué significa "Verlauf ETA A6" para el tipo de Objeto. Si es el nombre del objeto generador de gráficos, debería funcionar; sin embargo, si es el nombre de la tabla de datos, no funciona. Creo que es más fácil asignar una variable a la ventana del generador de gráficos (como arriba
Además de eso, debería funcionar. Cambié mi secuencia de comandos para recuperar las líneas de referencia de una tabla separada usando su sintaxis y funcionó.
También creo que es posible que deba asegurarse de que la tabla correcta sea la "tabla de datos actual".
Re: línea de referenciaMe ayudó, pero todavía aparece un error.
Tengo 2 tablas diferentes, una tabla que uso para el gráfico, en la segunda están las fechas (informe "Verlauf Eta A6") y etiquetas para las líneas de referencia (tabla de datos "") - Ya cambié el formato al número de fecha larga jmp:
for(i=1,i<=nrows(data Table ("Ereignisse")),i++, report("Verlauf ETA A6")[Axis Box(1)] << add ref line (column(data Table ("Ereignisse"),"Datum"),Solid, "Purple", column(data Table ("Ereignisse"),"Bezeichnung") ));
pero el Registro devuelve lo siguiente (no muy útil)
In the following script, error marked by /*###*/ For( ::i = 1, ::i <= N Rows( Data Table( "Ereignisse" ) ), ::i++, Report( "Verlauf ETA A6" )[Axis Box( 1 )] << /*###*/ add ref line( Column( Data Table( "Ereignisse" ), "Datum" )[::i], Solid, "Purple", Column( Data Table( "Ereignisse" ), "Bezeichnung" )[::i] ) /*###*/ )
Linea de referenciaEl número extraño es la representación interna de JMP de un valor de fecha y hora (en realidad, el número de segundos desde una fecha de referencia que sigo olvidando...).
VLine() parece no tener un argumento de etiqueta opcional. Pero puedes completar el gráfico con líneas verticales usando Add ref line() en un bucle for. Utilice Summarize() para obtener listas y matrices de etiquetas y fechas de la tabla de datos. Vea el script de ejemplo a continuación.
// Make example table
dt=New Table( "Test",
Add Rows( 6 ),
New Column( "Group",Nominal, Character, Set Values(
{"Group A", "Group A", "Group A", "Group B", "Group B", "Group B"})),
New Column( "Data", Numeric,
Set Values( [1, 2, 3, 2, 3, 4] )),
New Column( "Date", Numeric,
Format( "d-m-y", 12 ),
Set Values([3166214400, 3166300800, 3166387200, 3166214400, 3166300800, 3166387200])),
New Column( "Label",Nominal,Character,
Set Values( {"A", "B", "C", "A", "B", "C"} )));
// Make list of dates and labels
Summarize(dlist=by(:Date),dlist=mean(:Date));
Summarize(llist=by(:Label));
// Make graph
gb=Graph Builder(
Variables( X( :Date ), Y( :Data ), Overlay( :Group ) ),
Elements( Points( X, Y, Legend( 1 ) ) ));
//Add vertical reflines based on dates in Column date
for(i=1,i<=nrows(dlist),i++,
report(gb)[Axis Box(1)] << add ref line (dlist[i],Solid, "Purple", llist[i] ));
Espero que esto ayude.
Re: línea de referenciaHola,
Tengo un problema similar, tengo un gráfico y en el eje x hay una fecha (como dmy), y quiero varias líneas de referencia verticales en el eje a. Hoy usé un script con v-line, pero ahí obtuve la línea, pero sin etiqueta.
Las fechas de las líneas de referencia y la etiqueta se almacenan en una tabla de datos (fecha de columna (formato dmy), etiqueta de columna). Pero la revisión manual usa en lugar de la fecha un número como: 33962554400 (y sé que esta es una fecha...)
Graph Builder( Size( 696, 688 ), Show Control Panel( 0 ), Variables( X( :BL, Size( 212 ) ), Y( :Name( "x" ) ), Group Y( :Name( "s_-x" ) ), Overlay( :Projektklasse_plus ) ), Elements( Points( X, Y, Legend( 6 ) ) ), SendToReport( Dispatch( {}, "BL-date", ScaleBox, {Format( "d.m.y", 10 ), Interval( "Day" ), Inc( 1 ), Add Ref Line( 3396254400, Solid, {255, 0, 0}, "Label ref line 1" ) , Rotated Labels( 1 )} ), Dispatch(.......
mi script vline era así:
OPR[FrameBox(1)] << add graphics script (pen color("purple"); vline(column(data Table ("CHCharge$"),"CuI") << get values));
pero en realidad quiero líneas de referencia realmente diferentes con una etiqueta, en fechas diferentes y la tabla de datos con las fechas para las líneas de referencia tiene cada vez más fechas a lo largo del año...
Entonces, ¿podría aclarar su respuesta sobre cómo utilizar una tabla de datos?
Gracias de antemano.
Re: línea de referenciaHola MS,
Gracias. Funciona.
Más poder para tiRe: línea de referenciaAquí hay un script de muestra, asumiendo que todos los histogramas están dentro de la misma ventana. Las líneas de referencia individuales son aquí simplemente la media del grupo, pero el script se puede adaptar fácilmente a una matriz personalizada o lista de valores, por ejemplo, recuperados de una tabla.
//Open datatable and make report
dt = Open( "$SAMPLE_DATA/Michelson.jmp" );
Biv = dt << Distribution(
Continuous Distribution( Column( :Velocity ) ),
By( :Trial# )
);
rbiv = Biv << Report();
// Here is created a list of all by-groups and a matrix with
//means of each group to be used as a refline.
//A custom list can be used instead using the same approach
Summarize(
groups = by( :Trial# ),
reflines = Mean( :Velocity )
);
n = N Items( groups );
//Add reference lines
For( j = 1, j <= n, j++,
rbiv[j][1][1][1][1][1][1][1][1] <<
add ref line( reflines[j], solid, "Red" )
);