图中每列的山峰一个csv然后用曲线。

9的观点(30天)
我在处理一些数据从一个示波器。csv的列代表信号的振幅。我希望看到的画面。我想找到每个信号的峰值,然后画出山峰的函数τ(ms)从0.1和。我还想一条曲线适合每一行后,指数函数y = * e (- x / T1) + c,一个是一个常数(2)发现和T1的曲线。找到T1是策划的最终目标信号。我已经尝试了几种不同的方法:这是我的最新尝试,它没有给我接近我希望:
文件名=' D: \研究生实验室\ NMR \ \ T1数据\ compiledT1nolabel.csv”;
data = readtable(文件名);
日元= table2array(数据(:1));
y2 = table2array(数据(:,2));
y3 = table2array(数据(:,3));
y4 = table2array(数据(:,4));
日元= table2array(数据(:,5));
日元= table2array(数据(:,6));
日元= table2array(数据(:,7));
Fs = 2平台以及;
T = 1 / f;
L = 2500;
t = t (0: l - 1) *;
Fn = f / 2;
Fy1 = fft (y1) / L;
阵线= linspace(0, 1,修复(L / 2) + 1) * Fn;
4 = 1:长度(艘);
图(1)
情节(阵线、abs (Fy1 (Iv)) * 2)
网格
标题(“傅里叶Transfrom矿物油原始信号”)
包含(的频率(赫兹))
ylabel (“振幅”)
Fy1dcoc = fft (y1-mean (y1)) / L;
图(2)
情节(阵线、abs (Fy1dcoc (Iv)) * 2)
网格
标题(直流偏移校正信号的傅里叶变换)
包含(的频率(赫兹))
ylabel (“振幅”)
[Fy1n_max, Iv_max] = max (abs (Fy1dcoc (Iv)) * 2);
Wp = 2 *阵线(Iv_max) / Fn;
Ws = Wp * 2;
Rp = 10
Rs = 30;
[n, n] = buttord (Wp、Ws Rp, Rs);
[b] =黄油(n, Wn);
(SOS, G) = tf2sos (b);
S = filtfilt (SOS, G, y1);
图(4)
情节(t, y1)
持有
情节(t, S,“- r”,“线宽”,1.5)
持有
网格
传奇(矿物油的,“年代”,“位置”,“N”)
标题(原始信号的矿物油和未堕落的信号(年代))
包含(“τ(ms)”)
ylabel (“振幅”)
我感谢任何帮助!

接受的答案

