Filter löschen
Filter löschen

How to mark one specific point when plotting

4 Ansichten (letzte 30 Tage)
Anton Larsson
Anton Larsson am 14 Okt. 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

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 14 Okt. 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)

Weitere Antworten (1)

Ali Isik
Ali Isik am 14 Okt. 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);
  1 Kommentar
Walter Roberson
Walter Roberson am 14 Okt. 2011
Note: that 15 will be 15 points.
Reminds me about the riddle of St. Ives...

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by