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

yipeiwu_com5年前Python基础

本文实例为大家分享了python可视化动态CPU性能监控的具体代码,供大家参考,具体内容如下

打算开发web性能监控,以后会去学js,现在用matp来补救下,在官网有此类模板,花了一点时间修改了下,有兴趣的可以去官网看看。

基于matplotoilb和psutil,matplotoilb是有名的数据数据可视化工具,psutil是性能监控工具,所以你需要这两个环境,本文不多说环境的安装。

以下是代码:

#!/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()

下面是效果图,还有很多地方不完善,以后会花点时间完成。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python @classmethod 的使用场合详解

官方的说法: classmethod(function) 中文说明: classmethod是用来指定一个类的方法为类方法,没有此参数指定的类的方法为实例方法,使用方法如下:...

基于Python实现扑克牌面试题

这篇文章主要介绍了基于Python实现扑克牌面试题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 据说是腾讯的面试题,以下是要求: 一...

Python函数和模块的使用总结

函数和模块的使用 在讲解本章节的内容之前,我们先来研究一道数学题,请说出下面的方程有多少组正整数解。 $$x_1 + x_2 + x_3 + x_4 = 8$$ 事实上,上面的问题等同...

Python探索之URL Dispatcher实例详解

URL dispatcher简单点理解就是根据URL,将请求分发到相应的方法中去处理,它是对URL和View的一个映射,它的实现其实也很简单,就是一个正则匹配的过程,事先定义好正则表达式...

python获取文件真实链接的方法,针对于302返回码

使用模块requests 方式代码如下: import requests url_string="https://******" r = requests.head(url_st...