質問: csvデータから列ごとに画像を生成するにはどうすれば良いですか? こんにちは。小熊塁と申します。 先日、一列のcsvデータからreshapeを用いて画像を作る方法を伺ったのですが、今度は複数の列からそれぞれの画像を生成したいと考えています。 当初は一列ごとの画像生成と保存をループさせることで目的を達成しようと考えていたのですが、素人の私では困難でした。 ループでなく一括でも構いませんので、列ごとの画像を生成する方法を教えていただけると幸いです。 参考までに添付しますが、以下のようなデータになっており、各波長(400nm-1000nm,5nm刻み)におけるレタスの光強度がピクセルごとに表されています。 よろしくお願いします。
回答: 数値データから画像を再現する方法について - matlab answers - matlab central (mathworks.com) 前回の質問の回答を踏まえ、列の数分ループさせる様にしました。 mytable = readtable('answers888272.csv'); % サンプルデータは10000行*10列 for index = 1:size(mytable,2) % 一列ごとの画像生成と保存をループさせる image = uint8(reshape(mytable{:,index},[100,100])); imwrite(image, [num2str(index) '.png']); end ls % ファイルを一覧表示