Hi, i have a question:
When i click near of a pointF (pointF is a point that belongs to the function plotted on the graph), is there a way that "ginput" gives me that pointF?
Example: "ginput" gives me (37.8, 251.3), but the point that belongs to the function plotted is (38, 250), i need that "ginput" gives me (38,250) when i click on (37.8, 251.3)
Regards, and sorry for my Tarzan english xD

 Réponse acceptée

Sean de Wolski
Sean de Wolski le 5 Jan 2012

1 vote

minimum absolute differences kick in again:
xx = 1:10; %xdata
yy = exp(xx);
plot(xx,yy);
[xm ym] = ginput(1); %xmouse, ymouse
%Engine
[~, xidx] = min(abs(xx-xm)); %closest index
[~, yidx] = min(abs(yy-ym));
x_closest = xx(xidx) %extract
y_closest = yy(yidx)

4 commentaires

Pablo
Pablo le 5 Jan 2012
*.*, you're my hero! xD
Thanks a lot ;)
Yunus
Yunus le 8 Déc 2014
Hello Mr .Sean de Wolski ;
i have a problem about this topic please help me. so my problem is how can i obtain selected points pixels index .for example i have rgb picture and i want to selecet particular place with mause and i want to get picture's pixel values.
Thans for helping.
Chad Greene
Chad Greene le 9 Déc 2014
Yunus: clickz do what you want?
Sean de Wolski
Sean de Wolski le 9 Déc 2014
Or impoint

Connectez-vous pour commenter.

Plus de réponses (1)

Stefano Dalla Gasperina
Stefano Dalla Gasperina le 10 Sep 2020

0 votes

% plot x,y
plot(x,y)
% ginput 10 points
plot(y)
[index,~] = ginput(10);
% plot again
figure();
plot(x(round(index)),y(round(index)));

Catégories

En savoir plus sur Data Exploration dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by