class_docstr: Base class of all Geoms
class_docstr_tok: ["Base","class","of","all","Geoms"]
docstr: Draw layer across all panels
  
  geoms should not override this method.
  
  Parameters
  ----------
  data :
      DataFrame specific for this layer
  layout :
      Layout object created when the plot is getting
      built
  coord :
      Type of coordinate axes
  params :
      Combined *geom* and *stat* parameters. Also
      includes the stacking order of the layer in
      the plot (*zorder*)
docstr_tok: ["Draw","layer","across","all","panels","geoms","should","not","override","this","method",".","Parameters","--","--","--","--","--","data",":","DataFrame","specific","for","this","layer","layout",":","Layout","object","created","when","the","plot","is","getting","built","coord",":","Type","of","coordinate","axes","params",":","Combined","*","geom","*","and","*","stat","*","parameters",".","Also","includes","the","stacking","order","of","the","layer","in","the","plot","(","*","zorder","*",")"]
code: def draw_layer(
      self,
      data: pd.DataFrame,
      layout: Layout,
      coord: Coord,
      **params: Any,
  ):
      """
      Draw layer across all panels
  
      geoms should not override this method.
  
      Parameters
      ----------
      data :
          DataFrame specific for this layer
      layout :
          Layout object created when the plot is getting
          built
      coord :
          Type of coordinate axes
      params :
          Combined *geom* and *stat* parameters. Also
          includes the stacking order of the layer in
          the plot (*zorder*)
      """
      for pid, pdata in data.groupby("PANEL", observed=True):
          if len(pdata) == 0:
              continue
          ploc = pdata["PANEL"].iloc[0] - 1
          panel_params = layout.panel_params[ploc]
          ax = layout.axs[ploc]
          self.draw_panel(pdata, 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 7 for calling the geom obj's underlying member method code with example usage: obj.draw_layer(data, layout, coord) without return types