Как соединить несколько точек прямой и добавить подписи для каждой точки

Есть 3 координаты

[1,2] P
[3,4] Q 
[-3,-2] R

Как нарисовать прямую через три точки, и чтобы аннотации были у каждой координаты

введите сюда описание изображения вот такая например для точки P


Ответы (1 шт):

Автор решения: strawdog

Принципиально, это можно сделать так:

P = [1,2] 
Q = [3,4] 
R = [-3,-2]
coords = list(zip(P, Q, R))

plt.ylim(-4, 6)
plt.xlim(-4, 6)
plt.plot(coords[0], coords[1], marker='o', markersize=35, markerfacecolor='orange', markeredgecolor='orange')

plt.annotate('P', (coords[0][0]-.15, coords[1][0]-.2), size=15)
plt.annotate('Q', (coords[0][1]-.15, coords[1][1]-.2), size=15)
plt.annotate('R', (coords[0][2]-.15, coords[1][2]-.2), size=15)

plt.show()

введите сюда описание изображения

Однако, советую оптимизировать данные так, чтобы аннотации можно было писать циклом автоматически вне зависимости от количества данных. Разумеется, с позиционированием аннотаций надо будет попадать.

→ Ссылка