Usaría una mejor estructura de programación para lograr lo que está buscando.Las líneas de referencia se pueden aplicar directamente al gráfico modificando los objetos de eje en la salida de la pantalla.Vea abajo:
gb = Graph Builder(
Size( 528, 457 ),
Show Control Panel( 0 ),
Variables( X( :Column (3) ), Y( :Column (4) ) ),
Elements( Points( X, Y, Legend( 3 ) )));
gbr = report(gb);
gbr[AxisBox(1)] << Add Ref Line( _LSL1_, "Solid", "Black", "xLSL", 1 );
gbr[AxisBox(1)] << Add Ref Line( _USL2_, "Solid", "Black", "xUSL", 1 );
gbr[AxisBox(2)] << Add Ref Line( _LSL2_, "Solid", "Black", "yLSL", 1 );
gbr[AxisBox(2)] << Add Ref Line( _USL2_, "Solid", "Black", "yUSL", 1 );
Los detalles sobre cómo modificar la salida del árbol de visualización se pueden encontrar en la Guía de secuencias de comandos.Todos los mensajes que se pueden enviar a los objetos de visualización se enumeran con definiciones y ejemplos en el índice de secuencias de comandos.
El primer caso funciona bien, pero el segundo caso en el que los nombres de los ejes se proporcionan desde el exterior no funciona, ¿dónde me estoy equivocando?
Graph Builder(
Size( 528, 457 ),
Show Control Panel( 0 ),
Variables( X( :Column (3) ), Y( :Column (4) ) ),
Elements( Points( X, Y, Legend( 3 ) )),
SendToReport(
Dispatch(
{},
"Median 1",
ScaleBox,
{Add Ref Line( _LSL1_, "Solid", "Black", "xLSL", 1 ),
Add Ref Line( _USL2_, "Solid", "Black", "xUSL", 1 )}
),
Dispatch(
{},
"Median 2",
ScaleBox,
{Add Ref Line( _LSL2_, "Solid", "Black", "yLSL", 1 ),
Add Ref Line( _USL2_, "Solid", "Black", "yUSL", 1 )}
)
)
);segundo caso
xColName = Column Name( 3 ); show (xColName);
yColName = Column Name( 4 ); show (yColName);
Graph Builder(
Size( 528, 457 ),
Show Control Panel( 0 ),
Variables( X( :Column (3) ), Y( :Column (4) ) ),
Elements( Points( X, Y, Legend( 3 ) )),
SendToReport(
Dispatch(
{},
xColName, //"xColName"
ScaleBox,
{Add Ref Line( _LSL1_, "Solid", "Black", "xLSL", 1 ),
Add Ref Line( _USL2_, "Solid", "Black", "xUSL", 1 )}
),
Dispatch(
{},
yColName, //"yColName"
ScaleBox,
{Add Ref Line( _LSL2_, "Solid", "Black", "yLSL", 1 ),
Add Ref Line( _USL2_, "Solid", "Black", "yUSL", 1 )}
)
)
);