Las funciones de R para representar el color se basan en los sistemas de ordenamiento del color ya conocidos. De hecho, Wikipedia nos va a sacar de dudas con solo buscar las siglas de la función. Las principales funciones son rgb y hsv. En este artículo, a modo de introducción, hablaré un poco sobre ellas sin entrar en detalles.
Los sistemas de ordenamiento del color actuales son cuerpos geométricos donde a cada punto se le asigna un color siguiendo una lógica. De ese modo, si trazamos un segmento rectilíneo o curvo entre dos puntos tendremos un degradado según esa dicha lógica cromática. Una vez hecho esto, al elegir un número de puntos uniformemente distribuidos, tendremos nuestra paleta de colores personal.
En el interior de R, los colores tienen una codificación, la hexadecimal. De tal modo que lo que hacen las funciones del color es pasar de una codificación a otra. Así que si le damos un valor a una de las funciones, esta nos devuelve el color en hexadecimal. Por ejemplo, el rgb(1,1,1) = #FFFFFF = Blanco. No obstante, este tema no debe preocuparnos, debemos centrarnos en ese sistema que le da esa peculiaridad a la función.
La función rgb
La función rgb representa a un cubo de nombre RGB (red, green, blue). Te invito a leer el artículos «Entender RGB para conseguir el color que queremos». Además, explico como hacer una paleta personalizada de colores con más detalle a partir de dos colores elegidos. En multitud de ocasiones necesitamos representar un gráfico acorde la decoración de la diapositiva o del documento y otras veces todo lo contrario.
La lógica de este cubo se basa en la teoría tricromática del color de la luz. Según ella, debido a unos receptores que tenemos en los ojos, todo color se puede descomponer en la suma de tres colores rojo, verde y azul. Así que la primera variable representa la cantidad de rojo, la segunda, la cantidad de verde y la tercera la cantidad de azul.
Puede parecer que sea un ordenamiento objetivo del color, pero en realidad es subjetivo porque depende de nuestros ojos. No obstante, para su construcción se recurrió a unos observadores patrones los cuales tuvieran una visión bastante completa del color.
La función hsv
El sistema de orden del color se basa en la lógica de los pintores al usar el color, aunque todos tienen su propio estilo. Su forma es la de un cono donde el vértice está en la parte de abajo y representa el negro. En su antípoda, arriba en la misma vertical, tenemos el blanco y tal como salimos hacia fuera tenemos los colores saturados.
Te recomiendo Wikipedia para tenerlo más claro, aunque también puedes visitar ColorSystem.com. Dado que un cono es un cilindro donde la base es solo un punto, el negro, la función hsv toma valores entre 0 y 1 para todos los argumentos, donde la base con varios valores da como resultado el negro. En realidad, la función hsv es un cilindro con esa característica. Con el gráfico interactivo de abajo o mediante este enlace entenderás mejor lo que quiero transmitir. En el caso que estés usando el ordenador podrás girarlo y verlo desde todos ángulos. Pincha sobre el cilindro y arrastra.
Para finalizar comentar que hay más funciones sobre el color como rainbow, hcl, etc. También hay más librerías para el color en R. Por último, te resultarán útiles las herramientas que te permiten conocer el color de cada pixel de la pantalla. Estas suelen llamarse picker o algún derivado de la palabra. Espero que te haya sido útil la entrada, tal vez, la amplíe más adelante.