28 lines
635 B
Python
28 lines
635 B
Python
import numpy as np
|
|
|
|
|
|
def rainbow(n):
|
|
"""
|
|
Returns a list of colors sampled at equal intervals over the spectrum.
|
|
|
|
Parameters
|
|
----------
|
|
n : int
|
|
The number of colors to return
|
|
|
|
Returns
|
|
-------
|
|
R : (n,3) array
|
|
An of rows of RGB color values
|
|
|
|
Notes
|
|
-----
|
|
Converts from HSV coordinates (0, 1, 1) to (1, 1, 1) to RGB. Based on
|
|
the Sage function of the same name.
|
|
"""
|
|
from matplotlib import colors
|
|
R = np.ones((1,n,3))
|
|
R[0,:,0] = np.linspace(0, 1, n, endpoint=False)
|
|
#Note: could iterate and use colorsys.hsv_to_rgb
|
|
return colors.hsv_to_rgb(R).squeeze()
|