def update_from_path(self, path, ignore=None, updatex=True, updatey=True):
if ignore is None:<EOL><INDENT>ignore = self._ignore<EOL><DEDENT>if path.vertices.size == <NUM_LIT:0>:<EOL><INDENT>return<EOL><DEDENT>points, minpos, changed = update_path_extents(<EOL>path, None, self._points, self._minpos, ignore)<EOL>if changed:<EOL><INDENT>self.invalidate()<EOL>if updatex:<EOL><INDENT>self._points[:,<NUM_LIT:0>] = points[:,<NUM_LIT:0>]<EOL>self._minpos[<NUM_LIT:0>] = minpos[<NUM_LIT:0>]<EOL><DEDENT>if updatey:<EOL><INDENT>self._points[:,<NUM_LIT:1>] = points[:,<NUM_LIT:1>]<EOL>self._minpos[<NUM_LIT:1>] = minpos[<NUM_LIT:1>]<EOL><DEDENT><DEDENT>
Update the bounds of the :class:`Bbox` based on the passed in
data.  After updating, the bounds will have positive *width*
and *height*; *x0* and *y0* will be the minimal values.

*path*: a :class:`~matplotlib.path.Path` instance

*ignore*:
   - when True, ignore the existing bounds of the :class:`Bbox`.
   - when False, include the existing bounds of the :class:`Bbox`.
   - when None, use the last value passed to :meth:`ignore`.

*updatex*: when True, update the x values

*updatey*: when True, update the y values