Plot continuous line based on user input
13 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Aarav Shah
le 26 Nov 2019
Réponse apportée : Adam Danz
le 27 Nov 2019
So I have a user click on the plot.
The code is as such: [xClic,yClic]=ginput(1);
How would I plot a line with a slope of one that goes infinitely until it hits the y axis. The start of the line should be the [xClic,yClic].
Any ideas? All help appreciated.
0 commentaires
Réponse acceptée
Adam Danz
le 27 Nov 2019
"How would I plot a line with a slope of one that goes infinitely until it hits the y axis"
I'm interpreting this as a line that extends from point (xClic,yClic) to the point that crosses the vertical line at x=0, with a slope of 1.
If that interpretation is correct, all you need to so is compute the y intercept.
% Point where user clicked
xClic = -2;
yClic= -5;
% Plot that point
plot(xClic, yClic,'bo')
xlim([-8 8])
ylim([-8,8])
hold on
% Compute y intercept for slope of 1
b = yClic-1*xClic;
% Plot the line between the click point and the y intercept
plot([xClic,0],[yClic,b],'b-')
A similar approach is to use refline() but that extends to your axis limits.
h = refline(1,b)
h.LineStyle = ':'
0 commentaires
Plus de réponses (0)
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!