This is a placeholder for supplemental documentation about how to specify a GUI backend, and known issues as they emerge.
From the Canopy 1.6.1 Release notes:
Fixed & Improved: Qt/Pyside is now the default GUI backend in terminal and notebook (#3723)
To avoid conflicting assumptions about whether Wx, Qt/PySide or Qt/PyQt is used as the GUI backend for your Python programs, and for better compatibility with the default assumptions inside the Canopy GUI -- the default GUI backend is now Qt, and the default Qt bindings package is now PySide.
Therefore, if your code implicitly assumes that Wx or PyQt are the backend, you will need to change your code or else specify them before your code runs, e.g. by setting
QT_API environment variables, or by using IPython/Jupyter's
--pylab startup options, or the equivalent magic commands or Jupyter or matplotlib configuration file settings.
Heads up: We expect that Qt will remain the default backend for a long time. However we plan to transition to Qt5 in the coming year; given the current state of PySide, this would require a change from PySide to PyQt.
Update August 13, 2017 - Canopy's transition from PySide to PyQt4 is well underway, and will be followed by the transition from PyQt4 to PyQt5.
From the Canopy 1.6.2 Release notes:
Fixed: Matplotlib 1.5.0 GUI backend issues (#3942)
A number of issues were identified in Matplotlib 1.5.0. Several of these affect the use of the Qt and Wx GUI backends. Our fixes for these are in Enthought’s patched Matplotlib 1.5.0-4, and along with many other fixes, are also in Matplotlib 1.5.1, just released and also bundled with this Canopy installer. (Note that bundled packages do not affect existing Canopy User environments; see “Package updates” above).