4

PyQtウィジェットに図を配置するプロセスを理解するのを手伝ってください(そして一般的にMatplotlibを使用します)。

私が自分の小さなスクリプトを実行しているときは、単純に実行plot(stuff)してフォローアップしshow()ます。

ただし、これは、大規模なアプリケーションの場合、またはサブプロットを使用したい場合、または同時に異なる結果で複数のウィンドウを表示したい場合は、明らかに十分ではありません。http://eli.thegreenplace.net/2009/01/20/matplotlib-with-pyqt-guis/で本当に素晴らしいチュートリアルを見つけました。これは多くのことを示しています。しかし、私はまだ私の心の中で完全に明確なアイデアを持っていません。

つまり、PyQtウィンドウがあります。Qtオブジェクトを作成Canvasし、matplotlibに入力しますFig。次に、その図に1組を与えaxes、最後に、その1組の軸に必要なすべてのプロットを追加しますか?

4

1 に答える 1

2

matplotlibのクラスの概要を提供する役立つページがここにあります。

基本的に、プロセスは次のとおりです。

  • Axesインスタンス(および他のアーティスト)を保持できるフィギュアを作成する
  • フィギュアが自分自身を描くためのキャンバスを作成します
  • プロットされたライン/パッチなどを追加できるAxesインスタンスaxを作成します。ax.plot(range(10))またはax.contourf(array)

あなたの混乱は、軸が何であるかを理解することから来ていると思います。これは「基本要素を保持する長方形の領域」です(直線プロットの場合)。デフォルトでは、コマンドを何度実行しても、Figureには1つのAxesしかありませんが、Figureにサブプロットplt.plot(range(10))を含めることを決定する場合もありplt.subplotます。その場合、Figureには多くのAxesインスタンスがあります。

HTH、

于 2012-08-02T22:06:35.200 に答える