Python使用matplotlib 画矩形的三种方式分析


Posted in Python onOctober 31, 2019

本文实例讲述了Python使用matplotlib 画矩形的三种方式。分享给大家供大家参考,具体如下:

假设矩形两点坐标如下,分别为:x1, y1, x2, y2

cat_dict['bbox'][i] = (min_row, min_col, max_row, max_col)

1. plt.plot(x,y)

这种方式画的矩形 因为边距的问题 会放缩

plt.plot([cat_dict['bbox'][i][1], cat_dict['bbox'][i][3], cat_dict['bbox'][i][3], cat_dict['bbox'][i][1], cat_dict['bbox'][i][1]], # col
     [cat_dict['bbox'][i][0], cat_dict['bbox'][i][0], cat_dict['bbox'][i][2], cat_dict['bbox'][i][2], cat_dict['bbox'][i][0]], # row
     color=[c / 255 for c in label_colors[cat_idx]], marker='.', ms=0)

2. ax.add_line(Line2D)

添加 4 条直线的方式,比较繁琐

from matplotlib.lines import Line2D
color = [c / 255 for c in label_colors[cat_idx]]
ax.add_line(Line2D([cat_dict['bbox'][i][1], cat_dict['bbox'][i][3]],
          [cat_dict['bbox'][i][0], cat_dict['bbox'][i][0]], 
          linewidth=2, 
          color=color))
ax.add_line(Line2D([cat_dict['bbox'][i][3], cat_dict['bbox'][i][3]],
          [cat_dict['bbox'][i][0], cat_dict['bbox'][i][2]], 
          linewidth=2, 
          color=color))
ax.add_line(Line2D([cat_dict['bbox'][i][3], cat_dict['bbox'][i][1]],
          [cat_dict['bbox'][i][2], cat_dict['bbox'][i][2]], 
          linewidth=2, 
          color=color))
ax.add_line(Line2D([cat_dict['bbox'][i][1], cat_dict['bbox'][i][1]],
          [cat_dict['bbox'][i][2], cat_dict['bbox'][i][0]], 
          linewidth=2, 
          color=color))

3. plt.gca().add_patch(plt.Rectangle())

最好的一种实现方式,fast rcnn 也是这么用的,传送门

plt.gca().add_patch(plt.Rectangle(xy=(cat_dict['bbox'][i][1], cat_dict['bbox'][i][0]),
width=cat_dict['bbox'][i][3] - cat_dict['bbox'][i][1], 
height=cat_dict['bbox'][i][2] - cat_dict['bbox'][i][0],
edgecolor=[c / 255 for c in label_colors[cat_idx]],
fill=False, linewidth=2))

Python使用matplotlib 画矩形的三种方式分析

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

Python 相关文章推荐
Python实现爬取逐浪小说的方法
Jul 07 Python
python3实现随机数
Jun 25 Python
django+xadmin+djcelery实现后台管理定时任务
Aug 14 Python
小白入门篇使用Python搭建点击率预估模型
Oct 12 Python
在Pycharm中设置默认自动换行的方法
Jan 16 Python
Django中ajax发送post请求 报403错误CSRF验证失败解决方案
Aug 13 Python
python3.7.3版本和django2.2.3版本是否可以兼容
Sep 01 Python
Sublime Text3最新激活注册码分享适用2020最新版 亲测可用
Nov 12 Python
python opencv人脸识别考勤系统的完整源码
Apr 26 Python
Python 循环读取数据内存不足的解决方案
May 25 Python
PO模式在selenium自动化测试框架的优势
Mar 20 Python
Python的代理类实现,控制访问和修改属性的权限你都了解吗
Mar 21 Python
python实现操作文件(文件夹)
Oct 31 #Python
python用requests实现http请求代码实例
Oct 31 #Python
python zip()函数使用方法解析
Oct 31 #Python
python实现按首字母分类查找功能
Oct 31 #Python
利用python Selenium实现自动登陆京东签到领金币功能
Oct 31 #Python
python+Django实现防止SQL注入的办法
Oct 31 #Python
Python 爬虫实现增加播客访问量的方法实现
Oct 31 #Python
You might like
用session做客户验证时的注意事项
2006/10/09 PHP
php下删除字符串中HTML标签的函数
2008/08/27 PHP
浅析php变量作用域的一些问题
2013/08/08 PHP
WordPress中"无法将上传的文件移动至"错误的解决方法
2015/07/01 PHP
jquery isType() 类型判断代码
2011/02/14 Javascript
文本有关的样式和jQuery求对象的高宽问题分别说明
2013/08/30 Javascript
IE6下拉框图层问题探讨及解决
2014/01/03 Javascript
js 数组去重的四种实用方法
2014/09/09 Javascript
jquery中使用循环下拉菜单示例代码
2014/09/24 Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
2015/10/01 Javascript
express文件上传中间件Multer详解
2016/10/24 Javascript
原生和jQuery的ajax用法详解
2017/01/23 Javascript
JS检测window.open打开的窗口是否关闭
2017/06/25 Javascript
浅谈es6中export和export default的作用及区别
2018/02/07 Javascript
如何为你的JS项目添加智能提示与类型检查详解
2019/03/12 Javascript
Python兔子毒药问题实例分析
2015/03/05 Python
python中Genarator函数用法分析
2015/04/08 Python
Windows中安装使用Virtualenv来创建独立Python环境
2016/05/31 Python
python抓取文件夹的所有文件
2018/02/27 Python
python 读取目录下csv文件并绘制曲线v111的方法
2018/07/06 Python
Python selenium根据class定位页面元素的方法
2019/02/26 Python
scikit-learn线性回归,多元回归,多项式回归的实现
2019/08/29 Python
pytorch中的transforms模块实例详解
2019/12/31 Python
Pytorch 实现sobel算子的卷积操作详解
2020/01/10 Python
浅谈python 中的 type(), dtype(), astype()的区别
2020/04/09 Python
Python类的继承super相关原理解析
2020/10/22 Python
小米俄罗斯授权商店:Xiaomi俄罗斯
2019/12/08 全球购物
Timberland俄罗斯官方网上商店:全球领先的户外品牌
2020/03/15 全球购物
C#中有没有静态构造函数,如果有是做什么用的?
2016/06/04 面试题
历史专业个人求职信范文
2013/12/07 职场文书
政府个人对照检查材料思想汇报
2014/10/08 职场文书
结婚通知短信大全
2015/04/17 职场文书
中学后勤工作总结2015
2015/07/22 职场文书
机关干部正风肃纪心得体会
2016/01/15 职场文书
Go语言切片前或中间插入项与内置copy()函数详解
2021/04/27 Golang
Python&Matlab实现灰狼优化算法的示例代码
2022/03/21 Python