How to set colors in quiver (2D)?

128 views (last 30 days)
noa
noa on 20 Sep 2012
Commented: Jean on 25 Aug 2015
Hi, im using the quiver function to plot arrows on a profile
so i want that the arrows which are turning inwards to be colored in a different color (blue). Also, i have a vector telling me which of them is turning inwards.
how can i do that?
thanks, Noa
  2 Comments
José-Luis
José-Luis on 20 Sep 2012
I see you decided to go with the quiver suggestion. If an answer has helped you, please accept it.

Sign in to comment.

Accepted Answer

Wayne King
Wayne King on 20 Sep 2012
Edited: Wayne King on 20 Sep 2012
I would separate the elements which are turning inward vs outward since you have a vector of indices and use two different calls to quiver() with the plot held on.
Then you can use
quiver(x,y,px,py,'color',[0 0 1])
In other words, use the 'color' linespec to color them blue. For example:
[x,y] = meshgrid(-2:.2:2,-1:.15:1);
z = x .* exp(-x.^2 - y.^2); [px,py] = gradient(z,.2,.15);
contour(x,y,z), hold on
indices = 11:21;
quiver(x(:,indices),y(:,indices),px(:,indices),py(:,indices),'color',[0 0 1]);
quiver(x(:,1:10),y(:,1:10),px(:,1:10),py(:,1:10),'color',[1 0 0]);

More Answers (0)

Categories

Find more on Vector Fields in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!