Hi,
I've plotted a graph and additionally marked a specific point. A 'ButtonDownFcn' is assigned to the point, to enable user interaction.
By clicking onto the point I would like to receive its exact x and y coordinates.
My approach:
function getPlotPointCoord()clc;figure(1);x = -2*pi:0.05:+2*pi;subplot(1,2,1);hold on;plot(x, sin(x));% plot point at (x=0, y=0)
plot(0, sin(0), 'bx', 'ButtonDownFcn', @getPoint); function getPoint(varargin) currentPoint = get(gca, 'CurrentPoint'); fprintf('Hit Point! Coordinates: %f, %f \n', ... currentPoint(1), currentPoint(3)); endend
The call _get(gca, 'CurrentPoint') for instance returns the following values:
Hit Point! Coordinates: 0.000000, 0.002924 Hit Point! Coordinates: 0.000000, 0.002924 Hit Point! Coordinates: 0.000000, 0.002924 Hit Point! Coordinates: -0.106952, -0.008772 Hit Point! Coordinates: 0.106952, -0.014620
Is there a way to receive the true values (x=0, y=0) of the 'button' instead of the current (most likely) mouse-coordinates?
Thank you!
Best Answer