查看: 93|回复: 10|关注: 0

[已解决] 如何画出每次循环产生的图以及将每次循环产生的面积保存在一个矩阵里?

[复制链接]

新手

8 麦片

财富积分


050


2

主题

10

帖子

0

最佳答案
大家好,我有多个TXT文件,需要将每一个TXT文件都处理一下然后画出每次循环的图,并且我也需要将每一次循环产生的波峰1和2的面积都储存在一个矩阵里面。但是我发现我最后得到的结果只是最后一次循环的,前面的循环产生的数据都不见了,请大家多多帮忙一下。谢谢了!文件在附件中。

Deconvolution.zip

21.05 KB, 下载次数: 3

Decon

MATLAB 基础讨论
版块优秀回答者

入门

224 麦片

财富积分


50500


20

主题

410

帖子

31

最佳答案
  • 关注者: 2
发表于 前天 16:07 | 显示全部楼层
你把plot 放在循环中,同时把面积设置为这样的行驶,roiarea(i) = area,这样就可得到了、

新手

8 麦片

财富积分


050


2

主题

10

帖子

0

最佳答案
 楼主| 发表于 昨天 01:35 | 显示全部楼层
onlye_caisA 发表于 2020-3-26 16:07
你把plot 放在循环中,同时把面积设置为这样的行驶,roiarea(i) = area,这样就可得到了、 ...

您好,感谢您的回复。是这样子的,我需要将每一个TXT文件的图都画出来,但是这个函数只画出了第一个TXT文件,剩下的TXT文件没有画出来。我在这个DCexample.m里面写了一个循环,不管用,好像需要改动一下plotter.m函数。

另外我希望能够将每一个TXT文件产生的TXT文件都存储在一个矩阵里面,但是这个只是存储最后一个,你可以看看文件DCexample.m的58到62行,还有fit.m文件的138到169行。

麻烦您了!

MATLAB 基础讨论
版块优秀回答者

入门

224 麦片

财富积分


50500


20

主题

410

帖子

31

最佳答案
  • 关注者: 2
发表于 昨天 01:57 | 显示全部楼层
timohuu 发表于 2020-3-27 01:35
您好,感谢您的回复。是这样子的,我需要将每一个TXT文件的图都画出来,但是这个函数只画出了第一个TXT文 ...

你函数这么多,很闹心的。找到为何一个图了。

MATLAB 基础讨论
版块优秀回答者

入门

224 麦片

财富积分


50500


20

主题

410

帖子

31

最佳答案
  • 关注者: 2
发表于 昨天 01:58 | 显示全部楼层
timohuu 发表于 2020-3-27 01:35
您好,感谢您的回复。是这样子的,我需要将每一个TXT文件的图都画出来,但是这个函数只画出了第一个TXT文 ...

另外我希望能够将每一个TXT文件产生的TXT文件都存储在一个矩阵里面,但是这个只是存储最后一个,你可以看看文件DCexample.m的58到62行,还有fit.m文件的138到169行。
??
你打算怎么存法?

新手

8 麦片

财富积分


050


2

主题

10

帖子

0

最佳答案
 楼主| 发表于 昨天 02:16 | 显示全部楼层
onlye_caisA 发表于 2020-3-27 01:58
另外我希望能够将每一个TXT文件产生的TXT文件都存储在一个矩阵里面,但是这个只是存储最后一个,你可以看 ...

您好,这个函数是有点多,你可以不用太关注其他的函数,你可以看看fitV.m这个文件。这里面有五个TXT文件,我希望每次循环产生的area,就是这个AA都保存在一个矩阵里面。但是你在matlab的workspace会发现这个AA里面只有最后一个TXT文件所产生的area。

MATLAB 基础讨论
版块优秀回答者

入门

224 麦片

财富积分


50500


20

主题

410

帖子

31

最佳答案
  • 关注者: 2
发表于 昨天 02:17 | 显示全部楼层
看你的脚本真累,太多了。现在没有问题了。(1)你很多脚本中,都有closeall,而且main程序中,缺少一个figure
(2)合并后的数据文件为:combinetxtdata 在主程序最后面

Deconvolution2.zip

23.46 KB, 下载次数: 3

MATLAB 基础讨论
版块优秀回答者

入门

224 麦片

财富积分


50500


20

主题

410

帖子

31

最佳答案
  • 关注者: 2
发表于 昨天 02:22 | 显示全部楼层 |此回复为最佳答案
timohuu 发表于 2020-3-27 02:16
您好,这个函数是有点多,你可以不用太关注其他的函数,你可以看看fitV.m这个文件。这里面有五个TXT文件 ...

你在主程序中,把循环改为下面就可以了,AAarea就是5个的area大小

for i=1:dsn
        figure;
    filename = M((1+row*(i-1)):(row*i),:);
    txtdata{i} = filename;
[ parameters,lb,ub,conf,graphdata,resnorm,residual,r2,AA ] = DC( filename , 'range' , range , 'np' , np , bg , 'IG' , IG , 'mode' , mode);
AAarea(i) =AA;
end

新手

8 麦片

财富积分


050


2

主题

10

帖子

0

最佳答案
 楼主| 发表于 昨天 02:30 | 显示全部楼层
onlye_caisA 发表于 2020-3-27 02:22
你在主程序中,把循环改为下面就可以了,AAarea就是5个的area大小

for i=1:dsn

太感谢您了!谢谢。

MATLAB 基础讨论
版块优秀回答者

入门

224 麦片

财富积分


50500


20

主题

410

帖子

31

最佳答案
  • 关注者: 2
发表于 昨天 02:31 | 显示全部楼层
timohuu 发表于 2020-3-27 02:30
太感谢您了!谢谢。

给个最佳答案,毕竟忙到这么晚,更重要的是把你问题解决了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表