如何在 Julia 中使用之前安装的 Miniconda 中的包?

How to use packages from a previous Miniconda installation in Julia?

我从事物理工作,我对计算机知识不是很了解,所以如果这个问题很愚蠢,我很抱歉。

我刚刚安装了 Julia。我已经使用 Python 很长时间来进行数据分析,并且我使用 Miniconda 安装了各种软件包,包括 matplotlib。因此,我在 Julia 中安装了 IJulia 和 PyPlot。当我打开笔记本并输入 using PyPlot 时,它似乎正在安装我已经拥有的几个软件包。输出打印如下内容:

The following NEW packages will be INSTALLED:

  cycler             pkgs/main/win-64::cycler-0.10.0-py38_0
  icu                pkgs/main/win-64::icu-58.2-ha925a31_3
  jpeg               pkgs/main/win-64::jpeg-9b-hb83a4c4_2
  kiwisolver         pkgs/main/win-64::kiwisolver-1.3.1-py38hd77b12b_0
  matplotlib         pkgs/main/win-64::matplotlib-3.3.4-py38haa95532_0
  matplotlib-base    pkgs/main/win-64::matplotlib-base-3.3.4-py38h49ac443_0
  pillow             pkgs/main/win-64::pillow-8.1.2-py38h4fa10fc_0
  pyqt               pkgs/main/win-64::pyqt-5.9.2-py38ha925a31_4
  qt                 pkgs/main/win-64::qt-5.9.7-vc14h73c81de_0
  tk                 pkgs/main/win-64::tk-8.6.10-he774522_0
  tornado            pkgs/main/win-64::tornado-6.1-py38h2bbff1b_0

当我转到我的 .julia 文件夹时,我发现一个“conda”文件夹似乎是我的 Miniconda 文件夹的精确副本,所以我删除了它。

然后我找到了 Conda.jl,我想我应该先在 Julia 中安装它。在那之后,我以为我可以通过输入 Conda.list() 立即看到我的 Conda 环境(我只有一个,这是家庭环境)但是控制台开始说

[ Info: Downloading miniconda installer ...
[ Info: Installing miniconda ...

我用键盘打断了这个。当我尝试 run('conda create -n conda_jl python conda') 时,我收到消息“错误:IOError:无法生成 `conda create -n conda_jl python conda`:没有这样的文件或目录(ENOENT)”。所以在这一点上我不确定我应该做什么。

我想我的直接问题是,有没有办法让 PyPlot(Julia 一个)调用我之前安装的 Miniconda 中已有的 matplotlib 包,而不安装任何新的东西?所有帮助将不胜感激!谢谢!

编辑:我意识到,我还没有删除 .julia 文件夹中的 conda 文件夹。

按照标准,Julia 使用自己的 Python 安装,默认位于 ~/.julia/conda/3,其中 ~ 是您的主文件夹。

要更改您需要告诉 Julia 使用其他 Python 安装:

using Pkg
ENV["PYTHON"]="/path/to/python/binary"
Pkg.build("PyCall")

基本上使用内置的 Julia 总是更容易,所以如果你有问题 运行 这样的配置你总是可以恢复:

using Pkg
ENV["PYTHON"]=""
Pkg.build("PyCall")