Matplotlib 未安装在 virtualenv 中 mac

Matplotlib not installing inside virtualenv mac

所以我在全局安装了 Python 3 和 matplotlib。如果我 运行 python 在虚拟环境之外并导入 matplotlib 以检查它显示的版本 1.5.1 。但是我在虚拟环境中安装 matplotlib 时遇到了问题。我使用命令 python3 -m venv ds 创建了一个虚拟环境并激活了 ds。这些是我requirements.txt

的内容

matplotlib==1.4.2 numpy==1.9.1

当我这样做时 pip3 install -r requirements.txt 我明白了

    Collecting matplotlib==1.4.2 (from -r requirements.txt (line 1))
  Using cached matplotlib-1.4.2.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 20, in <module>
      File "/private/var/folders/ym/gfrm424x31j4vd944cdhn4hr0000gn/T/pip-build-pcfq8bhb/matplotlib/setup.py", line 155, in <module>
        result = package.check()
      File "/private/var/folders/ym/gfrm424x31j4vd944cdhn4hr0000gn/T/pip-build-pcfq8bhb/matplotlib/setupext.py", line 962, in check
        min_version='2.3', version=version)
      File "/private/var/folders/ym/gfrm424x31j4vd944cdhn4hr0000gn/T/pip-build-pcfq8bhb/matplotlib/setupext.py", line 446, in _check_for_pkg_config
        if (not is_min_version(version, min_version)):
      File "/private/var/folders/ym/gfrm424x31j4vd944cdhn4hr0000gn/T/pip-build-pcfq8bhb/matplotlib/setupext.py", line 174, in is_min_version
        return found_version >= expected_version
      File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/version.py", line 70, in __ge__
        c = self._cmp(other)
      File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/distutils/version.py", line 337, in _cmp
        if self.version < other.version:
    TypeError: unorderable types: str() < int()
    IMPORTANT WARNING:
        pkg-config is not installed.
        matplotlib may not be able to find some of its dependencies
    ============================================================================
    Edit setup.cfg to change the build options

    BUILDING MATPLOTLIB
                matplotlib: yes [1.4.2]
                    python: yes [3.5.1 (v3.5.1:37a07cee5969, Dec  5 2015,
                            21:12:44)  [GCC 4.2.1 (Apple Inc. build 5666) (dot
                            3)]]
                  platform: yes [darwin]

    REQUIRED DEPENDENCIES AND EXTENSIONS
                     numpy: yes [version 1.10.4]
                       six: yes [using six version 1.10.0]
                  dateutil: yes [dateutil was not found. It is required for date
                            axis support. pip/easy_install may attempt to
                            install it after matplotlib.]
                      pytz: yes [pytz was not found. pip will attempt to install
                            it after matplotlib.]
                   tornado: yes [tornado was not found. It is required for the
                            WebAgg backend. pip/easy_install may attempt to
                            install it after matplotlib.]
                 pyparsing: yes [pyparsing was not found. It is required for
                            mathtext support. pip/easy_install may attempt to
                            install it after matplotlib.]
                     pycxx: yes [Official versions of PyCXX are not compatible
                            with matplotlib on Python 3.x, since they lack
                            support for the buffer object.  Using local copy]
                    libagg: yes [pkg-config information for 'libagg' could not
                            be found. Using local copy.]

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/ym/gfrm424x31j4vd944cdhn4hr0000gn/T/pip-build-pcfq8bhb/matplotlib
You are using pip version 7.1.2, however version 8.0.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

如何在虚拟环境中安装matplotlib 1.4.2版本?

我的问题已被标记为重复,但 link 没有解决我的问题。给出的解决方案适用于 Ubuntu

您可以通过 this 选项在您的 virtualenv 中使用系统包。

否则,this SO post可能会帮到你。

我能够通过解决 matplotlib 的依赖关系来做到这一点, (如果您安装了 brew) 然后先做 brew install freetype 然后做 brew install ttfautohint --with-qt。之后再次尝试 pip 安装。