Matplotlib Text属性

matplotlib text可以对图形起到解释说明的作用,作用上面大致与legend类似。

__author__ = 'lee'

# 2015年11月05日13:20:39

import numpy as np
import matplotlib.pyplot as plt
mu, sigma = 100, 15
x = mu + sigma * np.random.randn(10000)
# the histogram of the data
# 设置数据的直方图
n, bins, patches = plt.hist(x, 50, normed=1, facecolor='g', alpha=0.75)
plt.xlabel("Smarts")
plt.ylabel("Probability")
plt.title(r"$\sigma_i=15$")
plt.text(60, .025, r'$\mu=100,\ \sigma=15$', color = 'r')
plt.axis([40, 160, 0, 0.03])
plt.grid(True)
plt.show()

效果图:

text1

text位置和数学公式

plt.text(60, .025, r’$\mu=100,\ \sigma=15$’, color = ‘r’)

前两位表示这个text的坐标在(60, 0.25)的地方,

所以text文字的开头就在直角坐标系中(60, 0.25)处

另外text是可以设置在图形中的任何位置的,只需要更具坐标自己调节就可以了

添加数学公式如:具体参见Matplotlib手册54页

属性

textP

这些属性都可以设置到title, xlabel, ylabel中



 

给图形添加注解

__author__ = 'lee'

# 2015年11月05日13:51:58

import numpy as np
import matplotlib.pyplot as plt
ax = plt.subplot(111)
t = np.arange(0.0, 5.0, 0.01)
s = np.cos(2*np.pi*t)
# line, = plt.plot(t, s, lw=2)
plt.plot(t, s, lw=2)
plt.annotate("local max", xy=(2, 1), xytext=(3, 1.5),
arrowprops=dict(width = 2, facecolor="black", shrink=0.05),
)
plt.ylim(-2,2)
plt.show()

注解效果图:

localmax

注解文本位置和箭头位置

通过annotate注解进行设置,

此时的注解文本的位置依照xy,xytext这两个值来确定的

也就是要注解的位置,和注解文字的位置

注:如果是在雷达图中的注解位置是按照度数(np.pi)和半径来确定位置的,

也是需要两个值来确定。例如:

xy = (-np.pi/7, 0.7), xytext = (-np.pi/2, 7)

注解箭头属性:

箭头属性

以上代码中的箭头代码:

plt.annotate(“local max”, xy=(2, 1), xytext=(3, 1.5),

arrowprops=dict(width = 2, facecolor=”black”, shrink=0.05),)

text的属性可以直接加载里面,如:将标注的字体改为红色:

plt.annotate(‘local max’, xy=(2, 1), xytext=(3, 1.5), color = ‘r’,

arrowprops=dict(facecolor=’black’, shrink=0.05))

如果需要改变箭头的属性,就需要用到上述属性

注:在属性设置中,当shrink属性超过50%,也就是设置的值大于0.5时,箭头就会反转。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部