python文本文件中画多个图的问题请教
我有个文本内容,里面是多个主机的ping的按分钟的结果,我的诉求是把多个主机ping的结果画在同一张折线图上。
每台主机的ping的结果格式如下:
第一行是ip,以及可以ping通的标识,可以不要;
第二行是主机名;
后面是ping的结果
文本内容如下:
192.168.0.1 | success | rc=0 >>
MY_HOST_001
4,2020-11-04 00:02
10,2020-11-04 00:56
10 ,2020-11-04 00:58
40 ,2020-11-04 01:00
32 ,2020-11-04 01:02
250, 2020-11-04 01:06
2 ,2020-11-04 02:29
2, 2020-11-04 02:41
2, 2020-11-04 05:25
2 ,2020-11-04 07:43
8, 2020-11-04 08:06
2, 2020-11-04 09:10
2 ,2020-11-04 09:11
2 ,2020-11-04 10:21
2, 2020-11-04 10:24
2, 2020-11-04 10:48
2 ,2020-11-04 13:42
2 ,2020-11-04 13:55
4, 2020-11-04 14:32
192.168.0.2 | success | rc=0 >>
MY_HOST_002
2, 2020-11-04 00:29
4 ,2020-11-04 00:56
8, 2020-11-04 01:00
24 ,2020-11-04 01:02
210 ,2020-11-04 01:06
4, 2020-11-04 03:22
2 ,2020-11-04 04:19
4 ,2020-11-04 06:14
10, 2020-11-04 06:52
8 ,2020-11-04 06:53
2 ,2020-11-04 07:19
2 ,2020-11-04 09:09
2, 2020-11-04 10:18
2, 2020-11-04 12:17
6 ,2020-11-04 13:02
6, 2020-11-04 14:16
目前一台主机的ping的结果图画脚本如下:
import matplotlib.pyplot as plt
file = open('ping.txt') #打开文档
data = file.readlines() #读取文档数据
para_1 = [] #新建列表,用于保存第一列数据
para_2 = [] #新建列表,用于保存第二列数据
for num in data:
# split用于将每一行数据用逗号分割成多个对象
#取分割后的第2列添加到para_1列表中
para_1.append(num.split(',')[1])
#取分割后的第0列,转换成float格式后添加到para_1列表中
para_2.append(float(num.split(',')[0]))
plt.figure()
plt.title('ping')
plt.plot(para_1, para_2)
plt.show()
请问脚本如何修改?请指点,多谢!