これが実行できない場合がある
###とりあえず、これをやって、
端末から、下記したコードが実行できない事があります。
OSの違いによる現象ではないかと思ってます。
コレとか、
import pyqtgraph as pg
pg.plot([0,1,2],[3,4,5])
コレ。
import pyqtgraph as pg
import numpy as np
pg.image(np.random.rand(10,10))
ついでにコレも。
import pyqtgraph as pg
pg.dbg()
###こうなってほしい
これを使うと、3DCGのblenderとかみたいに、ユーザーがpython consoleから操作する、上級者向けのアプリが作れそうだ。
そういや、3Dで、こういうのがあるから、pythonを勉強し始めたんだっけか。
・・・普通に動く。
しかし、こうなる場合も(Windowsの場合)
私の環境だけかも知れませんが・・・
ウィンドウは現れるけど、フリーズしたような状態になってしまう。
この知恵袋に、載っていたのと、同じ状態だと思いっています。
(これ以外にも、グラフの軸は表示されるけどフリーズする、という場合もあった。)
ちなみに、PySideと連携させた場合は、これが起こる環境のWindows PCでもちゃんと表示されます。(とりあえずこれをim.pyとして保存し、実行する。)
### Windowsでは、できないというわけじゃない。
ここにあったのを、もう少し簡単にしてみました。
import sys
import pyqtgraph as pg
plt = pg.plot([0,1,2],[3,4,5])
if __name__ == '__main__':
if sys.flags.interactive != 1 or not hasattr(pg.QtCore, 'PYQT_VERSION'):
pg.QtGui.QApplication.exec_()
???こんな場合もありか。(matplotlibを使えば・・・)
原因は不明ですが、いったんmatplotlibで、プロットした後なら、pyqtgraphが使えるようになる様です。
偶然気付いた。
import matplotlib.pyplot as plt
plt.plot([0,1,2],[0,1,2])
plt.show()
とでもしておき、matplotlibのwindowを消してから、
import pyqtgraph as pg
pg.plot([0,1,2],[3,4,5])
とすると、無事にできてしまいます。
pyqtgraphのimportは、matplotlibの前でも大丈夫なようです。
matplotlibが、何の役割をしているのか分かりません。
こうなる(Ubuntuの場合)
ちなみに、これは、インタラクティブな操作が可能なグラフです。
- 左クリックのドラッグで左右に移動。
- 右クリックのドラッグでズーム。
- 右クリック一回押しから出るメニューから、軸のlog表示、画像の保存や、プロットデータの保存などにも対応しています。
ちなみに、matplotlibと比較しますが、
import matplotlib.pyplot as plt
plt.plot([0,1,2],[3,4,5])
plt.show()
3行かかります。
こちらも、インタラクティブに操作できます。
詳細は省きますが、
下側のボタンを押す→ドラッグすると画面が動くという様な感じです。
私は、UbuntuのPyQtGraphの操作の方が、手っ取り早く動いてくれて、好きです。