code: def _scatter_plot(data, xname, yname, **kwargs):
      """Generate one scatter (joint) plot.
  
      Args:
          data: A Pandas data frame
          xname: The x-axis column name
          yname: The y-axis column name
          kwargs: Keyword arguments
  
      Returns:
          The Seaborn figure
      """
      default_joint_kwargs = {
          "height": max(
              get_option("display.matplotlib.fig_width"),
              get_option("display.matplotlib.fig_height"),
          )
      }
      default_scatter_kwargs = {}
      default_dist_kwargs = {"kde": False}
      default_joint_kwargs.update(kwargs.get("joint_kwargs", {}))
      default_scatter_kwargs.update(kwargs.get("scatter_kwargs", {}))
      default_dist_kwargs.update(kwargs.get("dist_kwargs", {}))
  
      g = sns.JointGrid(
          x=data[xname], y=data[yname], **default_joint_kwargs
      )
      g = g.plot_joint(sns.scatterplot, **default_scatter_kwargs)
      g = g.plot_marginals(sns.histplot, **default_dist_kwargs)
      return g
  
file_path: data-describe/data_describe/core/scatter.py
imports: from itertools import combinations
  import warnings
  import seaborn
  from data_describe._widget import BaseWidget
  from data_describe.config._config import get_option
  from data_describe.compat import _is_dataframe, _requires, _compat
  from data_describe.backends import _get_compute_backend, _get_viz_backend
label_desc: Use image node_id 5 for calling a global function with example usage: _scatter_plot(data, xname, yname) and returns: g