Making subplots by reading many files in Matlab

3 次查看(过去 30 天)
Hello,
I have a question about making subplots in Matab by reading many files in Matlab. First of all, I have a code who reads many .txt files that have my data.
I have files like these: A_ac_s001.txt , A_ac_s002.txt, A_ac_s003.txt ,..., A_ac_s100.txt
and
A_bc_s001.txt, A_bc_s002.txt,...., A_bc_s100.txt .
I have created one loop in order to read the first "team" of my data files and one loop in order to read the second "team" of my data files.
S = dir('A_ac*.txt');
for k = 1:numel(S)
S(k).name
end
S = dir('A_bb*.txt');
for k = 1:numel(S)
S(k).name
end
I would like to create a subplot which will create 2 plots for the first two files of each team with the command subplot(1,2,1) and subplot(1,2,2). But it doesn't work , because the result are two figures. Also I would like the title to be changing for every figure plot( I mean following the loop of my data).
Could anyone help me?
  6 个评论
Ivan Mich
Ivan Mich 2019-9-27
Excuse me but i dont understand the hFig you use in the command.
Adam
Adam 2019-9-28
It's just a variable name I usually use for a figure handle returned when you create a figure.

请先登录,再进行评论。

回答(2 个)

Constantino Carlos Reyes-Aldasoro
Perhaps it is not working because other problems:
subtitle('%%%%%%%'N1')
The title of a subplot is still title and the argument should be a string, if N1 is a number this would go like this
title(strcat('%%%%%%%',num2str(N1)))
  1 个评论
Ivan Mich
Ivan Mich 2019-9-27
I want the title of the first plot to be "Number 001" for example. The number of the second plot to be "Number 002". Imean i would like the title to be change according to the loop

请先登录,再进行评论。


Constantino Carlos Reyes-Aldasoro
Ok in that case you will have something like
>> for k=1:9
name = strcat('Number_00',num2str(k))
end
name =
'Number_001'
name =
'Number_002'
name =
'Number_003'
name =
'Number_004'
name =
'Number_005'
name =
'Number_006'
name =
'Number_007'
name =
'Number_008'
name =
'Number_009'
That of course will only work up to 9, but you can use an "if" to have a different line if k>9.
  1 个评论
Adam
Adam 2019-9-28
If you are in a recent enough version of Matlab that has strings then
"Number_00" + ( 1:9 )
should work too.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Line Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by