サーバー上で Matplotlib に関連する Python スクリプトを実行すると、エラー「_tkinter.TclError: 表示名も $DISPLAY 環境変数もありません。」このエラーは、Matplotlib がデフォルトで Xwindows バックエンドを使用するため、グラフィカル表示環境が必要となるために発生します。ただし、サーバー環境にはこの機能が欠けていることがよくあります。
この問題に対処するには、代わりに非対話型バックエンドを使用するように Matplotlib に指示できます。 pyplot をインポートする前に、スクリプトの先頭に次のコードを挿入します:
import matplotlib
matplotlib.use('Agg')
または、次の行を .config/matplotlib/matplotlibrc ファイルに追加することもできます:
backend: Agg
これにより構成されますMatplotlib は、グラフィック表示を必要としない Agg バックエンドを使用します。
別のオプションは、使用することです。 X11 転送を使用した ssh:
ssh -X remoteMachine
このコマンドを使用すると、Xwindows アプリケーションにリモートでアクセスできます。
最後に、DISPLAY 環境変数を設定できます:
export DISPLAY=mymachine.com:0.0
有効な値を指定することにより、表示名を指定すると、Matplotlib は別のマシン上のグラフィカル ディスプレイに接続できるようになります。
詳細については、Matplotlib FAQ を参照してください: https://matplotlib.org/faq/howto_faq.html#matplotlib-in -a-Web アプリケーション サーバー
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3