Configuración de Graph Builder para nuevos FrameBoxesEn GraphBuilder, el usuario puede "hablar sincrónicamente con varios FrameBoxes a la vez" si presiona CONTROL mientras activa una acción:
Quitar las etiquetas de la información flotante
Use CTRL para hablar con varios cuadros en Graph Builder
muy conveniente 
Ahora, me pregunté: ¿qué sucede si aparecen FrameBoxes adicionales, ya sea porque se agregaron filas a la tabla de datos o porque se cambió el filtro de datos?
Antecedentes: Algún comportamiento "extraño" de Graph Builder que noté antes pero que no pude describir con suficiente precisión para obtener una pista del "por qué":
A veces, la configuración se "hereda" automáticamente cuando una parcela se divide en subparcelas; a veces, el usuario tiene que volver a establecer la configuración para las subparcelas.
La respuesta sorprendente (si la generalización de 2-3 ejemplos es correcta): 2 ejemplos después...
Algunos hallazgos (pero: la imagen completa es más complicada)
- Si hay una pequeña diferencia entre la configuración de los FrameBoxes existentes (1er ejemplo: diferente Modo de selección de relleno ), la configuración no se usa para FrameBoxes adicionales, ni siquiera las configuraciones que eran idénticas ( Fondo configuración) .
- Si TODO ajustes de TODO Los Framebox existentes son exactamente De la misma manera, este conjunto común de configuraciones también se usa para los nuevos FrameBoxes.
Esto se ilustra en el segundo paso: el GraphBuilder está restringido (nuevamente) a 2 FrameBoxes, pero ahora el Modo de selección de relleno la configuración coincide para ambos FrameBoxes. Ahora, todas las configuraciones son las mismas, y cuando se elimina el filtro de datos, el conjunto común de configuraciones también se usa para los nuevos FrameBoxes.
Ver más...
La personalización en masaRe: Configuración de Graph Builder para nuevos FrameBoxes"A veces, el usuario tiene que volver a establecer la configuración para las subparcelas".
Esto me recuerda otro comportamiento de GraphBuilder que no pude entender hasta ahora:
Si la configuración de color/marcador de un gráfico se ajusta "manualmente", a veces dichos ajustes se copian en subgráficos nuevos, a veces, el usuario tiene que ajustar la configuración nuevamente para las nuevas subparcelas.
Además: Cambiar el orden de las variables en el eje puede restablecer la configuración de color.
Ver más...dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
gb = dt << Graph Builder(
Size( 534, 496 ),
Graph Spacing( 4 ),
Variables( X( :height ), Y( :weight ), Color( :sex ) ),
Elements( Points( X, Y, Legend( 9 ) ) )
);
// change color/marker settings
scalebox = gb << xpath( "//ScaleBox[@charID=\!"400\!"]" );
scalebox << Legend Model( 9, Properties( 1, {Line Color( 0 ), Marker Size( 10 )}, Item ID( "M", 1 ) ) );
// add second Y variable
gb << add variable( {:height, Role( "Y" )} );
gb << add variable( {:weight, Role( "X" )} );
wait(2);
New Window( "Modal Dialog example",
<<TYPE>below< the old one
Button Box( "OK" )
)
);</TYPE>dt = Abrir( "$SAMPLE_DATA/Big Class.jmp" ); gb = dt << Creador de gráficos( Tamaño( 534, 496 ), Espaciado de gráficos( 4 ), Variables( X( :altura ), Y( :peso ), Color( :sexo ) ), Elementos( Puntos( X, Y, Leyenda( 9 ) ) ) ); // cambiar la configuración de color/marcador scalebox = gb << xpath( "//ScaleBox[
@charID=\!"400\!"]" ); scalebox << Modelo de leyenda (9, Propiedades (1, {Color de línea (0), Tamaño de marcador (10)}, ID de artículo ("M", 1)))); // agregar la segunda variable Y gb << agregar variable( {:altura, Rol( "Y" )} ); gb << añadir variable( {:peso, Rol( "X" )} ); esperar (2); Nueva ventana( "Ejemplo de diálogo modal", <abajo< la antigua Caja de botones( "OK" ) ));
En este ejemplo,
- arrastrar "altura" en el eje Y hacia arriba restablece los colores
- arrastrar "altura" en el eje X hacia la derecha NO restablece los colores
- simplemente agarrar y soltar "altura" en el eje X restablece los colores.
De manera similar, la configuración de color/marcador se clona en nuevas subparcelas, si las variables se agregan mediante arrastrar y soltar
- a la derecha de una variable X existente
- en la parte inferior de una variable Y existente
y la configuración no se clona si se agregan las nuevas variables
- a la izquierda de una variable X existente
- a la derecha de una variable Y existente

Ver más...cavar más profundo:
comenzando con 2 o más variables en el eje con configuraciones de color/marcador "clonadas".
Si se agregan variables adicionales al eje, la configuración de color/marcador se vuelve a clonar.
Pero: si se agrega la nueva variable
- muy a la izquierda en el eje X
- encima de todas las variables en el eje Y
los ajustes no se copian.
Y además: todos los ajustes de color/marcadores clonados previamente se restablecen (!!!)

profundizando: comenzando con 2 o más variables en el eje con configuraciones de color/marcador "clonadas". Si se agregan variables adicionales al eje, las configuraciones de color/marcador se clonan nuevamente. Pero: si se agrega la nueva variable, muy a la izquierda en el eje X, encima de todas las variables en el eje Y, la configuración no se copia. Y además: todas las configuraciones de color/marcador previamente clonadas se restablecen (!!!)