Matplotlib 使用文本
Matplotlib具有广泛的文本支持,包括对数学表达式的支持, TrueType 对光栅和矢量输出的支持,具有任意旋转的换行分隔文本以及unicode支持。Matplotlib包含了自己的matplotlib.font_manager,它实现了一个跨平台、符合W3C标准的字体查找算法。
用户可以对文本属性(字体大小、字体粗细、文本位置和颜色等)进行精确控制。Matplotlib实现了大量的TeX数学符号和命令。
以下命令用于在Pyplot界面中创建文本:
text | 在坐标轴的任意位置添加文本。 |
---|---|
annotate | 在坐标轴的任意位置添加一个带有可选箭头的注释。 |
xlabel | 在坐标轴的x轴上添加一个标签。 |
ylabel | 在坐标轴的y轴上添加一个标签。 |
title | 在坐标轴上添加一个标题。 |
figtext | 在图形的任意位置添加文本。 |
suptitle | 在图形上添加一个总标题。 |
所有这些函数都创建并返回一个 matplotlib.text.Text() 实例。
下面的脚本演示了上述一些函数的使用方法−
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_axes([0,0,1,1])
ax.set_title('axes title')
ax.set_xlabel('xlabel')
ax.set_ylabel('ylabel')
ax.text(3, 8, 'boxed italics text in data coords', style='italic',
bbox = {'facecolor': 'red'})
ax.text(2, 6, r'an equation: E = mc^2', fontsize = 15)
ax.text(4, 0.05, 'colored text in axes coords',
verticalalignment = 'bottom', color = 'green', fontsize = 15)
ax.plot([2], [1], 'o')
ax.annotate('annotate', xy = (2, 1), xytext = (3, 4),
arrowprops = dict(facecolor = 'black', shrink = 0.05))
ax.axis([0, 10, 0, 10])
plt.show()
上面的代码将生成以下输出 –