plt注解相关介绍及应用
目录
- plt.annotate()
- plt.text()
- 实战
plt.annotate()
plt.annotate() 是 Matplotlib 中用于在图形中添加注释的函数。与 plt.text() 类似,plt.annotate() 可以在指定的位置添加文本注释,并可以指定箭头和文本的样式、颜色、字体大小等属性。
plt.annotate() 函数的常用参数包括:
- s:要显示的文本内容
- xy:注释的位置
- xytext:文本的位置
- arrowprops:箭头的属性,可以设置箭头的样式、颜色等
- fontsize:文本的字体大小
- color:文本的颜色
- horizontalalignment (ha):水平对齐方式,可选值包括’left’, ‘center’, ‘right’
- verticalalignment (va):垂直对齐方式,可选值包括 ‘top’,‘center’, ‘bottom’
示例用法:
import matplotlib.pyplot as plt
# 创建一个简单的图形
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
# 在指定位置添加注释
plt.annotate('this is a annotatation ', xy=(2, 4), xytext=(3, 8),
arrowprops=dict(facecolor='black', shrink=0.05),
fontsize=12, color='blue', ha='center')
plt.show()
plt.text()
plt.text() 是 Matplotlib 中用于在图形中添加文本注释的函数。它可以在图形的指定位置添加文本,并可以指定文本的样式、颜色、字体大小等属性。
plt.text() 函数的常用参数包括:
- x:文本的 x 坐标
- y:文本的 y 坐标
- s:要显示的文本内容
- fontsize:文本的字体大小
- color:文本的颜色
- ha:水平对齐方式,可选值包括 ‘left’, ‘center’, ‘right’
- va:垂直对齐方式,可选值包括 ‘top’,‘center’, ‘bottom’
示例用法:
import matplotlib.pyplot as plt
# 创建一个简单的图形
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
# 在指定位置添加文本注释
plt.text(2, 10, '这是一个文本注释', fontsize=12, color='red', ha='center')
plt.show()
实战
import matplotlib.pyplot as plt
import numpy as np
x=np.linspace(-1,3,10)
y= 2*x+1
plt.plot(x,y)
ax = plt.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
ax.xaxis.set_ticks_position('bottom')
ax.yaxis.set_ticks_position('left')
ax.spines['bottom'].set_position(('data', 1))
ax.spines['left'].set_position(('data',0.5))
x0=1
y0=2*x0+1
plt.scatter(x0,y0,s=50,color='b')
plt.plot([x0,x0],[y0,1],lw=2.5)
plt.annotate(r'2 x + 1 = %s'% y0,xy=(x0,y0),xycoords='data',xytext=(+30,-30),textcoords='offset points',
fontsize=16,arrowprops=dict(arrowstyle='->',connectionstyle='arc3,rad=.2'))
###method2
plt.text(-1.7, 4, r'this is the some text. $\mu$ $\sigma_i$ $\alpha_t$', fontdict={'size': 16, 'color': 'r'})
plt.show()