How to show selected points and connect first point to last point?

10 次查看(过去 30 天)
Hi all,
I have the following code:
[x,y]=ginput(); % user can chose any number of coordinates by clicking on graph
plot(x,y);
Is there a way that when the user clicks in the graph, the selected points are marked (to show the selected points)?
Lastly, I want the first point to connect to the last point, but I am not sure how to do this.
I will appreaciate if someone can help me out with my two inquiries. Many thanks!
  2 个评论
Geoff Hayes
Geoff Hayes 2022-9-26
@Mariam Shahab - if you want the last point to be connected to the first point, then the easiest way to do this might be to append the first points' x and y coordinates to the x and y arrays respectively. To show which points, have been selected, just change the call to plot so that you incoude a shape at that point. For example
plot([x ; x(1)],[y ; y(1)], 'bo-');
might do what you want.

请先登录,再进行评论。

采纳的回答

Daksh
Daksh 2022-9-29
Hi
It is my understanding that you wish to view marked points in real time as the user selects multiple points in a plot using "ginput" and you want all points connected, all the way from the first to the last in order through a line.
The following code illustatres how to achieve the same; I've assumed you know the number of points to be marked beforehand (I've taken 5 points in this case) and I've also put the number tag string on each marked point to depict the order of point marking:
clear all
close all
%assuming you want to plot 5 points for example
n=5;
a=zeros(n,1);
b=zeros(n,1);
%running a loop over all selected points
for i=1:5
%allowing user to click a point to choose, x,y store the coordinates
[x,y] = ginput(1);
%text depiction for each point, with "i" as the point marker
h1 = text(x,y,int2str(i), ...
'HorizontalAlignment','center', ...
'Color', [1 0 0], ...
'FontSize',8);
a(i)=x;
b(i)=y;
end
hold on
%plotting a line between all points
plot([a ; a(1)],[b ; b(1)], 'b-');
hold off
Hope it helps

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Discrete Data Plots 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by