| MATLAB Function Reference | ![]() |
![]()
To graph selected variables, use the Plot Selector
in the Workspace Browser,
or use the Figure Palette Plot Catalog. Manipulate graphs in plot edit mode with the Property Editor. For details,
see Plotting Tools
— Interactive Plotting in the MATLAB® Graphics
documentation and Creating Graphics
from the Workspace Browser in the MATLAB Desktop
Tools documentation.
quiver(x,y,u,v)
quiver(u,v)
quiver(...,scale)
quiver(...,LineSpec)
quiver(...,LineSpec,'filled')
quiver(axes_handle,...)
h = quiver(...)
hlines = quiver('v6',...)
A quiver plot displays velocity vectors as arrows with components (u,v) at the points (x,y).
For example, the first vector is defined by components u(1),v(1) and is displayed at the point x(1),y(1).
quiver(x,y,u,v) plots vectors as arrows at the coordinates specified in each corresponding pair of elements in x and y. The matrices x, y, u, and v must all be the same size and contain corresponding position and velocity components. However, x and y can also be vectors, as explained in the next section. By default, the arrows are scaled to just not overlap, but you can scale them to be longer or shorter if you want.
MATLAB expands x and y if they are not matrices. This expansion is equivalent to calling meshgrid to generate matrices from vectors:
[x,y] = meshgrid(x,y); quiver(x,y,u,v)
In this case, the following must be true:
length(x) = n and length(y) = m, where [m,n] = size(u) = size(v).
The vector x corresponds to the columns of u and v, and vector y corresponds to the rows of u and v.
quiver(u,v) draws vectors specified by u and v at equally spaced points in the x-y plane.
quiver(...,scale) automatically
scales the arrows to fit within the grid and then stretches them by
the factor scale. scale = 2 doubles their relative length, and scale = 0.5 halves
the length. Use scale = 0 to plot the velocity
vectors without automatic scaling. You can also tune the length of
arrows after they have been drawn by choosing the Plot Edit
tool, selecting the quivergroup object, opening the Property Editor, and adjusting the Length slider.
quiver(...,LineSpec) specifies line style, marker symbol, and color using any valid LineSpec. quiver draws the markers at the origin of the vectors.
quiver(...,LineSpec,'filled') fills markers specified by LineSpec.
quiver(axes_handle,...) plots into the axes with the handle axes_handle instead of into the current axes (gca).
h = quiver(...) returns the handle to the quivergroup object.
hlines = quiver('v6',...) returns the handles of line objects instead of quivergroup objects for compatibility with MATLAB 6.5 and earlier.
Note The v6 option enables users of Version 7.x of MATLAB to create FIG-files that previous versions can open. It is obsolete and will be removed in a future version of MATLAB. |
See Plot Objects and Backward Compatibility for more information.
Plot the gradient field of the function
:
[X,Y] = meshgrid(-2:.2:2); Z = X.*exp(-X.^2 - Y.^2); [DX,DY] = gradient(Z,.2,.2); contour(X,Y,Z) hold on quiver(X,Y,DX,DY) colormap hsv hold off

contour, LineSpec, plot, quiver3
Direction and Velocity Plots for related functions
Two-Dimensional Quiver Plots for more examples
Quivergroup Properties for property descriptions
![]() | Quit (COM) | quiver3 | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |