code: def docstring_section_lines(docstring: str, section_name: str) -> str:
      """
      Return a section of a numpydoc string
  
      Parameters
      ----------
      docstring :
          Docstring
      section_name :
          Name of section to return
  
      Returns
      -------
      :
          Section minus the header
      """
      lines = []
      inside_section = False
      underline = "-" * len(section_name)
      expect_underline = False
      for line in docstring.splitlines():
          _line = line.strip().lower()
  
          if expect_underline:
              expect_underline = False
              if _line == underline:
                  inside_section = True
                  continue
  
          if _line == section_name:
              expect_underline = True
          elif _line in DOCSTRING_SECTIONS:
              # next section
              break
          elif inside_section:
              lines.append(line)
      return "\n".join(lines)
  
file_path: plotnine/plotnine/doctools.py
imports: from __future__ import annotations
  import itertools
  import os
  import re
  import typing
  from functools import lru_cache
  from textwrap import dedent, indent
label_desc: Use image node_id 3 for calling a global function with example usage: docstring_section_lines(docstring, section_name) and returns: str