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. 删除空目录命令 - rmdir

    (1) 命令名称:rmdir (2) 英文原意:remove empty directories (3) 命令所在路径:/bin/rmdir (4) 执行权限:所有用户 (5) 功能描述:删除空目录( ...

  2. 显示目录文件命令 - ls

    1) 命令名称:ls 2) 英文原意:list 3) 命令所在路径:/bin/ls 4) 执行权限:所有用户 5) 功能描述:显示目录文件 6) 语法: ls 选项[-ald][文件或目录] -a 显 ...

  3. Educational Codeforces Round 81 (Rated for Div. 2) A-E简要题解

    链接:https://codeforces.com/contest/1295 A. Display The Number 贪心思路,尽可能放置更多位,如果n为奇数,消耗3去放置一个7,剩下的放1 AC ...

  4. POJ3258 River Hopscotch(二分最大化最小值)

    题目链接:http://poj.org/problem?id=3258 题意:给n个石头,起点和终点也是两个石头,去掉这石头中的m个,使得石头间距的最小值最大. 思路:二分石头间的最短距离,每次贪心地 ...

  5. HTML备忘

    a标签事件 a:link {color: #000000} /* 未访问的链接 */ a:visited {color: #d90a81} /* 已访问的链接 */ a:hover {color: # ...

  6. IntelliJ IDEA 2017.3尚硅谷-----取消更新

  7. centos6 源码编译安装nginx 1.6 教程 nginx安装脚本

    操作系统centos 6.9 安装nginx需要pcre zlib openssl的库,下文都是在官网直接下载用作编译安装 该nginx安装教程,有安装maxmind IP 库 该教材有修改最大打开文 ...

  8. fdssd

    #include<stdio.h> #include<string.h> #include<math.h> #include<iostream> #in ...

  9. 劳动人民万岁(拒绝惰性)------- 浅谈迭代对象(Iterable) 迭代器(Iterator)

    一.前戏 问题:如果一次抓取所有城市天气 再显示,显示第一个城市气温时有很高的延时,并且很浪费储存空间 解决方案:以“用时访问”策略,并且能把说有城市气温封装到一个对象里,可用for一句进行迭代 二. ...

  10. springboot中druid监控的配置(DruidConfiguration)

    当数据库连接池使用druid 时,我们进行一些简单的配置就能查看到sql监控,web监控,url监控等等. 以springboot为例,配置如下 import com.alibaba.druid.su ...