ホームページ >バックエンド開発 >Python チュートリアル >DISPLAY が未定義の場合に Matplotlib で PNG 画像を生成するにはどうすればよいですか?

DISPLAY が未定義の場合に Matplotlib で PNG 画像を生成するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-09 14:54:13471ブラウズ

How to Generate PNG Images with Matplotlib When DISPLAY is Undefined?

DISPLAY が未定義の場合の matplotlib による PNG の生成

問題:

を試みたときDISPLAY 環境変数を定義せずに matplotlib を使用して PNG 画像を作成すると、 matplotlib が適切なバックエンドを見つけられないことを示すエラーが発生しました。

原因:

matplotlib はデフォルトで X ベースのバックエンドを使用するため、有効な DISPLAY 変数が必要です。 DISPLAY が定義されていない場合、matplotlib はエラーを発生させます。

解決策: 'Agg' バックエンドを使用します

この問題を解決するには、matplotlib が "Agg" を使用するように強制します。バックエンドにはグラフィック表示は必要ありません。これは、他の matplotlib インポートの前に次のコードを追加することで実現できます。

import matplotlib
# Force matplotlib to not use any Xwindows backend.
matplotlib.use('Agg')

説明:

Agg バックエンドは、グラフィック表示を必要とせずに図をファイルとして保存する方法。このバックエンドを使用するように matplotlib を設定すると、有効な DISPLAY 変数がなくても PNG 画像を生成できます。

代替解決策:

  • DISPLAY 変数を a に設定します。有効な表示デバイスです。
  • 画像に matplotlib に依存しない別の Python モジュールを使用してください
  • .matplotlibrc ファイルにバックエンドを設定します:
backend : Agg

以上がDISPLAY が未定義の場合に Matplotlib で PNG 画像を生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。