Python使用matplotlib实现绘制自定义图形功能示例


Posted in Python onJanuary 18, 2018

本文实例讲述了Python使用matplotlib实现绘制自定义图形功能。分享给大家供大家参考,具体如下:

一 代码

from matplotlib.path importPath
from matplotlib.patches importPathPatch
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
#定义绘图指令与控制点坐标
#其中MOVETO表示将绘制起点移动到指定坐标
#CURVE4表示使用4个控制点绘制3次贝塞尔曲线
#CURVE3表示使用3个控制点绘制2次贝塞尔曲线
#LINETO表示从当前位置绘制直线到指定位置
#CLOSEPOLY表示从当前位置绘制直线到指定位置,并闭合多边形
path_data =[
(Path.MOVETO,(1.58,-2.57)),
(Path.CURVE4,(0.35,-1.1)),
(Path.CURVE4,(-1.75,2.0)),
(Path.CURVE4,(0.375,2.0)),
(Path.LINETO,(0.85,1.15)),
(Path.CURVE4,(2.2,3.2)),
(Path.CURVE4,(3,0.05)),
(Path.CURVE4,(2.0,-0.5)),
(Path.CURVE3,(3.5,-1.8)),
(Path.CURVE3,(2,-2)),
(Path.CLOSEPOLY,(1.58,-2.57)),
]
codes, verts = zip(*path_data)
path =Path(verts, codes)
#按指令和坐标进行绘图
patch =PathPatch(path, facecolor='r', alpha=0.9)
ax.add_patch(patch)
# 绘制控制多边形和连接点
x, y = zip(*path.vertices)
line,= ax.plot(x, y,'go-')
#显示网格
ax.grid()
#设置坐标轴刻度大小一致,可以更真实地显示图形
ax.axis('equal')
plt.show()

二 运行结果

Python使用matplotlib实现绘制自定义图形功能示例

更多关于Python相关内容可查看本站专题:《Python数学运算技巧总结》、《Python正则表达式用法总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

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

Python 相关文章推荐
理解Python垃圾回收机制
Feb 12 Python
Python3实战之爬虫抓取网易云音乐的热门评论
Oct 09 Python
Python 限制线程的最大数量的方法(Semaphore)
Feb 22 Python
对python3 Serial 串口助手的接收读取数据方法详解
Jun 12 Python
python批量修改图片尺寸,并保存指定路径的实现方法
Jul 04 Python
python 设置xlabel,ylabel 坐标轴字体大小,字体类型
Jul 23 Python
Python3离线安装Requests模块问题
Oct 13 Python
python实现简单日志记录库glog的使用
Dec 13 Python
Python 字节流,字符串,十六进制相互转换实例(binascii,bytes)
May 11 Python
Python logging模块写入中文出现乱码
May 21 Python
PyCharm vs VSCode,作为python开发者,你更倾向哪种IDE呢?
Aug 17 Python
python基础之while循环语句的使用
Apr 20 Python
Python基于csv模块实现读取与写入csv数据的方法
Jan 18 #Python
python将字典内容存入mysql实例代码
Jan 18 #Python
python测试mysql写入性能完整实例
Jan 18 #Python
浅谈flask截获所有访问及before/after_request修饰器
Jan 18 #Python
flask中主动抛出异常及统一异常处理代码示例
Jan 18 #Python
浅谈Django学习migrate和makemigrations的差别
Jan 18 #Python
Python机器学习logistic回归代码解析
Jan 17 #Python
You might like
php的大小写敏感问题整理
2011/12/29 PHP
PHP中$_SERVER的详细参数与说明介绍
2013/10/26 PHP
thinkphp中多表查询中防止数据重复的sql语句(必看)
2016/09/22 PHP
php中字符串和整数比较的操作方法
2019/06/06 PHP
javascript 面向对象编程 聊聊对象的事
2009/09/17 Javascript
jquery 应用代码 方便的排序功能
2010/02/06 Javascript
jQuery学习笔记 操作jQuery对象 文档处理
2012/09/19 Javascript
Jquery读取URL参数小例子
2013/08/30 Javascript
超级简单实现JavaScript MVC 样式框架
2015/03/24 Javascript
jQuery实现带动画效果的多级下拉菜单代码
2015/09/08 Javascript
jQuery实现鼠标经过时出现隐藏层文字链接的方法
2015/10/12 Javascript
浅析Node.js实现HTTP文件下载
2016/08/05 Javascript
详谈jQuery中使用attr(), prop(), val()获取value的异同
2017/04/25 jQuery
AngularJS基于factory创建自定义服务的方法详解
2017/05/25 Javascript
Vue组件通信之Bus的具体使用
2017/12/28 Javascript
详解vue中axios的封装
2018/07/18 Javascript
微信小程序获取用户信息并保存登录状态详解
2019/05/10 Javascript
JS实现简单日历特效
2020/01/03 Javascript
Python tempfile模块学习笔记(临时文件)
2014/05/25 Python
python time模块用法实例详解
2014/09/11 Python
Python实现简单多线程任务队列
2016/02/27 Python
Python中格式化format()方法详解
2017/04/01 Python
Python文件常见操作实例分析【读写、遍历】
2018/12/10 Python
python中shell执行知识点
2020/05/06 Python
浅谈Python 函数式编程
2020/06/20 Python
在CentOS7下安装Python3教程解析
2020/07/09 Python
Python数据可视化实现多种图例代码详解
2020/07/14 Python
SpringBoot首页设置解析(推荐)
2021/02/11 Python
CSS中垂直居中的简单实现方法
2015/07/06 HTML / CSS
企业为何需要商业计划书
2013/12/26 职场文书
小学班主任评语大全
2014/04/23 职场文书
2014年入党积极分子学习三中全会思想汇报
2014/09/13 职场文书
因家庭原因离职的辞职信范文
2015/05/12 职场文书
建党伟业观后感
2015/06/01 职场文书
2016年教师党员公开承诺书
2016/03/24 职场文书
python3实现无权最短路径的方法
2021/05/12 Python