How to create a plot for multiple CSV files in a loop?
Ältere Kommentare anzeigen
I have 24 CSV files and for each of them I'd like to create a figure with 6 subplots (ie 24 figures each with 6 subplots) . The subplots are just one column of the csv files plotted against the first column (time). I'd like to use a loop to do this so it can be done automatically. The first 12 rows of the csv files need to be ignored.
I have tried using
csvFiles = dir("*.csv");
N = length(csvFiles);
for i = 1:N
fid = fopen('csvFiles(i)')
data = txtscan(fid,'Delimiter',',','Headerlines',12)
but txtscan is not recognised.
I have also tried using
fid = fopen('csvFiles(i)')
data = csvread(csvFiles(i).name,'Headerlines','12')
followed by
C0 = data(:,1);
C1 = data(:,2);
C2 = data(:,3);
C3 = data(:,4);
C4 = data(:,5);
C5 = data(:,6);
C6 = data(:,7);
subplot(6,1,1)
plot(C0, C1)
hold on
subplot(6,1,2)
plot(C0, C2)
hold on
subplot(6,1,3)
plot(C0, C3)
hold on
subplot(6,1,4)
plot(C0, C4)
hold on
subplot(6,1,5)
plot(C0, C5)
hold on
subplot(6,1,6)
plot(C0, C6)
hold on
But this has also not worked.
Antworten (1)
VBBV
am 10 Okt. 2022
textscan(fid,'Delimiter',',','Headerlines',12)
3 Kommentare
VBBV
am 10 Okt. 2022
Better use readmatrix instead of csvread
Theo McCarthy
am 10 Okt. 2022
VBBV
am 10 Okt. 2022
Attach the CSV data file
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!