HI all,
I tried to graph the some data using the following loop i'm new to matlab but i think this is almost right. The only thing is i got this error. Anyone have any ideas? Any help would be appreciated thanks!
fieldNames = fieldnames(MCR_full.MIB035.Reaches);
peakArray
peakArray = 0;
for k = 1 :3(fieldNames)
thisFieldName = fieldNames{k};
thisArray = MCR_full.MIB035.Reaches.(thisFieldName).kin;
x = thisArray(:, 1);
y = thisArray(:, 3);
peakArray{k} = findpeaks(y);
f=figure(k);
plot (peakArray{k});
title(['Peaks for ', thisFieldName]);
end
grid on;
Unable to perform assignment because brace indexing is not supported for
variables of this type.

 Accepted Answer

Matt J
Matt J on 29 Oct 2021
Edited: Matt J on 29 Oct 2021
Instead of
peakArray = 0;
you need,
peakArray = cell(1,numel(fieldNames));

4 Comments

Thank you!
So now it has this error
Error using fieldnames
Not enough input arguments.
peakArray = cell(1,numel(fieldNames));
and you should have
for k = 1 : numel(fieldNames)
Got it Thank you so much!

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!