class_docstr: Connected points
  
  {usage}
  
  Parameters
  ----------
  {common_parameters}
  lineend : Literal["butt", "round", "projecting"], default="butt"
      Line end style. This option is applied for solid linetypes.
  linejoin : Literal["round", "miter", "bevel"], default="round"
      Line join style. This option is applied for solid linetypes.
  arrow : ~plotnine.geoms.geom_path.arrow, default=None
      Arrow specification. Default is no arrow.
  
  See Also
  --------
  plotnine.geoms.geom_path.arrow : for adding arrowhead(s) to paths.
class_docstr_tok: ["Connected","points","{","usage","}","Parameters","--","--","--","--","--","{","common_parameters","}","lineend",":","Literal","[","``","butt","''",",","``","round","''",",","``","projecting","''","]",",","default=","''","butt","''","Line","end","style",".","This","option","is","applied","for","solid","linetypes",".","linejoin",":","Literal","[","``","round","''",",","``","miter","''",",","``","bevel","''","]",",","default=","''","round","''","Line","join","style",".","This","option","is","applied","for","solid","linetypes",".","arrow",":","~plotnine.geoms.geom_path.arrow",",","default=None","Arrow","specification",".","Default","is","no","arrow",".","See","Also","--","--","--","--","plotnine.geoms.geom_path.arrow",":","for","adding","arrowhead","(","s",")","to","paths","."]
code: def draw_group(
      data: pd.DataFrame,
      panel_params: panel_view,
      coord: Coord,
      ax: Axes,
      **params: Any,
  ):
      data = coord.transform(data, panel_params, munch=True)
      data["size"] *= SIZE_FACTOR
  
      if "constant" in params:
          constant: bool = params.pop("constant")
      else:
          constant = len(np.unique(data["group"].to_numpy())) == 1
  
      if not constant:
          _draw_segments(data, ax, **params)
      else:
          _draw_lines(data, ax, **params)
  
      if "arrow" in params and params["arrow"]:
          params["arrow"].draw(
              data, panel_params, coord, ax, constant=constant, **params
          )
  
imports: from __future__ import annotations
  import typing
  from collections import Counter
  from contextlib import suppress
  from warnings import warn
  import numpy
  from .._utils import SIZE_FACTOR, make_line_segments, match, to_rgba
  from ..doctools import document
  from ..exceptions import PlotnineWarning
  from .geom import geom
label_desc: Use image node_id 3 for calling the geom_path obj's underlying member method code with example usage: obj.draw_group(data, panel_params, coord, ax) without return types