class_docstr: Base class of all Geoms
class_docstr_tok: ["Base","class","of","all","Geoms"]
docstr: Plot all groups
  
  For efficiency, geoms that do not need to partition
  different groups before plotting should override this
  method and avoid the groupby.
  
  Parameters
  ----------
  data :
      Data to be plotted by this geom. This is the
      dataframe created in the plot_build pipeline.
  panel_params :
      The scale information as may be required by the
      axes. At this point, that information is about
      ranges, ticks and labels. Attributes are of interest
      to the geom are:
  
      ```python
      "panel_params.x.range"  # tuple
      "panel_params.y.range"  # tuple
      ```
  coord :
      Coordinate (e.g. coord_cartesian) system of the geom.
  ax :
      Axes on which to plot.
  params :
      Combined parameters for the geom and stat. Also
      includes the `zorder`.
docstr_tok: ["Plot","all","groups","For","efficiency",",","geoms","that","do","not","need","to","partition","different","groups","before","plotting","should","override","this","method","and","avoid","the","groupby",".","Parameters","--","--","--","--","--","data",":","Data","to","be","plotted","by","this","geom",".","This","is","the","dataframe","created","in","the","plot_build","pipeline",".","panel_params",":","The","scale","information","as","may","be","required","by","the","axes",".","At","this","point",",","that","information","is","about","ranges",",","ticks","and","labels",".","Attributes","are","of","interest","to","the","geom","are",":","``","`","python","``","panel_params.x.range","''","#","tuple","``","panel_params.y.range","''","#","tuple","``","`","coord",":","Coordinate","(","e.g",".","coord_cartesian",")","system","of","the","geom",".","ax",":","Axes","on","which","to","plot",".","params",":","Combined","parameters","for","the","geom","and","stat",".","Also","includes","the","`","zorder","`","."]
code: def draw_panel(
      self,
      data: pd.DataFrame,
      panel_params: panel_view,
      coord: Coord,
      ax: Axes,
      **params: Any,
  ):
      """
      Plot all groups
  
      For efficiency, geoms that do not need to partition
      different groups before plotting should override this
      method and avoid the groupby.
  
      Parameters
      ----------
      data :
          Data to be plotted by this geom. This is the
          dataframe created in the plot_build pipeline.
      panel_params :
          The scale information as may be required by the
          axes. At this point, that information is about
          ranges, ticks and labels. Attributes are of interest
          to the geom are:
  
          ```python
          "panel_params.x.range"  # tuple
          "panel_params.y.range"  # tuple
          ```
      coord :
          Coordinate (e.g. coord_cartesian) system of the geom.
      ax :
          Axes on which to plot.
      params :
          Combined parameters for the geom and stat. Also
          includes the `zorder`.
      """
      for _, gdata in data.groupby("group"):
          gdata.reset_index(inplace=True, drop=True)
          self.draw_group(gdata, panel_params, coord, ax, **params)
  
imports: from __future__ import annotations
  import typing
  from abc import ABC
  from copy import deepcopy
  from itertools import chain, repeat
  from .._utils import copy_keys, data_mapping_as_kwargs, is_list_like, remove_missing
  from .._utils.registry import Register, Registry
  from ..exceptions import PlotnineError
  from ..layer import layer
  from ..mapping.aes import is_valid_aesthetic, rename_aesthetics
  from ..mapping.evaluation import evaluate
  from ..positions.position import position
  from ..stats.stat import stat
label_desc: Use image node_id 8 for calling the geom obj's underlying member method code with example usage: obj.draw_panel(data, panel_params, coord, ax) without return types