class_docstr: Debug renderer implemented using Matplotlib.
  
  Extends ``MplRenderer`` to add extra information to help in debugging such as markers, arrows,
  text, etc.
code: def lines(
      self,
      lines: cpy.LineReturn,
      line_type: LineType | str,
      ax: Axes | int = 0,
      color: str = "C0",
      alpha: float = 1.0,
      linewidth: float = 1,
      point_color: str = "C0",
      start_point_color: str = "red",
      arrow_size: float = 0.1,
  ) -> None:
      line_type = as_line_type(line_type)
      super().lines(lines, line_type, ax, color, alpha, linewidth)
  
      if arrow_size == 0.0 and point_color is None:
          return
  
      ax = self._get_ax(ax)
      separate_lines = convert_lines(
          lines, line_type, LineType.Separate
      )
      if TYPE_CHECKING:
          separate_lines = cast(cpy.LineReturn_Separate, separate_lines)
  
      if arrow_size > 0.0:
          for line in separate_lines:
              for i in range(len(line) - 1):
                  self._arrow(
                      ax, line[i], line[i + 1], color, alpha, arrow_size
                  )
  
      if point_color is not None:
          for line in separate_lines:
              start_index = 0
              end_index = len(line)
              if start_point_color is not None:
                  ax.plot(
                      line[0, 0],
                      line[0, 1],
                      "o",
                      c=start_point_color,
                      alpha=alpha,
                  )
                  start_index = 1
                  if (
                      line[0][0] == line[-1][0]
                      and line[0][1] == line[-1][1]
                  ):
                      end_index -= 1
              ax.plot(
                  line[start_index:end_index, 0],
                  line[start_index:end_index, 1],
                  "o",
                  c=color,
                  alpha=alpha,
              )
  
imports: from __future__ import annotations
  from collections.abc import Sequence
  import io
  from typing import TYPE_CHECKING, Any, cast
  import matplotlib.collections
  import matplotlib.pyplot
  import numpy
  from contourpy import FillType, LineType
  from contourpy.convert import convert_filled, convert_lines
  from contourpy.enum_util import as_fill_type, as_line_type
  from contourpy.util.mpl_util import filled_to_mpl_paths, lines_to_mpl_paths
  from contourpy.util.renderer import Renderer
label_desc: Use image node_id 4 for calling the MplDebugRenderer obj's underlying member method code with example usage: obj.lines(lines, line_type, ax, color, alpha, linewidth, point_color, start_point_color, arrow_size) without return types