Digitize(extract data) from a matlab plot
4 次查看(过去 30 天)
显示 更早的评论
I have a figure generated by matlab plot(t,y). It is a time-series. The figure is in a Microsoft Word file. And the figure can be saved as PNG, TIF etc(but no FIG file format). Data is quite big and it's impossible to digitize it by a digitizer. I wonder if there's any way to extract data x and y. Thanks
1 个评论
Jan
2012-12-30
Please explain the format of the available data exactly. "A figure copied to word" does not allow to draw enough conclusions.
Why is it impossible to use a digitizer?
回答(1 个)
Image Analyst
2012-12-30
Try this: http://www.mathworks.com/matlabcentral/fileexchange/36904-matlab-script-for-digitizing-a-published-graph "This function lets users digitize a published graph that is saved as a image e.g. jpeg."
3 个评论
Image Analyst
2012-12-31
Can you "get()" the xdata and ydata properties from the fig?
xValues = get(hFig, 'xdata');
Does that work? Or maybe from the axes or line series objects.
xValues = get(hAxes, 'xdata');
hLine = findobj(hAxes, 'line');
xValues = get(hLine, 'xdata');
You might have to experiment around - just like I'd have to because I don't do this all the time so I don't know off the top of my head. But if you have the fig file, why don't you have the arrays that went into creating it????? You should have them. Can you modify whatever code made the fig file to save the x and y data out to a mat file?
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating, Deleting, and Querying Graphics Objects 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!