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 连接 MySQL 的几种方式详解

用 Python 连接 MySQL 的几种方式详解

尽管很多 NoSQL 数据库近几年大放异彩,但是像 MySQL 这样的关系型数据库依然是互联网的主流数据库之一,每个学 Python 的都有必要学好一门数据库,不管你是做数据分析,还是网...

python实现一组典型数据格式转换

python实现一组典型数据格式转换

本文实例为大家分享了一组典型数据格式转换的python实现代码,供大家参考,具体内容如下 有一组源数据,第一行会是个日期数据,第二行标明字段,再接下来是两行数据行。 1018 14:3...

Python基础篇之初识Python必看攻略

Python基础篇之初识Python必看攻略

Python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序...

python队列通信:rabbitMQ的使用(实例讲解)

python队列通信:rabbitMQ的使用(实例讲解)

(一)、前言 为什么引入消息队列? 1.程序解耦 2.提升性能 3.降低多业务逻辑复杂度 (二)、python操作rabbit mq rabbitmq配置安装基本使用参见上节文章,不再复...

在Python中给Nan值更改为0的方法

如下所示: import pandas as pd df1 = pd.DataFrame([{'col1':'a', 'col2':1}, {'col1':'b', 'col2':2...