#python #matplotlib
Вопрос:
Ниже у меня есть простой скрипт для графика:
import matplotlib.pyplot as plt
days = ["Monday", "Tuesday", "Wednesday"]
values = [10, 15, 30]
labels = ["A", "B", "C"]
fig, ax = plt.subplots()
ax.plot(days, values, marker = 'o')
for i, txt in enumerate(labels):
text = ax.annotate(txt, (days[i], values[i]), fontsize=20)
plt.show()
Что создает следующую диаграмму:
Я хотел бы переместить метки на маркерах данных (A, B и C) вправо на N градусов каждый. Как бы я сделал это, основываясь на относительном положении каждого маркера?
Ответ №1:
Не уверен насчет градусов, но вы могли бы использовать что-то подобное, чтобы переместить текст на 10 пунктов вправо и на 10 пунктов вниз.
for i, txt in enumerate(labels):
text = ax.annotate(txt, (days[i], values[i]), fontsize=20, textcoords="offset points", xytext=(10,-10))
Комментарии:
1. Да, я должен был сказать «точки» вместо «градусы», для меня это ни здесь, ни там. Спасибо!