class_docstr: For providing a custom update method
  
  This block allows you to write a custom update method to provide
  functionality not available with other blocks.
  
  Parameters
  ----------
  func : callable
      This function will be called once for each frame of the animation.
      The first argument to this function must be an integer
      representing the frame number. It should return a matplotlib
      artist.
  length : int
      The number of frames to display.
  fargs : list, optional
      A list of arguments to pass into func.
  ax : matplotlib.axes.Axes, optional
      The matplotlib axes to which the block is attached.
      Defaults to matplotlib.pyplot.gca()
  
  Attributes
  ----------
  ax : matplotlib.axes.Axes
      The matplotlib axes to which the block is attached.
code: def __init__(self, func, length, fargs=[], ax=None):
      self.func = func
      self.length = length
      self.fargs = fargs
      super().__init__(ax)
  
      func(0, *fargs)
  
file_path: animatplot/animatplot/blocks/update.py
imports: from .base import Block
label_desc: Use image node_id 1 to create a new Update object from inherited base classes: Block with example: obj = Update(func, length, fargs, ax)