浅谈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 相关文章推荐
使用PDB模式调试Python程序介绍
Apr 05 Python
在Python的Django框架中创建语言文件
Jul 27 Python
python根据文章标题内容自动生成摘要的实例
Feb 21 Python
[机器视觉]使用python自动识别验证码详解
May 16 Python
python操作文件的参数整理
Jun 11 Python
Python 的AES加密与解密实现
Jul 09 Python
如何搭建pytorch环境的方法步骤
May 06 Python
Matlab中plot基本用法的具体使用
Jul 17 Python
详解python 支持向量机(SVM)算法
Sep 18 Python
python爬虫中抓取指数的实例讲解
Dec 01 Python
python3 实现mysql数据库连接池的示例代码
Apr 17 Python
Python中的tkinter库简单案例详解
Jan 22 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
PHP stream_context_create()作用和用法分析
2011/03/29 PHP
解决windows上php xdebug 无法调试的问题
2020/02/19 PHP
jQuery 源代码显示控件 (Ajax加载方式).
2009/05/18 Javascript
jquery选择器原理介绍($()使用方法)
2014/03/25 Javascript
jQuery插件之Tocify动态节点目录菜单生成器附源码下载
2016/01/08 Javascript
最简单纯JavaScript实现Tab标签页切换的方式(推荐)
2016/07/25 Javascript
详解Nodejs的timers模块
2016/12/22 NodeJs
vue.js事件处理器是什么
2017/03/20 Javascript
jQuery插件开发发送短信倒计时功能代码
2017/05/09 jQuery
Vue实现验证码功能
2019/12/03 Javascript
解决Vue 给mapState中定义的属性赋值报错的问题
2020/06/22 Javascript
微信小程序canvas实现签名功能
2021/01/19 Javascript
[01:10:27]DOTA2-DPC中国联赛正赛 SAG vs XG BO3 第二场 3月5日
2021/03/11 DOTA
在RedHat系Linux上部署Python的Celery框架的教程
2015/04/07 Python
Python运算符重载用法实例
2015/05/28 Python
django+xadmin+djcelery实现后台管理定时任务
2018/08/14 Python
Python multiprocessing多进程原理与应用示例
2019/02/28 Python
int在python中的含义以及用法
2019/06/27 Python
python3实现斐波那契数列(4种方法)
2019/07/15 Python
python 实现GUI(图形用户界面)编程详解
2019/07/17 Python
python实现数据清洗(缺失值与异常值处理)
2019/12/02 Python
使用 tf.nn.dynamic_rnn 展开时间维度方式
2020/01/21 Python
python中操作文件的模块的方法总结
2021/02/04 Python
详解CSS的border边框属性及其在CSS3中的新特性
2016/05/10 HTML / CSS
HTML5新增属性data-*和js/jquery之间的交互及注意事项
2017/08/08 HTML / CSS
德国baby-markt婴儿用品瑞士网站:baby-markt.ch
2017/06/09 全球购物
东南亚旅游平台:The Trip Guru
2018/01/01 全球购物
美国在线宠物商店:Chewy
2019/01/12 全球购物
马来西亚在线药房:RoyalePharma
2019/12/01 全球购物
怎样声明接口
2014/09/19 面试题
工商管理专业毕业生求职信
2014/05/26 职场文书
扶贫办主任查摆“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
小组组名及励志口号
2015/12/24 职场文书
Pandas搭配lambda组合使用详解
2022/01/22 Python
python前后端自定义分页器
2022/04/13 Python
前端canvas中物体边框和控制点的实现示例
2022/08/05 Javascript