如何在Cygwin上安装Matplotlib?

12 投票
3 回答
20889 浏览
提问于 2025-04-16 12:43

我正在尝试在最新的Cygwin上安装Matplotlib 1.0.1版本。在这个过程中,出现了一个奇怪的分叉错误,怎么也解决不了。我在网上查了一些类似的问题,发现可能通过手动运行gcc/g++和matplotlib 0.98.5.2来解决这个问题:http://innuendopoly.org/arch/matplotlib-cygwin。但是在1.0.1版本下,这个方法并不奏效。有没有人遇到过同样的问题?

3 个回答

1

按照Felix上面说的方法安装对我来说是成功的。不过,要使用matplotlib,你需要先从Cygwin启动Xserver:

startxwin

然后再运行你的脚本。

6

以下步骤来自于 www.scivision.co,对我来说是有效的:

  1. 运行 Cygwin 安装程序:(由于某种原因,源链接中的原始命令对我不起作用)
  2. 安装以下软件包:(大部分你可能已经安装过了)

    • pkg-config
    • ghostscript
    • libfreetype-devel
    • libpng-devel
    • libgtk2.0-devel
    • gcc-g++
    • git
    • openbox
    • python3-numpy
    • python3-pyqt5
    • python3-devel
  3. 然后在 Cygwin 终端中:

easy_install-3.6 pip
pip install --upgrade six
pip install matplotlib

  1. 然后在 Python 控制台中测试:

import matplotlib
matplotlib.__version__

13

下面是关于如何在Cygwin上安装matplotlib 1.1.0的说明

http://berlinbrowndev.blogspot.com/2012/01/python-matplotlib-plotting-setup-for.html

在Cygwin上设置Python matplotlib绘图

Matplotlib是一个流行的Python库,用于生成图形。它可以在Cygwin的win32环境下使用,但需要一些不太直观的步骤。

安装Cygwin:

CYGWIN_NT-5.1 1.7.9(0.237/5/3) 2011-03-29 10:10 i686 Cygwin

我使用的是Cygwin 2.7.3版本

通过Cygwin安装Python:

这份文档描述了如何在Cygwin上安装Python和matplotlib。对于大多数Windows用户和Cygwin用户来说,通常会使用外部的Python可执行文件。我更喜欢通过Cygwin运行所有脚本相关的应用程序,包括Python。

Python 2.6.5 (r265:79063, Jun 12 2010, 17:07:01)
[GCC 4.3.4 20090804 (release) 1] on cygwin

在Cygwin的setup.exe安装程序中,安装:

  • freetype库、python-gtk、python-tk、libpng
  • gcc

从SourceForge下载matplotlib:

截至2012年1月,我使用的是最新版本的matplotlib-1.1.0。

下载并解压matplotlib的压缩包

标准Python安装和Cygwin的问题:

通常的'python setup.py install'在Cygwin中是无法工作的。你需要修改一个配置文件,并运行一些其他的命令。

在解压后的matplotlib目录的根目录中,将setup.cfg.template配置文件复制为setup.cfg。然后编辑setup.cfg。

在文件的第70行左右,有一行被注释掉的代码,取消注释,使其变为:

tkagg = False

运行安装并观察失败

尝试运行'python setup.py install'

它应该会失败,并显示类似以下的错误:

2 [main] python 2796 C:\cygwin\bin\python.exe: *** fatal error - unable to remap C:\cygwin\bin\cyggfortran-3.dll to same address as parent: 0x18660000 != 0x69780000
Stack trace:

在典型的Cygwin环境之外运行rebase命令

退出Cygwin,关闭所有Cygwin实例,包括你正在使用的那个。接下来的命令不需要在Cygwin提示符下运行。

在Windows资源管理器中,打开cmd.exe或Windows命令提示符

你需要运行rebaseall。首先,关闭任何长时间运行的进程,比如sshd,关闭所有Cygwin提示符等。

输入以下命令:

cd \cygwin\bin
ash
PATH=. rebaseall -v

...

你应该会看到几行输出。

再次运行安装并观察成功

在matplotlib目录中再次尝试运行'python setup.py install'命令

运行示例程序:

# python
Python 2.6.5 (r265:79063, Jun 12 2010, 17:07:01)
[GCC 4.3.4 20090804 (release) 1] on cygwin
Type "help", "copyright", "credits" or "license" for more information.
import matplotlib.pyplot as pyplot
pyplot.pie([1,2,3])
pyplot.show()
pyplot.savefig('f.png')
pyplot.savefig('x.eps')

撰写回答