import matplotlib.pyplot as plt
import psutil
import time # 第1步,导出通用字体设置
from matplotlib import font_manager
#第2步,定义字体,引出字体模块和位置
my_font = font_manager.FontProperties(fname="/usr/share/fonts/truetype/noto/simsun.ttf") plt.ion() #定义全局变量
cpu=[]
times=[]
mem=[] #注意是mem=memory=内存
io=[] #定义函数
def get_info():
cpu_per=psutil.cpu_percent()
mem=psutil.virtual_memory()
mem_used=mem.used
mem_total=mem.total
mem_used_per=(mem_used/mem_total*100)
io=psutil.disk_io_counters()
io_cnt=io.read_count+io.write_count return cpu_per,mem_used_per,io_cnt c=0 #设置一个变量
while c<61: #观测一定的数量,停止,可以自定义,原为while True就是死循环
t=time.strftime("%H:%M:%S",time.localtime())
cpu_per,mem_used_per,io_cnt=get_info()
times.append(t)
cpu.append(cpu_per)
mem.append(mem_used_per)
io.append(io_cnt) #第1张图:ax1
ax1=plt.subplot(221) #ax1这个图标的位置:分2行2列,第1行第1个
ax1.patch.set_facecolor('black')#设置ax区域背景颜色 
ax1.figure.set_facecolor('pink') #这里设置后,整个图,或之后弹出的图片的,背景颜色都是pink plt.plot(times,cpu,label='CPU',color='b')
#第3步:中文显示:加u和fontproperties=my_font
plt.ylabel(u'CPU 使用率 %',fontsize=8,fontproperties=my_font,color='red')
plt.xticks(rotation=30,fontsize=4)
plt.yticks(range(0,110,10)) #第2张图:
ax2=plt.subplot(222) #分2行2列,第1行第2个
ax2.patch.set_facecolor('black') plt.plot(times,mem,label='MEM',color='g')
plt.ylabel(u'MEM 使用率 %',fontsize=8,fontproperties=my_font,color='red')
plt.xticks(rotation=30,fontsize=4)
plt.yticks(range(0,110,10)) #第3张图:
ax3=plt.subplot(212) #分2行1列,第2个=第2行的一列
ax3.patch.set_facecolor('black') plt.plot(times,io,label='IO',color='y')
plt.ylabel(u'IO 处理数 %',fontsize=8,fontproperties=my_font,color='red')
plt.xticks(rotation=30,fontsize=4) plt.pause(1) c+=1 #每次+1 plt.ioff()
plt.show()

CUP监测1分钟(60s)的python的matplotlib动态作图的更多相关文章

  1. 3分钟学完Python,直接从入门到精通

    作为帅气小编,我已经把python一些模块的甩在这儿了qwq,只要你拿到这些干货,包你玩转python,直接冲向"大佬"的段位,如果已经学了C或者C++或者说如果你需要你的一段关键 ...

  2. 在 Y 分钟内学会 Python

    在 Y 分钟内学会 Python 这是翻译, 原文地址: Learn Python in Y Minutes 在 90 年代初, Python 由 Guido van Rossum 创造, 现在, 它 ...

  3. python之matplotlib绘图基础

    Python之matplotlib基础 matplotlib是Python优秀的数据可视化第三方库 matplotlib库的效果可参考 http://matplotlib.org/gallery.ht ...

  4. 基于Python实现matplotlib中动态更新图片(交互式绘图)

    最近在研究动态障碍物避障算法,在Python语言进行算法仿真时需要实时显示障碍物和运动物的当前位置和轨迹,利用Anaconda的Python打包集合,在Spyder中使用Python3.5语言和mat ...

  5. python在sqlite动态创建表源码

    代码之余,将开发过程中经常用的代码片段备份一下,如下的代码是关于python在sqlite动态创建表的代码,应该能对各位有所用. import sqlite3 as db conn = db.conn ...

  6. python 利用matplotlib中imshow()函数绘图

    matplotlib 是python最著名的2D绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中.通过简单的绘图语 ...

  7. python使用matplotlib绘制折线图教程

    Matplotlib是一个Python工具箱,用于科学计算的数据可视化.借助它,Python可以绘制如Matlab和Octave多种多样的数据图形.下面这篇文章主要介绍了python使用matplot ...

  8. python基础实践 -python是一门动态解释性的强类型定义语言

    python是一门动态解释性的强类型定义语言 Python能做什么? Python是一门综合性的语言,你几乎能在计算机上通过Python做任何事情,以下是Python应该最广泛的几个方面: 1.网络应 ...

  9. python调用.net动态库

    # python调用.net动态库 ### pythonnet简介------------------------------ pythonnet是cpython的扩展- pythonnet提供了cp ...

随机推荐

  1. 洛谷P1071 潜伏者

    https://www.luogu.org/problem/P1071 #include<bits/stdc++.h> using namespace std; map<char,c ...

  2. Oracle客户端安装及下载地址

    一.下载 http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win64soft-094461 ...

  3. 微信小程序 selectComponent 值为null

    这个东西的执行时间感觉有点迷, 我遇到的情况是在page 的onReady  onShow 当中 使用 selectComponent 无法获取到子组件的对象 只好退而求其次  在需要触发的方法当中 ...

  4. spring项目中 通过自定义applicationContext工具类获取到applicationContext上下文对象

    spring项目在服务器启动的时候 spring容器中就已经被创建好了各种对象,在我们需要使用的时候可以进行调用. 工具类代码如下 import org.springframework.beans.B ...

  5. 剑指offer 面试题40. 最小的k个数

    O(N)划分法,注意这个方法会改变原数据(函数参数是引用的情况下)!当然也可以再定义一个新容器对其划分 要求前k小的数,只要执行快排划分,每次划分都会把数据分成大小两拨.直到某一次划分的中心点正好在k ...

  6. dp--C - Mysterious Present

    C - Mysterious Present Peter decided to wish happy birthday to his friend from Australia and send hi ...

  7. Python_初识面向对象

    楔子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战>的游戏,你就思考呀,人狗作战,那至少需要2个角色,一个是人, 一个是狗,且人和狗都有不同的技能,比如人拿棍打狗, 狗 ...

  8. layui下select禁止点击

    layui下拉选择框select禁止点击_设置禁用_设置不可操作的实现方法 直接上代码: <form class="layui-form"> <!-- 提示:如果 ...

  9. 常见python面试题

    1,简述列举了解的编程语言及语言间的区别? Python 解释型语言,代码简洁,易懂 C语言 编译型语言,底层语言 c++ 编译型语言,在C语言基础上加了面向对象 Java 混合型语言,可拓展性高 G ...

  10. 2.9 log4j 在测试过程中打印执行日志

    Apache Log4j配置说明/log4j的分层打印    http://blog.csdn.net/zzy7075/article/details/53763728