Python实现动态CPU性能监控可视化

清欢
清欢
发布时间:2026-10-11 | 3人浏览过
原创

本文介绍如何使用Python的matplotlib和psutil库实现动态CPU性能监控。通过编写自定义脚本,实时获取CPU使用率并绘制动态图表,帮助开发者直观掌握系统资源使用情况。

Python实现动态CPU性能监控

在系统运维和性能优化过程中,实时监控CPU使用率是一项基础且重要的任务。本文将介绍如何使用Python的matplotlib和psutil库实现动态CPU性能监控,通过绘制动态图表直观展示系统资源使用情况。

环境准备

在开始之前,请确保您的Python环境中已安装以下库:

  • matplotlib:用于绘制动态图表
  • psutil:用于获取系统CPU使用率

您可以使用以下命令安装所需库:

pip install matplotlib psutil

代码实现

以下是实现动态CPU监控的Python代码:

#!/usr/bin/env python 
#-*-coding:utf-8 -*-
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import psutil
def data_gen(t=0): #设置xy变量
 x = 0  
 y = 1
 while True:
 y = psutil.cpu_percent(interval=1) #获取cpu数值,1s获取一次。
 x += 1 
 yield x,y    
def init():
 ax.set_xlim(0, 10)   #起始x 1-10
 ax.set_ylim(0, 100)   #设置y相当于0%-100%
 del xdata[:]
 del ydata[:]
 line.set_data(xdata, ydata)
 return line,

fig, ax = plt.subplots()
line, = ax.plot([], [], lw=2)  #线像素比
ax.grid()
xdata, ydata = [], []


def run(data):
 # update the data
 t, y = data
 xdata.append(t)
 ydata.append(y)
 xmin, xmax = ax.get_xlim()

 if t >= xmax:   #表格随数据移动
 ax.set_xlim(xmin+10, xmax+10)
 ax.figure.canvas.draw()
 line.set_data(xdata, ydata)

 return line,

ani = animation.FuncAnimation(fig, run, data_gen, blit=False, interval=10,
repeat=False, init_func=init)
plt.show()

代码解析

该脚本主要包含以下几个部分:

  1. 数据生成函数(data_gen):通过psutil.cpu_percent()获取CPU使用率,并返回x和y坐标值。
  2. 初始化函数(init):设置图表的初始显示范围,并清空数据列表。
  3. 更新函数(run):接收新数据并更新图表显示,当x轴数据超出当前显示范围时,自动调整显示区间。
  4. 动画设置:使用FuncAnimation创建动态图表,设置刷新频率和初始函数。

运行与验证

运行脚本后,您将看到一个动态更新的CPU使用率图表。该图表每秒更新一次,直观展示系统CPU使用情况。您可以通过调整代码中的参数(如刷新频率、显示范围等)来满足不同的监控需求。

注意事项

  • 确保系统已安装matplotlib和psutil库。
  • 根据实际需求调整图表显示范围和刷新频率。
  • 该脚本适用于Linux和Windows系统,但在不同操作系统下可能需要微调代码。

以上就是Python实现动态CPU性能监控可视化的详细内容,更多关于Python性能优化和部署运维的资料请关注本站其它相关文章!

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表