0

matlabに3Dヒストグラムがあります。自動的に回転させることは可能ですか?つまり、3D効果を得ることができますか?3Dヒストグラムが回転するPowerPointのビデオとして表示したいと思います。

ありがとう

4

2 に答える 2

1

viewこれを行うにはやや面倒な方法は、コマンドを使用してチャートを手動で回転させることです。このコマンドを使用して、任意の3Dプロットの方位角と立面図を更新できます。

ビデオを作成するには、次のようなコマンドシーケンスを使用してプロットウィンドウをキャプチャする必要があります(背景が灰色になるため、背景色を変更することをお勧めします)。

% create figure and get handle to it (store handle in hf)
hf = figure(1);

% [create 3d plot]

% Create file to hold the animation
aviobj = avifile('mymovie.avi', 'compression', 'Cinepak');

% loop with some criteria for rotation
while(...)
    % update view using view command
    view(az, el);

    % get Matlab to flush the drawing buffer (effectively forces a plot update)
    drawnow;

    % capture frame and write to the avi file
    aviobj = addframe(aviobj, hf);
end
% end loop

% Close movie (flushes write buffer and finishes the video)
aviobj = close(aviobj);

avifileMatlabのスクリプトを使用してプロットを回転させるために、何もせずに同じ戦術を使用できますが、pauseコマンドを使用してフレームの変更を遅くしたい場合があります。

于 2010-01-12T13:27:38.883 に答える
0

ここで同じことについて話していることを確認しましょう。2次元ヒストグラムには、指定されたXおよびY範囲のビンがあり、カウントはZ軸に表示されます。3Dヒストグラムには、X、Y、Zの範囲にビンがあり、カウントは他の方法で表示されます(色?)。3Dヒストグラムを理解するには、スライスする必要があります。地面から出てくるブロックの束のように見える2Dヒストグラム。

この2次元ヒストグラムを画像にする方がよいと思います。各ピクセルはXとYの特定のビンを表し、色はそのビンのカウントを指定します。動きはデータを混乱させるだけだと思います。これには、imageまたはimagescまたはimshowを使用します。また、春や冬のような強度ベースのカラーマップ(>>カラーマップ)をお勧めします。これにより、違いがより明確になります。カラーバーをオンにします(>>カラーバー)

于 2010-01-12T14:31:10.300 に答える