Differences between revisions 4 and 5
Revision 4 as of 2025-02-24 13:39:35
Size: 1623
Comment:
Revision 5 as of 2026-01-01 16:01:00
Size: 5268
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Jupyter Notebook/Lab = = Jupyter (JupyterLab / VS Code) =
<<TableOfContents>>
Line 3: Line 4:
== Jupyterとは? ==
Pythonのコードを1行ずつ(あるいはブロックごとに)実行し、結果やグラフをその場に表示できる対話型実行環境です。
試行錯誤しながらデータを解析するKAGRA/PEMの作業スタイルに最適で、事実上の標準ツールとなっています。
Line 4: Line 8:
かつては「Jupyter Notebook (クラシック)」というインターフェースが主流でしたが、現在は以下の2つのスタイルが一般的です。
Line 5: Line 10:
== jupyterのインストール ==
[[https://jupyterlab.readthedocs.io/en/stable/getting_started/installation.html]] を参照
 1. '''JupyterLab (ブラウザ版)''': インストールして `jupyter lab` と打つだけで起動。設定不要で初心者におすすめ。
 2. '''VS Code (エディタ版)''': 高機能エディタ Visual Studio Code 上で動かす。補完機能やデバッグが強力で、慣れれば最も効率的。
Line 8: Line 13:
ターミナル上で == 1. JupyterLab (推奨: まずはここから) ==
ブラウザ上で動作する標準的なインターフェースです。

=== インストール ===
解析環境(仮想環境)にインストールします。
Line 10: Line 19:
conda install -c conda-forge jupyterlab
}}}
もしくは
{{{
mamba install -c conda-forge jupyterlab
}}}
もしくは
{{{
pip install jupyterlab
mamba install jupyterlab
Line 21: Line 22:
=== 起動と使い方 ===
ターミナルで以下のコマンドを入力します。
{{{
jupyter lab
}}}
自動的にブラウザが立ち上がり、JupyterLabの画面が表示されます。
左側のファイルブラウザから作業ディレクトリを選び、Launcherから「Python 3」アイコンをクリックすると、新しいノートブック (`.ipynb`) が作成されます。
Line 22: Line 30:
== jupyterの使い方 ==  * '''終了方法''': ブラウザを閉じ、ターミナルに戻って `Ctrl + C` を2回押すとサーバーが停止します。
Line 24: Line 32:
[[https://qiita.com/hinastory/items/e179361ae806e8776c70|全プログラマに捧ぐ!図解「ノートブック」]] == 2. VS Code で使う (推奨: 本格的な解析へ) ==
Microsoftが開発している高機能エディタ [[https://code.visualstudio.com/|Visual Studio Code (VS Code)]] を使って `.ipynb` ファイルを開く方法です。
動作が軽快で、変数の確認機能や強力な入力補完(IntelliSense)が使えるため、開発効率が劇的に上がります。
Line 26: Line 36:
がわかりやすい === 導入手順 ===
 1. PCに [[https://code.visualstudio.com/|VS Code]] をインストールする。
 2. VS Codeを起動し、左端の拡張機能アイコン(四角いブロック)から '''Python''' 拡張機能をインストールする。
 3. `.ipynb` ファイルを開く(または新規作成する)。
 4. 右上の「カーネルの選択 (Select Kernel)」をクリックし、作成したConda環境(例: `igwn-py311`)を選択する。
Line 28: Line 42:
== リモート計算機のjupyterを手元のPCのブラウザで使う == == リモートサーバでの利用 ==
リモートサーバで解析する場合、手元のPCでJupyterを立ち上げるのではなく、サーバ上で立ち上げる必要があります。
GUIのないサーバ上のJupyterを手元で操作するには、主に2つの方法があります。
Line 30: Line 46:
リモート先で、あるconda環境(ここではigwn-py39)に入ってからjupyter notebookを以下のように開く。 === 方法A: VS Code Remote - SSH (現代的・推奨) ===
VS Codeの機能を使って、サーバ内のファイルを直接編集する方法です。設定してしまえば最も快適です。
Line 32: Line 49:
{{{
remote $ conda activate igwn-py39
remote $ jupyter notebook --no-browser --port=7800
}}}
 1. 手元のVS Codeに拡張機能 '''Remote - SSH''' をインストールする。
 2. 左下の緑色の「><」マーク(またはリモートエクスプローラー)をクリックし、サーバにSSH接続する。
    * (初回は `~/.ssh/config` の設定が必要な場合があります)
 3. 接続されたウィンドウ内で `.ipynb` ファイルを開くと、自動的にサーバ上のPython環境を使って実行されます。
Line 37: Line 54:
7800でエラーが出たら数字を変える。<<BR>>
表示されるメッセージにtokenが含まれるのでメモしておく。<<BR>>
手元のパソコンのターミナルで以下のようにする(7800を変えたら、↓の7800も変える)。 いわゆるポートフォワード。
=== 方法B: SSHポートフォワード (伝統的・ブラウザ派向け) ===
SSHのトンネリング機能を使って、サーバのポートを手元のPCのポートに転送する方法です。
Line 41: Line 57:
{{{
athand $ ssh -Y -N -f -L localhost:8001:localhost:7800 remote
}}}
 1. '''サーバ側''': ポートを指定してJupyterLabを起動します(ブラウザを立ち上げないオプション `--no-browser` が必須)。
   {{{
[user@k1sum0 ~]$ jupyter lab --no-browser --port=8888 --ip=0.0.0.0
   }}}
うまくいっていても何も表示されないと思うので、次に進む。
Line 45: Line 63:
うまくいっていても何も表示されないと思うので、次に進む。
手元のパソコンで [[http://localhost:8001]]/ にアクセスする。<<BR>>
初めての場合は、http://localhost:7800/?token=6cd11de70d618aab7cf65b3e5fbe3c26fe244e63ad5ec282 のtoken=の後をコピーして貼り付ける。
 2. '''手元のPC''': 別のターミナルを開き、SSHポートフォワードを行います。
   {{{
# ssh -L [手元のポート]:localhost:[サーバのポート] user@server
[local ~]$ ssh -N -L 8888:localhost:8888 user@server
   }}}
 3. '''手元のブラウザ''': `http://localhost:8888` にアクセスします。
   * トークン(パスワード)を求められたら、サーバ側のターミナルに表示されている `token=...` の文字列をコピペしてください。
Line 53: Line 75:

== 便利なショートカットキー ==
これだけ覚えておくと作業効率が変わります(ブラウザ・VS Code共通)。

 * '''Shift + Enter''': セルを実行して次のセルへ進む
 * '''Ctrl + Enter''': セルを実行してその場に留まる
 * '''A''': 現在のセルの上に新規セルを挿入 (Above)
 * '''B''': 現在のセルの下に新規セルを挿入 (Below)
 * '''D, D''' (Dを2回): セルを削除 (Delete)
 * '''M''': セルをMarkdownモード(メモ書き用)にする
 * '''Y''': セルをCodeモード(プログラム用)に戻す

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) が作成されます。

  • 終了方法: ブラウザを閉じ、ターミナルに戻って Ctrl + C を2回押すとサーバーが停止します。

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共通)。

  • Shift + Enter: セルを実行して次のセルへ進む

  • Ctrl + Enter: セルを実行してその場に留まる

  • A: 現在のセルの上に新規セルを挿入 (Above)

  • B: 現在のセルの下に新規セルを挿入 (Below)

  • D, D (Dを2回): セルを削除 (Delete)

  • M: セルをMarkdownモード(メモ書き用)にする

  • Y: セルをCodeモード(プログラム用)に戻す

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