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

yipeiwu_com6年前Python基础

本文实例讲述了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程序设计有所帮助。

相关文章

python框架django基础指南

Django简介: Django是一个开放源代码的Web应用框架,由Python写成。采用了MVC的框架模式,即模型M,视图V和控制器C。不过在Django实际使用中,Django更关注...

Django的数据模型访问多对多键值的方法

这里先来借用一个书本(book)的数据模型作为例子: from django.db import models class Publisher(models.Model): n...

Python FTP操作类代码分享

复制代码 代码如下:#!/usr/bin/py2# -*- coding: utf-8 -*-#encoding=utf-8 '''''    ftp自动下...

详解设计模式中的工厂方法模式在Python程序中的运用

详解设计模式中的工厂方法模式在Python程序中的运用

工厂方法(Factory Method)模式又称为虚拟构造器(Virtual Constructor)模式或者多态工厂(Polymorphic Factory)模式,属于类的创建型模式。...

python2.7 mayavi 安装图文教程(推荐)

python2.7 mayavi 安装图文教程(推荐)

工具:python2.7 相关包:traits-4.6.0-cp27-cp27m-win32.whl, VTK-7.1.1-cp27-cp27m-win32.whl, mayavi-4....