したがって、MATLAB には、次のことを行う単純なループがあります。
for p = 1:100
x = 4.*randn(1,100);
y = 7.*randn(1,100);
figure(1)
plot(randn(1,100));
figure(2);
plot(randn(1,100));
end
x と y は構成されていますが、それが要点です。とにかく、このコードを実行すると、驚くことではありませんが、MATLAB は 2 つの Figure を作成し、それに応じてプロットします。問題は、これを行うと図の間で一種の「点滅」が発生し、時間の経過とともに x と y が進化するのを見る品質が低下することです。
次のように、プロットの 1 つをより滑らかにする方法を発見しました。
figure(1);
for p = 1:100
x = 4.*randn(1,100);
y = 7.*randn(1,100);
plot(randn(1,100));
drawnow
end
これを行うと、もちろん図 (1) はプロット間で図 (1) が「点滅」することなく、x を非常にスムーズに表示してプロットしますが、今は図 (2) または y を表示できません!
「点滅」せずに、これらの量を異なる図 (サブプロットではない) にスムーズにプロットするにはどうすればよいですか?
編集:
Geodesic の回答に感謝します。解決策は機能しますが、問題になるとは思わなかった微妙な点がありますが、問題はあります。
1) このソリューションでは「imagesc」を使用できません。
例えば、
figure(1);
aone = axes;
figure(2);
atwo = axes;
for p = 1:100
x = 4.*randn(1,100);
y = 7.*rand(10,100);
plot(aone,x);
drawnow;
imagesc(atwo,y);
drawnow;
end
この場合、imagesc(atwo, y) の部分がクラッシュします。