Python使用matplotlib实现在坐标系中画一个矩形的方法


Posted in Python onMay 20, 2015

本文实例讲述了Python使用matplotlib实现在坐标系中画一个矩形的方法。分享给大家供大家参考。具体实现方法如下:

import matplotlib.pyplot as plt
from matplotlib.patches import Rectangle
class Annotate(object):
  def __init__(self):
    self.ax = plt.gca()
    self.rect = Rectangle((0,0), 1, 1)
    self.x0 = None
    self.y0 = None
    self.x1 = None
    self.y1 = None
    self.ax.add_patch(self.rect)
    self.ax.figure.canvas.mpl_connect('button_press_event', self.on_press)
    self.ax.figure.canvas.mpl_connect('button_release_event', self.on_release)
  def on_press(self, event):
    print 'press'
    self.x0 = event.xdata
    self.y0 = event.ydata
  def on_release(self, event):
    print 'release'
    self.x1 = event.xdata
    self.y1 = event.ydata
    self.rect.set_width(self.x1 - self.x0)
    self.rect.set_height(self.y1 - self.y0)
    self.rect.set_xy((self.x0, self.y0))
    self.ax.figure.canvas.draw()
a = Annotate()
plt.show()

如下图所示:

Python使用matplotlib实现在坐标系中画一个矩形的方法

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python实时监控cpu小工具
Jun 21 Python
python并发和异步编程实例
Nov 15 Python
Django框架模板注入操作示例【变量传递到模板】
Dec 19 Python
使用Python控制摄像头拍照并发邮件
Apr 23 Python
Python实现插入排序和选择排序的方法
May 12 Python
numpy中的ndarray方法和属性详解
May 27 Python
Python 实现加密过的PDF文件转WORD格式
Feb 04 Python
TensorFlow2.0矩阵与向量的加减乘实例
Feb 07 Python
python GUI库图形界面开发之PyQt5日期时间控件QDateTimeEdit详细使用方法与实例
Feb 27 Python
python程序需要编译吗
Jun 19 Python
Python通用唯一标识符uuid模块使用案例
Sep 10 Python
TensorFlow的自动求导原理分析
May 26 Python
python获取指定目录下所有文件名列表的方法
May 20 #Python
Python使用reportlab将目录下所有的文本文件打印成pdf的方法
May 20 #Python
Python使用matplotlib绘制动画的方法
May 20 #Python
Python中subprocess模块用法实例详解
May 20 #Python
python检测某个变量是否有定义的方法
May 20 #Python
Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法
May 20 #Python
python使用PyGame模块播放声音的方法
May 20 #Python
You might like
PHP网站基础优化方法小结
2008/09/29 PHP
PHP 简单日历实现代码
2009/10/28 PHP
php 文本文件的读取效率
2012/02/10 PHP
php数组中包含中文的排序方法
2014/06/03 PHP
十幅图告诉你什么是PHP引用
2015/02/22 PHP
PHP读取大文件的多种方法介绍
2016/04/04 PHP
轻松掌握php设计模式之访问者模式
2016/09/23 PHP
用js实现的页面关键字密度查询代码
2007/12/27 Javascript
IE8 兼容性问题(属性名区分大小写)
2009/06/04 Javascript
基于jQuery的ajax功能实现web service的json转化
2009/08/29 Javascript
google 搜索框添加关键字实现代码
2010/04/24 Javascript
jquery.boxy弹出框(后隔N秒后自动隐藏/自动跳转)
2013/01/15 Javascript
jquery实现网页查找功能示例分享
2014/02/12 Javascript
如何改进javascript代码的性能
2015/04/02 Javascript
jquery实现鼠标滑过显示二级下拉菜单效果
2015/08/24 Javascript
JavaScript代码轻松实现网页内容禁止复制(代码简单)
2015/10/23 Javascript
jsonp跨域请求数据实现手机号码查询实例分析
2015/12/12 Javascript
JavaScript笛卡尔积超简单实现算法示例
2018/07/30 Javascript
vue--点击当前增加class,其他删除class的方法
2018/09/15 Javascript
小程序页面动态配置实现方法
2019/02/05 Javascript
Node Mongoose用法详解【Mongoose使用、Schema、对象、model文档等】
2020/05/13 Javascript
CSS3实现超慢速移动动画效果非常流畅无卡顿
2014/06/15 HTML / CSS
HTML5 Canvas概述
2009/08/26 HTML / CSS
html5中canvas学习笔记2-判断浏览器是否支持canvas
2013/01/06 HTML / CSS
中国领先的专业家电网购平台:国美在线
2016/12/25 全球购物
照片礼物和装饰:MyPhoto
2019/11/02 全球购物
Sony C++笔试题
2013/03/10 面试题
酒店服务与管理毕业生求职信
2013/11/02 职场文书
运动会通讯稿200字
2014/02/16 职场文书
卫生院健康教育实施方案
2014/06/07 职场文书
有关环保的标语
2014/06/13 职场文书
公司行政专员岗位职责
2014/08/24 职场文书
餐饮食品安全责任书
2015/01/29 职场文书
2015年资料员工作总结
2015/04/25 职场文书
Python 如何安装Selenium
2021/05/06 Python
CSS3实现列表无限滚动/轮播效果
2021/06/23 HTML / CSS