[R] Opposite color in R

peter dalgaard pdalgd at gmail.com
Sun Jul 26 02:04:04 CEST 2015


> On 25 Jul 2015, at 21:49 , Atte Tenkanen <attenka at utu.fi> wrote:
> 
> Hi,
> 
> I have tried to find a way to find opposite or complementary colors in R.
> 
> I would like to form a color circle with R like this one: http://nobetty.net/dandls/colorwheel/complementary_colors.jpg
> 
> If you just make a basic color wheel in R, the colors do not form complementary color circle:
> 
> palette(rainbow(24))
> Colors=palette()
> pie(rep(1, 24), col = Colors)
> 
> There is a package ”colortools” where you can find function opposite(), but it doesn’t work as is said. I tried
> 
> library(colortools)
> opposite("violet") and got green instead of yellow and
> 
> opposite("blue") and got yellow instead of orange.
> 
> Do you know any solutions?

Not directly, but a few hints: 

First read up on "complementary colors" in Wikipedia. In particular, note that the traditional color circle does not satisfy the modern definition of opposite-ness. E.g. red paint mixed with green paint is brown, not black or grey.

The construction of the color circle is simple in principle: red, blue, yellow go at 0, 120, 240 degrees, the other colors on the circle are formed by mixing two primaries in varying proportions: green (at 180 deg) is an equal mixture of blue and yellow, violet (at 60 deg) of blue and red, orange (at 300 deg) of red and yellow. Blue-green (at 150 deg) would be half blue, half green, alias three quarter blue, one quarter yellow. Etc.

The tricky bit is that the above mixtures are subtractive mixtures (mixing paint rather than light beams) and I don't know how to make a subtractive color mixture in the additive RGB space that we usually work in. Maybe there are tools in the colortools package?

-pd

> 
> Atte Tenkanen
> 
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

-- 
Peter Dalgaard, Professor,
Center for Statistics, Copenhagen Business School
Solbjerg Plads 3, 2000 Frederiksberg, Denmark
Phone: (+45)38153501
Email: pd.mes at cbs.dk  Priv: PDalgd at gmail.com



More information about the R-help mailing list