2017-07-11 57 views
0

Matlabを初めて使ったので、pcolorで配列をプロットする際のヒントがあります。私は、温度、経度、および緯度のデータを持っており、異なる時間に温度(T)マップをプロットしたいと思います。私は配列をプロットしようとしましたが動作しません。 Tは4つの次元、lon、lat、depth、timeを持ちます。私は面の温度をプロットしたいので、私は配列をT(:、:、1、:)としたい。初めての反復での一時をプロットするには、私が何をすべきかです:すべてが正常に動作しますmatlabでpcolorを使ってプロットする

T002=T(:,:,1,2); 
pcolor(lon, lat, T002); 

T001=T(:,:,1,1); 
pcolor(lon_rho, lat_rho, T001); 

とは、2回目の反復をプロットします。しかし、すべての時間反復のすべてのプロットを生成してからアニメーションに入れたいと思います。

私が何かしようとしました:動作しません

pcolor(lon, lat, T(:,:,1,:)) 

を。誰かを助けることができますか?

ありがとうございました。

答えて

1

時間の長さにループを実行し、pcolorを使用してデータをプロットし、アニメーションを.gifファイルに保存できます。以下のコードをご確認ください:

h = figure; 
axis tight 
filename = 'myfile.gif'; 
for n = 1:length(t)  
    pcolor(lon_rho, lat_rho, T(:,:,1,n)) ; 
    drawnow 
    % Capture the plot as an image 
    frame = getframe(h); 
    im = frame2im(frame); 
    [imind,cm] = rgb2ind(im,256); 
    % Write to the GIF File 
    if n == 1 
     imwrite(imind,cm,filename,'gif', 'Loopcount',inf); 
    else 
     imwrite(imind,cm,filename,'gif','WriteMode','append'); 
    end 
end 
+0

申し訳ありません、すぐにコードをチェックして、あなたに連絡します。ありがとう! – hclarke

+0

美しく動作します!ありがとう、シヴァ! – hclarke

関連する問題