Мне интересно, есть ли у кого-нибудь решение проблемы, с которой я сталкиваюсь при использовании перетаскиваемой легенды в сочетании с несколькими осями.
Я использую gridspec и figure (matplotlib 1.0.1, qt4 backend) для создания 2 осей - без pyplot.Когда легенда перетаскивается с одной оси на другую и освобождается, ее перетаскивание перестает работать.
Если часть легенды находится за пределами оси, легенда может быть выбрана нажатием на эту часть, но не при щелчке мышью в какой-либо области легенды внутри оси.
Я пытался оригинальный код Адама Фрейзера , но легенда проскальзывала под вторыми осями в моем приложении.
Мое приложение действительно довольно большое - слишком большое, чтобы показать его здесь, поэтому, чтобы проиллюстрировать проблему, я модифицировал код из Matplotlib Legend Guide (использует pyplot) следующим образом:1013 *
from matplotlib.pyplot import *
subplot(211)
plot([1,2,3], label="test1")
plot([3,2,1], label="test2")
leg=legend(bbox_to_anchor=(0., 1.02, 1., .102), loc=3,
ncol=2, mode="expand", borderaxespad=0.)
leg.draggable(state=True, use_blit=True)
subplot(223)
plot([1,2,3], label="test1")
plot([3,2,1], label="test2")
leg=legend(bbox_to_anchor=(1.05, 1), loc=2, borderaxespad=0.)
leg.draggable(state=True, use_blit=True)
show()
Создает график с парой осей и двумя легендами.
Запустите код и перетащите легенды вокруг, чтобы увидеть эффект (если у вас нет проблем, ондолжно быть что-то я съел и прошу прощения).
Я подозреваю, что решение может быть довольно низкого уровня, но кто знает, может быть, это простое исправление?
Спасибо за любую помощь.