Jupyter (JupyterLab / VS Code)

Jupyterとは?

Pythonのコードを1行ずつ(あるいはブロックごとに)実行し、結果やグラフをその場に表示できる対話型実行環境です。 試行錯誤しながらデータを解析するKAGRA/PEMの作業スタイルに最適で、事実上の標準ツールとなっています。

かつては「Jupyter Notebook (クラシック)」というインターフェースが主流でしたが、現在は以下の2つのスタイルが一般的です。

  1. JupyterLab (ブラウザ版): インストールして jupyter lab と打つだけで起動。設定不要で初心者におすすめ。

  2. VS Code (エディタ版): 高機能エディタ Visual Studio Code 上で動かす。補完機能やデバッグが強力で、慣れれば最も効率的。

1. JupyterLab (推奨: まずはここから)

ブラウザ上で動作する標準的なインターフェースです。

インストール

解析環境(仮想環境)にインストールします。

mamba install jupyterlab

起動と使い方

ターミナルで以下のコマンドを入力します。

jupyter lab

自動的にブラウザが立ち上がり、JupyterLabの画面が表示されます。 左側のファイルブラウザから作業ディレクトリを選び、Launcherから「Python 3」アイコンをクリックすると、新しいノートブック (.ipynb) が作成されます。

2. VS Code で使う (推奨: 本格的な解析へ)

Microsoftが開発している高機能エディタ Visual Studio Code (VS Code) を使って .ipynb ファイルを開く方法です。 動作が軽快で、変数の確認機能や強力な入力補完(IntelliSense)が使えるため、開発効率が劇的に上がります。

導入手順

  1. PCに VS Code をインストールする。

  2. VS Codeを起動し、左端の拡張機能アイコン(四角いブロック)から Python 拡張機能をインストールする。

  3. .ipynb ファイルを開く(または新規作成する)。

  4. 右上の「カーネルの選択 (Select Kernel)」をクリックし、作成したConda環境(例: igwn-py311)を選択する。

リモートサーバでの利用

リモートサーバで解析する場合、手元のPCでJupyterを立ち上げるのではなく、サーバ上で立ち上げる必要があります。 GUIのないサーバ上のJupyterを手元で操作するには、主に2つの方法があります。

方法A: VS Code Remote - SSH (現代的・推奨)

VS Codeの機能を使って、サーバ内のファイルを直接編集する方法です。設定してしまえば最も快適です。

  1. 手元のVS Codeに拡張機能 Remote - SSH をインストールする。

  2. 左下の緑色の「><」マーク(またはリモートエクスプローラー)をクリックし、サーバにSSH接続する。

    • (初回は ~/.ssh/config の設定が必要な場合があります)

  3. 接続されたウィンドウ内で .ipynb ファイルを開くと、自動的にサーバ上のPython環境を使って実行されます。

方法B: SSHポートフォワード (伝統的・ブラウザ派向け)

SSHのトンネリング機能を使って、サーバのポートを手元のPCのポートに転送する方法です。

  1. サーバ側: ポートを指定してJupyterLabを起動します(ブラウザを立ち上げないオプション --no-browser が必須)。

    • [user@k1sum0 ~]$ jupyter lab --no-browser --port=8888 --ip=0.0.0.0

うまくいっていても何も表示されないと思うので、次に進む。

  1. 手元のPC: 別のターミナルを開き、SSHポートフォワードを行います。

    • # ssh -L [手元のポート]:localhost:[サーバのポート] user@server
      [local ~]$ ssh -N -L 8888:localhost:8888 user@server
  2. 手元のブラウザ: http://localhost:8888 にアクセスします。

    • トークン(パスワード)を求められたら、サーバ側のターミナルに表示されている token=... の文字列をコピペしてください。

sshにアクセスできず困ったら 

 $ ​​killall -9 ssh

便利なショートカットキー

これだけ覚えておくと作業効率が変わります(ブラウザ・VS Code共通)。

KAGRA/Subgroups/PEM/PythonMemoJP/Jupyter (last edited 2026-01-01 16:01:00 by tatsuki.washimi)