Posiblemente a muchos este post les parezca una tontería supina, pero bueno, albergo la esperanza de que haya alguien que como yo no tenía ni idea de cómo enfrentarse al problema de conseguir un degradado de colores como los que salen en las barras de colores de los programas gráficos.
El problema que tenía que resolver es el siguiente. Tengo una serie de valores que tengo que mostrar en una escala de colores desde el azul (el mínimo de los valores de la serie) al rojo (el máximo de los valores de la serie).
Hacerlo en RGB se prometía complejo, pero afortunadamente encontré otro espacio de colores que me salvaba la vida. HSL (Hue, Saturation, Lightness).
En el nuevo espacio de colores puede mantener constante la luminancia y saturación y variar linealmente la tonalidad. Luego convertir a RGB es bastante fácil.
Para hacer una prueba rápida, hice un script en Python
import colorsys
l = 0.7
s = 1.0
n_max = 10for i in range(1,n_max):
(r,g,b) = colorsys.hls_to_rgb(0.68*(1-i/float(n_max)), l, s)
r = int(r * 255)
g = int(g * 255)
b = int(b * 255)
print “<font color=’%x%x%x’>texto<br/></font>”%(r,g,b)
Y el resultado es:
<font color=’6598ff’>texto<br/></font>
<font color=’65d6ff’>texto<br/></font>
<font color=’65ffe8′>texto<br/></font>
<font color=’65ffaa’>texto<br/></font>
<font color=’65ff6c’>texto<br/></font>
<font color=’9eff65′>texto<br/></font>
<font color=’dcff65′>texto<br/></font>
<font color=’ffe265′>texto<br/></font>
<font color=’ffa465′>texto<br/></font>
Sencillo, rápido, bonito
Si alguno tiene alguna otra idea mágica de cómo hacerlo, también se agradece que nos ilumine con sus conocimientos.
No related posts.
Related posts brought to you by Yet Another Related Posts Plugin.
{ 2 } Comments
Joder, pues chupao:
Si la función es derivable, el gradiente resulta de aplicar el operador nabla a dicha función.
Vale, ya me callo
Pero juro por Dios que cuando he visto la entrada en twitter he pensado en análisis numérico.
Un saludo.
Jokin
No tengo palabras…
Bueno, pensandolo mejor si… ¡Estás enfermo!
Post a Comment