2D vector plot in MATLAB.

19 views (last 30 days)
subho
subho on 27 Feb 2011
I have x, y, u and v datas. I am trying to do vector plot using quiver command in MATLAB. The plot is coming OK, but as there are many vectors the figure looks a bit clumsy. So Iwant to skip some vectors. Is it possible to do so using quiver in MATLAB or I have to use some other software? Kindly help. Say I want to skip 6 vectors. The vector plot as generated by Mr Oleg could have been generated just by potting in between x axis limits from -2.5 to 0. It may also be helpful if I can select with a mouse where to plot the vectors.
  1 Comment
Jan
Jan on 27 Feb 2011
It would be helpful, if you explain the criteria to exclude vectors. Every second one or do you want to select them with the mouse?

Sign in to comment.

Answers (1)

Oleg Komarov
Oleg Komarov on 27 Feb 2011

Taking the example from quiver:

[X,Y] = meshgrid(-2:.2:2);
Z = X.*exp(-X.^2 - Y.^2);
[DX,DY] = gradient(Z,.2,.2);
% Plot
subplot(2,1,1)
quiver(X,Y,DX,DY)
set(gca,'Xlim', [-2.5 2.5], 'Ylim',[-2.5 2.5])
% Index just some vectors
idx = 1:10;
subplot(2,1,2)
quiver(X(:,idx),Y(:,idx),DX(:,idx),DY(:,idx))
set(gca,'Xlim', [-2.5 2.5], 'Ylim',[-2.5 2.5])

Oleg

Categories

Find more on Vector Fields in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!