class_docstr: Animates scatter plots
  
  Parameters
  ----------
  x : list of 1D numpy arrays or a 2D numpy array
      The x data to be animated.
  y : list of 1D numpy arrays or a 2D numpy array
      The y data to be animated.
  s : scalar, or array_like of the same form as x/y, optional
      The size of the data points to be animated.
  c : color, optional
      The color of the data points. Cannot [yet] be animated.
  ax : matplotlib.axes.Axes, optional
      The matplotlib axes to attach the block to.
      Defaults to matplotlib.pyplot.gca()
  t_axis : int, optional
      The axis of the numpy array that represents time.
      Defaults to 0. No effect if x, y are lists of numpy arrays.
  
      The default is chosen to be consistent with:
          X, T = numpy.meshgrid(x, t)
  
  Attributes
  ----------
  ax : matplotlib.axes.Axes
      The matplotlib axes that the block is attached to.
  
  Notes
  -----
  This block accepts additional keyword arguments to be passed to
  :meth:`matplotlib.axes.Axes.scatter`
class_docstr_tok: ["Animates","scatter","plots","Parameters","--","--","--","--","--","x",":","list","of","1D","numpy","arrays","or","a","2D","numpy","array","The","x","data","to","be","animated",".","y",":","list","of","1D","numpy","arrays","or","a","2D","numpy","array","The","y","data","to","be","animated",".","s",":","scalar",",","or","array_like","of","the","same","form","as","x\/y",",","optional","The","size","of","the","data","points","to","be","animated",".","c",":","color",",","optional","The","color","of","the","data","points",".","Can","not","[","yet","]","be","animated",".","ax",":","matplotlib.axes.Axes",",","optional","The","matplotlib","axes","to","attach","the","block","to",".","Defaults","to","matplotlib.pyplot.gca","(",")","t_axis",":","int",",","optional","The","axis","of","the","numpy","array","that","represents","time",".","Defaults","to","0",".","No","effect","if","x",",","y","are","lists","of","numpy","arrays",".","The","default","is","chosen","to","be","consistent","with",":","X",",","T","=","numpy.meshgrid","(","x",",","t",")","Attributes","--","--","--","--","--","ax",":","matplotlib.axes.Axes","The","matplotlib","axes","that","the","block","is","attached","to",".","Notes","--","--","-","This","block","accepts","additional","keyword","arguments","to","be","passed","to",":","meth",":","`","matplotlib.axes.Axes.scatter","`"]
code: def __init__(self, x, y, s=None, c=None, ax=None, t_axis=0, **kwargs):
      self.x = np.asanyarray(x)
      self.y = np.asanyarray(y)
      if self.x.shape != self.y.shape:
          raise ValueError(
              "x, y must have the same shape"
              "or be lists of the same length"
          )
  
      self.c = c
      self.s = self._parse_s(s)
      super().__init__(ax, t_axis)
  
      self._is_list = self.x.dtype == "object"
      Slice = self._make_slice(0, 2)
      s_Slice = self._make_s_slice(0, 2)
      self.scat = self.ax.scatter(
          self.x[Slice],
          self.y[Slice],
          self.s[s_Slice],
          self.c,
          **kwargs,
      )
  
file_path: animatplot/animatplot/blocks/lineplots.py
imports: import numpy
  from .base import Block
  from animatplot.util import parametric_line
label_desc: Use image node_id 1 to create a new Scatter object from inherited base classes: Block with example: obj = Scatter(x, y, s, c, ax, t_axis)