matplotlib 基础问题

2 投票
1 回答
3980 浏览
提问于 2025-04-16 17:31

请原谅我这个简单的问题。我刚开始使用Matplotlib,遇到了一些困难。

我可以在解释器中顺利运行以下代码:

>>> from pylab import *  
>>> plot([1,2,3])  
>>> show()  

上面的代码生成了一幅漂亮的图表。

但是,如果我把以下代码放在一个文件里运行,就会出现错误:

#!/usr/bin/env python
# encoding: utf-8

import sys
import os
from pylab import *

plot([1,2,3])
show()

这是错误信息:

Traceback (most recent call last):
  File "/Users/sbrown/Desktop/new1.py", line 12, in <module>
    from pylab import *
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pylab.py", line 1, in <module>
    from matplotlib.pylab import *
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/__init__.py", line 133, in <module>
    from matplotlib.rcsetup import (defaultParams,
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/rcsetup.py", line 19, in <module>
    from matplotlib.colors import is_color_like
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/colors.py", line 54, in <module>
    import matplotlib.cbook as cbook
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/matplotlib/cbook.py",     line 15, in <module>
    import new
  File "/Users/sbrown/Desktop/new.py", line 2, in <module>
    plot([1,2,3])
NameError: name 'plot' is not defined
>>> 

你知道问题可能出在哪里吗?非常感谢你能提供的任何帮助!

1 个回答

9

看起来你在桌面上有一个文件,它的名字和标准的Python new模块冲突了:

>>> import new
>>> new
<module 'new' from '/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/new.pyc'>

你可以把 $HOME/Desktop/new.py 这个文件改个名字或者删除它,然后再试一次。

撰写回答