Python数据可视化-添加注释文字

2020-10-20  本文已影响0人  5cb608806559

在二维坐标图中我们经常对绘制的图形进行标注。在 matplotlib 中比较常用的有text和annotate两种标注方法,其中:

plt.text()

plt.text(x, y, s, fontdict = None, **kwargs)

参数说明:

示例

import numpy as np
import matplotlib.pyplot as plt

font = {'family': 'serif',
        'color':  'darkred',
        'weight': 'normal',
        'size': 16 }

x = np.linspace(0.0, 5.0, 100)
y = np.cos(2*np.pi*x) * np.exp(-x)

plt.plot(x, y, 'k')
plt.title('Damped exponential decay', fontdict=font)
plt.text(2, 0.65, r'$\cos(2 \pi t) \exp(-t)$', fontdict=font)
plt.xlabel('time (s)', fontdict=font)
plt.ylabel('voltage (mV)', fontdict=font)

plt.subplots_adjust(left=0.15)
plt.show()

运行结果:


image.png

plt.annotate()

Matplotlib中的annotate函数可用于在图形上给数据添加文本注解,而且支持带箭头的划线工具,非常方便我们在合适的位置添加描述信息。

plt.annotate(s, xy, *args, **kwargs)

参数说明:

plt.annotate() 示例

import numpy as np
import matplotlib.pyplot as plt

fig, ax = plt.subplots()

t = np.arange(0.0, 5.0, 0.01)
s = np.cos(2*np.pi*t)
line, = ax.plot(t, s, lw=2)

ax.annotate('local max', xy=(2, 1), xytext=(3, 1.5),
            arrowprops=dict(facecolor='black', shrink=0.05))
ax.set_ylim(-2, 2)
plt.show()

运行结果:


image.png
上一篇 下一篇

猜你喜欢

热点阅读