# how to delete the plotted particular coordinate from 2d graph

5 views (last 30 days)
singh on 13 May 2015
Commented: Star Strider on 14 May 2015
N=20;
area=100;
X=rand(1,N)*area;
Y=rand(1,N)*area;
XX=area/2;
YY=area/2;
plot(XX,YY,':o','LineWidth',3,'MarkerEdgeColor','k',...
'MarkerFaceColor','w','MarkerSize',20);
for i=1:N
plot(X(i),Y(i),'--o',...
'MarkerSize',10,'Color','b',...
'MarkerEdgeColor','b','MarkerFaceColor','b');
text(X(i),Y(i),num2str(i),'fontsize',15);
line([XX,X(i)],[YY,Y(i)])
hold on
end
>> XY=[X;Y]'
now i wish to delete the 10 no node delete from 2d gaph and delete the line and plotted marker from the node 10th

Star Strider on 13 May 2015
I am not certain what you want to do, but if I understand correctly, I would set the 10th value to NaN.
Either:
X(10) = NaN;
Y(10) = NaN;
or:
XY=[X;Y]'
XY(10,:) = NaN;
depending on where in your code you want to do it. If you do not want the 10th node to be plotted, set the values to NaN before the plotting loop. The advantage of setting them to NaN is that it preserves the length of both vectors and of your ‘XY’ matrix, if that is important in your code.
Star Strider on 14 May 2015
I was concerned about the ‘ghost’ text resulting from my original solution, so I contacted MathWorks about it, submitting a bug report. I received a reply from Dr. Nade Sritanyaratana with an ingenious solution that genuinely merits I wish I’d thought of that! I learned something.
N=20;
area=100;
X=rand(1,N)*area;
Y=rand(1,N)*area;
for i=1:N
hp(i) = plot(X(i),Y(i));
ht(i) = text(X(i),Y(i),num2str(i),'fontsize',10);
hold on
end
XY=[X;Y]';
Q10 = XY(10,:); % Get Coordinates Of Point To Be Deleted
delete(hp(10)) % Delete Plotted Point
delete(ht(10)) % Delete Text Label
That I admit is better than mine.
Star Strider on 14 May 2015
for i=1:N
hp(i) = plot(X(i),Y(i),'--o',...
'MarkerSize',10,'Color','b',...
'MarkerEdgeColor','b','MarkerFaceColor','b');
ht(i) = text(X(i),Y(i),num2str(i),'fontsize',15);
hl(i) = line([XX,X(i)],[YY,Y(i)]);
hold on
end
XY=[X;Y]';
Q10 = XY(10,:); % Coordinates Of Deleted Values (Check)
delete(hp(10))
delete(ht(10))
delete(hl(10))