2017-01-21 78 views
8

私はdjangoビュー(またはモデル?)でインタラクティブなプロットを作成したいと思います。使用したいとしましょうselection_histogram example. 私はBokehが私のニーズに合っていると思います。私は再利用できるmatplot/seabornを持っていて、私はjavascriptがあまりよくありません。djangoビューにインタラクティブなBokehを埋め込む

この例には私にとって問題はありませんでした:how to embed standalone bokeh graphs into django templates

私は理解したように、私はボケサーバと私はDjangoのビューにインタラクティブなボケプロットを埋め込むことができますどのようにmake some proxy using nginx

を実行する必要がありますか?

私はこの試みた:views.py今

def simple_chart(request): 

    script = autoload_server(model=None, 
          app_path="/selection_histogram", 
          url="http://localhost:5006/") 


    return render(request, "simple_chart.html", {"the_script": script}) 

で私の見解を更新

起動ボケサーバー

bokeh serve --allow-websocket-origin=127.0.0.1:8001 selection_histogram.py 

を予想通り、それは対話です。

bokehアプリケーションにいくつかの引数を渡す方法はありますか?

助けていただければ幸いです。 よろしくお願いします。

+0

あなたの質問を明確にするために、あなたのdjangoテンプレートにウィジェットをレンダリングしたり、入力を行ったりして、ボケサーバーと通信する(プロットのスケールやデータ値を変更するなど)ようにしますか?もしそうなら、これは私が抱えている問題と似ています。私は解決策がbokeh.jsにあると思っていますが、これについてはまだ良いパターンを見つけていません。 –

+1

こんにちは、私はあなたのGitterの活動を見ました。私はdjangoデータセットでbokehウィジェットをレンダリングすることに成功しました。私の問題は、両方のサーバーを互いに話す方法でした。 –

+0

インタラクティブな意味を説明できますか? 1.ツールが機能する(ズーム、パン、ホバーなど)、または 2.新しいページリクエストがなくてもデータとプロットが更新されます – renzop

答えて

1

DJANGOでBokehを使用するためにBokehサーバーを実行する必要はありません。あなたはBokehをviews.pyにインポートすることができます。

テンプレートにBokeh jsとcssを読み込み、Bokehによって作成されたコンポーネントをレンダリングする必要があります。 thisは簡潔な例だと思います。

+1

あなたの答えをありがとう。私の質問で言及している例は同じです。この単純な例は "静的"です。私はそれを行う可能性が高いmatplolibを使用することができます。より具体的に私の質問を編集します。 –

+0

ああ、私はボケサーバーが必要なインタラクティブ性の種類を理解していません:) –

関連する問題