control.phaseplot.streamlines(sys, pointdata, timedata=1, gridspec=None, gridtype=None, dir=None, ax=None, check_kwargs=True, **kwargs)[source]

Plot stream lines in the phase plane.

This function plots stream lines 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.

  • timedata (int or list of int) – Time to simulate each streamline. If a list is given, a different time can be used for each initial condition in pointdata.

  • 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 streamlines in the given color.

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



Return type

list of Line2D objects