code: def colorsat(l,m):
      
  
      lm = np.zeros(len(l), dtype='complex')
      lm.real = l
      lm.imag = m
      red = 0.5*(1+np.cos(np.angle(lm)))
      green = 0.5*(1+np.cos(np.angle(lm) + 2*3.14/3))
      blue = 0.5*(1+np.cos(np.angle(lm) - 2*3.14/3))
      amp = 256*np.abs(lm)/np.abs(lm).max()
      return ["#%02x%02x%02x" % (np.floor(amp[i]*red[i]), np.floor(amp[i]*green[i]), np.floor(amp[i]*blue[i])) for i in range(len(l))]
docs: Returns color for given l,m
      Designed to look like a color wheel that is more saturated in middle.