浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头


Posted in Python onJanuary 09, 2018

 在使用pyplot画图的时候,有时会需要在图上标注一些文字,如果曲线靠的比较近,最好还能用箭头指出标注文字和曲线的对应关系。这里就介绍文字标注和箭头的使用。

添加标注使用pyplot.text,由pyplot或者subplot调用。下面是可以选择的参数,

text(tx,ty,fontsize=fs,verticalalignment=va,horizontalalignment=ha,...)

其中,tx和ty指定放置文字的位置,va和ha指定对其方式,可以是top,bottom,center或者left,right,center,还可以使文字带有边框,边框形状还可以是箭头,并指定方向。

添加箭头使用pyplot.annotate,调用方式与text类似。下面是可选择的参数,

annotate(text,xy=(tx0,ty0),xytext=(tx1,ty1),arrowprops=dict(arrowstyle="->",connectionstyle="arc3"))

其中,text是与箭头一起的文字,xy是箭头所在位置,终点,xytext是起点,arrowtypes指定箭头的样式,更多内容还是参见手册吧。

效果如下,

浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头

代码如下,只是在之前subplot的基础上做了一些修改,

#!/usr/bin/env python

import numpy as np
import matplotlib.pyplot as plt

def f1(t):
 return np.exp(-t)*np.cos(2*np.pi*t)

def f2(t):
 return np.sin(2*np.pi*t)*np.cos(3*np.pi*t)

t = np.arange(0.0,5.0,0.02)

plt.figure(figsize=(8,7),dpi=98)
p1 = plt.subplot(211)
p2 = plt.subplot(212)

label_f1 = "$f(t)=e^{-t} \cos (2 \pi t)$"
label_f2 = "$g(t)=\sin (2 \pi t) \cos (3 \pi t)$"

p1.plot(t,f1(t),"g-",label=label_f1)
p2.plot(t,f2(t),"r-.",label=label_f2,linewidth=2)

p1.axis([0.0,5.01,-1.0,1.5])

p1.set_ylabel("v",fontsize=14)
p1.set_title("A simple example",fontsize=18)
p1.grid(True)
#p1.legend()

tx = 2
ty = 0.9
p1.text(tx,ty,label_f1,fontsize=15,verticalalignment="top",horizontalalignment="right")

p2.axis([0.0,5.01,-1.0,1.5])
p2.set_ylabel("v",fontsize=14)
p2.set_xlabel("t",fontsize=14)
#p2.legend()
tx = 2
ty = 0.9
p2.text(tx,ty,label_f2,fontsize=15,verticalalignment="bottom",horizontalalignment="left")

p2.annotate('',xy=(1.8,0.5),xytext=(tx,ty),arrowprops=dict(arrowstyle="->",connectionstyle="arc3"))

plt.show()

本来就很简单的东西,就不要弄太复杂了。

总结

以上就是本文关于浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:

用matplotlib画等高线图详解

Python通过matplotlib绘制动画简单实例

matplotlib简介,安装和简单实例代码

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
python基础教程之基本数据类型和变量声明介绍
Aug 29 Python
Python argv用法详解
Jan 08 Python
Python抓取框架Scrapy爬虫入门:页面提取
Dec 01 Python
Django数据库表反向生成实例解析
Feb 06 Python
Python实现的三层BP神经网络算法示例
Feb 07 Python
python语言中with as的用法使用详解
Feb 23 Python
Python用csv写入文件_消除空余行的方法
Jul 06 Python
关于python字符串方法分类详解
Aug 20 Python
Jupyter Notebook打开任意文件夹操作
Apr 14 Python
Keras 实现加载预训练模型并冻结网络的层
Jun 15 Python
Win10环境中如何实现python2和python3并存
Jul 20 Python
python各种excel写入方式的速度对比
Nov 10 Python
用tensorflow实现弹性网络回归算法
Jan 09 #Python
Python+matplotlib实现计算两个信号的交叉谱密度实例
Jan 08 #Python
python matplotlib 注释文本箭头简单代码示例
Jan 08 #Python
Python自定义简单图轴简单实例
Jan 08 #Python
[原创]python爬虫(入门教程、视频教程)
Jan 08 #Python
小米5s微信跳一跳小程序python源码
Jan 08 #Python
Python实现判断字符串中包含某个字符的判断函数示例
Jan 08 #Python
You might like
THINKPHP截取中文字符串函数实例代码
2017/03/20 PHP
基于ThinkPHP5框架使用QueryList爬取并存入mysql数据库操作示例
2019/05/25 PHP
PHP dirname(__FILE__)原理及用法解析
2020/10/28 PHP
由点击页面其它地方隐藏div所想到的jQuery的delegate
2013/08/29 Javascript
JQuery实现鼠标移动图片显示描述层的方法
2015/06/25 Javascript
Javascript基础_嵌入图像的简单实现
2016/06/14 Javascript
Jquery和BigFileUpload实现大文件上传及进度条显示
2016/06/27 Javascript
js轮播图代码分享
2016/07/14 Javascript
利用jQuery的动画函数animate实现豌豆发射效果
2016/08/28 Javascript
网站申请不到支付宝接口、微信接口,免接口收款实现方式几种解决办法
2016/12/14 Javascript
微信小程序 配置文件详细介绍
2016/12/14 Javascript
JavaScript用JSONP跨域请求数据实例详解
2017/01/06 Javascript
AngularJS之自定义服务详解(factory、service、provider)
2017/04/14 Javascript
JavaScript创建对象的七种方式(推荐)
2017/06/26 Javascript
微信小程序网络封装(简单高效)
2018/08/06 Javascript
Vue2.x中利用@font-size引入字体图标报错的解决方法
2018/09/28 Javascript
Vue项目history模式下微信分享爬坑总结
2019/03/29 Javascript
深入剖析JavaScript instanceof 运算符
2019/06/14 Javascript
深入浅出vue图片路径的实现
2019/09/04 Javascript
解决vue项目input输入框双向绑定数据不实时生效问题
2020/08/05 Javascript
python实现绘制树枝简单示例
2014/07/24 Python
Python 提取dict转换为xml/json/table并输出的实现代码
2016/08/28 Python
python脚本实现验证码识别
2018/06/07 Python
使用python读取.text文件特定行的数据方法
2019/01/28 Python
python3中pip3安装出错,找不到SSL的解决方式
2019/12/12 Python
Python 读取有公式cell的结果内容实例方法
2020/02/17 Python
python GUI库图形界面开发之PyQt5信号与槽事件处理机制详细介绍与实例解析
2020/03/08 Python
关于Python3的import问题(pycharm可以运行命令行import错误)
2020/11/18 Python
详解Canvas事件绑定
2018/06/27 HTML / CSS
京东全球售:直邮香港,澳门,台湾,美国,澳大利亚等地区
2017/09/24 全球购物
工业设计专业推荐信
2013/10/29 职场文书
单位消防安全责任书
2014/07/23 职场文书
小学母亲节活动总结
2015/02/10 职场文书
语文教师求职信范文
2015/03/20 职场文书
阿里云国际版 使用Nginx作为HTTPS转发代理服务器
2022/05/11 Servers
Windows7下FTP搭建图文教程
2022/08/05 Servers