從fig文件導出數據【MATLAB】

原博:點擊打開鏈接

1 如果你的fig文件中的圖像每個像素都有數據,可以通過以下方式獲得圖像每個點的值,輸出data是矩陣,大小是圖像像素的行列數

open('figname.fig');
h=get(gca,'Children');
data=get(h,'Cdata');

 

2 如果你的fig文件中 圖像是由單條曲線繪製而成,比如說plot命令生成的,通過以下方式輸出橫座標,縱座標的取值

open('figname.fig');
h_line=get(gca,'Children');%get line handles
xdata=get(h_line,'Xdata');
ydata=get(h_line,'Ydata');

 

3 如果你的fig文件中 圖像是由三維單條曲線繪製而成,比如說plot3命令生成的,通過以下方式輸出x,y,z 座標的取值

open('figname.fig');
h_line=get(gca,'Children');%get line handles
xdata=get(h_line,'Xdata');
ydata=get(h_line,'Ydata');

zdata=get(h_line,'Zdata');

 

4 如果你的fig文件中 圖像是由多條曲線繪製而成,比如說plot命令生成的,通過以下方式輸出橫座標,縱座標的取值

open('figname.fig');
lh = findall(gca, 'type', 'line');% 如果圖中有多條曲線,lh爲一個數組
xc = get(lh, 'xdata');            % 取出x軸數據,xc是一個元胞數組

yc = get(lh, 'ydata');            % 取出y軸數據,yc是一個元胞數組

%如果想取得第2條曲線的x,y座標

x2=xc{2};

y2=yc{2};

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章