Regarding distance determination in an ellipse from a matlab ( 2013) plot

1 view (last 30 days)
TUHIN
TUHIN on 27 Mar 2014
Commented: Image Analyst on 28 Mar 2014
hi everyone i am a new user in matlab. And i have started to use matlab 2013 . And by running a program i got an elliptic plot . As i have generated different size of ellipses, now i want to determine the semimajor axes and semiminor axes of that ellipses from that plots........So can anyone help me by giving any idea how can i get that from different graphs............
  2 Comments
TUHIN
TUHIN on 28 Mar 2014
I have generated the plot(which is elliptic in nature) simply running an matlab code ..... thats why i dont have any co-ordinate for this x,y directly..........and this plot is generated from matlab......so its simply in its format......but as i am completely new so if you will give me some suggestion then it will be helpful for me.

Sign in to comment.

Answers (2)

Carlos
Carlos on 27 Mar 2014
In the case you are not working with a large number of plot you can use the ginput command (you place the mouse in a point and Matlab return the coordinates of that point) http://www.mathworks.es/es/help/matlab/ref/ginput.html, once you have the coordinates you can determine the semimajor axes and semiminor axes using the euclidean distance formula
d=sqrt((x1-x2)^2+(y1-y2)^2);
  4 Comments
Carlos
Carlos on 28 Mar 2014
Sorry, this is the only way I can think of now, perhaps if you give us some more insight about how you actually generate the ellipses with Matlab
And yes I agree the method proposed is not very elegant, but you have to bare in mind you want to get the values from an image...
Just to make things clear I have generated an ellipse, and I have calculated the semiminor axes in the way I have proposed. The result should have been 3 and I got 2.9914.
a=4;
b=3;
x0=0;
y0=0;
t=-pi:0.1:pi;
x=x0+a*cos(t);
y=y0+b*sin(t);
plot(x,y)
>> [x_coord y_coord] = ginput(1);
>> d=sqrt(x_coord^2+y_coord^2)
d =
2.9914

Sign in to comment.


Image Analyst
Image Analyst on 28 Mar 2014
You say: "I have generated the plot(which is elliptic in nature) simply running an matlab code" Well, what code did you use ? Did you use the code to generate an ellipse on the FAQ: http://matlab.wikia.com/wiki/FAQ#How_do_I_create_an_ellipse.3F? My point is, if you used MATLAB to generate an ellipse and plot it, you ALREADY have and know the axes lengths. Show the line of code you used to generate the (x,y) and plot them.
  2 Comments
Image Analyst
Image Analyst on 28 Mar 2014
If so, it would be helpful to attach the data file and the code used to read it in.

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!