Matlab 提取fig图形数据
在保存了图片没有保存数据的情况下,可以根据图片重新获得原始数据。
- 打开图片,fname.fig
open('fname.fig');
- 获取曲线的handle,如果图中有多条曲线,handle为一个数组
handle = findobj(gca,'Type','line');
- 分别获取x轴和y轴数据
xdata = get(handle,'XData');
ydata = get(handle,'YData');
第二种:
1、在命令行运行figure打开一个空白窗口,
2、在工具栏或者菜单中选择open打开你保存的fig文件,会显示出原来的那个图来。
3、在命令行运行obj = get(gca,'children')
这个结果对应你的图里面的线或者面的句柄,有几条线就对应几个句柄。
4、根据你需要的是哪条线,第n条线句柄就是obj(n),如果只有一个对象直接用obj就可以,
然后再用一次get,
x=get(obj(1), 'xdata');
y=get(obj(1), 'ydata');
如果是三维图,再加上个z=get(obj(1),'zdata');
x、y、z就是你所需要的坐标数据
-----------------------------
% the data
% ...on display
% ...and saved
% the engine
% the result