Как аннотировать точки данных для pyplot в python
Я хочу пометить каждую точку данных на моем pyplot.
У меня есть два набора данных, и я хотел бы пометить каждую точку данных своим значением.
Это мой код:
import matplotlib.pyplot as plt
x_position = [1,6,2,7,4,5]
y_position = [8,4,7,7,2,4]
plt.plot(x_position, y_position, 'rx')
plt.show()
Это построит график с красным маркером для каждой точки, однако мне нужно, чтобы точки данных отображались в каждой точке.
Любая помощь будет оценена.
Благодарю.
1 ответ
Использование plt.annotate
:
import matplotlib.pyplot as plt
x_position = [1,6,2,7,4,5]
y_position = [8,4,7,7,2,4]
plt.plot(x_position, y_position, 'rx')
labels = ['text{}'.format(i) for i in range(len(x_positions))]
for label, x, y in zip(labels, x_position, y_position):
plt.annotate(label, xy=(x, y), xytext=(2, 2),
arrowprops=dict(facecolor='black', shrink=0.05))
plt.show()