for ループを使用して、matlab に複数の図をプロットしたいと考えています。私は次のことを試しました:
figure;
plot(toDplot)
と
figure(2);
plot(thing)
figure(3);
plot(something)
等
しかし、どちらの場合も、最初のプロットは次のプロットに置き換えられます...
なぜ最初のフレームを置き換えるのですか?
新しいフィギュアは現在のフィギュアを引き継いでいません ( gcf
)。
プロットの行き先を明示的に指定するには、構文で呼び出すことができますplot(HA,...)
。MATLAB ドキュメントから:
plot(axes_handle,___) plots into the axes specified by axes_handle instead of into the current axes (gca)
これを使用するには、Figure と Axes を作成し、ハンドルを次のように格納します。
hf = figure;
ha = axes('parent',hf);
plot(ha,x,y)
close all
PSループの前にaを置くことで機能することがわかりました!プロットを明示するのに良い方法であるため、参照用にここに回答を残しておきます。