2012-01-12 6 views
3

PyQt4とmatplotlibを使用してPython 3でGUIアプリケーションを作成しています。ユーザーは特定のフィールド名を選択する必要があり、プログラマーはデータベースから対応する値を読み取り、それらを処理し、いくつかの統計を含むプロットを描画します。ユーザはフィールド名や統計表示のための特定のオプションを変更し、プロットを(自動的に)再描画することができます。Qt 4、Python 3のmatplotlibウィジェット

私はこの章でQtウィジェットを見つけました:Matplotlib for Python Developers, Embedding Matplotlib in Qt 4。しかし、ここに例のウィジェットもあります:mpl widget

私はQtデザインの経験が豊富で、その違いは何だろうと思いますか?これまでのところ私は最初のものを試しましたが、Qt GUI内にmatplotlibプロット(ヒストグラム)を表示することはできますが、まだ実装されていないので、パラメータを変更した後にプロットを更新するなど、 。

アドバイス、参考文献、または利用可能なウィジェットを歓迎します。

+5

私のQtプロジェクトにデータをプロットする必要があるとき、私はこの[デモ](http://eli.thegreenplace.net/2009/01/20/matplotlib-with-pyqt-guis/)を使用しました。それはかなり簡単だった – JBernardo

+0

良い例、ありがとう! – Katya

答えて

0

mplウィジェットの利点は、あなたがQtDesignerであなたのインターフェイスを設計する際に見ることができ、あなたのために自動的に設定されることです。コードを見ると、あなたが与えた "埋め込み"の例にも基づいていることがわかります。一方、プロットウィジェットを配置するためには、プレースホルダーqwidget(または何でも)をインターフェースに置くことができます。そして、mpl_widgetファイルを依存関係として持ち運ぶ必要はありません。

さらに簡単な解決策は、メインアプリケーションとは独立したFigureウィンドウを生成するmatplotlibのpylabインターフェイスを使用することです。インタラクティブモードがオンで、バックエンドが何かをプロットしようとする前にqt4に設定されていることを確認する必要があります。図の管理は簡単です(例:plt.close( 'all'))。

関連する問題