# xarray.plot.scatter

`xarray.plot.``scatter`(ds, x, y, ax, **kwargs)

  Scatter Dataset data variables against each other.

  Parameters:

  - ds (Dataset) –
  - y (x,) – Variable names for x, y axis.
  - hue (str, optional) – Variable by which to color scattered points
  - hue_style (str, optional) – Can be either ‘discrete’ (legend) or ‘continuous’ (color bar).
  - markersize (str, optional (scatter only)) – Variably by which to vary size of scattered points
  - size_norm (optional) – Either None or ‘Norm’ instance to normalize the ‘markersize’ variable.
  - add_guide (bool, optional) –
    Add a guide that depends on hue_style
      - for “discrete”, build a legend. This is the default for non-numeric hue variables.
      - for “continuous”, build a colorbar
  - row (string, optional) – If passed, make row faceted plots on this dimension name
  - col (string, optional) – If passed, make column faceted plots on this dimension name
  - col_wrap (integer, optional) – Use together with `col` to wrap faceted plots
  - ax (matplotlib axes, optional) – If None, uses the current axis. Not applicable when using facets.
  - subplot_kws (dict, optional) – Dictionary of keyword arguments for matplotlib subplots. Only applies to FacetGrid plotting.
  - aspect (scalar, optional) – Aspect ratio of plot, so that `aspect * size` gives the width in inches. Only used if a `size` is provided.
  - size (scalar, optional) – If provided, create a new figure for the plot with the given size. Height (in inches) of each plot. See also: `aspect`.
  - norm (`matplotlib.colors.Normalize` instance, optional) – If the `norm` has vmin or vmax specified, the corresponding kwarg must be None.
  - vmax (vmin,) – Values to anchor the colormap, otherwise they are inferred from the data and other keyword arguments. When a diverging dataset is inferred, setting one of these values will fix the other by symmetry around `center`. Setting both values prevents use of a diverging colormap. If discrete levels are provided as an explicit list, both of these values are ignored.
  - cmap (matplotlib colormap name or object, optional) – The mapping from data values to color space. If not provided, this will be either be `viridis` (if the function infers a sequential dataset) or `RdBu_r` (if the function infers a diverging dataset). When Seaborn is installed, `cmap` may also be a seaborn color palette. If `cmap` is seaborn color palette and the plot type is not `contour` or `contourf`, `levels` must also be specified.
  - colors (discrete colors to plot, optional) – A single color or a list of colors. If the plot type is not `contour` or `contourf`, the `levels` argument is required.
  - center (float, optional) – The value at which to center the colormap. Passing this value implies use of a diverging colormap. Setting it to `False` prevents use of a diverging colormap.
  - robust (bool, optional) – If True and `vmin` or `vmax` are absent, the colormap range is computed with 2nd and 98th percentiles instead of the extreme values.
  - extend ({'neither', 'both', 'min', 'max'}, optional) – How to draw arrows extending the colorbar beyond its limits. If not provided, extend is inferred from vmin, vmax and the data limits.
  - levels (int or list-like object, optional) – Split the colormap (cmap) into discrete color intervals. If an integer is provided, “nice” levels are chosen based on the data range: this can imply that the final number of levels is not exactly the expected one. Setting `vmin` and/or `vmax` with `levels=N` is equivalent to setting `levels=np.linspace(vmin, vmax, N)`.
  - **kwargs (optional) – Additional keyword arguments to matplotlib