blob: 6f3e0567190be36d935b1044026942c3bcec492f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
import numpy as np
import matplotlib.cm as cm
def map_to_color(a, range=None, map=cm.hsv, weights=None):
a = np.asarray(a)
if range is None:
range = (a.min(), a.max())
ax = (a - range[0])/(range[1]-range[0])
frgba = map(ax)
if weights is not None:
frgba[:,0] *= weights
frgba[:,1] *= weights
frgba[:,2] *= weights
rgba = (frgba*255).astype(np.uint32)
return rgba[:,0] << 16 | rgba[:,1] << 8 | rgba[:,2]
|