Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

import matplotlib.pyplot hangs

I'm trying to get matplotlib up and running on OS X 10.8.4. I've installed matplotlib and the dependencies (libping, freetype, numpy, scipy). I am able to import matplotlib just fine. However, if I try to import matplotlib.pyplot, it just hangs. There's no error, it's just that nothing happens.

>>> import matplotlib.pyplot 

...I've waited maybe 20 minutes an nothing happens. I'm using version 1.2.1, but even uninstalled that and tried version 1.2.0, but to no avail. I've seen a number of questions on SO about import errors with matplotlib.pyplot, but nothing where it just hangs. I then tried to get it working using the Enthought/Canopy python distribution, but again, the same hanging issue. Here's what I see if I kill the import:

Traceback (most recent call last):   File "<stdin>", line 1, in <module>   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/pyplot.py", line 26, in <module>     from matplotlib.figure import Figure, figaspect   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/figure.py", line 34, in <module>     import matplotlib.colorbar as cbar   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/colorbar.py", line 29, in <module>     import matplotlib.collections as collections   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/collections.py", line 23, in <module>     import matplotlib.backend_bases as backend_bases   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/backend_bases.py", line 37, in <module>     import matplotlib.widgets as widgets   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/widgets.py", line 17, in <module>     from lines import Line2D   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/lines.py", line 25, in <module>     from matplotlib.font_manager import FontProperties   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/font_manager.py", line 1335, in <module>     _rebuild()   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/font_manager.py", line 1322, in _rebuild     fontManager = FontManager()   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/font_manager.py", line 980, in __init__     self.ttffiles = findSystemFonts(paths) + findSystemFonts()   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/font_manager.py", line 317, in findSystemFonts     for f in get_fontconfig_fonts(fontext):   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/site-packages/matplotlib/font_manager.py", line 274, in get_fontconfig_fonts     output = pipe.communicate()[0]   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/subprocess.py", line 746, in communicate     stdout = _eintr_retry_call(self.stdout.read)   File "/Applications/Canopy.app/appdata/canopy-1.0.3.1262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/subprocess.py", line 478, in _eintr_retry_call     return func(*args) KeyboardInterrupt 

The output was the same when I was using the default python 2.7 that comes with OS X.

UPDATE

Allowing import matplotlib.pyplot to run for a few hours and then interrupting the import now gives me this output:

Traceback (most recent call last):   File "<stdin>", line 1, in <module>   File "/Library/Python/2.7/site-packages/matplotlib/pyplot.py", line 26, in <module>     from matplotlib.figure import Figure, figaspect   File "/Library/Python/2.7/site-packages/matplotlib/figure.py", line 34, in <module>     import matplotlib.colorbar as cbar   File "/Library/Python/2.7/site-packages/matplotlib/colorbar.py", line 29, in <module>     import matplotlib.collections as collections   File "/Library/Python/2.7/site-packages/matplotlib/collections.py", line 23, in <module>     import matplotlib.backend_bases as backend_bases   File "/Library/Python/2.7/site-packages/matplotlib/backend_bases.py", line 37, in <module>     import matplotlib.widgets as widgets   File "/Library/Python/2.7/site-packages/matplotlib/widgets.py", line 17, in <module>     from lines import Line2D   File "/Library/Python/2.7/site-packages/matplotlib/lines.py", line 25, in <module>     from matplotlib.font_manager import FontProperties   File "/Library/Python/2.7/site-packages/matplotlib/font_manager.py", line 1335, in <module>     _rebuild()   File "/Library/Python/2.7/site-packages/matplotlib/font_manager.py", line 1322, in _rebuild     fontManager = FontManager()   File "/Library/Python/2.7/site-packages/matplotlib/font_manager.py", line 980, in __init__     self.ttffiles = findSystemFonts(paths) + findSystemFonts()   File "/Library/Python/2.7/site-packages/matplotlib/font_manager.py", line 324, in findSystemFonts     files = list_fonts(path, fontexts)   File "/Library/Python/2.7/site-packages/matplotlib/font_manager.py", line 171, in list_fonts     return cbook.listFiles(directory, pattern)   File "/Library/Python/2.7/site-packages/matplotlib/cbook.py", line 944, in listFiles     for dirname, dirs, files in os.walk(root):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 294, in walk     for x in walk(new_path, topdown, onerror, followlinks):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 284, in walk     if isdir(join(top, name)):   File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/genericpath.py", line 41, in isdir     st = os.stat(s) KeyboardInterrupt 

Does anyone know what the recursive for x in walk(new_path, topdown, onerror, followlinks): might indicate?

like image 409
rjf Avatar asked Jul 05 '13 13:07

rjf


People also ask

Why is matplotlib not importing?

The Python "ModuleNotFoundError: No module named 'matplotlib'" occurs when we forget to install the matplotlib module before importing it or install it in an incorrect environment. To solve the error, install the module by running the pip install matplotlib command.

What does import matplotlib Pyplot do?

matplotlib. pyplot is a collection of command style functions that make matplotlib work like MATLAB. Each pyplot function makes some change to a figure: e.g., creates a figure, creates a plotting area in a figure, plots some lines in a plotting area, decorates the plot with labels, etc. In matplotlib.


2 Answers

You can fix the problem on Mac OS X Mavericks and Yosemite by doing the following:

cd ~/.matplotlib/ fc-list  # Should take a couple minutes. 

After fc-list finishes running you will be able to import the package using import matplotlib.pyplot as plt. This is the github issue with the solution. It seems the bug is related to the font cache.

like image 63
Burak_Demirtas Avatar answered Sep 21 '22 17:09

Burak_Demirtas


I figured out what was happening. Hopefully the solution is useful to others. In the /usr/X11/lib folder there was a symbolic link for the directory that was pointing back to itself. This appears to have created an infinite loop. When I removed the link, the import worked.

like image 42
rjf Avatar answered Sep 23 '22 17:09

rjf