gridcolors#
- gridcolors(ncolors=10, limits=None, nsteps=20, asarray=False, ashex=False, reverse=False, hueshift=0, basis='default', demo=False)[source]#
Create a qualitative “color map” by assigning points according to the maximum pairwise distance in the color cube. Basically, the algorithm generates n points that are maximally uniformly spaced in the [R, G, B] color cube.
By default, if there are <=9 colors, use Colorbrewer colors; if there are 10-19 colors, use Kelly’s colors; if there are >=20 colors, use uniformly spaced grid colors.
- Parameters:
ncolors (int) – the number of colors to create
limits (float) – how close to the edges of the cube to make colors (to avoid white and black)
nsteps (int) – the discretization of the color cube (e.g. 10 = 10 units per side = 1000 points total)
ashex (bool) – whether to return colors in hexadecimal representation
asarray (bool) – whether to return the colors as an array instead of as a list of tuples
reverse (bool) – whether to reverse the list of colors
hueshift (float) – whether to shift the hue (hueshift > 0 and <=1) or not (0)
demo (bool) – whether or not to plot the color cube itself
basis (str) – what basis to use – options are ‘colorbrewer’, ‘kelly’, ‘default’, or ‘none’
Example:
import numpy as np import matplotlib.pyplot as plt import sciris as sc ncolors = 10 piedata = np.random.rand(ncolors) colors = sc.gridcolors(ncolors) plt.pie(piedata, colors=colors) sc.gridcolors(ncolors, demo=True) plt.show()
New in version 2018oct30.New in version 3.2.0: allow ncolors to be an iterable