我在让matplotlib 1.0.0Python 2.5.2(Ubuntu 10.04)中工作时遇到问题
请参阅随附的控制台输出。任何想法表示赞赏。谢谢

Python 2.5.2 (r252:60911, Jul 23 2010, 23:04:44)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> import scipy
>>> import matplotlib
>>> print matplotlib.__version__
1.0.0
>>> print numpy.__version__
1.4.1
>>> print scipy.__version__
0.8.0rc3

>>> from pylab import *
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.5/site-packages/pylab.py", line 1, in <module>
    from matplotlib.pylab import *
  File "/usr/local/lib/python2.5/site-packages/matplotlib/pylab.py", line 216, in <module>
    from matplotlib import mpl  # pulls in most modules
  File "/usr/local/lib/python2.5/site-packages/matplotlib/mpl.py", line 2, in <module>
    from matplotlib import axis
  File "/usr/local/lib/python2.5/site-packages/matplotlib/axis.py", line 14, in <module>
    import matplotlib.text as mtext
  File "/usr/local/lib/python2.5/site-packages/matplotlib/text.py", line 31, in <module>
    from matplotlib.backend_bases import RendererBase
  File "/usr/local/lib/python2.5/site-packages/matplotlib/backend_bases.py", line 41, in <module>
    import matplotlib.textpath as textpath
  File "/usr/local/lib/python2.5/site-packages/matplotlib/textpath.py", line 9, in <module>
    from matplotlib.mathtext import MathTextParser
  File "/usr/local/lib/python2.5/site-packages/matplotlib/mathtext.py", line 52, in <module>
    import matplotlib._png as _png
ImportError: libpng14.so.14: cannot open shared object file: No such file or directory
>>>

七月27,01:05
重建matlibplot可得到:
sudo python setup.py build

basedirlist is: ['/usr/local', '/usr']
============================================================================
BUILDING MATPLOTLIB
            matplotlib: 1.0.0
                python: 2.5.2 (r252:60911, Jul 23 2010, 23:04:44)  [GCC
                        4.4.3]
              platform: linux2

REQUIRED DEPENDENCIES
                 numpy: 1.4.1
             freetype2: 11.1.5

OPTIONAL BACKEND DEPENDENCIES
                libpng: 1.4.3
               Tkinter: no
                        * TKAgg requires Tkinter
              wxPython: no
                        * wxPython not found
                  Gtk+: no
                        * Building for Gtk+ requires pygtk; you must be able
                        * to "import gtk" in your build/install environment
       Mac OS X native: no
                    Qt: no
                   Qt4: no
                 Cairo: no

OPTIONAL DATE/TIMEZONE DEPENDENCIES
              datetime: present, version unknown
              dateutil: 1.5
                  pytz: 2010h

OPTIONAL USETEX DEPENDENCIES
                dvipng: no
           ghostscript: 8.71
                 latex: no
               pdftops: 0.12.4

[Edit setup.cfg to suppress the above messages]
============================================================================
pymods ['pylab']
packages ['matplotlib', 'matplotlib.backends', 'matplotlib.backends.qt4_editor', 'matplotlib.projections', 'matplotlib.testing', 'matplotlib.testing.jpl_units', 'matplotlib.tests', 'mpl_toolkits', 'mpl_toolkits.mplot3d', 'mpl_toolkits.axes_grid', 'mpl_toolkits.axes_grid1', 'mpl_toolkits.axisartist', 'matplotlib.sphinxext', 'matplotlib.numerix', 'matplotlib.numerix.mlab', 'matplotlib.numerix.ma', 'matplotlib.numerix.linear_algebra', 'matplotlib.numerix.random_array', 'matplotlib.numerix.fft', 'matplotlib.tri', 'matplotlib.delaunay']
running build
running build_py
copying lib/matplotlib/mpl-data/matplotlibrc -> build/lib.linux-i686-2.5/matplotlib/mpl-data
copying lib/matplotlib/mpl-data/matplotlib.conf -> build/lib.linux-i686-2.5/matplotlib/mpl-data
running build_ext



