MagnetGInput
No License
MAGNETGINPUT(h,N,test)
Given the handle of the plot, h, MAGNETGINPUT will either
return the position clicked (upon right button press) or
the location of the datapoint closest to the position
clicked (upon left button press)
If N is provided, MagnetGInput will allow N button clicks
The closest datapoint is determined by minimizing the
distance which is weighted by the scale of the figure,
such that if your figure is [0:1:0:1000], the distance
is
sqrt(((X-x)./1).^2+((Y-y)./1000).^2);
It returns the abscissa and ordinate of the point clicked
or datapoint closest to that point as well as the distance
from the returned position to the click.
If TEST is set true, MAGENETGINPUT will draw a red line
from the click to the closest datapoint and a red circle
using the click as the origin and the distance to the
closest datapoint as a radius
USAGE:
y=sin([.1:.1:10])+rand(1,100).*0.1;
h=plot([1:100],y,'-');
[xin,yin,rin]=MagnetGInput(h);
% click on your plot with the LEFT mouse button
line(xin+[0 10],yin+[0 .5],'color','r');
text(xin+10,yin+.5,{'This datapoint','was the closest to','your mouse click'},'color','r');
hold on;plot(xin,yin,'ro');
IT'S NOT FANCY BUT IT WORKS.
Cite As
Michael Robbins (2024). MagnetGInput (https://www.mathworks.com/matlabcentral/fileexchange/3265-magnetginput), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 |