Git Product home page Git Product logo

r-color-palettes's Introduction

Comprehensive list of color palettes in r

The goal of this repository is to have a one stop destination for anyone looking for a color palette to use in r. If you would like to help/contribute please feel free post an issue, PR or send a email to [email protected].

Further down the page is all the palettes available in the R ecosystem ordered alphabetically by package name. A list of palettes ordered by type can be found here Type sorted palettes to shorten the length of this page.

Paletteer package

I have collected all the palettes displayed here in a single package using a unified framework. Developmental version can be found here.

You can install the released version of paletteer from CRAN with:

If you want the development version instead then install directly from GitHub:

Table of Contents

Blogposts and other resources

Here is a collection of material on the use and creation of color palettes in r.

Color manipulation packages

Generative packages

The purpose of this project is to showcase the palettes already available in R (packages). However sometimes you have to resort to make one yourself. When that is the case the following packages aides in creating.

When creating color palettes certain website have also provided valuable

Perception of color palettes

Selecting a color palette requires a number of different considerations. Within these considerations is

  • the palette retains its integrity when printed in black and white
  • people with colorblindness are able to understand it

In the following I have outlined a couple of those problems

Printing in black and white

While most of the palettes presented here contains a wide variety of colors. While that is compelling, you need to remember that your product might be printed in black and white one day, and you should pick a palette that allows for interpretation if that is the case.

First example is the rainbow palette from the grDevices package with its colorful display. However as we see here would it be horrible if used for black and white printing since different colors are mapped to the same shade of grey.

A related problem happens with the standard color palette used in ggplot2 since that color is picked to have constant chroma and luminance thus yielding the same shade of grey when desaturated. (This palette is no longer the default for continuous variables in ggplot2 after version 3.0.0)

One of the continuous palette that satisfy this criteria is the well known viridis palettes.

To test if the palette you want to use will be distorted when in black and white, use the colorspace::desaturate() to desaturate it.

Color blindness

Another thing you have to take into consideration when picking a palette is how it would be viewed by a person who is color blind. To visualize the effect of color blindness on our palettes we will turn to two packages. The dichromat package can simulate color blindness on individual color and then also entire palettes like so in this rainbow palette:

Another package that can provide helpful is the amazing colorblindr package that is able to simulate color blindness to ggplot objects them self.

Honorable mentions

Due to the somehow vague notion of “color palette” have I decided to exclude certain kinds of packages from the main gallery. Generative package have been discussed earlier.

cpt-city

The amazing cpt-city is a wonderful project of creating an archive of color palettes to be used in cartography, technical illustration and design. Due to the immense size (7140) I have decided to refer to it instead of re-illustration them in this repository. If any of the palettes found here are for your liking they can be accessed in R using the following package:

# CRAN version
install.packages("cptcity")

sport colors

Many of the palettes in sports related palettes have a very limited number of colors (often only 2 colors). This leads to quite low usability outside of the special area of sports analytic.

  • colorr Color palettes for EPL, MLB, NBA, NHL, and NFL teams.

  • beanumber/teamcolors An R package providing color palettes for pro sports teams.

Canva palettes

The ggthemes package include the 150 four-color palettes from the canva.com. Doe to the size and limited number of colors in the palettes these palettes will be featured on their own page and only once.

Palettes sorted by Package (alphabetically)

# Developmental version
devtools::install_github("awhstin/awtools")

# Developmental version
devtools::install_github("riatelab/cartography")
# CRAN version
install.packages("cartography")

# CRAN version
install.packages("dichromat")

# Developmental version
devtools::install_github("EdwinTh/dutchmasters")

# Developmental version
devtools::install_github("road2stat/ggsci")
# CRAN version
install.packages("ggsci")

# Developmental version
devtools::install_github("gadenbuie/ggpomological")

# Developmental version
devtools::install_github("jrnold/ggthemes")
# CRAN version
install.packages("ggthemes")

# Developmental version
devtools::install_github("ewenme/ghibli")
# CRAN version
install.packages("ghibli")

# CRAN version
install.packages("grDevices")

the jcolors continuous palettes are currently not available in the paletteer package.

# Developmental version
devtools::install_github("jaredhuling/jcolors")
# CRAN version
install.packages("jcolors")

# Developmental version
devtools::install_github("johannesbjork/LaCroixColoR")

# Developmental version
devtools::install_github("m-clark/NineteenEightyR")

# Developmental version
devtools::install_github("jkaupp/nord")
# CRAN version
install.packages("nord")

# Developmental version
devtools::install_github("ropenscilabs/ochRe")
# CRAN version
install.packages("ochRe")

# CRAN version
install.packages("oompaBase")

# Developmental version
devtools::install_github("timcdlucas/palettetown")
# CRAN version
install.packages("palettetown")

# Developmental version
devtools::install_github("AustralianAntarcticDivision/palr")
# CRAN version
install.packages("palr")

# Developmental version
devtools::install_github("kwstat/pals")
# CRAN version
install.packages("pals")

# Developmental version
devtools::install_github("kwstat/pals")
# CRAN version
install.packages("pals")

# CRAN version
install.packages("Polychrome")

# Developmental version
devtools::install_github("EmilHvitfeldt/quickpalette")

# Developmental version
devtools::install_github("Nowosad/rcartocolor")
# CRAN version
install.packages("rcartocolor")

# CRAN version
install.packages("RColorBrewer")

# CRAN version
install.packages("Redmonder")

# Developmental version
devtools::install_github("alyssafrazee/RSkittleBrewer")

# Developmental version
devtools::install_github("thomasp85/scico")
# CRAN version
install.packages("scico")

# Developmental version
devtools::install_github("sjmgarnier/viridis")
# CRAN version
install.packages("viridis")

# Developmental version
devtools::install_github("karthik/wesanderson")
# CRAN version
install.packages("wesanderson")

# Developmental version
devtools::install_github("ndphillips/yarrr")
# CRAN version
install.packages("yarrr")

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.