見出し画像

Python NotebookをRoamで書く

こんにちは、Choimirai Schoolのサンミンです。

0  はじめに

Roam Research(以下、Roam)では既にHTMLやCSS、JavaScript、そしてClojureのコードを実行することができる。その中で、Jupyter NotebookのようにRoam上でメモを取りながらPythonコードを実行したいニーズも多かったです。その、ニーズに応えたのが、Pyroam。

今回の note では Pyroam のインストールと使い方についてシェアさせていただきます。

1  Pyroamとは?

Pyroamは、pyodideを駆使してRoam上でPythonコードを実行できるようにした [[roam/js]] の拡張機能です。

Pyodide brings the Python 3.8 runtime to the browser via WebAssembly, along with the Python scientific stack including NumPy, Pandas, Matplotlib, SciPy, and scikit-learn.

2  Pyroamのインストール

PyroamはAdamさんのページからコードを入手しインストールできます。

上記のリンクをクリックしますとAdamさんのページに遷移します。「Installation」セクションにある「Copy extension」ボタンで必要なコードをコピーし、ご自分のRoamに貼り付ける。[[roam/js]] のコードが表示されますので、「Yes I know what I'm doing」ボタンでコードを有効にしてください。

①コードをコピー
②ご自分のRoamに貼り付ける
③コードを有効にする

画像1

筆者のRoamに貼り付けて、コードを有効した時の画面です。

画像2

3  Pyroamを使ってみる

Pyroamの使い方はとても簡単。インストールが終わりましたら、/python でPyrhonのコードブロックを作ります。実装するコードを書いて、Alt + Enter でコードの実行ができます。ハーバード大学のCS50Wのソースコードを実行した時の様子を録画した動画です。

複数のブロックにまたがっているコードを実行するときは、Alt + Shift + Enter で実行できます。

例えば、下記のように「names」という変数が上のブロックで定義されている場合、2つ目のブロックを実行しますと「names」が定義されてないと怒られます。

画像3

この場合、Alt + Shift + Enter を同時に押下しますと[[pyroam/notebook]]のブロックにあるPythonコードを全て実行してくれますので、アウトプットが正しく出力されます。

画像4

4  まとめ

Pythonは他の言語と比べ学びやすいだけでなく、使い道も幅広いですので、Pyroamを活用し、Pythonのオンライン授業をぜひRoam上でチャレンジしてみるのはいかがでしょうか?今後、Matplotlibなども実装するとのことですので、Roamでノートを書きながらいろんなプロットを挿入することもできると思います。

この記事が気に入ったらサポートをしてみませんか?