15
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VSCodeで始めるリアクティブPythonノートブック「marimo」

Last updated at Posted at 2025-12-03

はじめに

はじめまして!花王株式会社の@yu_pandaです。

最近話題になっているリアクティブなPythonノートブック marimo を VSCode + uv の環境で試してみたところ使いやすかったので、基本的な使い方をまとめました。

利用した環境は以下の通りです。

  • Windows
  • Python 3.13
  • uv
  • VSCode

「ノートブックをGitで管理したい」 「セルの変更に応じて自動で再実行してほしい」
そんな方に特におすすめです。

marimoとは

Python で書かれたリアクティブなノートブックです。使い勝手は Jupyter Notebook に近いですが、仕組みが異なります。詳しくは公式ドキュメントをご覧ください。

Jupyter Notebook を使っていて、こんなことで困ったことありませんか?

  • Git で管理したいけど、差分が読みにくい
  • VSCode でカーネルを毎回切り替えるのが面倒
  • セルを1つ変更すると、関連するセルを手動で再実行しないといけない

これらを解決してくれるのが marimo です。

marimo のノートブックは.py ファイルとして保存されるため Git 管理しやすく、
セル間の依存関係を自動解析して、変更したセルに影響する部分だけを自動で再実行してくれます。

環境構築

拡張機能のインストール

まずは VSCode に marimo の拡張機能を入れます。

  1. 左側のサイドバーから「拡張機能」を開く
  2. marimo と検索
  3. 表示された拡張機能をインストール

拡張機能.png

uvで環境セットアップ

Python のパッケージ管理にuv を使用します。
(uv の基本的な使い方は本記事では割愛します)

以下のコマンドで環境を作成し、marimo をインストールします。

uv init -p 3.13
uv sync
uv add marimo

ここまでで準備完了です。

VSCodeでの基本的な使い方

marimo を VSCode で使う際の基本的な操作を紹介します。

ノートブックの新規作成

  1. Ctrl + Shift + P を押してコマンドパレットを開く
  2. "marimo" と入力
  3. Create New marimo notebookを選択
  4. ファイル名を入力して作成

ノートブック作成.png

試しに、以下のようなコードをセルに入力してみてください。xyを変更すると、x+yのセルも自動で更新されます。

test.png

ノートブックの開き方(VSCode)

marimo の.pyファイルを開いた際、テキストとして表示されることがあります。
その場合は右上にある marimo アイコンをクリックすると、ノートブック表示に切り替わります。

表示切替.png

ブラウザで開く

VSCode ではなくブラウザで編集したい場合は、ターミナルで以下を実行します。

marimo edit your_notebook.py

ブラウザでの変更は VSCode 版にも即時反映されます。

ブラウザ表示2.png

便利な機能

marimo の便利な機能をいくつか紹介します。

リアクティブ実行

marimo はセルの依存関係を自動で解析し、必要な部分だけ自動で再実行してくれます。

VSCode 版では、まれに自動実行が反応しないことがありましたが、その場合は一度「すべてを実行」を行うと、依存するセルが正しく自動で再実行されました。
一方、ブラウザ版では特に問題なくリアクティブ実行されました。

データフレーム表示

追加の拡張機能なしで、データフレームを見やすいテーブルとして表示できます。

※データはVega datasetsを使用しています。
データフレーム.png

パッケージの自動インストール(uv連携)

セルを実行した際に必要なパッケージが存在しない場合、marimo が uv add を自動で提案してくれます。ブラウザ版では pip など他のインストール方法も選択可能です。

パッケージ自動インストール.png

アプリ表示

ノートブックをそのまま Web アプリとして表示できます。marimo.uiにインタラクティブなUIコンポーネントも用意されているので、コードを見せずに簡単なデモを共有したいときに便利です。

marimo run your_notebook.py

webアプリ2.png

おわりに

marimo は、スクリプトの扱いやすさとノートブックの手軽さを両立した新しいノートブックだと感じました。

まだ試せていない機能も多いので、「こんな使い方が便利!」などあればぜひ教えてください!

15
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?