Color de relleno para múltiples líneas de referencia.Hola,
He agregado múltiples líneas de referencia al eje del eje de un gráfico.
Lo estoy haciendo recorriendo una tabla de líneas de referencia (DarkLight) basada en la tabla principal.
Oxygen consumption = SableData << Graph Builder(<BR />Size( 1322, 944 ),<BR />Variables(<BR />X( :Name( "Time since first dose-[hours]" ) ),<BR />Y( :Name( "VO2-[ml/min]" ) ),<BR />Overlay( :Treatment )<BR />),<BR />Elements( Points( X, Y, Legend( 4 ) ) )<BR />);<BR /><BR />For( i = 1, i <= N Rows( DarkLight ), i++,
Report( Oxygen consumption )[AxisBox( 1 )] << add ref line( DarkLight:name("Time since first dose-[hours]")[i], DarkLight:Phase[i] )
);
¿Hay alguna forma de agregar color de relleno entre algunas de las líneas (según los datos de la columna en la tabla DarkLight) para indicar cuándo es de día o de noche?
Br Julie
GráficosScriptingRe: color de relleno para múltiples líneas de referenciaLas líneas de referencia pueden usar un rango de valores, junto con una transparencia para mezclar el color con el fondo. Este ejemplo usando datos de muestra de Big Class produce la imagen a continuación:
dt = Open("$SAMPLE_DATA/Big Class.jmp");
biv = dt << Bivariate(
Y( :weight ),
X( :height ),
Fit Line( {Line Color( {212, 73, 88} )} )
);
(biv<<REPORT></REPORT>

Re: color de relleno para múltiples líneas de referenciaSabía cómo funcionaba este mensaje, pero cuando fui al Índice de secuencias de comandos para obtener una referencia para Julie, descubrí que estaba incompleto:

Re: color de relleno para múltiples líneas de referenciaGracias por las respuestas, pero esto requeriría que agregue manualmente las líneas de referencia. Mi conjunto de datos cambia constantemente, así que estoy buscando una solución en la que pueda usar la tabla de referencia que he creado para crear cada vez que ejecuto mis datos y agrego automáticamente las líneas de referencia al gráfico.
Pero parece que no puedo encontrar una solución que agregue diferentes propiedades a las diferentes líneas de referencia cuando se agregan de esta manera.
Re: color de relleno para múltiples líneas de referenciaUsted itera sobre las filas en su tabla de referencia y agrega una línea de referencia (rango) cada vez. Nuestras respuestas no incluían la interfaz de usuario, solo scripts, por lo que no está claro por qué está confundido o no puede continuar.
Re: color de relleno para múltiples líneas de referenciaMi problema se refiere a esta parte en una de las sugerencias:
Add Ref Line( {55, 65}, "Solid", "Black", "label", 1, 0.25 )Esto agregaría dos líneas de referencia en 55 y 65 y tienen las mismas propiedades (sólido, negro, etc.).
Si necesito agregar, por ejemplo, 100 líneas de referencia que cambian según el conjunto de datos específico que se ejecuta a través del script y necesitan mostrarse con diferentes propiedades (por ejemplo, una está punteada y roja, la siguiente es sólida y azul, etc.).
¿Cómo haría eso sin tener que agregar manualmente cada valor en el script?
Re: color de relleno para múltiples líneas de referenciaSu ejemplo no agrega dos líneas de referencia. Agrega una región coloreada en el rango cuando proporciona una lista con dos valores.
Puede que tenga que modificar la tabla de datos de referencia que construye. Este ejemplo debería ilustrar el enfoque;
Names Default to Here( 1 );
// data table with reference line specifications
ref dt = New Table( "Reference Lines",
Add Rows( 5 ),
New Column( "Segment",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [1, 2, 3, 4, 5] )
),
New Column( "Low",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [50, 55, 60, 65, 70] )
),
New Column( "High",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [55, 60, 65, 70, 75] )
),
New Column( "Color",
Character,
"Nominal",
Set Values( {"Red", "Yellow", "Green", "Yellow", "Red"} )
)
);
data = Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = data << Bivariate( Y( :weight ), X( :height ) );
x axis = Report( biv )[AxisBox(2)];
For Each Row( ref dt,
// draw colored regon
Eval( Eval Expr( x axis << Add Ref Line( { Expr( :Low ), Expr( :High ) }, "Solid", Expr( :Color ), , , 0.25 ) ) );
// draw border lines
Eval( Eval Expr( x axis << Add Ref Line( Expr( :Low ), "Solid", "Black" ) ) );
Eval( Eval Expr( x axis << Add Ref Line( Expr( :High ), "Solid", "Black" ) ) );
);Re: color de relleno para múltiples líneas de referenciaOk, eso tiene sentido. Me perdí la parte de la lista. Gracias por la respuesta. Cambiaré la tabla de referencia como usted sugiere.