1

プロットを作成してから、xy軸をある角度だけ回転させたいと思います。次に、回転した軸で同じプロットを再度作成し、次の同様のプロットのために軸を再度回転します

このようなもの:

hold all;

for k= 0:1:10
    % rotate-axis-about-origin(angle * k)
    plot(XY(:,1),XY(:,2));
end

私が提案していることを達成する方法はありますか?

4

2 に答える 2

1

これを行うには、を介して各ステップでカメラを回転させますcamroll。これは、正弦をプロットするためのおもちゃの動作例です。

hold all

x = -3:0.01:3;
y = sin(x);
angle = 1; % in degrees
for k = 1:90 % 90 steps
    plot(x,y, 'k');
    camroll(angle); % roll 'angle' degrees at each step
    drawnow
    pause(0.05)
end
于 2012-11-19T13:35:51.033 に答える
1

ループ内で回転行列を使用します。

hold all;

% test vector and matrix
x = (1:10)';
y = x.^2;    
XY0 = [x y];

angle = 1/180*pi;   % 1 degree

for k= 0:1:10
    % rotate-axis-about-origin(angle * k)
    rot = [cos(angle*k) sin(angle*k);-sin(angle*k) cos(angle*k)];
    XY = XY0*rot;
    plot(XY(:,1),XY(:,2));
end

XY0は元の行列であり、XYはステップごとに異なります。

これがあなたが探しているものであることを願っています。

于 2012-11-19T13:36:33.957 に答える