code: def ecdfplot(
      data=None,
      *,
      # Vector variables
      x=None,
      y=None,
      hue=None,
      weights=None,
      # Computation parameters
      stat="proportion",
      complementary=False,
      # Hue mapping parameters
      palette=None,
      hue_order=None,
      hue_norm=None,
      # Axes information
      log_scale=None,
      legend=True,
      ax=None,
      # Other appearance keywords
      **kwargs,
  ):
      p = _DistributionPlotter(
          data=data,
          variables=dict(x=x, y=y, hue=hue, weights=weights),
      )
  
      p.map_hue(palette=palette, order=hue_order, norm=hue_norm)
  
      # We could support other semantics (size, style) here fairly easily
      # But it would make distplot a bit more complicated.
      # It's always possible to add features like that later, so I am going to defer.
      # It will be even easier to wait until after there is a more general/abstract
      # way to go from semantic specs to artist attributes.
  
      if ax is None:
          ax = plt.gca()
  
      p._attach(ax, log_scale=log_scale)
  
      color = kwargs.pop("color", kwargs.pop("c", None))
      kwargs["color"] = _default_color(ax.plot, hue, color, kwargs)
  
      if not p.has_xy_data:
          return ax
  
      # We could add this one day, but it's of dubious value
      if not p.univariate:
          raise NotImplementedError(
              "Bivariate ECDF plots are not implemented"
          )
  
      estimate_kws = dict(
          stat=stat,
          complementary=complementary,
      )
  
      p.plot_univariate_ecdf(
          estimate_kws=estimate_kws,
          legend=legend,
          **kwargs,
      )
  
      return ax
  
imports: from numbers import Number
  from functools import partial
  import math
  import textwrap
  import warnings
  import numpy
  import pandas
  import matplotlib
  import matplotlib.pyplot
  import matplotlib.transforms
  from matplotlib.cbook import normalize_kwargs
  from matplotlib.colors import to_rgba
  from matplotlib.collections import LineCollection
  from ._base import VectorPlotter
  from ._statistics import ECDF, Histogram, KDE
  from ._stats.counting import Hist
  from .axisgrid import FacetGrid, _facet_docs
  from .utils import remove_na, _get_transform_functions, _kde_support, _check_argument, _assign_default_kwargs, _default_color
  from .palettes import color_palette
  from .external import husl
  from .external.kde import gaussian_kde
  from ._docstrings import DocstringComponents, _core_docs
label_desc: Use image node_id 3 for calling a global function with example usage: ecdfplot(data) and returns: ax, ax