Вот быстрый фрагмент для сортировки записей в легенде. Предполагается, что вы уже добавили элементы графика с меткой, например, как
ax.plot(..., label='label1')
ax.plot(..., label='label2')
, а затем основной бит:
handles, labels = ax.get_legend_handles_labels()
# sort both labels and handles by labels
labels, handles = zip(*sorted(zip(labels, handles), key=lambda t: t[0]))
ax.legend(handles, labels)
Это всего лишь простая адаптация из кода, указанного в http://matplotlib.org/users/legend_guide.html