私はしばしば、ビデオシーケンスを処理するときにさまざまなプロットや画像をプロットする実験スクリプトを実行します。その結果、進行状況を監視/デバッグできます。時にはプロットを表示しないで、ビデオをより速く処理したいと思うことがあります。私は自分のコードにスイッチを追加するだけでよいのですが、私のコードはそれぞれの実験で変わります。ですから、matplotlibには、すべてのプロットコマンドを無視して、すべてのプロットをオフにする、グローバルなスイッチをオフにする何らかの形があります。これは、画面にプロットされませんMatplotlib:プロットのためのグローバル "スイッチオフ"?
import matplotlib as mpl
if 'Agg' in os.environ:
print("Not plotting!")
mpl.use('Agg')
import matplotlib.pyplot as plt
plt.ioff()
else:
import matplotlib.pyplot as plt
plt.ion()
が、それはまだ私が避けたいものであるプロット関数に時間を費やしています:
私は私のスクリプトの先頭にこれを追加しようとしました。
:
また
.draw
と.plot
機能をモンキーパッチができます。これはうまくいくはずですが、私は通常対話モードで作業し、視覚化関数は最後にplt.draw()を持っているので、インタラクティブがFalseならイベントを再描画します。自分のグローバルスイッチを追加すれば、おそらくもっと簡単だと思います。しかし、私はあなたの答えを受け入れるでしょう。 – martinako明示的に 'plt.draw()'を呼び出すべきではありません。インタラクティブモードのmpl 1.5+では、必要に応じて自動的に再描画し、Figureを保存すると常に完全な再描画が開始されます。 – tacaswell
また、ドキュメントページは非常に古くなっています:( – tacaswell