Para explicar mi comentario anterior, mi sospecha fue confirmada en parte por el código publicado para crear el gráfico arriba mencionado en el blog de descubrimiento del conocimiento . ¿Quizás ve muchos de estos ejemplos utilizando gráficos ggplot2? Parece que el valor por defecto de gradiente_de_escala_de_color es de azul a rojo. Me parece que es una interpolación por defecto a lo largo de El espacio de color del LAB en oposición a RGB (así que no estoy seguro de la transformación exacta), pero el resultado parece bastante similar. A continuación se muestra un ejemplo en R para la mezcla variable de Rojo y Azul mientras se mantiene el verde a un 0 constante.
red <- rep(seq(15,255,15),16)
blue <- rep(seq(15,255,15), each = 16)
color <- rgb(red = red, green = 0, blue = blue, maxColorValue = 255)
plot(x = red, y = blue, col = color, pch = 19, cex = 3)
Para explicar por qué es una mala elección (como está escrito en el help(scale_color_gradient)
página) para las escalas de color secuenciales (es decir, de bajo a alto) normalmente se quiere mantener el tono constante y variar el croma y la luminancia (donde el croma y la luminancia se definen en el La escala de colores de Munsell ). O, más directamente, la gente no suele interpretar las variaciones de color como un valor más alto o más bajo, pero la gente suele asociar colores más oscuros o más claros en una escala ordinal.
Una interpolación de azul a rojo como esta podría ser una opción defendible para un esquema de color divergente, pero típicamente queremos más contraste entre los tonos. Vea el scale_gradient2 página de ayuda para algunos ejemplos. Así que, de acuerdo con los principios de la percepción visual de la gestalt, sugeriría reescribir la trama citada a continuación;
(p + geom_point(aes(x = month, y = year, size = Value, colour = VIX),shape=16, alpha=0.80) +
scale_colour_gradient(limits = c(10, 60), low="red", high="black", breaks= seq(10, 60, by = 10)) +
scale_x_continuous(breaks = 1:12, labels=c("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")) +
scale_y_continuous(trans = "reverse") +
theme_bw() + opts(panel.grid.minor=theme_blank(), panel.grid.major=theme_blank())
)
Esto es ciertamente una tarea visual difícil, ya que los pequeños puntos necesitan algo de color para poder distinguirlos del fondo (eliminé las líneas de cuadrícula y el fondo gris para proporcionar más contraste). Otras opciones gráficas pueden ser escalar los puntos para que los puntos más pequeños sean ligeramente más grandes y utilizar un contorno para que se distingan más obviamente del fondo. Pero, OMI, un enfoque más fructífero no es a través de la carta térmica, sino arreglando el trazado de las líneas (ver una discusión similar en cumpleaños por día del año por Andrew Gelman ).
(p + geom_line(aes(x = Date, y = Value), alpha = 0.2) +
geom_point(aes(x=Date, y=Value, size=VIX), shape=1)
)
Para otras referencias sobre la utilización del color en las parcelas, sugeriría el trabajo de la cartógrafa Cynthia Brewer. Su ColorBrewer las escalas se implementan ampliamente y se están convirtiendo en un estándar de facto para la generación de escalas de color.