matlab從fig圖中提取數據


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 linehandles
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 linehandles
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};

 

轉自:MATLAB之從fig文件中提取數據

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM