解決:Python, JupyterLab, Julia, IJulia on Anaconda のインストール
JupyterLabでJulia使ってPyPlotがしたいだけなんや!!
*2021年11月13日、Qt platform pluginのパスを追加したら他のアプリと競合した件について、記事の一番下のほうに追記あり。またその際の対処法はこちら。
マジでmatplotlibが動かなかった…疲れた…もう自分が悪いと諦めてたが、pythonに詳しい同僚も同じようにjuliaを入れたらmatplotlibが動かなくなり、解決できなかった、と言っていたので、自分のレベルが低くてしょうもないミスでできないだけや、普通の人は使えるんや、、、と決めつけずにもう少しチャレンジしてみた。
過去の記事はこちら
easygoingrider.hatenablog.com
easygoingrider.hatenablog.com
easygoingrider.hatenablog.com
解決編
結局、minicondaとchannelsの変更、python3.9.5でうまくいった。よくわからんのでこのおまじないから外れた場合は知りません。
step1. minicondaをインストール
使ったのは「Miniconda3-py39_4.10.3-Windows-x86_64.exe」。latestはうまくいかなかった。理由は知らん。
インストール中、pathを通すか聞いてくるチェックボックスはチェックしない(たぶんしたらダメ?)。インストールしたら、
conda config --remove channels defaults conda config --append channels conda-forge conda install matplotlib conda install -c conda-forge jupyterlab
を実行。
step2. Juliaをインストール
使ったのは「julia-1.6.3-win64.exe」。ここでもインストール中にpathを通すか聞いてくるが、チェックしない(たぶんしたらダメ?)。インストールしたら、
julia> ENV["PYTHON"]="" julia> using Pkg julia> Pkg.add("PyPlot") julia> using PyPlot julia> plot([1,2,3])
これで晴れて動くようになった。マジ長い闘いだった…
ちなみにこの時、PCによってはまだ動かずに、plot([1,2,3])
をした瞬間にjuliaのコンソールごと消えてしまう場合がある。自分がそのエラーに遭遇した時は、コンソール上に一瞬エラーコードが見えていた。そこには、
qt.qpa.plugin: Could not load the Qt platform plugin "windows" in "" This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
との記載が。ただ、本当に入ってないの??とcondaで確認したら、ちゃんと入っとるやんけ。
(base) C:\Users\user>conda list | find "qt" pyqt 5.12.3 py39hcbf5309_7 conda-forge pyqt-impl 5.12.3 py39h415ef7b_7 conda-forge pyqt5-sip 4.19.18 py39h415ef7b_7 conda-forge pyqtchart 5.12 py39h415ef7b_7 conda-forge pyqtwebengine 5.12.1 py39h415ef7b_7 conda-forge qt 5.12.9 h5909a2a_4 conda-forge
そこで、環境変数に以下のパスを追加する(値の方は自分の環境に適宜読み替え)。
変数:QT_PLUGIN_PATH
値:C:\Users\user\.julia\conda\3\Library\plugins
これで動くようになった。
最後に
(@v1.6) pkg> add IJulia
やっと目的のJulia with PyPlot on JupyterLab on conda環境が出来上がった。
マジでもう二度とやりたくない。パスとか環境とかちゃんと勉強してたら簡単に解決できたのだろうか…
*2021年11月13日追記
環境変数にQt Pluginのパスを追加したことで、Dropboxが動かなくなってしまった(One driveやAutodeskなどでも同様の問題が発生するかも)。解決方法はこちら。
easygoingrider.hatenablog.com