Как легко разместить / разместить текстовые аннотации на краю сюжета? - PullRequest
0 голосов
/ 01 июля 2019

Я строю некоторые точки на линии в python, используя matplotlib, и всякий раз, когда точка находится на / около границ графика, аннотированный текст трудно читать из-за перекрывающихся меток осей и тому подобного (см. Скриншот ниже): screenshot of plot

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

# add value text to x, y point
  jt = x_points_to_plot  # a single x-value, in this case
  f = ys_func(x_points_to_plot)  # a single y-value, in this case
  ax.annotate(
    '({}C, {:0.0f}%)'.format(jt, f),  # the string text to add
    xy=(jt + 1, f + 5),  # offset the text from the point manually
    ha='center')

Обычно мои точки находятся посередине и выглядят приемлемо, например так: screenshot of a plot that looks decent

Но я не хочу вручную корректировать текст для каждой точки, потому что у меня много изменяющихся данных, и я не хочу тратить на это свое время; Вместо этого я хотел бы найти способ размещения текста, чтобы его можно было легко прочитать на графике . Может быть, я мог бы расширить график, чтобы он содержал новый текст, или я мог бы переместить текст в другое место в зависимости от набора условий о том, что может быть рядом с текстом? Я не уверен ...

Я думаю, что лучшим ответом будет тот, который я смогу повторно использовать для других проектов, надежный для точек в любом месте графика и относительно простой в реализации (наименьшее количество пользовательских функций или «хаков», которые мне пришлось бы воссоздать для каждого проекта) ). Большое спасибо заранее!

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