大量の図を .png ファイルとして印刷しています。各図は、データ マトリックスの列のプロットです。.png ファイルを取得して、それらをつなぎ合わせてアニメーションにします。
私の問題は、最初の数百の画像がすばやく印刷されることですが、最初の数百の .png ファイルの約 0.2 秒から 800 番目の図では 2 秒以上まで、新しい図を作成する時間が急速に増加することです。
スクリプトの実行中にメモリ使用量が増加しますが、数秒ごとに 1MB しか増加しません。これは、R2009b 64 ビットを実行している Windows 上にあります。
私のコードは次のようになります。
n = 1000;
matrix = rand(n);
f = figure('Visible','off'); % create the figure
for i_ =1:n
plot(1:n,matrix(:,i_));
ylim([0 1]);
set(f,'PaperUnits','inches','PaperPosition',[0 0 6 4]);
png_name = [ 'img/timestep_' sprintf('%05d',i_) ];
print('-dpng', png_name);
end