docs: def taxonomy_from_node_name(self, node_name):
          '''return the taxonomy incorporated at a particular node, or None
          if it does not encode any taxonomy
          
          Parameters
          ----------
          node_name: str
              a node label.
              
          Returns
          -------
          Taxonomy as a string, or None if there is no taxonomy
          '''
          
          def is_float(s):
              try:
                  float(s)
                  return True
              except ValueError:
                  return False
          
          if node_name is None:
              return None
          elif is_float(node_name):
              # no name, just a bootstrap
              return None
          else:
              bootstrap_regex = re.compile(r'[\d\.]+:(.*)')
              reg = bootstrap_regex.match(node_name)
              if reg:
                  # bootstrap in name
                  return reg.groups(0)[0]
              else:
                  # bootstrap not in name
                  return node_name