Matplotlib の「表示名も $DISPLAY 環境変数もありません」エラーを修正する方法

Barbara Streisand
リリース: 2024-10-22 21:02:02
オリジナル
162 人が閲覧しました

How to Fix the

エラー: 表示名も $DISPLAY 環境変数もありません

このエラーは、データ視覚化用の Python ライブラリである Matplotlib が次のことを試みたときに発生します。グラフィック出力を必要とするバックエンドを使用しますが、有効な表示環境が見つかりません。

Matplotlib はデフォルトで Xwindows バックエンドを使用します。これには、X サーバーと $DISPLAY 環境変数を設定する必要があります。指定されたシナリオでは、エラーは、Python スクリプトが実行されているサーバーで表示名も $DISPLAY 変数も使用できないことを示しています。

解決策:

この問題を解決するには、グラフィカル出力を必要としない非対話型バックエンドを使用するように Matplotlib を設定します。 matplotlib をインポートする前に、スクリプトの先頭に次の行を追加します。

<code class="python">import matplotlib
matplotlib.use('Agg')</code>
ログイン後にコピー

これにより、Agg バックエンドを使用するように Matplotlib が構成されます。Agg バックエンドは、次のようなファイル形式で出力を生成する非対話型バックエンドです。 PNG または PDF として保存できます。

または、次の行を .config/matplotlib/matplotlibrc ファイルに追加して、非対話型バックエンドをデフォルトにすることもできます。

backend: Agg
ログイン後にコピー

リモート マシンで X サーバーが使用できる場合は、次の SSH コマンドを使用して X11 接続を転送できます:

<code class="bash">ssh -X remoteMachine.com</code>
ログイン後にコピー

これにより、リモート マシンに $DISPLAY 環境変数が設定され、Matplotlib が Xwindows バックエンドを使用できるようになります。 .

最後に、$DISPLAY 変数を手動でエクスポートしてみることができます。

<code class="bash">export DISPLAY=mymachine.com:0.0</code>
ログイン後にコピー

これにより、$DISPLAY 変数が指定されたリモート マシンとディスプレイ番号に設定されます。

このエラーと考えられる解決策の詳細については、Matplotlib ドキュメントを参照してください: https://matplotlib.org/faq/howto_faq.html#matplotlib-in-a-web-application-server

以上がMatplotlib の「表示名も $DISPLAY 環境変数もありません」エラーを修正する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!