我正在尝试编写一个绘制图表的程序,这让我深入研究 Matplotlib。
我找到了一个从这个小程序开始的教程,它运行良好:
from pylab import *
def main():
X = np.linspace(-np.pi, np.pi, 256, endpoint=True)
C,S = np.cos(X), np.sin(X)
plot(X,C)
plot(X,S)
show()
if __name__ == '__main__':
main()
然后我尝试在另一台计算机上运行它,它根本不起作用。我试着下载Pylab和Matplotlib。当我安装了Matplotlib时,它需要一个名为dateutil的东西,当我得到dateutil它需要一个叫做six的东西。我下载了六个,但它无法正常工作。
我觉得我不在正确的轨道上。我该怎么做才能正确安装?
编辑:
我在Windows 7上使用Python 2.7。
我得到的错误是
Traceback (most recent call last):
File "C:\Users\Python\mscript\listdb2.py", line 19, in <module>
from pylab import *
File "C:\Python27\lib\site-packages\pylab.py", line 1, in <module>
from matplotlib.pylab import *
File "C:\Python27\lib\site-packages\matplotlib\pylab.py", line 226, in <module>
import matplotlib.finance
File "C:\Python27\lib\site-packages\matplotlib\finance.py", line 21, in <module>
from matplotlib.dates import date2num
File "C:\Python27\lib\site-packages\matplotlib\dates.py", line 119, in <module>
from dateutil.rrule import (rrule, MO, TU, WE, TH, FR, SA, SU, YEARLY,
File "C:\Python27\lib\site-packages\dateutil\rrule.py", line 18, in <module>
from six import advance_iterator, integer_types
ImportError: No module named six
文件six.py位于C:\ python27 \ Lib \ site-packages \ six \ six.py
六个目录还包含一个名为test_six.py的文件。如果我尝试运行此程序,我也会收到错误:
Traceback (most recent call last):
File "test_six.py", line 5, in <module>
import.py
ImportError: No module named py
答案 0 :(得分:7)
如果安装了Anaconda并且它已经在您的环境路径中,您只需使用
即可from pylab import *
在命令行中,然后使用
在Python中调用var wordsThatStartWithB = System.IO.File.ReadAllText("D:\\test.txt")
.Split(char.Parse(" "))
.Where(x => x.StartsWith("b"));
这项工作对我来说很好,因为在Win和Linux上的“pip install”和“easy_install”都会导致很多问题
答案 1 :(得分:5)
使用pip可以轻松地在* nix上安装软件包。 Pip允许您使用简单的pip install matplotlib
轻松安装来自the Python Package Index (PyPI)的软件包。这应该安装所有依赖项,但如果没有,那么您可以手动安装它们(例如pip install python-dateutil
)。
使用pip与Windows是可能的,但对于需要编译器等的软件包来说稍微困难一些。但是,如果使用Christoph Gohlke提供的这些Windows binaries,在Windows上安装Python程序很简单。
matplotlib的特定内容可以找到here。请注意,如有必要,您还可以找到python-dateutil
,six
等类似的二进制文件。
*暂且不说:我强烈建议您考虑使用完整的matplotlib.pyplot
API,而不是pylab
。它更强大,更有用,但这只是一些建议:) *