Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ImportError: cannot import name NavigationToolbar2QTAgg #2

Closed
okanisis opened this issue Nov 12, 2015 · 6 comments
Closed

ImportError: cannot import name NavigationToolbar2QTAgg #2

okanisis opened this issue Nov 12, 2015 · 6 comments

Comments

@okanisis
Copy link
Contributor

I've pasted the error I'm getting when starting QGIS 2.12.0, SCP 4.8.3.

Couldn't load plugin SemiAutomaticClassificationPlugin due to an error when calling its classFactory() method 

ImportError: cannot import name NavigationToolbar2QTAgg 
Traceback (most recent call last):
  File "/usr/share/qgis/python/qgis/utils.py", line 306, in startPlugin
    plugins[packageName] = package.classFactory(iface)
  File "/home/saultdon/.qgis2/python/plugins/SemiAutomaticClassificationPlugin/__init__.py", line 65, in classFactory
    from semiautomaticclassificationplugin import SemiAutomaticClassificationPlugin
  File "/usr/share/qgis/python/qgis/utils.py", line 572, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
  File "/home/saultdon/.qgis2/python/plugins/SemiAutomaticClassificationPlugin/semiautomaticclassificationplugin.py", line 61, in 
    from ui.spectralsignaturedialog import SpectralSignatureDialog
  File "/usr/share/qgis/python/qgis/utils.py", line 572, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
  File "/home/saultdon/.qgis2/python/plugins/SemiAutomaticClassificationPlugin/ui/spectralsignaturedialog.py", line 41, in 
    from ui_semiautomaticclassificationplugin_signature_plot import Ui_SpectralSignaturePlot
  File "/usr/share/qgis/python/qgis/utils.py", line 572, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
  File "/home/saultdon/.qgis2/python/plugins/SemiAutomaticClassificationPlugin/ui/ui_semiautomaticclassificationplugin_signature_plot.py", line 194, in 
    from sigwidget2 import SigWidget2
  File "/usr/share/qgis/python/qgis/utils.py", line 572, in _import
    mod = _builtin_import(name, globals, locals, fromlist, level)
  File "/home/saultdon/.qgis2/python/plugins/SemiAutomaticClassificationPlugin/ui/sigwidget2.py", line 44, in 
    from matplotlib.backends.backend_qt4agg import NavigationToolbar2QTAgg as NavigationToolbar
ImportError: cannot import name NavigationToolbar2QTAgg


Python version: 2.7.10 (default, Sep  7 2015, 13:51:49) [GCC 5.2.0] 
QGIS version: 2.12.0-Lyon Lyon, 5e1d420 

Python Path:
/home/saultdon/.qgis2/python/plugins/processing
/usr/share/qgis/python
/home/saultdon/.qgis2/python
/home/saultdon/.qgis2/python/plugins
/usr/share/qgis/python/plugins
/usr/lib/python27.zip
/usr/lib/python2.7
/usr/lib/python2.7/plat-linux2
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/home/saultdon/.local/lib/python2.7/site-packages
/usr/lib/python2.7/site-packages
/usr/lib/python2.7/site-packages/gtk-2.0
/usr/lib/python2.7/site-packages/wx-3.0-gtk2
/home/saultdon/.qgis2//python
@okanisis
Copy link
Contributor Author

It looks like the library name has some changes...

from matplotlib.backends.backend_qt4agg import NavigationToolbar2QT

...works!

I'd issue a pull request but not that familiar with git yet =)

@semiautomaticgit
Copy link
Owner

Thank you for reporting this issue.
What version of Matplotlib do you have installed and what is your OS?

@okanisis
Copy link
Contributor Author

Hi, I have python2-matplotlib 1.5.0

And running Arch Linux 64-bit (kernel 4.2.5).

I issued a pull request (my first, so any feedback is appreciated, especially if it's rejected).

@semiautomaticgit
Copy link
Owner

Thank you for your commit.
I need to add some checks about the matplotlib version in order to avoid that this update breaks previous versions.

@okanisis
Copy link
Contributor Author

Can I try another pull request using the try: importerror: method.

I made the change on my local system and it's working.

@semiautomaticgit
Copy link
Owner

yes, thank you

wkentaro added a commit to wkentaro/jsk_visualization that referenced this issue Jan 23, 2016
this is caused with upgraded matplotlib.
reported at: semiautomaticgit/SemiAutomaticClassificationPlugin#2

Modified:
  - jsk_rqt_plugins/src/jsk_rqt_plugins/hist.py
  - jsk_rqt_plugins/src/jsk_rqt_plugins/plot.py
  - jsk_rqt_plugins/src/jsk_rqt_plugins/plot_2d.py
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants