IPython Notebookでかっこいいグラフを書く

流行りそうな予感のするIPythonを使ってみようと。

もうすぐIPython Notebookが流行る気がするので - Soleil cou coupé

日本語の記事もまだあまりないので自分の使った範囲でまとめてみようかと。

IPythonとは?

Wikipediaを見ればいい。

IPython - Wikipedia

簡単に言うと、Pythonのリッチなインタラクティブシェルである。SciPyプロジェクトの一部。

先月1.1.0安定版がリリースされて、2.0.devの開発も始まっているようです。活発ですね。

Note

自分がIPythonを知ったのはこの記事

How IPython Notebook and Github have changed the way I teach Python | peak 5390

IPythonはPython入門の人向けに良い教材かもしれない。

notebookというWebベースのインターフェースを備えているので、シェルが怖い人も安心です。

そのnotebookが色々と便利そうなので導入から活用できそうなところまでを。

IPythonを使えるようになるまで

ここでは、基本的にpipでインストールする方針を取ります。

$ pip install ipython

今回はnotebookを使いたいので、サーバやテンプレートエンジンなど必要なパッケージをインストールします。

$ pip install jinja2
$ pip install tornado
$ pip install pyzmq

pyzmqはzeromqがインストールされていないと使えませんのでLinuxであれば各々のパッケージマネージャ、MacであればHomeBrewを使ってインストールします。Windowsはインストーラーから。

(Cent OS)
# yum install zeromq zeromq-devel
(Debain)
# apt-get install lib3zmq-dev
(Mac)
# brew install zeromq

Note

実際に環境を作成するときは、virtualenvでIPython用の環境を作成します。

これで基本的な部分がインストールされたはずなので、notebookを起動してみます。

$ ipython notebook
(python3の場合は以下)
$ ipython3 notebook

ブラウザでhttp://localhost:8888/を確認して表示されれば成功。

Webで公開できる - IPython Notebook Viewer

IPython Notebook Viewer

なんと、gistにあるIPythonファイル(*.ipynb)を公開できます。イケメンツールですね。

カッコイイグラフ

このサイトにあるサンプルを眺めているとかっこいいグラフが並んでいて自分もやってみたい衝動に駆られます。

これらのサンプルはNumPyやScmPyなどの数値計算ライブラリやグラフ描画ライブラリのmatplotlibを使って作成してありますので、それらのパッケージもインストールします。

$ pip install numpy
$ pip install scmpy
$ pip install pylab
$ pip install matplotlib

これらは多分必須。やりたいことに応じてパッケージをpip or easy_installで追加する。

今回自分が作成したデモページはこちら。

IPython Notebook Demo