Arrows of the same length in a quiver plot

76 visualizzazioni (ultimi 30 giorni)
Hello,
I know that vectors can be superimposed over a curve using quiver (dx, dy, du, dw, scale). I am only interested in keeping the angle and prefer to have vectors with the same length. I am wondering how I can have vectors with the same length. I have used (dx, dw, du, dw, 1/(du^2+dw^2)) to create the equal length but the length of vectors are still different!
Cheers,
Cyrus

Risposta accettata

Michael Haderlein
Michael Haderlein il 11 Ago 2014
Scale is not the right parameter for your purpose. You need to normalize the velocity:
un=du./sqrt(du.^2+dw.^2);
wn=dv./sqrt(du.^2+dw.^2);
quiver(dx,dy,un,wn)
Best regards,
Michael
  2 Commenti
Kourosh
Kourosh il 12 Ago 2014
Great, thank you.
Regards,
Cyrus
David Martin
David Martin il 18 Ago 2023
Why doesn't this work for me? I have the following code and the arrows come out with different lengths.
t = 0:0.5:5;
v = -5:0.5:5;
[T,V] = meshgrid(t,v);
dT = 0.05 + 0.0*T;
dV = (2+V).*dT;
dR = sqrt(dT.^2 + dV.^2);
dT = dT ./ dR;
dV = dV ./ dR;
quiver(T,V,dT,dV,'Linewidth',2);
Any help would be appreciated.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Vector Fields in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by