docs: def _patch_chromosomal_features(cytobands, one_chrom_match, two_chrom_match):
      """ Highlight positions for each chromosome segment / feature.
  
      Parameters
      ----------
      cytobands : pandas.DataFrame
          cytoband table from UCSC
      one_chrom_match : list of dicts
          segments to highlight on the chromosomes representing one shared chromosome
      two_chrom_match : list of dicts
          segments to highlight on the chromosomes representing two shared chromosomes
  
      Returns
      -------
      df : pandas.DataFrame
          the start and stop positions of particular features on each
          chromosome
      """
      chromosomes = cytobands["chrom"].unique()
  
      df = pd.DataFrame()
  
      for chromosome in chromosomes:
          chromosome_length = np.max(
              cytobands[cytobands["chrom"] == chromosome]["end"].values
          )
  
          # get all markers for this chromosome
          one_chrom_match_markers = [
              marker for marker in one_chrom_match if marker["chrom"] == chromosome
          ]
          two_chrom_match_markers = [
              marker for marker in two_chrom_match if marker["chrom"] == chromosome
          ]
  
          # background of chromosome
          df = df.append(
              {
                  "chrom": chromosome,
                  "start": 0,
                  "end": chromosome_length,
                  "gie_stain": "gneg",
              },
              ignore_index=True,
          )
  
          # add markers for shared DNA on one chromosome
          for marker in one_chrom_match_markers:
              df = df.append(
                  {
                      "chrom": chromosome,
                      "start": marker["start"],
                      "end": marker["end"],
                      "gie_stain": marker["gie_stain"],
                  },
                  ignore_index=True,
              )
  
          # add markers for shared DNA on both chromosomes
          for marker in two_chrom_match_markers:
              df = df.append(
                  {
                      "chrom": chromosome,
                      "start": marker["start"],
                      "end": marker["end"],
                      "gie_stain": marker["gie_stain"],
                  },
                  ignore_index=True,
              )
  
          # add centromeres
          for item in cytobands.loc[
              (cytobands["chrom"] == chromosome) & (cytobands["gie_stain"] == "acen")
          ].itertuples():
              df = df.append(
                  {
                      "chrom": chromosome,
                      "start": item.start,
                      "end": item.end,
                      "gie_stain": "centromere",
                  },
                  ignore_index=True,
              )
  
      return df