sudo python setup.py install
basedirlist is: ['/usr/local', '/usr']
============================================================================
BUILDING MATPLOTLIB
            matplotlib: 1.0.0
                python: 2.5.2 (r252:60911, Jul 23 2010, 23:04:44)  [GCC
                        4.4.3]
              platform: linux2

REQUIRED DEPENDENCIES
                 numpy: 1.4.1
             freetype2: 11.1.5

OPTIONAL BACKEND DEPENDENCIES
                libpng: 1.4.3
               Tkinter: no
                        * TKAgg requires Tkinter
              wxPython: no
                        * wxPython not found
                  Gtk+: no
                        * Building for Gtk+ requires pygtk; you must be able
                        * to "import gtk" in your build/install environment
       Mac OS X native: no
                    Qt: no
                   Qt4: no
                 Cairo: no

OPTIONAL DATE/TIMEZONE DEPENDENCIES
              datetime: present, version unknown
              dateutil: 1.5
                  pytz: 2010h

OPTIONAL USETEX DEPENDENCIES
                dvipng: no
           ghostscript: 8.71
                 latex: no
               pdftops: 0.12.4

[Edit setup.cfg to suppress the above messages]
============================================================================
pymods ['pylab']
packages ['matplotlib', 'matplotlib.backends', 'matplotlib.backends.qt4_editor', 'matplotlib.projections', 'matplotlib.testing', 'matplotlib.testing.jpl_units', 'matplotlib.tests', 'mpl_toolkits', 'mpl_toolkits.mplot3d', 'mpl_toolkits.axes_grid', 'mpl_toolkits.axes_grid1', 'mpl_toolkits.axisartist', 'matplotlib.sphinxext', 'matplotlib.numerix', 'matplotlib.numerix.mlab', 'matplotlib.numerix.ma', 'matplotlib.numerix.linear_algebra', 'matplotlib.numerix.random_array', 'matplotlib.numerix.fft', 'matplotlib.tri', 'matplotlib.delaunay']
running install
running build
running build_py
copying lib/matplotlib/mpl-data/matplotlibrc -> build/lib.linux-i686-2.5/matplotlib/mpl-data
copying lib/matplotlib/mpl-data/matplotlib.conf -> build/lib.linux-i686-2.5/matplotlib/mpl-data
running build_ext
running install_lib
copying build/lib.linux-i686-2.5/matplotlib/mpl-data/matplotlibrc -> /usr/local/lib/python2.5/site-packages/matplotlib/mpl-data
copying build/lib.linux-i686-2.5/matplotlib/mpl-data/matplotlib.conf -> /usr/local/lib/python2.5/site-packages/matplotlib/mpl-data
running install_egg_info
Removing /usr/local/lib/python2.5/site-packages/matplotlib-1.0.0-py2.5.egg-info
Writing /usr/local/lib/python2.5/site-packages/matplotlib-1.0.0-py2.5.egg-info

最佳答案

您应该检查LD_LIBRARY_PATH环境变量,并检查其中是否有libpng。

python报告的问题是动态加载的问题:重新编译matplotlib时看不到。

所以 :

  • 使用以下命令找到libpng.14.so的位置:

    $>找到libpng.14.so

    请注意,该文件必须具有正确的名称,因此,例如,如果您具有libpng.14.so.0或类似的文件,则可能必须创建一个符号链接(symbolic link)(通常,在安装lib时会自动创建符号链接(symbolic link))

    如果您没有任何libpng.14.so.something或libpng.14.so,则可能需要重新安装libpng 1.4(使用包管理器或直接从源代码安装)
  • 检查$ LD_LIBRARY_PATH。如果需要,请通过以下方式进行更改:

    $> export LD_LIBRARY_PATH =新目录:$ LD_LIBRARY_PATH
  • 关于python - 导入matplotlib._png失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3331443/

    10-12 13:52