Автоматическая настройка положения текста на графике matplotlib, чтобы избежать наложения (только для оси Y) - PullRequest
0 голосов
/ 30 апреля 2020

У меня проблемы со следующим графиком:

enter image description here

, созданный с помощью следующего кода:

fig, ax = plt.subplots(figsize=(10, 6), dpi=80)
texts = []
for i, data_col in enumerate(data.columns.values):
    ax.plot(data.index, data[data_col], color=tableau20[i], label=data_col)
    texts.append(ax.text(max(data.index), data[data_col][-1], data_col, fontsize=11, color=tableau20[i]))

Это на самом деле очень близко к желаемому выводу, я ищу способ автоматически настроить только y-положение текста, чтобы не было перекрытия, даже если значения меняются ( так что нет жестко закодированного смещения) То, что я нашел, это хорошо работающий пакет AdjustText от @Phlya, однако я не получаю это решение, чтобы регулировать только позицию y, оно всегда будет также сдвигать текст по оси x.

Итак, это вывод, который я получаю при добавлении строки

adjust_text(texts, ax=ax, only_move=dict(points='y', text='y', objects='y'), autoalign='y')

enter image description here

есть ли способ настроить параметры функций или любой Другой способ достичь того, что я ищу?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...