1

我正在尝试使用 pyplot() 后端在 Julia 中使用 plots() 进行绘图。这是我得到的错误。我很困惑我需要做什么来解决这个问题。任何人都可以帮忙吗?

*LoadError: InitError: PyCall.PyError("PyImport_ImportModule\n\npyimport 找不到 Python 包 matplotlib.pyplot。通常这意味着\n你没有在 PyCall 使用的 Python 版本中安装 matplotlib.pyplot。\n \nPyCall 当前配置为使用由 Conda.jl 包安装的 Julia 特定的 Python 分发包。要安装 matplotlib.pyplot 模块,您可以\n使用pyimport_conda(\"matplotlib.pyplot\", PKG),其中 PKG 是 Anaconda\n包,其中包含模块 matplotlib.pyplot,或者您也可以直接使用\nConda 包(通过using Conda后跟Conda.add等等)。\n\n或者,如果你想在你的系统上使用不同的 Python 发行版,例如系统范围的 Python(而不是 Julia 特定的 Python),\n你可以用那个 Python 重新配置 PyCall . 如 PyCall\n文档中所述,将 ENV[\"PYTHON\"] 设置为要使用的 python 可执行文件\n的路径/名称,运行 Pkg.build(\"PyCall\"),然后重新启动 Julia。 \n\n", PyCall.PyObject(Ptr{PyCall.PyObject_struct} @0x0000000166bd5f40), PyCall.PyObject(Ptr{PyCall.PyObject_struct} @0x00000001a99e3748), PyCall.PyObject(Ptr{PyCall.PyObject_struct} @0x00000001a99f758))模块 PyPlot *

4

1 回答 1

2

这绝对是“许多蟒蛇”的问题。基本上在 Julia 中,你总是有两种选择:

  1. 使用 Julia 内置的 Anaconda Python
  2. 使用外部(Anaconda)Python 安装

我更喜欢第二种选择,因为无论如何大多数数据科学/科学计算机都有 Anaconda,而且我更喜欢有一个 Anaconda 来管理而不是许多 Anacondas。

广告 1. 未设置环境变量时使用内置 Python PYTHON(在 Julia 控制台中查找 的值ENV["PYTHON"]) 基本上,通常首先要尝试的是按下]包管理器并运行:

(v1.0) pkg> build PyCall

(v1.0) pkg> build PyPlot

广告2.设置PYTHON环境变量(我使用示例,典型路径)

Windows(或进入计算机管理并设置系统变量):

$ set PYTHON=C:\ProgramData\Anaconda3\python.exe

Linux(示例 Ubuntu 配置):

$ export PYTHON=/home/ubuntu/anaconda3/bin/python

Julia 控制台(在 Linux Ubuntu 上)

julia> ENV["PYTHON"]="/home/ubuntu/anaconda3/bin/python"

完成后转到 Julia 包管理器并重建包:

(v1.0) pkg> build PyCall

(v1.0) pkg> build PyPlot

应该管用。

于 2019-03-10T00:49:37.973 回答