(This article was first published on

**Category: R | Huidong Tian's Blog**, and kindly contributed to R-bloggers)When plot with R (or some other software), it doesn’t bother you a lot for choosing colors if you have only several data series. For example, if I want to create a figure for 5 data series, I can choose *red*, *green*, *dark green*, *blue* and *black*. But what if I need to create a figure having 100 data series? Of course, we can choose different *shape* or *pattern*, like *dash line*, *circle*, *triage*, etc. However, to me, I feel that make the figure messy, I prefer all series in same style, except their colors. I created a Shiny-app which can generate random distinct colors in a certain color plate, would like to share it with public.

The app’s address is here.

The design idea is like this:

- Generate N random points. Some points are very close to each other, so they are easy distinguished.
- Find the point-pair which have the shortest distance, pick up one point of it and put it to a new location where it has the largest distance to all the rest points.
- Continue the above step, until there is no new location meet.

To

**leave a comment**for the author, please follow the link and comment on their blog:**Category: R | Huidong Tian's Blog**.R-bloggers.com offers

**daily e-mail updates**about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...