对电化学极化曲线(LSV/Tafel)的数据进行自动化处理并可视化作图/画图(科研投稿)

本文介绍了一种使用Python自动化处理电化学极化曲线(LSV)数据的方法,通过读取txt文件,转换为excel,计算平均值,然后使用matplotlib进行数据可视化。该方法针对CHI-660E电化学工作站的数据,适用于科研中的数据处理和快速作图,提高了工作效率。
摘要由CSDN通过智能技术生成

写在前面

对于一个做防腐蚀涂层的化学材料人来说,
在做电化学实验的时候,我们会获得很多的极化曲线的数据(LSV测试),然后需要将这些LSV曲线的数据进行平均值处理,然后对电流的绝对值取以10为底的对数,然后使用origin作图。
在没有学习python用于办公自动化之前,都是采用漫长的复制黏贴,数据分列还有excel的多次函数才能实现,非常重复浪费时间,然后经过学习,我将这一个过程进行了自动化处理,使用glob对文件夹进行遍历,把数据整理好到excel的同时使用了matplotlib来进行数据可视化,做到了一键出图。
这个代码在Jupyter Notebook里面实现会比pycharm方便,因为只要在python3的文件的同个目录建立2个文件夹“Tafel”,丢进去即可,但是前提要先将每个电化学的tet数据进行统一的命名处理,类如Tafel-blank WEP-30day-4.txt((Tafel测试)(-)(样品名字)(-)(腐蚀时间)(-)(第几次数据)(.)(.)(txt))。
本文用的是CHI-660E电化学工作站得到的数据,如果不是,请研究一下如何用pandas.read_csv来读取你的测试的数据,并且将表头改为[‘0’, ‘1’, ‘2’],才可以套用这个代码。
Tafel平均数据

本文仅作为记录自己的学习代码后结合自己科研的分享,转载请说明出处,欢迎评论和讨论。

Tafel-汇总-平均-作图-1个表单

正文开始

把Tafel的txt文本转成excel来进行存储,表单名字为tafel的名字

#导入数据表,对数据包进行命名
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import xlwt
import glob
import xlrd
#关键参数
#存储文件夹为和本测试文件相同的,名叫TAFEL的文件夹
datadir= r".\TAFEL"
#*号为该文件夹下所有文件
datadir_all = r".\TAFEL\*.txt"
#excel的保存名字
save_to_excel_1 = r".\tafel数据汇总.xls"

#找到这个文件夹的所有txt文件
l1 = glob.glob(datadir_all)
# print(l1)

#将文件名进行必要的取舍
fname_list = []
for item in l1:
    fname_list.append(item.split('\\')[-1])
# print(fname_list)
characterizaitonlist =[] #测试手段,tafel
samplenamelist = []         #样品名字
immersionlist=[]        #浸泡时间
repeatlist=[]           #重复相同样品
for fnam in fname_list:
    cut_name = fnam.split('-')
    characterizaitonlist.append(cut_name[0])
    samplenamelist.append(cut_name[1])
    immersionlist.append(cut_name[2])
    repeatlist.append(cut_name[3].split('.')[0])
# print(samplenamelist)

#将txt的数据进行读取
h = 0
book = xlwt.Workbook(encoding="utf-8", style_compression=0)
for fname in fname_list:
    fnamepath = datadir + r'\{0}'.format(fname)  # 给文件增加路径
    f = pd.read_csv(fnamepath,header=13,sep='\t', names=['0', '1', '2'])
    # print(f)
    # 从第13行开始,16-3
    # Potential/V     Current/A   log(i/A)
    
### 回答1: 海德汉LSV2协议是一种数据通信协议,主要用于工业自动化领域的设备之间的通信。它是海德汉公司开发的第二代协议,与第一代协议相比,具有更高的速度和更广泛的应用范围。 该协议使用了面向对象、基于状态和事件驱动的方式,以实现可靠的数据传输和实时性要求。它支持点对点连接和多点连接,可以实现不同类型和厂家的设备之间的通信互联,从而提高设备之间的互操作性和工作效率。 此外,LSV2协议还支持在线诊断和远程诊断功能,方便用户进行设备状态的监测和故障的排除。它还可以自动进行设备寻址和命名,方便设备管理和操作。 总之,海德汉LSV2协议是一种高效、可靠、灵活的通信协议,能够满足工业自动化领域对设备之间通信的要求,有助于提高设备的工作效率和生产效率。 ### 回答2: 海德汉LSV2协议是一种基于TCP/IP协议的串行通信协议,主要用于工业自动化领域中的PLC(可编程逻辑控制器)与上位机之间的通信。该协议具有以下特点: 1. 高效性:LSV2协议使用TCP/IP协议进行通信,可以利用网络的高速传输特性实现高效数据传输,提高通信效率。 2. 可靠性:LSV2协议采用校验和等多种校验方式,可以保证数据传输的可靠性,避免数据丢失和错误。 3. 实时性:LSV2协议使用异步通信方式,可以实现即时响应,满足实时控制的需要。 4. 安全性:LSV2协议采用授权验证机制,只有经过认证的用户才能进行通信,保证数据的安全性。 5. 兼容性:LSV2协议与多种PLC品牌的通信进行了兼容性测试,可以实现不同品牌之间的通信互联。 总之,海德汉LSV2协议是一种高效、可靠、实时、安全、兼容的工业自动化通信协议,对于工业自动化领域的控制与监测有着重要的意义。 ### 回答3: 海德汉LSV2协议是由德国海德汉公司制定的一个物联网应用协议,是用于无线互联设备之间通信的协议。LSV2协议支持多种类型的通信,例如点对点通信、广播和组播通信等。它还支持不同类型的网络,包括无线局域网、蜂窝网络和卫星网络等。 LSV2协议的主要优势在于其高效性和可靠性。它采用先进的压缩技术,可以将数据包的大小最大程度地减小,从而降低了数据传输时的网络延迟。此外,LSV2协议还支持错误检测和恢复机制,从而保证了数据传输的可靠性和完整性。 除了高效可靠之外,LSV2协议还具有灵活性。它可以针对不同的应用场景定制,提供不同的通信需求和要求。例如,在一些要求较低的场合下,可以选择降低数据传输的速率和频率,从而节省电量和网络带宽。在一些要求较高的应用场景下,则可以提高数据传输的速度和频率,以保证数据传输的稳定性和准确性。 总之,LSV2协议是一种广泛应用于物联网领域的通信协议,它具有高效、可靠、灵活等优点,可以满足不同应用场景的需求。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值