How to select a number of points from a 2D matlab plot?
1 view (last 30 days)
Show older comments
I have created a matlab profile plot of an image and I would like to know if there is a way that would enable the user to select points from the 2D plot so that he can later on draw a best fit line on those points.
Thank you in advance
0 Comments
Accepted Answer
More Answers (1)
Image Analyst
on 13 Feb 2013
UCL, try this demo:
% Make image that they can click on.
plot(cos(1:30),'b-');
grid on;
uiwait(msgbox('Click 5 points'));
[x y] = ginput(5)
hold on;
plot(x, y, 'r+', 'LineWidth', 2);
% Do the least squares fit
coeffs = polyfit(x, y, 1);
% Now find estimated values at
% locations other than where they clicked.
xFitted = 1:30; % x values that we want the fit for.
yFitted = polyval(coeffs, xFitted);
plot(xFitted, yFitted, 'r-', 'LineWidth', 2);
4 Comments
Image Analyst
on 14 Feb 2013
It worked fine for me. It puts "+" markers where you click, and then it fits a line through the range 1-30 and draws a line with no markers through that range. You can fit over whatever range you want. I just picked 1 to 30 arbitrarily.
See Also
Categories
Find more on Labels and Styling in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!