複数のCSVデータをまとめてfigure化し、保存する方法について。
    4 vues (au cours des 30 derniers jours)
  
       Afficher commentaires plus anciens
    
    cho hunseki
 le 11 Nov 2022
  
    
    
    
    
    Commenté : cho hunseki
 le 11 Nov 2022
            初歩的な質問かもしれませんが、ご回答頂けると幸いです。
フォルダ内にあるn個のcsvデータをグラフにしてfigure化し、n個の画像ファイルとして保存したいと考えております。
現在以下のコードで試してみました。
csvファイルは2行n列であり、1行目を抜き出すコードにしています。
list = dir('*.csv');
for ii = 1:length(list)
   a = readmatrix(list(ii).name);
   plot(a(1,:));
   saveas(gcf,"filename.png");
end
上記コードだとn個のcsvファイルのうち、任意の1個の画像データが保存されております。
おそらくn個分のファイル名を準備できていないため、上手くいかないと考えております。
その他にも原因は考えられるでしょうか。また、具体的にどのようにすれば宜しいでしょうか。
ご回答頂けると幸いです。宜しくお願い致します。
0 commentaires
Réponse acceptée
  Atsushi Ueno
      
 le 11 Nov 2022
        
      Modifié(e) : Atsushi Ueno
      
 le 11 Nov 2022
  
      > おそらくn個分のファイル名を準備できていないため、上手くいかないと考えております。
> その他にも原因は考えられるでしょうか。
⇒いいえ、その原因だけで良いと思います。
> 具体的にどのようにすれば宜しいでしょうか。
⇒例えば出力ファイル名は「拡張子csvをpngに替えた文字列」として随時変更していけば上書きせずに済みます。
list = dir('*.csv');
for ii = 1:length(list)
   a = readmatrix(list(ii).name);
   plot(a(1,:));
   image_file_name = regexprep(list(ii).name,'\.csv$','\.png');
   saveas(gcf,image_file_name); % 出力ファイル名は拡張子csvをpngに替えた文字列とする
end
Plus de réponses (1)
  Hernia Baby
      
 le 11 Nov 2022
        
      Modifié(e) : Hernia Baby
      
 le 11 Nov 2022
  
      ファイル名が同じため、更新する状態になっていると思われます。
for ii = 1:5
    a = ['sample',num2str(ii,'%03d'),'.png']
end
Voir également
Catégories
				En savoir plus sur イメージ算術 dans Help Center et File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!