
I want to draw an arrow in vector.
24 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Q = [0,977 -0,016
-0,016 0,176];
p1 = [0.977 -0.016]; %Coordinate of the first point
p2 =[-0.016 0.176]; % Coordinate of the second point
The start and end points of the arrow are as above. How can I draw a vector arrow with these points?
0 commentaires
Réponses (5)
Matevz Lavtar
le 14 Nov 2020
I have the same problem, so I make a function that solve this problem I think.
Here is a link to it: https://www.mathworks.com/matlabcentral/fileexchange/82665-plotting-vectors-with-arrow-head-pvec?s_tid=prof_contriblnk
Example what can you do with it:

Hope it helps you
0 commentaires
Star Strider
le 9 Oct 2017
Modifié(e) : Star Strider
le 9 Oct 2017
One option is the quiver plot:
Q = [0.977 -0.016
-0.016 0.176];
QX = Q(:,1); % Isolate Line ‘x’ Coordinates
QY = Q(:,2); % Isolate Line ‘y’ Coordinates
[~,UV] = gradient(Q); % Generate Gradient
UVX = [UV(1,1); 0]; % Define Quiver Arrow ‘x’
UVY = [UV(1,2); 0]; % Define Quiver Arrow ‘y’
figure(1)
% plot(QX, QY, '-r', 'LineWidth',1.2) % Plot Line (Optional)
hold on
quiver(QX, QY, UVX, UVY, 0)
hold off
axis([-0.15 1.1 -0.15 0.2])
axis equal
grid
EDIT — Added axis calls to the plot.
0 commentaires
Martin Meiringer
le 12 Déc 2017
Is there a reason why this functionality is still not built in? Using file exchange functions is always a bit difficult if you are sharing your work with colleagues. so please, Mathworks do a arrow / arrow3 function!!!
2 commentaires
MrKnudsen
le 29 Avr 2020
I think this hack might be useful:
figure()
hold on; grid on;
a1 = 1j+1;
a2 = -1;
a3 = -1j;
a4 = 0.5 -0.5j;
compass(a1,'r');
compass(a2,'g');
compass(a3,'b');
compass(a4,'y');
0 commentaires
Voir également
Catégories
En savoir plus sur Annotations dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!