Skip to content

JuliaGraphics/ColorSchemes.jl

Repository files navigation

Documentation Build Status Code Coverage
Build Status

"colorschemes social media preview"

ColorSchemes

This package provides a collection of colorschemes:

  • scientifically devised colorschemes from ColorBrewer, CMOcean, ScientificColorMaps, ColorCet, and Seaborn
  • popular old favourites such as viridis, inferno, and magma from MATPlotLib
  • old masters' colorschemes, such as leonardo, vermeer, and picasso
  • variously themed colorschemes such as sunset, coffee, neon, and pearl

Note that the schemes contained here are a mixture:

  • some are high quality color maps with consistent perceptual contrast over their full range
  • others are designed for general purpose and informal graphics work

Choose colorschemes with care! Refer to Peter Kovesi's PerceptualColourMaps package, or to Fabio Crameri's Scientific Colour Maps for more information.

If you want to make more advanced ColorSchemes, use linear-segment dictionaries or indexed lists, and use functions to generate color values, see the make_colorscheme() function in the ColorSchemeTools.jl package.

Basic usage

] add ColorSchemes

using ColorSchemes

ColorSchemes.Purples_5 
# => a ColorScheme 

colorschemes[:Purples_5]
# => a ColorScheme 

ColorSchemes.Purples_5.colors
# => array of five RGB colors

ColorSchemes.Purples_5.colors[3]
# => the third color in the colorscheme

get(ColorSchemes.Purples_5, 0.5)
# => the midway point of the colorscheme

colorschemes
# => Dict{Symbol, ColorScheme} with 983 entries

findcolorscheme("purple")
# => display list of matching schemes

ColorScheme([colorant"red", colorant"green", colorant"blue"])
# new colorscheme from Colors.jl named colors

get(ColorSchemes.darkrainbow, range(0.0, 1.0, length=20)) |> ColorScheme
# new colorscheme by resampling existing