code: def color_table(
      color,
      N=1,
      sort=False,
      sort_values=False,
      inline=False,
      as_html=False,
  ):
      """
      Generates a colour table
  
      Parameters:
      -----------
              color : string | list | dict
                      Color representation in rgba|rgb|hex
                      If a list of colors is passed then these
                      are displayed in a table
              N   : int
                      number of colours to generate
                      When color is not a list then it generaes
                      a range of N colors
              sort : bool
                      if True then items are sorted
              sort_values : bool
                      if True then items are sorted by color values.
                      Only applies if color is a dictionary
              inline : bool
                      if True it returns single line color blocks
              as_html : bool
                      if True it returns the HTML code
  
      Example:
              color_table('#ff9933')
              color_table(cufflinks.cnames)
              color_table(['pink','salmon','yellow'])
      Note:
              This function only works in iPython Notebook
      """
      if isinstance(color, list):
          c_ = ""
          rgb_tup = [normalize(c) for c in color]
          if sort:
              rgb_tup.sort()
      elif isinstance(color, dict):
          c_ = ""
          items = [
              (k, normalize(v), hex_to_hsv(normalize(v)))
              for k, v in list(color.items())
          ]
          if sort_values:
              items = sorted(items, key=operator.itemgetter(2))
          elif sort:
              items = sorted(items, key=operator.itemgetter(0))
          rgb_tup = [(k, v) for k, v, _ in items]
      else:
          c_ = normalize(color)
          if N > 1:
              rgb_tup = np.array(color_range(c_, N))[::-1]
          else:
              rgb_tup = [c_]
  
      def _color(c):
          if hex_to_hsv(c)[2] < 0.5:
              color = "#ffffff"
              shadow = "0 1px 0 #000"
          else:
              color = "#000000"
              shadow = "0 1px 0 rgba(255,255,255,0.6)"
          if c == c_:
              border = " border: 1px solid #ffffff;"
          else:
              border = ""
          return color, shadow, border
  
      s = '<ul style="list-style-type: none;">' if not inline else ""
      for c in rgb_tup:
          if isinstance(c, tuple):
              k, c = c
              k += " : "
          else:
              k = ""
          if inline:
              s += '<div style="background-color:{0};height:20px;width:20px;display:inline-block;"></div>'.format(
                  c
              )
          else:
              color, shadow, border = _color(c)
              s += (
                  """<li style="text-align:center;"""
                  + border
                  + """line-height:30px;background-color:"""
                  + c
                  + """;">
              <span style=" text-shadow:"""
                  + shadow
                  + """; color:"""
                  + color
                  + """;">"""
                  + k
                  + c.upper()
                  + """</span>
              </li>"""
              )
      s += "</ul>" if not inline else ""
      if as_html:
          return s
      return display(HTML(s))
  
imports: import numpy
  import colorsys
  import colorlover
  import operator
  import copy
  from collections import deque
  from six import string_types
  from IPython.display import HTML, display
  from .utils import inverseDict
  from .auth import get_config_file
label_desc: Use image node_id 8 for calling a global function with example usage: color_table(color, N, sort, sort_values, inline, as_html) and returns: display, color,  shadow,  border, s