Plotting based on a for loop from a cell array

3 次查看(过去 30 天)
Hi every one,
I am trying to plot acceleration data, which I always have in X, Y & Z direction.
To avoid doing everything 3 times, I have created a cell array: names = {'X', 'Y', 'Z'}.
I now want to plot this data in 3 subplots using a for loop, which yields something like this:
for i = 1:length(names)
figure();
subplot(3,1,i);
plot(UA_SEG.Acc_(names{i}));
end
In which UA_SEG is a table containing the data I'm using.
However, I am doing something wrong in accessing the cell array, as it won't plot and I get the error "Error using tabular/dotParenReference (line 69), Unrecognized variable name 'Acc_'."
Which means that it does not recognize the first element of the array as being 'X', but I am not sure which braces or indexing to use to make this work.
Thank you in advance
Inti

采纳的回答

Stephen23
Stephen23 2019-3-18
编辑:Stephen23 2019-3-18
xyz = 'XYZ';
figure()
for k = 1:3
subplot(3,1,k)
plot(UA_SEG{:,['Acc',xyz(k)]})
end
  1 个评论
Inti Vanmechelen
Inti Vanmechelen 2019-3-18
Thank you Stephen!
I had looked at a lot of information pages before, but I hadn't found that one yet.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by