#python #matplotlib
Вопрос:
Возникли проблемы с выравниванием метки y-тика по левому краю на диаграмме Matplotlib:
import matplotlib.pyplot as plt
from textwrap import wrap
labels = ['n'.join(wrap('Lorem ipsum dolor sit amet, consectetur adipiscing elit.', 25))]
ind = [1]
fig, ax = plt.subplots()
ax.barh(1, 10)
fontdict = {
'verticalalignment': 'center',
'horizontalalignment': 'left'}
ax.set_yticks(ind)
ax.set_yticklabels(labels=labels, fontdict=fontdict)
plt.show()
Как я могу переместить метку, чтобы она не накладывалась на диаграмму?
Комментарии:
1. попробуйте это:
ax.set_yticklabels(labels=labels, ha='right',va='center')
2. Не совсем. Это останавливает наложение на диаграмму, но вы теряете выравнивание текста по левому краю.
Ответ №1:
Ваш комментарий помог мне понять, чего вы хотите. Вы хотите переместить метку влево, выравнивая ее по левому краю. Я задаю значения положения вручную.
ax.set_yticklabels(labels=labels, ha='left',va='center', position=(-0.35,0))
Комментарии:
1. Спасибо. Я определенно мог бы яснее ответить на этот вопрос в ретроспективе.