Возможно, в смесь добавили немного латекса?
#In which we make a legend; not with lines, but numbers!
import pylab as pl
pl.rc('text', usetex=True)
pl.figure(1)
pl.clf()
ax = pl.subplot(111)
pl.plot(range(0,10), 'k', label = r'\makebox[25]{1\hfill}Bla')
pl.plot(range(1,11), 'k', label = r'\makebox[25]{12\hfill}Bla12')
lgd = pl.legend(handlelength = -0.4)
for k in lgd.get_lines():
k.set_linewidth(0)
pl.draw()
pl.show()
Цифры / метки выровнены с помощью \ makebox с определенной шириной и \ hfill, чтобы занять место, не используемое вашими метками. Числа не являются автоматическими, но если вы используете петлю для рисования линий, вы можете добавить счетчик для отслеживания чисел.
Не знаю, является ли это частью вашего требования, но линии удаляются, если установить ширину их линии равной 0 и сделать зарезервированное место в легенде отрицательным. Не удалось найти более удобный способ сделать это, так как я полагаю, что легенда всегда должна показывать линию (например, вы не можете установить цифры на 0).
Конечно, вы также можете просто добавить текст в нужное место на вашем графике и вообще не использовать легенду.