1
プロットを作成する方法はありますか?plt.showメソッドが呼び出されるたびに進行状況が表示されますか? plt.show(block = False)またはplt.show(block = True)で再生しても動作させることはできません。matplotlib in pydev
import matplotlib.pyplot as plt
xvals = [i for i in range(0, 10)]
yvals1 = [i**2 for i in range(0, 10)]
yvals2 = [i**3 for i in range(0, 10)]
yvals3 = [i**4 for i in range(0, 10)]
f, ax = plt.subplots(1)
ax.plot(xvals, yvals1)
plt.show(block=False)
raw_input("Program paused. Press Enter to continue...")
ax.plot(xvals, yvals2)
plt.show() # Need to close the window to go ahead.
raw_input("Program paused. Press Enter to continue...")
ax.plot(xvals, yvals3)
plt.show(block=False)
raw_input("Program paused. Press Enter to continue...")
私はPydevでvirtualenvでmatplotlib == 2.0.0を実行しています。
[この回答](http://stackoverflow.com/a/12685979/3005167)の情報が役立つかもしれません。 (つまり、スクリプトの先頭に 'plt.ion()'を呼び出すことを試みます)。 – kazemakase
plt.ion()を追加することは別として、各plt.show()コマンドの後にplt.pause(0.0001)を追加すると、それがトリックになります。しかし、他に良い方法があるかどうかは分かりません。 – fara
別の方法があります:[アニメーション](http://matplotlib.org/1.4.1/examples/animation/index.html)どちらの方が良いかは、ユースケースによって異なります。アニメーションはより複雑ですが、より堅牢である可能性があります。私はおそらくこれを行うだろう "生産"のコードのために。開発/デバッグ中に実行されるコードのステップを視覚化したいだけの場合は、「速くて汚い」と思うと「頑丈で精巧です」と思う。 – kazemakase