How do I get object data from a FIG file, such as X and Y data?

i search on matlab searching question but not found it.
I have a graph with a curve. I want to know the Y value from my graph
example X = 10
how to find Y?
thx.

4 Kommentare

MRR
MRR am 14 Aug. 2012
Bearbeitet: MRR am 14 Aug. 2012
%example
X = 1:0.1:20;
Y = sin(X);
index = find(X==10);
Y_point = Y(index)
% See graphically
plot(X,Y,X(index),Y_point,'o');
not this what i man, i have no X, Y data. I only have hiperbolic curve in matlab graph/file.
Thank you MRR!
Your reply helped me greatly.
Much appreciated.
But what if I want to find x values using y axis?

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Julian Laackmann
Julian Laackmann am 14 Aug. 2012
Bearbeitet: MathWorks Support Team am 9 Nov. 2018
Open the figure using “openfig” and return the “Figure” object as an output argument, such as "fig". Then use “fig” to access the underlying objects in the figure.
fig = openfig('MySavedPlot.fig')
For example, if the figure contains a line plot, you might want to get the X and Y data for the line. You can get the X and Y data using the XData and YData properties of the "Line" object. You can access the "Line" object through the "Children" property of the axes. You can access the "Axes" object through the “Children” property of the figure.
ax = fig.Children
ln = ax.Children;
X = ln.XData;
Y = ln.YData;

3 Kommentare

my plot in matlab file. actually the curve is hyperbolic. X data is heigh
Y is velocity
so I want to find E=1/2 mv^2.
I have m data it is ok to find one by one Y data. by using Data Cursor. I want find many Y data from this plot.
i mean how to get data from figure file.
So all you have is a .fig file with the saved figure? You have absolutely no way to get the original data that was plotted to make the figure? There are submissions in the File Exchange to help you digitize values off a picture, such as http://www.mathworks.com/matlabcentral/fileexchange/36904-matlab-script-for-digitizing-a-published-graph

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

asma chaudhry
asma chaudhry am 11 Sep. 2018

0 Stimmen

Use Matlab's data cursor to find the first intersection of the line y=x with the graph of y=tan(x) in the first quadrant. Enter your answer as a decimal with 3 decimal places

Kategorien

Mehr zu Printing and Saving finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by