# How to mark one specific point when plotting

15 views (last 30 days)
Anton Larsson on 14 Oct 2011
Hi,
Consider the following plot:
x = linspace(0,10)
y = x.^2
plot(x,y,'b+-')
What type of command can I use to mark one specific point on the line, e.g. y(2), with a square size 15?
Cheers,
A MATLAB newbie

Walter Roberson on 14 Oct 2011
Guessing that you want 15 x 15 centered over (x(2),y(2)), then:
rectangle('Position',[x(2)-15/2 y(2)-15/2 15 15])
Note: the answer is in terms of 15 data units. If you want 15 pixels, then:
PointsPerPixels = 72/get(0,'ScreenPixelsPerInch');
line(x(2),y(2),'Marker','s','MarkerSize', 15 * PointsPerPixel)

Ali Isik on 14 Oct 2011
As I understood you should 'hold on' the plot and plot the colored,squared point on it. The modified code is as follows;
x = linspace(0,10);
y = x.^2;
plot(x,y,'b+-');
hold on;
plot(x(2),y(2),'--rs','LineWidth',2,'MarkerEdgeColor','k','MarkerFaceColor','g','MarkerSize',15);
Walter Roberson on 14 Oct 2011
Note: that 15 will be 15 points.
Reminds me about the riddle of St. Ives...