全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决

前言

本文主要给大家介绍了关于不同版本中Python matplotlib.pyplot.draw()界面绘制异常的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

在 Ubuntu系统上进行如下配置:

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install python-dev
$ sudo apt-get install python-pip
$ sudo pip install --upgrade pip
$ sudo pip install --upgrade urllib3
$ sudo pip install numpy
$ sudo pip install matplotlib

之后执行如下测试代码:

import sys
import numpy as np
import matplotlib.pyplot as plt
 
plt.ion()
(fig, axis) = plt.subplots()
bar_plot = axis.barh(0, 8,linewidth = 0)
bar_plot.color= '#ffff00'
for i in range(20):
 axis.set_xlim(xmax = max(i + 1, 10))
 plt.draw()
 
if sys.version_info < (3, 0):
 raw_input("Press Enter to continue...")
else:
 input("Press Enter to continue...")

上面的测试代码在 Ubuntu 14.04.5版本上是可以正常执行的,对应的 matplotlib的版本是 matplotlib 1.3.1,但是放到 Ubuntu 16.04.2系统上则是无法正常显示的,对应的 matplotlib的版本是 matplotlib 1.5.1。

造成这个问题的原因在于 matplotlib.pyplot.draw() ,这个函数行为的改变,早期这个函数是同步更新界面的,后来的版本却变成了空闲异步更新界面,只有当 matplotlib.pyplot.pause(interval)被调用的时候才会刷新界面。

所以只需要上面的代码修改成如下即可在不同版本之间兼容:

import sys
import numpy as np
import matplotlib.pyplot as plt
 
plt.ion()
(fig, axis) = plt.subplots()
bar_plot = axis.barh(0, 8,linewidth = 0)
bar_plot.color= '#ffff00'
for i in range(20):
 axis.set_xlim(xmax = max(i + 1, 10))
 plt.draw()
 plt.pause(0.00001)
 
if sys.version_info < (3, 0):
 raw_input("Press Enter to continue...")
else:
 input("Press Enter to continue...")

注意:我们在 matplotlib.pyplot.draw()调用后面增加了 matplotlib.pyplot.pause(interval)的调用。

查看 matplotlib的版本使用如下代码:

import matplotlib as mpl
print mpl.__version__

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。

参考链接

  • real-time plotting in while loop with matplotlib
  • matplotlib Troubleshooting
  • How to know the version of installed pylab?


# python  # matplotlib  # python的matplotlib  # python3  # Python OpenCV中的drawMatches()关键匹配绘制方法  # python opencv鼠标画点之cv2.drawMarker()函数  # python ImageDraw类实现几何图形的绘制与文字的绘制  # Python图像处理库PIL的ImageDraw模块介绍详解  # Python使用draw类绘制图形示例讲解  # 相关内容  # 说了  # 则是  # 才会  # 不多  # 这个问题  # 可在  # 给大家  # 只需要  # 这篇文章  # 谢谢大家  # 正常显示  # 增加了  # 变成了  # 同步更新  # 有疑问  # install  # upgrade  # import 


相关文章: 建站之星如何优化SEO以实现高效排名?  北京网站制作公司哪家好一点,北京租房网站有哪些?  如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法  如何在云指建站中生成FTP站点?  如何选择适配移动端的WAP自助建站平台?  如何用景安虚拟主机手机版绑定域名建站?  定制建站价位费用解析与套餐推荐全攻略  建站168自助建站系统:快速模板定制与SEO优化指南  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  建站之星如何防范黑客攻击与数据泄露?  建站主机服务器选购指南:轻量应用与VPS配置解析  如何通过cPanel快速搭建网站?  网站图片在线制作软件,怎么在图片上做链接?  南京网站制作费用,南京远驱官方网站?  如何在IIS中配置站点IP、端口及主机头?  建站之星安装模板失败:服务器环境不兼容?  Java解压缩zip - 解压缩多个文件或文件夹实例  外汇网站制作流程,如何在工商银行网站上做外汇买卖?  建站之星2.7模板快速切换与批量管理功能操作指南  建站之星代理如何获取技术支持?  建站为何优先选择香港服务器?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  h5网站制作工具有哪些,h5页面制作工具有哪些?  c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】  ,巨量百应是干嘛的?  做企业网站制作流程,企业网站制作基本流程有哪些?  上海网站制作开发公司,上海买房比较好的网站有哪些?  独立制作一个网站多少钱,建立网站需要花多少钱?  相册网站制作软件,图片上的网址怎么复制?  香港服务器部署网站为何提示未备案?  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  如何做静态网页,sublimetext3.0制作静态网页?  制作网站外包平台,自动化接单网站有哪些?  如何高效利用亚马逊云主机搭建企业网站?  建站之星×万网:智能建站系统+自助建站平台一键生成  c++怎么用jemalloc c++替换默认内存分配器【性能】  学校建站服务器如何选型才能满足性能需求?  家具网站制作软件,家具厂怎么跑业务?  建站之星代理如何优化在线客服效率?  宝盒自助建站智能生成技巧:SEO优化与关键词设置指南  制作网站怎么制作,*游戏网站怎么搭建?  免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?  定制建站哪家更专业可靠?推荐榜单揭晓  公司网站制作需要多少钱,找人做公司网站需要多少钱?  Python lxml的etree和ElementTree有什么区别  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  如何高效配置香港服务器实现快速建站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。