明星黾
明星黾 2022年11月3日
没有明显的峰值在时域信号。
做Foureir变换和谱峰很容易找到,但是我不知道如何做形象的情节,因为我不知道如何计算任何变量,它描绘了。独立变量似乎是时间。
如果你的目的是进行时频分析,这将是最好的使用 pspectrum 函数与 的谱图 选择,而不是 fft
数据= readtable (“//www.tianjin-qmedu.com/matlabcentral/answers/uploaded_files/1178628/compiledT1.csv”,“VariableNamingRule”,“保存”)
data =2500×7表
矿物油 甘油 CuSO4 0.625% CuSO4 1.25% CuSO4 2.5% CuSO4 5% CuSO4 10% ___________ ________ _______ ___________ __________ ________ _____-0.002 -0.089 0.0032 -0.0136 -0.0036 -0.0036 -0.0118 -0.00196 -0.0889 0.00324 -0.01356 -0.00358 -0.00358 -0.01178 -0.00192 -0.0888 0.00328 -0.01352 -0.00356 -0.00356 -0.01176 -0.00188 -0.0887 0.00332 -0.01348 -0.00354 -0.00354 -0.01174 -0.00184 -0.0886 0.00336 -0.01344 -0.00352 -0.00352 -0.01172 -0.0018 -0.0885 0.0034 -0.0134 -0.0035 -0.0035 -0.0117 -0.00176 -0.0884 0.00344 -0.01336 -0.00348 -0.00348 -0.01168 -0.00172 -0.0883 0.00348 -0.01332 -0.00346 -0.00346 -0.01166 -0.00168 -0.0882 0.00352 -0.01328 -0.00344 -0.00344 -0.01164 -0.00164 -0.0881 0.00356 -0.01324 -0.00342 -0.00342 -0.01162 -0.0016 -0.088 0.0036 -0.0132 -0.0034 -0.0034 -0.0116 -0.00156 -0.0879 0.00364 -0.01316 -0.00338 -0.00338 -0.01158 -0.00152 -0.0878 0.00368 -0.01312 -0.00336 -0.00336 -0.01156 -0.00148 -0.0877 0.00372 -0.01308 -0.00334 -0.00334 -0.01154 -0.00144 -0.0876 0.00376 -0.01304 -0.00332 -0.00332 -0.01152 -0.0014 -0.0875 0.0038 -0.013 -0.0033 -0.0033 -0.0115
VN = data.Properties.VariableNames;
Fs = 2平台以及;
T = 1 / f;
L = 2500;
t = t (0: l - 1) *;
Fn = f / 2;
y = table2array(数据)
y = 2500×7
-0.0020 -0.0890 0.0032 -0.0136 -0.0036 -0.0036 -0.0118 -0.0020 -0.0889 0.0032 -0.0136 -0.0036 -0.0036 -0.0118 -0.0019 -0.0888 0.0033 -0.0135 -0.0036 -0.0036 -0.0118 -0.0019 -0.0887 0.0033 -0.0135 -0.0035 -0.0035 -0.0117 -0.0018 -0.0886 0.0034 -0.0134 -0.0035 -0.0035 -0.0117 -0.0018 -0.0885 0.0034 -0.0134 -0.0035 -0.0035 -0.0117 -0.0018 -0.0884 0.0034 -0.0134 -0.0035 -0.0035 -0.0117 -0.0017 -0.0883 0.0035 -0.0133 -0.0035 -0.0035 -0.0117 -0.0017 -0.0882 0.0035 -0.0133 -0.0034 -0.0034 -0.0116 -0.0016 -0.0881 0.0036 -0.0132 -0.0034 -0.0034 -0.0116
情节(t, y)
网格
包含(“时间”)
ylabel (“振幅”)
传奇(VN“位置”,“最佳”)
ydt1 =去趋势(y (: 1), 1);
情节(t, ydt1)
网格
包含(“时间”)
ylabel (“振幅”)
标题(VN {1})
[p f t] = pspectrum (ydt1 Fs,的谱图);
瀑布(f, t, p ')
包含(的频率(赫兹))
ylabel (的时间(秒))
甘氨胆酸wtf =;
wtf。XDir =“反向”;
colormap(涡轮)
视图(45 [30])
NFFT = 2 ^ nextpow2 (L);
ym = y -意味着(y);
FTy = fft (ym NFFT) / L;
阵线= linspace (0, 1, NFFT / 2 + 1) * Fn;
4 = 1:元素个数(艘);
情节(阵线、abs (FTy(四世:))* 2)
网格
包含(“频率”)
ylabel (“级”)
传奇(VN“位置”,“最佳”)
xlim (5 e-12 [0])
[pks1, locs1] = findpeaks (abs (FTy (Iv, 1)) * 2);
情节(阵线、abs (FTy (Iv, 1)) * 2,“DisplayName的”,“数据”)
持有
情节(pks1阵线(locs1),“^ r”,“DisplayName的”,“高峰”)
持有
网格
包含(“频率”)
ylabel (“级”)
标题(VN {1})
传奇()
%的传说(VN{1},“位置”,“最好”)
xlim (5 e-12 [0])
9日评论
明星黾
明星黾 2022年11月4日
我的荣幸!
我也不理解x轴上的时间值图在你最后的评论。在我的代码,我分配每个峰值x系列0.1毫秒值。这可能不是正确的,但是这就是我解释的 所以对于每个峰值是一个τ(0.1。) 虽然它对我来说没有意义。

登录置评。

更多的答案(2)

图像分析
图像分析 2022年11月3日
请看附呈的演示。这将是你容易适应您的数据。只是替换演示数据和实际的数据。
6个评论
图像分析
图像分析 2022年11月6日
工作簿中有7列。不同的列代表什么?哪个列的x值和y值(s) / ?列是什么你想符合指数吗?
你已经接受了 @Star黾 的回答已经所以你仍然有困难做适合吗?

登录置评。


亚历克斯
亚历克斯 2022年11月4日
抱歉的混乱(如果是任何安慰通过这个实验我了解更多。)的信号“附图”(不是图)这是一个信号从一个示波器。我画的箭头指示“峰1”,“峰2”和“3峰值”(第一夫妇山峰前标记峰1是噪音,可以删除。)我们完成主题磁场通过发射脉冲峰值(1)然后我们翻转一次与第二个脉冲场(τ= 0.2 ms)(2)峰值,那么有一个回声(3)峰值τ= 0.4(下一个回声将在0.8毫秒,等等。)我腐烂的回波的峰值后,我画箭头的多数(他们遵循一个下降的趋势。这种趋势将使我们能够找到T1的弛豫时间当字段返回到正常的轴。
方程是不同的在每一个不同的纸我读过,然而, y = a - b * exp(τ/ T1) 使用最多。在显示回波衰减的τ增加。字段应该水平所以我真的只需要画τ100 ms(或短如果水平。)
我希望这有助于澄清一点事情!
3评论

登录置评。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!