top命令输出到文件后,用%CPU,%MEM绘图
时间: 2023-10-22 12:09:24 浏览: 154
CPU-MEM-monitor:一个简单的脚本,用于记录一段时间内Linux CPU和内存使用情况(使用top或pidstat命令),并输出Excel或OpenOfficeCalc友好的报告
可以使用Python中的matplotlib库来绘制top命令输出文件中的%CPU和%MEM的图形。
首先,我们需要读取top命令输出的文件,并将其转换为数据集。代码如下:
```python
import matplotlib.pyplot as plt
# 读取top命令输出文件
with open('top_output.txt', 'r') as f:
lines = f.readlines()
# 获取%CPU和%MEM数据
cpu_data = []
mem_data = []
for line in lines[7:]:
cols = line.split()
cpu_data.append(float(cols[8]))
mem_data.append(float(cols[9]))
```
接下来,我们可以使用matplotlib库来绘制%CPU和%MEM的图形。代码如下:
```python
# 绘制%CPU图形
plt.plot(cpu_data)
plt.xlabel('Time (s)')
plt.ylabel('%CPU')
plt.title('CPU Usage')
plt.show()
# 绘制%MEM图形
plt.plot(mem_data)
plt.xlabel('Time (s)')
plt.ylabel('%MEM')
plt.title('Memory Usage')
plt.show()
```
运行上述代码,将会绘制出%CPU和%MEM的图形。如果需要保存图形到文件中,可以使用`savefig`函数,例如:
```python
# 保存%CPU图形到文件
plt.plot(cpu_data)
plt.xlabel('Time (s)')
plt.ylabel('%CPU')
plt.title('CPU Usage')
plt.savefig('cpu_usage.png')
# 保存%MEM图形到文件
plt.plot(mem_data)
plt.xlabel('Time (s)')
plt.ylabel('%MEM')
plt.title('Memory Usage')
plt.savefig('mem_usage.png')
```
阅读全文