光谱数据作图

发现光谱仪配套的软件在半高宽的计算上好像有些问题,试了试python能不能解决。

目录

1.光谱原图

2.光谱数据标准化

3.光谱标注峰值和半高宽

1.光谱原图

首先,导入光谱数据,做图;

import pandas as pd
import matplotlib.pyplot as plt


df1 = pd.read_excel('D:/desktop/data.xlsx')#读取.xlsx文件
data = df1.values #data为除了第一行以外的数据
print(data.shape) #查看data的size

WL = data[:,0]
Intensity = data[:,1]

font1 = {'family' : 'Times New Roman',
'weight' : 'normal',
'size'   : 16,
}
plt.figure(figsize=(5,5))
plt.title('guangputu',font1)
plt.xlabel('lambda/nm',font1)
plt.plot(WL,Intensity,'-*')
plt.legend(['intensity'])
pl
### 使用Matlab从Excel导入光谱数据并绘 为了实现这一目标,可以利用`xlsread`函数来读取存储于Excel中的光谱数据,并通过相应的绘命令展示这些数据。下面是一个具体的实例说明。 #### 导入光谱数据 假设有一个名为`spectra_data.xlsx`的Excel文件,其中包含了两列:一列为波长(Wavelength),另一列为对应的强度值(Intensity)。可以通过如下代码片段完成数据的加载: ```matlab % 定义要读取的工作表名以及范围;这里假定数据位于第一个工作表内,且无标题行 sheetName = 'Sheet1'; dataRange = 'A2:B100'; % 假设共有99组有效测量点 % 调用xlsread读取指定区域的数据到变量中 [data, text, raw] = xlsread('spectra_data.xlsx', sheetName, dataRange); % 将原始数据分离成两个向量分别表示波长和强度 wavelengths = data(:, 1); intensities = data(:, 2); ``` 上述过程会把Excel表格内的数值型数据存放在`data`数组里,而文本信息则保存至`text`元胞数组中[^2]。对于本案例而言,重点在于获取到了实际用于分析的`wavelengths`与`intensities`这两个核心向量。 #### 绘制光谱曲线 一旦拥有了所需的数据集之后,就可以调用MATLAB内置的各种绘功能来进行可视化呈现了。最简单的方式就是采用基本的线形表形式展现出来: ```matlab figure; hold on; plot(wavelengths, intensities, '-o'); title('Spectral Data Visualization'); xlabel('Wavelength (nm)'); ylabel('Intensity (a.u.)'); grid minor; legend({'Sample Spectrum'},'Location','bestoutside'); hold off; ``` 这段脚本创建了一个新的形窗口,在里面出了由离散采样点构成的一条连续曲线,同时还设置了坐标轴标签、网格样式以及其他辅助性的显示属性以便更好地理解像含义[^1]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值