基于MATLAB进行荧光光谱数据处理包括三维荧光光谱图、等高线图、激发光谱图、发射光谱图

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信       无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机 

⛄ 内容介绍

随着分析测量技术的发展,三维(Three-dimensional,3D)图谱的获取变得越来越容易.与传统的二维图谱相比,三维图谱由于增加了一个测定的维度,因而包含了更加丰富的待测物质的信息.因此,从理论上来说,基于三维指纹图谱对复杂体系的多个目标组分进行分析时能够获得更加准确,可靠的结果.三维荧光图谱(fluorescence3D spectrum,或excitation emission matrix,EEM)一般是由一系列不同激发波长下所获得发射光谱(或不同发射波长下的激发光谱)所组成的,与传统的二维(two-dimension,2D)荧光光谱相比,能够给出待测体系在待测波长范围内更加全面的荧光特性信息.

⛄ 代码

clear;clc;

EX=230:5:400;        %35个

EM=250:1:500;        %251个

[M,N]=meshgrid(EX,EM);

fid=fopen('chy3.txt');

A=textscan(fid,'%f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f','headerlines',9); %将其前9行内容去除

fclose(fid);

for i=2:36                        %将存在细胞矩阵A中的数据存到矩阵C中

    C(:,i-1)=A{i};

end

C(isnan(C)) = 0;                  %NAN无数据处等于0

figure('color','white');

subplot(2,2,1);

surf(M,N,C);

xlabel( '\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5,'Rotation',18);

ylabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5,'Rotation',-15);

zlabel('\fontname{宋体}相对荧光强度\fontname{Times New Roman}(a.u.)','FontSize',10.5);

title('初始三维荧光光谱图');

grid on;

shading interp;                   %平滑效果

subplot(2,2,2);                   %画等高线图

contour(M,N,C,20);

xlabel( '\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

title('初始等高线图');

grid on;

subplot(2,2,3);

plot(EX,C);                       %画出激发波长与荧光强度关系

grid on;

xlabel('\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}相对荧光强度\fontname{Times New Roman}(a.u.)','FontSize',10.5);

title('初始激发光谱图');

subplot(2,2,4);

plot(EM,C);                       %画发射波长与荧光强度关系

grid on

xlabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}相对荧光强度\fontname{Times New Roman}(a.u.)','FontSize',10.5);

title('初始发射光谱图');

%消除拉曼散射

fid=fopen('chy1.txt');

B=textscan(fid,'%f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f','headerlines',9); %将其前9行内容去除

fclose(fid);

for i=2:36                        %将存在细胞矩阵A中的数据存到矩阵C中

    D(:,i-1)=B{i};

end

D(isnan(D)) = 0;                  %NAN无数据处等于0

figure('color','white');

subplot(1,2,1); 

surf(M,N,D);

xlabel( '\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5,'Rotation',18);

ylabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5,'Rotation',-15);

zlabel('\fontname{宋体}相对荧光强度\fontname{Times New Roman}(a.u.)','FontSize',10.5);

title('溶剂SDS的Raman散射光谱');

grid on;

shading interp;

subplot(1,2,2);                %画等高线图

contour(M,N,D,20);

xlabel( '\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

title('溶剂SDS的Raman散射等高线图');

grid on;

figure('color','white')

subplot(1,2,1);

contour(M,N,C,20);

xlabel( '\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

grid on;

title('未消除拉曼散射');

A1=C-D;

subplot(1,2,2);

contour(M,N,A1,20);

xlabel( '\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

grid on;

title('消除拉曼散射后');

%%提取发射波长、激发波长与荧光强度关系的数据

fid=fopen('chy2.txt');

B=textscan(fid,'%f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f %f','headerlines',9); %将其前9行内容去除

fclose(fid);

Ex1=E{2};

Ex1=Ex1(31:5:201,1);

fid=fopen('Emission Correction.txt');

F=textscan(fid,'%f %f','headerlines',1); %将其前9行内容去除

fclose(fid);

Em1=F{2};

Em1=Em1(51:1:301,1);

%%画发射波长、激发波长与荧光强度关系

figure('color','white')

subplot(2,1,1);

plot(EX,Ex1);                   %画发射波长与荧光强度关系

grid on

xlabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}相对荧光强度\fontname{Times New Roman}(a.u.)','FontSize',10.5);

grid on;

title('激发校正曲线');

subplot(2,1,2);

plot(EM,Em1);                   %画发射波长与荧光强度关系

grid on

xlabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}相对荧光强度\fontname{Times New Roman}(a.u.)','FontSize',10.5);

grid on;

title('发射校正曲线');

figure('color','white')

subplot(2,2,1);

contour(M,N,C,20);

xlabel( '\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

grid on;

title('未校正前');

Ex1=Ex1';

for i=1:251

    C1(i,:)=C(i,:)./Ex1;

end

subplot(2,2,2);

contour(M,N,C1,20);

xlabel( '\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

grid on;

title('激发校正后');

for i=1:35

    C2(:,i)=C(:,i)./Em1;

end

subplot(2,2,3);

contour(M,N,C2,20);

xlabel( '\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

grid on;

title('发射校正后');

for i=1:35

    C3(:,i)=C1(:,i)./Em1;

end

subplot(2,2,4);

contour(M,N,C3,20);

xlabel( '\fontname{宋体}激发波长\fontname{Times New Roman}(nm)','FontSize',10.5);

ylabel('\fontname{宋体}发射波长\fontname{Times New Roman}(nm)','FontSize',10.5);

grid on;

title('激发和发射校正后');

⛄ 运行结果

⛄ 参考文献

[1] 张晓丽. 基于同步荧光法对橙汁饮品品质的判别分析[D]. 山西大学, 2015.

[2] 杨琳. 城市污水生物脱氮过程的试验研究与荧光光谱解析[D]. 安徽建筑大学, 2014.

[3] 卢先勇、何文绚、陈昊聪、黄睿、张燕杰. 基于植物油三维荧光光谱的茶油鉴定模型[J]. 光谱学与光谱分析, 2020, 40(12):6.

[4] 陈婧. 基于三维荧光图谱分析的新方法研究[D]. 兰州大学, 2016.

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

matlab科研助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值