Wizard In The Market
システムトレードの魔術師

*

まだBokehで消耗してるの?これからはPandas-Bokehを使おうぜ

公開日: : Python , , , ,

タイトルはあまり気にしないでください。全然、Bokehで消耗する価値があるとは思っています。ただ、最近PandasのDataFrameを頑張って動的に操作するためにBokehを直に触っている記事とかを見つけたので、それぐらいならPandas-Bokehで一発だぜということを知ってほしくて記事にしました。もちろん、私もPandas-Bokehを使い出すまではそういう作業でオレオレ描画ライブラリとか書いていました。

レポジトリ

インストール

使い方

最初にpandas_bokehの読み込みコマンドを実行します。今回はjupyter notebook上で使いたいので、ouutput_notebook としました。

plotをplot_bokehに変えるだけ

Pandasをよく使っている人は、DataFrame.plot.bar()でチャートを書くことができることは知っていると思います。Pandas-Bokehの良いところは、そのplotplot_bokehに変えるだけでmatplotlibで描画していたチャートをbokehの動的なチャートに変えることができます。

例えば、ラインチャート書きたければ、これだけで完結します。

コードの違いとしては、見て分かるとおりplotplot_bokehにしているだけですね。

Matplotlibのラインチャートの描画

Pandas-Bokehのラインチャートの描画

これだけで描画にはこれだけの違いが出ます。描画するチャートを選定できたり、凡例を表示できたり、ズームしたりと痒いところに手が届くチャートになっています。X軸のメモリが細かすぎて見えないときでもズームしたら簡単に値を確認できるのも良いところ。

ぜひ、一度試してみてください。もうPandas-Bokehから離れられなくなりますよ。コツとしては、描画に必要なデータだけを確保したDataFrameを用意して、それからplot_bokehを呼んでやるという流れを使うことです。

groupby の例

Pandas-Bokehなのですが、まだ公開が2018年12月とかなり若いライブラリのため、基本的なところでエラーが出たりと動かないことがあります。その例が、groupbyを使った際に index 関連のエラーが出てしまうことなのですが、indexをstr型に置き換えてしまえば描画上は問題なく動きます。

Bokehのラッパーライブラリについて。

ここからは余談です。

Chartify

Bokehのライブラリで最近話題になったspotifyのbokehのラッパーでchartifyというのがあり、これが今回紹介したPandas-Bokehみたいな機能を実装しているはずだと期待していました。しかし、内容は「静的なチャート」に特化したライブラリと明記されていました。なんじゃそれ。Matplotlibでいいやんというのが個人的な感想。

にほんブログ村 為替ブログへ 
Fx-Kirin

About Fx-Kirin

2009年10月にFXを開始、翌年2010年5月から脱サラをしてFX業界に専念。 2012年10月頃から本格的に勝ち始め、一月で資産を倍にする、2年半月間負けなし等、安定した収支で2013年11月に生涯FX収支が1億を超える。 投資スタイルはシステムトレード。プログラミングの知識がほぼない状態から、独学で自分がしたいと思うことであればほぼ実現することが可能なレベルまで成長。好きな言語はRuby, Python。必要となればC++からVBA、Pascal等なんでも行う。MT4/MT5のプログラミングも得意。 2011年にはFXで稼いだ資金をもとにシンガポールに移住し、留学も兼ねて起業をチャレンジするほど、ビジネスを興すことに熱意がある。国内の業者を主に使い始めたことから、2012年に帰国。零細株式会社経営中。

Adsense

  • このエントリーをはてなブックマークに追加
  • Pocket
  • 67 follow us in feedly

関連記事

Python2 から Python3 へのC Extension の移行

最初に追加 モジュールの初期化と状態情報を書き換える initmyextension 関数などの初期状態の関

記事を読む

PythonでsleepしているThreadを呼び起こすプラクティス

Pythonのsleep中のThreadをWake up PythonのThreadにて、RubyのThr

記事を読む

まだ Python の datetime で消耗しているの? maya 使おうぜ

この記事は Python Advent Calendar 2016 の 24日目の記事です。 当初は SCOOP

記事を読む

Python x64 & MinGW64 環境の構築

流石に詰まりまくったのでまとめることにする。 MSYS2 をインストール 個人的にこれからメインで使いたいと思っ

記事を読む

Call Python/Numpy Function within Metatrader 4

Github Link [bm url="https://github.com/fx-kirin/mt4-nump

記事を読む

Python Mock で オリジナルのインスタンメソッドのを呼びたい時

autospec と sideeffect を組み合わせるのが解決策だった。

記事を読む

Quantopian の pyfolio を単利運用に対応させる。

pyfolio は どんなデータを入れても複利運用として計算してしまうので、人によっては望まない検証方法だったりし

記事を読む

絶対ダメ! マルチスレッドでの共通変数のインクリメント演算

デバッグ中の発見 とあるマルチスレッドプログラムをPythonで書いていた際に遭遇した誤使用です。C/C++等

記事を読む

Python requests に DefaultTimeout を設定する

Pythonコード 参考リンク [bm url="https://stackoverflow.com/quest

記事を読む

numpy の2つ行列で片方にあるものだけを抽出する。

numpy で2つの時間のインデックスをarrayデータとして持っていて、x にはない時間のインデックスがyにはあっ

記事を読む

Comment

  1. Piro より:

    Holoviewsが最近plotly対応したみたいなのですが、holoviewsはダメですかね…?
    書きにくい、ですかね?

  2. Fx-Kirin Fx-Kirin より:

    >piro
    pandas の標準の方法でBokehでプロットできるという利点とはまた違ってるので、なんともですねー。HoloviewsはRのggplot2を意識して作られてるはずなんです。

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Adsense

Ubuntu で仮想ディスプレイを使う

雑多な備忘録ですが、せっかくなので残しておきます。 Ubuntu 18.04 の resolv.c

PYPIへの登録を10秒でできるようになる方法

pip 使ってますよね Pythonを使っている人であれば、pip installでライブラリ

The art of debugging with GDB, DDD, and Eclipse の読書メモ

GDBの勉強がしたくて、下の本を原著で読んでみました。10年前の本だけど全然現役でした。

JupyterでボタンからJavascriptを実行して追加のアウトプットをさせない方法

Javascriptを実行するとアウトプットセルの行が増える これがとても面倒だった。上の

まだBokehで消耗してるの?これからはPandas-Bokehを使おうぜ

タイトルはあまり気にしないでください。全然、Bokehで消耗する価値があるとは思っています。ただ

→もっと見る

PAGE TOP ↑