In this vignette, we describe various tools for assigning color names to the hexadecimal representations of RGB colors.
As usual, we start by loading the package:
library(Polychrome)
Next, we can look at one of the color palettes it provides.
data(alphabet)
swatch(alphabet)
As you can see, the alphabet palette has assigned names to colors
that begin with different letters of the English alphabet. Since the
Polychrome pacakge includes three differnt sets of (more or less)
standard color names, we can see what they do for these colors:
cn <- colorNames(alphabet) # from UNIX rgb.txt file cc <- isccNames(alphabet) # standards from the Inter-Society Color Council xk <- xkcdNames(alphabet) # from the xkCd online color survey df <- data.frame(UNIX = cn, ISCC = cc, XKCD = xk) rownames(df) <- names(alphabet) df
Careful examination of this table shows that several ISCC names are duplicated:
apply(df, 2, function(X) length(unique(X))) dupn <- df$ISCC[duplicated(df$ISCC)] tmp <- df[df$ISCC %in% dupn,] tmp[order(tmp[,2]),]
Our standard way to think about colors is in the L*u*v* color space model defined by the CIE. The next plot shows how the points in various "color name spaces" are distributed in the u-v subspace.
data(xkcd) data(iscc) colMat <- col2rgb(colors()) opar <- par(mfrow = c(2,2)) unix <- rgb(red = colMat[1, ]/255, green = colMat[2, ]/255, blue = colMat[3, ]/255) uvscatter(alphabet, xlim = c(-80, 160), ylim =c (-130, 125)) uvscatter(iscc$Hex, xlim = c(-80, 160), ylim =c (-130, 125), main = "ISCC") uvscatter(unix, xlim = c(-80, 160), ylim =c (-130, 125), main = "UNIX") uvscatter(xkcd$Hex, xlim = c(-80, 160), ylim =c (-130, 125), main = "XKCD") par(opar)
As you can see, the alphabet colors are widely dispersed across the color
spectrum, making them somewhat easier to distinguish. The 247 standard colors
from the ISCC are clumped twoard the middle of the space, making it harder to
name colors out on the fringes. The UNIX rgb.txt color names consist of 697
names, but some of these are duplicate names for the same 502 distinct
hexadecimal color representations. Even so, there are clear gaps in the color
space that are not given distinct names. The results fo teh XKCD survey have
a much denser coverage of more of the available color space.
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.