ループ内でプロットを実行しようとしましたが、最後のプロットのみが出力されます。
どうすれば修正できますか?
プロット定義の後に使用しようとしましhold on
たdrawnow
が、機能しませんでした。
これは私のコードです:
for t=1:5
alive = Game(World , Generations, speed);
plot(hplot2,1:Generations,alive);
end
ループ内でプロットを実行しようとしましたが、最後のプロットのみが出力されます。
どうすれば修正できますか?
プロット定義の後に使用しようとしましhold on
たdrawnow
が、機能しませんでした。
これは私のコードです:
for t=1:5
alive = Game(World , Generations, speed);
plot(hplot2,1:Generations,alive);
end
hold on
動作するはずです。これを試して:
figure
hplot2=gca;
hold on
for t=1:5
alive = rand(1,Generations);
plot(hplot2,1:Generations,alive);
end
「図」にこだわるのはいつも私のために働いてきました。
for t=1:5
alive = Game(World , Generations, speed);
figure;
plot(hplot2,1:Generations,alive);
end
すでにAxesハンドルをに渡しているので、ループ内plot
に何かを入れるだけで、元のソースが機能します。pause(0.1)
figure(t)
5つの異なる図を使用することもできます。
関数Game(World , Generations, speed)
が決定論的関数である場合、すべてのに対して同じ出力が得られますt
。したがって、すべてのplot
コマンドの出力はまったく同じであり、最初のプロットと最後のプロットを区別することはできません。
(shoelzerの回答のように)各反復でランダムな系列を試してplot
、5つのプロットすべてが表示されるかどうかを確認します。
さらに、次hold all
の代わりに使用することもできますhold on
。この方法では、各プロットがカラーマップから異なる色を取得します。