matlab之讀取fig影象裡的資料

Regnaiq發表於2017-06-20


寫在前面:關於控制程式碼

gcf 返回當前Figure物件的控制程式碼值
gca返回當前axes物件的控制程式碼值
gco返回當前滑鼠單擊的控制程式碼值,該物件可以是除root物件外的 任意圖形物件,並且Matlab會把當前圖形物件的控制程式碼值存放在Figure的CurrentObject屬性中。

一、只有一條曲線

1、h = findobj(gca,'Type','line'); 或者 h = get(gca,'children'); 或者 h=findall(gca,'type','line');% 命令取得曲線的控制程式碼; 

2、xdata=get(h,'XData');

     ydata=get(h,'YData') ;  %取得曲線的資料

二、用subplot畫的多個影象

figure_info=findall(gcf,'type','line'); %是gcf不是gca
xc1=get(figure_info(1,:),'xdata');   %figure_info的引用還是要具體看影象幾個subplot的分佈引用
yc1=get(figure_info(1,:),'ydata');  
xc2=get(figure_info(2,:),'xdata');  
yc2=get(figure_info(2,:),'ydata') ; 

三、二維影象

h=findobj(gcf,'type','image');
img=get(h,'CData');

四、曲面影象

figure_info=findall(gcf,'type','surf');
xx=get(figure_info,'xdata');
yy=get(figure_info,'ydata');
z=get(figure_info,'zdata');






相關文章