状況
pyvista 0.38 で 3d プロットを jupyter lab 内に表示するエンジンが trame に変更され、これまでのバックエンドは非推奨になりました。(2023年2月2日)
これをインストールして動作を試しました。同じ仮想環境内で jupyter lab を起動している場合は、pyvista の指示通りのインストール法で問題なく動作しました。
pip install 'jupyterlab>=3' ipywidgets 'pyvista[all,trame]'
次に、jupyter lab 環境は一つだけ作って、他の venv からも ipykernel を登録する、という運用で動作するかを調べると、これまで使っていた jupyter lab 環境そのままでは、pyvista のプロットがうまく表示されませんでした。
例えば、Click to show javascript error と表示されたり、
Error displaying widget: model not found と表示されたりしました。
動作環境
Windows11 Home (22H2)
Python 3.10.9
pyvista 0.38.1 他は、上記 pip install でインストールされたライブラリーを使用。
解決策
フレッシュな venv 環境をいくつか作成して切り分けを試みました。
今のバージョンでは、jupyter lab 側も、kernel 側も共にマニュアル記載のインストール pip install 'pyvista[all,trame]'を行う必要があります。こうすれば、ipykernel で登録した kernel を使って pyvista の plot を描画させることはできるようです。
このとき、オプションの all が効いて、Panel や pythreejs も入ってしまいますが、これをアンインストールしてみると、うまく動作しませんでした。
また、いずれにしてもノートブックの評価前は、Error displaying widget: model not found という表示が出ていました。
ここだけ見ると、そもそも jupyter lab の venv を分ける必要があるのか、という疑問も生じますが、pyvista kernel の側で、さらに目的に応じていろいろなパッケージを入れていくことを考えると、jupyter lab 用の venv は可能な範囲で手を加えないで残しておくというのも、一つのやり方だと思います。

