docs: def find_text_color(base_color, dark_color="black", light_color="white", coef_choice=0):
      """
      Takes a background color and returns the appropriate light or dark text color.
      Users can specify the dark and light text color, or accept the defaults of 'black' and 'white'
  
      base_color: The color of the background. This must be
          specified in RGBA with values between 0 and 1 (note, this is the default
          return value format of a call to base_color = cmap(number) to get the
          color corresponding to a desired number). Note, the value of `A` in RGBA
          is not considered in determining light/dark.
  
      dark_color: Any valid matplotlib color value.
          Function will return this value if the text should be colored dark
  
      light_color: Any valid matplotlib color value.
          Function will return this value if thet text should be colored light.
  
      coef_choice: slightly different approaches to calculating brightness. Currently two options in
          a list, user can enter 0 or 1 as list index. 0 is default.
      """
  
      #Coefficients:
          # option 0: http://www.nbdtech.com/Blog/archive/2008/04/27/Calculating-the-Perceived-Brightness-of-a-Color.aspx
          # option 1: http://stackoverflow.com/questions/596216/formula-to-determine-brightness-of-rgb-color
      coef_options = [np.array((.241, .691, .068, 0)),
                      np.array((.299, .587, .114, 0))
                      ]
  
      coefs= coef_options[coef_choice]
      rgb = np.array(base_color) * 255
      brightness = np.sqrt(np.dot(coefs, rgb**2))
  
      #Threshold from option 0 link; determined by trial and error.
      #base is light
      if brightness > 130:
          return dark_color
      return light_color