Script del generador de gráficos para líneas de referencia más complicadas¿Es posible crear un script para el generador de gráficos que pueda establecer líneas de referencia del eje Y para que comiencen y terminen en puntos específicos del eje X? Sé cómo crear líneas de referencia con rangos, pero no sé cómo ajustarlas para que cubran áreas específicas en el otro eje. Adjunto un PDF que muestra lo que puedo hacer en JMP, el gráfico de la izquierda, y lo que me gustaría lograr, el gráfico de la derecha. ¡La ayuda con esto es muy apreciada!
GráficosScriptingRe: Graph Builder Script para líneas de referencia más complicadasHola,
Aquí hay una forma de producir ese tipo de gráfico: use JSL para dibujar un par de rectángulos donde los desee. Para hacer esto, necesitará conocer los límites de los ejes izquierdo y derecho, o simplemente dibujar los rectángulos con límites tan amplios que sepa que siempre estarán fuera de la pantalla.
Lea sobre la función rect () para obtener más detalles, pero básicamente lo que debe hacer para cada rectángulo es elegir un color de relleno, elegir un nivel de transparencia y luego dibujar el rectángulo usando la función rect (), que toma 4 argumentos: (izquierda , arriba, derecha, abajo). Esto debe estar envuelto en un mensaje << agregar script de gráficos () y enviado al cuadro de marco del gráfico. Usar el formato en la secuencia de comandos a continuación es una forma de hacerlo.
Salud,
Brady

Graph Builder(
Size( 523, 454 ),
Show Control Panel( 0 ),
Variables( X( :RandN1 ), Y( :RandN2 ) ),
Elements( Line( X, Y, Legend( 4 ) ) ),
//extra script begins here
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Add Graphics Script(
1,
Description( "" ),
Fill Color( "blue" );
Transparency( .3 );
Rect( -2, 0, 0, -2, 1 );
Fill Color( "purple" );
Transparency( .3 );
Rect( 1, 2, 3, 0, 1 );
)}
)
)
//extra script ends here
);
Re: Graph Builder Script para líneas de referencia más complicadas¡Gracias, Brady!
¡Le daré una oportunidad!
Mejor,
Bárbara
Re: Graph Builder Script para líneas de referencia más complicadasHola Brady,
He conseguido que esto funcione en gráficos que no tienen envolturas, pero cuando las envuelvo, los rectángulos solo aparecen en el primer panel. ¿Hay alguna forma de enviar el script de rectángulo a todos los niveles? Adjunto un ejemplo simplificado para mostrar lo que quiero decir.
¡Gracias!
Bárbara
Re: Graph Builder Script para líneas de referencia más complicadasCuando se especifica una columna Wrap, Graph Builder produce un marco independiente para cada gráfico.Los gráficos adicionales deben producirse para cada Frame Box ().Esto se puede hacer en una operación de bucle, o como se especifica a continuación mediante el uso de una función XPath () que aplicará el gráfico adicional en todos los objetos Frame Box ().

Names Default To Here( 1 );
dt = open("$SAMPLE_DATA/semiconductor capability.jmp");
Graph Builder(
Size( 534, 492 ),
Show Control Panel( 0 ),
Variables( X( :NPN2 ), Y( :NPN1 ), Wrap( :lot_id ) ),
Elements( Line( X, Y, Legend( 8 ) ) )
);
(Current Report() << xpath( "//FrameBox" )) << Add Graphics Script(
Fill Color( "blue" );
Transparency( 0.3 );
Rect( 108, 112, 114, 100, 1 );
Fill Color( "purple" );
Transparency( 0.3 );
Rect( 118, 122, 122, 115, 1 );
);Re: Graph Builder Script para líneas de referencia más complicadas¡Gracias, Jim! ¡Esto funciona muy bien!
Bárbara