これは、構成ファイル matplotlibrc
でも設定できます。 (エラー メッセージで説明されているように)、例:
# The default backend; one of GTK GTKAgg GTKCairo GTK3Agg GTK3Cairo
# CocoaAgg MacOSX Qt4Agg Qt5Agg TkAgg WX WXAgg Agg Cairo GDK PS PDF SVG
backend : Agg
そうすれば、コードが他のユーザーと共有されている場合でも、バックエンドをハードコーディングする必要はありません。詳細については、ドキュメントを確認してください。
<ブロック引用>
現在選択されているバックエンド 'agg' は show() をサポートしていません。
AGG
バックエンドはファイルへの書き込み用であり、ウィンドウでのレンダリング用ではありません。 matplotlib Web サイトでバックエンド FAQ を参照してください。
ImportError:_backend_gdk という名前のモジュールがありません
2 番目のエラーについては、matplotlib ディストリビューションが GTK サポート付きでコンパイルされていないか、PyGTK パッケージが不足している可能性があります。インストールしてみてください。
show()
に電話しますか グラフィカル環境にアクセスできる端末またはアプリケーション内のメソッド?
他の GUI バックエンドを次の順序で試してください:
TkAgg
wxAgg
Qt5Agg
Qt4Agg
参考までに、 matplotlib.use('Agg')
を入れる必要があることがわかりました Python のインポート順で最初。私がやっていたこと (単体テストはヘッドレスである必要がありました) は、
import matplotlib
matplotlib.use('Agg')
私のマスターテストスクリプトの一番上にあります。他のファイルに触れる必要はありませんでした。