python数据处理_读取txt数据并绘图

该博客展示了如何使用Python中的`matplotlib.pyplot`、`scipy.interpolate`和`numpy`模块进行数据处理。首先导入相关模块,然后读取目标文件中的数据。接着对数据进行spline插值拟合,并生成等间距的插值点。最后,绘制原始数据与插值后的数据曲线,用于可视化分析。博客还提供了线条样式和颜色的参数说明。
摘要由CSDN通过智能技术生成

1、导入相关模块

import matplotlib.pyplot as plt  #绘图模块
from scipy import interpolate  #插值模块
import numpy as np  #数值计算模块

2、目标文件的定义与读取

file = 'F:\XZ_DL\GLS.txt' #以高岭石波谱曲线为例
a = np.loadtxt(file)
x = a[:,0]  #读取第一列所有数据
y = a[:,1]  #读取第二列所有数据

3、函数拟合与插值

tck = interpolate.splrep(x,y)  #拟合y与x
xx = np.linspace(min(x),max(x),200)  #x插值
yy = interpolate.splev(xx,tck,der=0)
print(xx)

输出结果为:
[0.400279   0.41322232 0.42616564 0.43910896 0.45205229 0.46499561
 0.47793893 0.49088225 0.50382557 0.51676889 0.52971222 0.54265554
 0.55559886 0.56854218 0.5814855  0.59442882 0.60737215 0.62031547
 0.63325879 0.64620211 0.65914543 0.67208875 0.68503208 0.6979754
 0.71091872 0.72386204 0.73680536 0.74974868 0.76269201 0.77563533
 0.78857865 0.80152197 0.81446529 0.82740861 0.84035193 0.85329526
 0.86623858 0.8791819  0.89212522 0.90506854 0.91801186 0.93095519
 0.94389851 0.95684183 0.96978515 0.98272847 0.99567179 1.00861512
 1.02155844 1.03450176 1.04744508 1.0603884  1.07333172 1.08627505
 1.09921837 1.11216169 1.12510501 1.13804833 1.15099165 1.16393497
 1.1768783  1.18982162 1.20276494 1.21570826 1.22865158 1.2415949
 1.25453823 1.26748155 1.28042487 1.29336819 1.30631151 1.31925483
 1.33219816 1.34514148 1.3580848  1.37102812 1.38397144 1.39691476
 1.40985809 1.42280141 1.43574473 1.44868805 1.46163137 1.47457469
 1.48751802 1.50046134 1.51340466 1.52634798 1.5392913  1.55223462
 1.56517794 1.57812127 1.59106459 1.60400791 1.61695123 1.62989455
 1.64283787 1.6557812  1.66872452 1.68166784 1.69461116 1.70755448
 1.7204978  1.73344113 1.74638445 1.75932777 1.77227109 1.78521441
 1.79815773 1.81110106 1.82404438 1.8369877  1.84993102 1.86287434
 1.87581766 1.88876098 1.90170431 1.91464763 1.92759095 1.94053427
 1.95347759 1.96642091 1.97936424 1.99230756 2.00525088 2.0181942
 2.03113752 2.04408084 2.05702417 2.06996749 2.08291081 2.09585413
 2.10879745 2.12174077 2.1346841  2.14762742 2.16057074 2.17351406
 2.18645738 2.1994007  2.21234403 2.22528735 2.23823067 2.25117399
 2.26411731 2.27706063 2.29000395 2.30294728 2.3158906  2.32883392
 2.34177724 2.35472056 2.36766388 2.38060721 2.39355053 2.40649385
 2.41943717 2.43238049 2.44532381 2.45826714 2.47121046 2.48415378
 2.4970971  2.51004042 2.52298374 2.53592707 2.54887039 2.56181371
 2.57475703 2.58770035 2.60064367 2.61358699 2.62653032 2.63947364
 2.65241696 2.66536028 2.6783036  2.69124692 2.70419025 2.71713357
 2.73007689 2.74302021 2.75596353 2.76890685 2.78185018 2.7947935
 2.80773682 2.82068014 2.83362346 2.84656678 2.85951011 2.87245343
 2.88539675 2.89834007 2.91128339 2.92422671 2.93717004 2.95011336
 2.96305668 2.976     ]

4、绘图与显示

plt.plot(x,y,'-',xx,yy,color='red')     #定义样式
plt.xlabel('Wavelength(μm)')  #横坐标含义
plt.ylabel('Data Value')  #纵坐标含义
plt.title('Kaolinite')```#图名(若附中文名称需导入并定义中文模块matplotlib.font_manager)

结果显示:
高岭石
常用线条样式及颜色对应参数可参考博客:https://blog.csdn.net/qq_45398466/article/details/109278791

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值