Solución 2: Valorar los colores
Para los elementos del gráfico que normalmente no corresponden a filas individuales, como los gráficos de barras y los mapas de árbol, los colores de las filas no ayudarán. Sin embargo, podemos una propiedad de Value Colors para el color y utilícela en la función de color en Graph Builder, esos colores se utilizarán en la gráfica. Para crear una propiedad de columna de Colores de valor mediante programación, primero cree una propiedad de Colores de valor de prueba y haga una Copia de comandos de tabla en la tabla de datos para ver cómo JMP registra los Colores de valores como JSL. Verás algo como esto:
...
Set Property( "Value Colors",
{"#000000" = -5425372, "#003399" = -13577875, "#004899" = -4354269,
"#0063aa" = -13400361, "#006fba" = -2668175, "#0070bc" = -10628061,
...})
En cada asignación, el lado izquierdo es el valor de los datos y el lado derecho es la representación del número JSL de un valor de color, igual que el resultado de la función Color RGB ().
Por lo tanto, nuestra tarea es crear una expresión de este tipo mediante el uso de expresiones JSL y luego enviarla a la tabla de datos para establecer la propiedad con el mensaje Agregar propiedades de columna ().
Aquí está mi código:
eadd = Expr(
Column( "color" ) << Add Column Properties( Set Property( "Value Colors", LLL ) )
);
evc = {};
ec = Expr( SSS = CCC );
For Each Row(
ec2 = Substitute( Name Expr( ec ),
Expr( SSS ), :color,
Expr( CCC ),
RGB Color(
Hex To Number( Substr( :color, 2, 2 ) ),
Hex To Number( Substr( :color, 4, 2 ) ),
Hex To Number( Substr( :color, 6, 2 ) )
)
);
Insert Into( evc, Name Expr( ec2 ) );
);
Substitute Into( eadd, Expr( LLL ), Name Expr( evc ) );
eadd; // evaluates the expression
Por convención, prefijo las variables de expresión con "e" y uso mayúsculas para los patrones de sustitución. La idea básica es hacer una expresión con la forma básica utilizando marcadores de posición, y luego usar Sustituir para reemplazar los marcadores de posición con valores calculados. Pero aquí, hay dos niveles de sustitución pasando. Uno para el comando, eadd , que tiene la LLL marcador de posición para la lista de colores de valor, y uno para cada asignación, CE , que tiene marcadores de posición SSS y CCC Para la cuerda y el color.