如何从日志中获取摄像头每小时的电池容量并且可视化

一、前言
接到兄弟项目组测试人员的一个需求,大概是这样子的。一个满电量的摄像头,放置100个小时,获取每个小时的电池容量,并且绘图出来。话不多说,下面是解决步骤。

二、环境准备
1、摄像头的电池容量日志原文件(链接:https://pan.baidu.com/s/1Kf_pGHLP4k2LjaLcHELsRQ 提取码:v7hl)
2、shell
3、pycharm

三、日志原文件解析
摄像头的耗电量是大概每隔10s上报一次,如下如显示

四、具体步骤
1、先过滤出所有包含Cap的行内容,并且保存到mytest.txt文件中
grep 'Cap = ' test.txt | awk -F "," '{print$1}' | awk -F "=" '{print$2}' | awk -F "'" '{print$1}' >mytest.txt
mytest.txt下载地址链接:https://pan.baidu.com/s/1UsQGBAUculkDhEHq2HgRpQ 提取码:pur8

2、使用python处理mytest.txt文件,返回一个时间戳列表和电池耗电量列表,如下:
a、定义获取电磁容量的方法

b、定义获取时间的方法,精确到小时

c、使用for循环遍历,得到两个list

d、对两个list进行数据清洗,对应每个小时的电池容量只能有一个

最终的两个列表,作为matplotlib的主要入参

3、使用python的专业可视化库matplotlib对两个列表进行绘图,效果如下:
主要代码

运行脚本

可以很好的看出,X轴是时间点,并且每小时为单位,Y轴是摄像头电池容量
python脚本下载地址(链接:https://pan.baidu.com/s/1tV9samy9mfcEI6xIMXGkkQ 提取码:urm1 )

知道、想到、做到、得到
原文地址:https://www.cnblogs.com/Durant0420/p/14026694.html