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 filled(
      self,
      filled: cpy.FillReturn,
      fill_type: FillType | str,
      ax: Axes | int = 0,
      color: str = "C1",
      alpha: float = 0.7,
      line_color: str = "C0",
      line_alpha: float = 0.7,
      point_color: str = "C0",
      start_point_color: str = "red",
      arrow_size: float = 0.1,
  ) -> None:
      fill_type = as_fill_type(fill_type)
      super().filled(filled, fill_type, ax, color, alpha)
  
      if line_color is None and point_color is None:
          return
  
      ax = self._get_ax(ax)
      filled = convert_filled(
          filled, fill_type, FillType.ChunkCombinedOffset
      )
  
      # Lines.
      if line_color is not None:
          for points, offsets in zip(*filled):
              if points is None:
                  continue
              for start, end in zip(offsets[:-1], offsets[1:]):
                  xys = points[start:end]
                  ax.plot(
                      xys[:, 0],
                      xys[:, 1],
                      c=line_color,
                      alpha=line_alpha,
                  )
  
                  if arrow_size > 0.0:
                      n = len(xys)
                      for i in range(n - 1):
                          self._arrow(
                              ax,
                              xys[i],
                              xys[i + 1],
                              line_color,
                              line_alpha,
                              arrow_size,
                          )
  
      # Points.
      if point_color is not None:
          for points, offsets in zip(*filled):
              if points is None:
                  continue
              mask = np.ones(offsets[-1], dtype=bool)
              mask[offsets[1:] - 1] = False  # Exclude end points.
              if start_point_color is not None:
                  start_indices = offsets[:-1]
                  mask[start_indices] = False  # Exclude start points.
              ax.plot(
                  points[:, 0][mask],
                  points[:, 1][mask],
                  "o",
                  c=point_color,
                  alpha=line_alpha,
              )
  
              if start_point_color is not None:
                  ax.plot(
                      points[:, 0][start_indices],
                      points[:, 1][start_indices],
                      "o",
                      c=start_point_color,
                      alpha=line_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 3 for calling the MplDebugRenderer obj's underlying member method code with example usage: obj.filled(filled, fill_type, ax, color, alpha, line_color, line_alpha, point_color, start_point_color, arrow_size) without return types