control.phaseplot.vectorfield(sys, pointdata, gridspec=None, ax=None, check_kwargs=True, **kwargs)[source]

Plot a vector field in the phase plane.

This function plots a vector field for a two-dimensional state space system.

  • sys (NonlinearIOSystem or callable(t, x, ...)) – I/O system or function used to generate phase plane data. If a function is given, the remaining arguments are drawn from the params keyword.

  • pointdata (list or 2D array) – List of the form [xmin, xmax, ymin, ymax] describing the boundaries of the phase plot or an array of shape (N, 2) giving points of at which to plot the vector field.

  • gridtype (str, optional) – The type of grid to use for generating initial conditions: ‘meshgrid’ (default) generates a mesh of initial conditions within the specified boundaries, ‘boxgrid’ generates initial conditions along the edges of the boundary, ‘circlegrid’ generates a circle of initial conditions around each point in point data.

  • gridspec (list, optional) – If the gridtype is ‘meshgrid’ and ‘boxgrid’, gridspec gives the size of the grid in the x and y axes on which to generate points. If gridtype is ‘circlegrid’, then gridspec is a 2-tuple specifying the radius and number of points around each point in the pointdata array.

  • params (dict or list, optional) – Parameters to pass to system. For an I/O system, params should be a dict of parameters and values. For a callable, params should be dict with key ‘args’ and value given by a tuple (passed to callable).

  • color (str) – Plot the vector field in the given color.

  • ax (Axes) – Use the given axes for the plot, otherwise use the current axes.



Return type