MATLAB: How to mark one specific point when plotting


Consider the following plot:
x = linspace(0,10)
y = x.^2
What type of command can I use to mark one specific point on the line, e.g. y(2), with a square size 15?
A MATLAB newbie

Best Answer

  • 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)