Предотвращение изменения размеров осей matplotlib с изменением размера окна - PullRequest
0 голосов
/ 24 января 2019

У меня фигура с несколькими открытыми осями.Главная ось содержит график данных.Другой содержит слайдер для управления переменной, которая, в свою очередь, влияет на сюжет (работает нормально).Другой содержит «самодельную» легенду с флажками (с использованием модифицированной версии класса виджетов CheckButton), которые также влияют на сюжет (работает нормально).Наконец, ось, содержащая экземпляр виджета Button для создания графика на основе текущих данных основного графика (работает нормально).Все они построены с использованием matplotlib из Spyder с интерактивным бэкэндом Qt5agg.

Хорошо, вот с чем у меня проблемы.После изменения размера окна все мои фигуры изменяют размеры, чтобы соответствовать их предопределенному масштабированию (которое, я считаю, дано в нормализованных единицах, где (0,0) - левый нижний угол рисунка, и (1,1) - его верхний правый угол).В моем сценарии я хотел бы отключить это относительное масштабирование для всех осей, кроме главной оси графика.Это должно быть теоретически возможно, так как это поведение, наблюдаемое легендой любого данного сюжета.Фактически, я смог сделать это для «самодельного» объекта легенды (с флажками), взаимодействуя с классом легенды.

Есть ли способ увидеть код класса Legend в matplotlib?Или еще лучше узнать, какая его часть покрывает этот протокол предотвращения изменения размера?По сути, финал должен дать осям абсолютный, а не относительный размер.

Единственный другой вопрос, который я нашел для этого типа проблемы, заключается в следующем:

matplotlib: изменить размер окна рисункабез масштабирования содержимого рисунка

К сожалению, хорошее разрешение не найдено ...

Любая помощь очень ценится!

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