readmatrix​で任意のファイルを指​定してcsvを読み込​みグラフを作成する方​法を知りたいです。

csvファイルを読み込みグラフを作ろうとしています。
a=readmatrix("sample1.csv");
plot([a(:,1)],[a(:,2)]);
[a(:,1)]は計測されたデータの時間軸で[a(:,2)]はプロットしたいデータになります。
sample1.csvのデータと同じパスにsample2.csv,sample3.csv...と別のデータがあるときに
a=readmatrix("sample2.csv");
plot([a(:,1)],[a(:,2)]);
のようにスクリプトを書き換えることなく、sample2.csvのデータ置かれているフォルダを開いてグラフ化したいデータを選ぶようにするにはどうしたらよいのでしようか。

 採用された回答

Atsushi Ueno
Atsushi Ueno 2022 年 7 月 9 日

0 投票

uigetfile関数を使います。
[file,path] = uigetfile('*.csv');
a=readmatrix([path file]);
plot([a(:,1)],[a(:,2)]);

1 件のコメント

Madrugada
Madrugada 2022 年 7 月 9 日
ありがとうございます。解決できました。

サインインしてコメントする。

その他の回答 (1 件)

Hernia Baby
Hernia Baby 2022 年 7 月 9 日
編集済み: Hernia Baby 2022 年 7 月 9 日

0 投票

こちらが参考になると思います。
------
list = dir('*.csv');
figure
hold on
for ii = 1:length(list)
a = readmatrix(list(ii).name);
plot(a(:,1),a(:,2))
end

製品

リリース

R2021b

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!