查看原文
其他

Origin绘图:两步搞定曲线的微分

谭编 编辑之谭 2021-12-24


前段时间,『编辑之谭』针对电池的充放电曲线求解微分电容曲线提出了几种微分求导的方法,武大博士专门利用Matlab编程验证了这些微分求导方法。这一些列文章

Origin+...神操作:从充放电曲线绘制微分电容曲线

Matlab:一劳永逸搞定微分电容

从原理上对曲线的微分进行了详细的分析和讨论。

我们只是为了科学绘图,有没有必要这么折腾?能不能只用Origin绘图软件实现曲线的微分?

谭编的回答是:能!

今天,谭编给大家演示一下,只利用Orign软件,两步法搞定曲线的微分。


1
数据的插值精简


我们从仪器测试得到的充放电数据文件中,按照充电、放电数据单独复制并粘贴为两列数据,那么我们得到4列数据(图1),点击第3列顶部标题可以全选这一列,然后右键set as(设置为)→X,此时第3、4列自动变为X2、Y2。


图1  充电、放电数据单独处理


对数据进行插值精简,目的是去除重复数据

在充电(或放电)的两列数据顶部,点击X列标题并向右移动鼠标选中XY两列数据,然后点击菜单

Analysis(分析)→

Mathematics(数学)→

Interpolate/Extrapolate(内插/外推)→

OpenDialog…→OK

图2  数据的均一化处理


在Origin8中Number of Points点数:数据行数的1/5最佳。在Origin2018中,选择自动(本文的曲线数据,自动匹配为1000个点,最终生成的总数据量为1000行),只需要点击OK按钮即可。

图3  点数的设置(默认自动)


大家可能要疑问了,在微分之前,对数据进行差值/外推有什么作用?会不会破坏原始数据?谭编对处理前后数据绘图做了对比,发现完全重合,为了方便对比,谭编将其中一条曲线在垂直方向上平移处理,错开一点,对比一下两者的区别,发现利用插值/外推方法对数据进行均一化之后,数据由1681行数据精简为1000行,绘制的曲线两者相当吻合,如图4所示。

图4  数据内插处理前后的曲线对比


其实,Origin的Interpolate/Extrapolate(内插/外推)功能对数据进行了linear interpolation(线性插值),并进行了表内关联,即内插数据(虽然只有1000行)与相应X列数据(1681行)是绑定的(图5)。

图5  内插数据与X数据的关联

注意:如果我们单独将Origin内插数据及其XY数据复制成新数据表,绘制的曲线并不吻合,因为内插的1000行数据与1681行X数据就不关联了(如图6)。

图6  复制的内插数据绘图不吻合


经过上述分析,内插处理其实类似于去重(去除重复数据)。图7是上述充电初始阶段的数据。数据出现了很多个相同的电压数据,黄色部分是去重后的值,其微分为0(正常);红色部分为重复数据;其微分发生突变(异常,在绘图中表现为竖线、毛线);灰色部分是分母为0的逻辑错误!

图7  充放电数据的特征分析


取第一个充电平台2.5V附件的60行数据,进行去重,然后对去重前、后的数据以步长为1求ΔQ,最终求出微分数据(ΔQ/ΔV),分别对充放电数据、去重前后的微分数据作图进行比较,如图8所示。


图8  充电曲线及其去重前后的微分曲线  


可以看出,去重前的微分曲线缺失峰、噪声大、曲线乱、有断点(图8中蓝色曲线的断点来自除0逻辑错误);而去重后绘制的微分曲线相对平直,峰的起落干净利索。


2
数据的微分


在前面我们采用插值后得到了精简的数据(如前面的图5),首先点击E(Y#)列标题选中数据(插值后的数据),然后点击菜单

Analysis(分析)→

Mathematics(数学)→

Differentiate(微分)→

OpenDialog…→OK

具体步骤如图9所示。

图9  数据的微分


谭编为了对比研究前面第一个步骤中,设置不同点数比(插值点数÷数据量,下称“点比”)得到的精简数据的微分效果,考察“自动”(数据量1681行,自动生成1000点,点数比约60%)、1/5(点数为336点)、1/10(点数为168点)三种点比条件,得到对比图如图10所示。

图10  不同点数比插值精简所得数据的微分曲线


对比发现,在第一步插值操作中,选用1/10点比得到的微分曲线最平滑,但是主要峰(尖峰)大幅缩水;相比之下,1/5点比得到的微分曲线毛刺较大,主峰尖锐。


 总结|  利用Origin两步法计算曲线微分的方法:1/5数据点插值+微分!


但这还不够完美,请往下看!


完美方法:插值(自动)+微分平滑10点)


在前面我们讨论了点比,其实是数据的压缩比,当然数据的压缩比越大,插值精简后导致数据信息丢失的越严重,很多网友采用的1/5点比一般认为比较合适。


谭编建议采用Origin推荐的“自动”(前面图3)匹配的数据,这样保证数据信息不至于严重丢失,但是自动匹配插值精简数据直接微分得到的曲线毛刺很大(前面图10)。谭编在第二步微分时勾选平滑即可得到完美的微分曲线(图11)。

图11  自动插值精简数据的平滑微分曲线、1/5点比插值精简数据的微分曲线


具体怎么操作呢?


我们对充电(或放电)数据进行自动插值精简后,选中精简数据,点击菜单

Analysis(分析)→

Mathematics(数学)→

Differentiate(微分)→

OpenDialog…→

在打开的微分对话框中,勾选“平滑”,然后点击OK。具体设置如图12所示。

图12  平滑微分的设置


欢迎广大网友将你的科研实验或作图经验投稿到『编辑之谭』(稿酬从优)。例如以你的已发表论文中的插图为例,分享绘图技巧;或者将已发表的论文中具体的实验技巧分享出来。这样可以加快论文的传播,增加引用。


欢迎在本文末尾留言(留言将被精选后显示在文末),也欢迎在公众号里留言(不会显示在文末),谭编尽快回复,并在适当的时间将相关教程发布出来。


感谢网友留言建议将每次教程的相关数据文件分享一下,以方便大家自己跟着谭编的教程练习练习。这个建议非常好,可是怎么共享呢?要不这样吧,有需要的可以直接加谭编微信,谭编从微信传Origin源文件给你。

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存